27 cl::desc(
"Disable emission of the extended flags in .loc directives."),
53 if (DwarfExtendedLoc !=
Default)
94 MCSymbol *PCSym = Context.createTempSymbol();
101 return (C >=
'a' && C <=
'z') || (C >=
'A' && C <=
'Z') ||
102 (C >=
'0' && C <=
'9') || C ==
'_' || C ==
'$' || C ==
'.' || C ==
'@';
111 for (
char C : Name) {
121 return SectionName ==
".text" || SectionName ==
".data" ||
const char * Code16Directive
These are assembly directives that tells the assembler to interpret the following instructions differ...
Instances of this class represent a uniqued identifier for a section in the current translation unit...
bool UseIntegratedAssembler
Should we use the integrated assembler? The integrated assembler should be enabled by default (by the...
StringRef PrivateLabelPrefix
This prefix is used for labels for basic blocks.
const char * WeakDirective
Used to declare a global as being a weak symbol. Defaults to ".weak".
static const MCSymbolRefExpr * create(const MCSymbol *Symbol, MCContext &Ctx)
This class represents lattice values for constants.
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
const char * Data64bitsDirective
const char * ZeroDirective
This should be set to the directive used to get some number of zero bytes emitted to the current sect...
const char * GlobalDirective
This is the directive used to declare a global entity.
const char * AsciiDirective
This directive allows emission of an ascii string with the standard C escape characters embedded into...
const char * SeparatorString
This string, if specified, is used to separate instructions from each other when on the same line...
MCContext & getContext() const
amdgpu Simplify well known AMD library false Value Value const Twine & Name
virtual const MCExpr * getExprForPersonalitySymbol(const MCSymbol *Sym, unsigned Encoding, MCStreamer &Streamer) const
StringRef CommentString
This indicates the comment character used by the assembler.
const char * Data8bitsDirective
These directives are used to output some unit of integer data to the current section.
Base class for the full range of assembler expressions which are needed for parsing.
#define clEnumVal(ENUMVAL, DESC)
Context object for machine code objects.
static const MCBinaryExpr * createSub(const MCExpr *LHS, const MCExpr *RHS, MCContext &Ctx)
virtual bool shouldOmitSectionDirective(StringRef SectionName) const
Return true if the .section directive should be omitted when emitting SectionName.
const char * Code32Directive
LLVM_NODISCARD LLVM_ATTRIBUTE_ALWAYS_INLINE bool empty() const
empty - Check if the string is empty.
const char * AscizDirective
If not null, this allows for special handling of zero terminated strings on this target.
static cl::opt< DefaultOnOff > DwarfExtendedLoc("dwarf-extended-loc", cl::Hidden, cl::desc("Disable emission of the extended flags in .loc directives."), cl::values(clEnumVal(Default, "Default for platform"), clEnumVal(Enable, "Enabled"), clEnumVal(Disable, "Disabled")), cl::init(Default))
const char * InlineAsmStart
If these are nonempty, they contain a directive to emit before and after an inline assembly statement...
initializer< Ty > init(const Ty &Val)
Streaming machine code generation interface.
ValuesClass values(OptsTy... Options)
Helper to build a ValuesClass by forwarding a variable number of arguments as an initializer list to ...
virtual bool isSectionAtomizableBySymbols(const MCSection &Section) const
True if the section is atomized using the symbols in it.
const char * Data16bitsDirective
virtual bool isValidUnquotedName(StringRef Name) const
Return true if the identifier Name does not need quotes to be syntactically correct.
const char * LabelSuffix
This is appended to emitted labels. Defaults to ":".
const char * InlineAsmEnd
const char * Data32bitsDirective
This file contains constants used for implementing Dwarf debug support.
bool SupportsExtendedDwarfLocDirective
True if the target supports flags in ".loc" directive, false if only location is allowed.
bool PreserveAsmComments
Preserve Comments in assembly.
StringRef LinkerPrivateGlobalPrefix
This prefix is used for symbols that should be passed through the assembler but be removed by the lin...
static bool isAcceptableChar(char C)
bool usesELFSectionDirectiveForBSS() const
virtual void EmitLabel(MCSymbol *Symbol, SMLoc Loc=SMLoc())
Emit a label for Symbol into the current section.
StringRef - Represent a constant reference to a string, i.e.
StringRef PrivateGlobalPrefix
This prefix is used for globals like constant pool entries that are completely private to the ...
virtual const MCExpr * getExprForFDESymbol(const MCSymbol *Sym, unsigned Encoding, MCStreamer &Streamer) const
const char * Code64Directive