LLVM 22.0.0git
HexagonMCAsmInfo.cpp
Go to the documentation of this file.
1//===-- HexagonMCAsmInfo.cpp - Hexagon 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// This file contains the declarations of the HexagonMCAsmInfo properties.
10//
11//===----------------------------------------------------------------------===//
12
13#include "HexagonMCAsmInfo.h"
15#include "llvm/MC/MCExpr.h"
16
17using namespace llvm;
18
26};
27
28// Pin the vtable to this file.
29void HexagonMCAsmInfo::anchor() {}
30
32 Data16bitsDirective = "\t.half\t";
33 Data32bitsDirective = "\t.word\t";
34 Data64bitsDirective = nullptr; // .xword is only supported by V9.
35 CommentString = "//";
37
39 InlineAsmStart = "# InlineAsm Start";
40 InlineAsmEnd = "# InlineAsm End";
42 ZeroDirective = "\t.space\t";
43 AscizDirective = "\t.string\t";
44
48 UseLogicalShr = false;
49
51}
const MCAsmInfo::AtSpecifier atSpecifiers[]
const MCAsmInfo::AtSpecifier atSpecifiers[]
HexagonMCAsmInfo(const Triple &TT)
const char * Data16bitsDirective
Definition: MCAsmInfo.h:248
unsigned MinInstAlignment
Every possible instruction length is a multiple of this value.
Definition: MCAsmInfo.h:123
void initializeAtSpecifiers(ArrayRef< AtSpecifier >)
Definition: MCAsmInfo.cpp:127
const char * Data64bitsDirective
Definition: MCAsmInfo.h:250
ExceptionHandling ExceptionsType
Exception handling format for the target. Defaults to None.
Definition: MCAsmInfo.h:359
const char * Data32bitsDirective
Definition: MCAsmInfo.h:249
bool UsesSetToEquateSymbol
Use .set instead of = to equate a symbol to an expression.
Definition: MCAsmInfo.h:149
bool UseLogicalShr
True if the integrated assembler should interpret 'a >> b' constant expressions as logical rather tha...
Definition: MCAsmInfo.h:425
LCOMM::LCOMMType LCOMMDirectiveAlignmentType
Describes if the .lcomm directive for the target supports an alignment argument and how it is interpr...
Definition: MCAsmInfo.h:298
const char * InlineAsmStart
If these are nonempty, they contain a directive to emit before and after an inline assembly statement...
Definition: MCAsmInfo.h:174
bool UsesELFSectionDirectiveForBSS
This is true if this target uses ELF '.section' directive before the '.bss' one.
Definition: MCAsmInfo.h:263
bool SupportsDebugInformation
True if target supports emission of debugging information.
Definition: MCAsmInfo.h:356
const char * InlineAsmEnd
Definition: MCAsmInfo.h:175
const char * ZeroDirective
This should be set to the directive used to get some number of zero (and non-zero if supported by the...
Definition: MCAsmInfo.h:226
const char * AscizDirective
If not null, this allows for special handling of zero terminated strings on this target.
Definition: MCAsmInfo.h:236
StringRef CommentString
This indicates the comment string used by the assembler.
Definition: MCAsmInfo.h:135
Triple - Helper class for working with autoconf configuration names.
Definition: Triple.h:47
@ ByteAlignment
Definition: MCAsmInfo.h:58
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
@ DwarfCFI
DWARF-like instruction based exceptions.