Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCAsmInfo.cpp
Line
Count
Source
1
//===-- WebAssemblyMCAsmInfo.cpp - WebAssembly asm properties -------------===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
///
9
/// \file
10
/// This file contains the declarations of the WebAssemblyMCAsmInfo
11
/// properties.
12
///
13
//===----------------------------------------------------------------------===//
14
15
#include "WebAssemblyMCAsmInfo.h"
16
#include "llvm/ADT/Triple.h"
17
18
using namespace llvm;
19
20
#define DEBUG_TYPE "wasm-mc-asm-info"
21
22
494
WebAssemblyMCAsmInfo::~WebAssemblyMCAsmInfo() = default; // anchor.
23
24
507
WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(const Triple &T) {
25
507
  CodePointerSize = CalleeSaveStackSlotSize = T.isArch64Bit() ? 
814
:
4493
;
26
507
27
507
  // TODO: What should MaxInstLength be?
28
507
29
507
  UseDataRegionDirectives = true;
30
507
31
507
  // Use .skip instead of .zero because .zero is confusing when used with two
32
507
  // arguments (it doesn't actually zero things out).
33
507
  ZeroDirective = "\t.skip\t";
34
507
35
507
  Data8bitsDirective = "\t.int8\t";
36
507
  Data16bitsDirective = "\t.int16\t";
37
507
  Data32bitsDirective = "\t.int32\t";
38
507
  Data64bitsDirective = "\t.int64\t";
39
507
40
507
  AlignmentIsInBytes = false;
41
507
  COMMDirectiveAlignmentIsInBytes = false;
42
507
  LCOMMDirectiveAlignmentType = LCOMM::Log2Alignment;
43
507
44
507
  SupportsDebugInformation = true;
45
507
46
507
  // TODO: UseIntegratedAssembler?
47
507
}