LLVM
8.0.1
|
This class is intended to be used as a base class for asm properties and features specific to the target. More...
#include "llvm/MC/MCAsmInfo.h"
Protected Attributes | |
unsigned | CodePointerSize = 4 |
Code pointer size in bytes. Default is 4. More... | |
unsigned | CalleeSaveStackSlotSize = 4 |
Size of the stack slot reserved for callee-saved registers, in bytes. More... | |
bool | IsLittleEndian = true |
True if target is little endian. Default is true. More... | |
bool | StackGrowsUp = false |
True if target stack grow up. Default is false. More... | |
bool | HasSubsectionsViaSymbols = false |
True if this target has the MachO .subsections_via_symbols directive. More... | |
bool | HasMachoZeroFillDirective = false |
True if this is a MachO target that supports the macho-specific .zerofill directive for emitting BSS Symbols. More... | |
bool | HasMachoTBSSDirective = false |
True if this is a MachO target that supports the macho-specific .tbss directive for emitting thread local BSS Symbols. More... | |
bool | HasCOFFAssociativeComdats = false |
True if this is a non-GNU COFF target. More... | |
bool | HasCOFFComdatConstants = false |
True if this is a non-GNU COFF target. More... | |
unsigned | MaxInstLength = 4 |
This is the maximum possible length of an instruction, which is needed to compute the size of an inline asm. More... | |
unsigned | MinInstAlignment = 1 |
Every possible instruction length is a multiple of this value. More... | |
bool | DollarIsPC = false |
The '$' token, when not referencing an identifier or constant, refers to the current PC. More... | |
const char * | SeparatorString |
This string, if specified, is used to separate instructions from each other when on the same line. More... | |
StringRef | CommentString |
This indicates the comment character used by the assembler. More... | |
const char * | LabelSuffix |
This is appended to emitted labels. Defaults to ":". More... | |
bool | UseAssignmentForEHBegin = false |
bool | NeedsLocalForSize = false |
StringRef | PrivateGlobalPrefix |
This prefix is used for globals like constant pool entries that are completely private to the .s file and should not have names in the .o file. More... | |
StringRef | PrivateLabelPrefix |
This prefix is used for labels for basic blocks. More... | |
StringRef | LinkerPrivateGlobalPrefix |
This prefix is used for symbols that should be passed through the assembler but be removed by the linker. More... | |
const char * | InlineAsmStart |
If these are nonempty, they contain a directive to emit before and after an inline assembly statement. More... | |
const char * | InlineAsmEnd |
const char * | Code16Directive |
These are assembly directives that tells the assembler to interpret the following instructions differently. More... | |
const char * | Code32Directive |
const char * | Code64Directive |
unsigned | AssemblerDialect = 0 |
Which dialect of an assembler variant to use. Defaults to 0. More... | |
bool | AllowAtInName = false |
This is true if the assembler allows @ characters in symbol names. More... | |
bool | SupportsQuotedNames = true |
If this is true, symbol names with invalid characters will be printed in quotes. More... | |
bool | UseDataRegionDirectives = false |
This is true if data region markers should be printed as ".data_region/.end_data_region" directives. More... | |
const char * | ZeroDirective |
This should be set to the directive used to get some number of zero bytes emitted to the current section. More... | |
const char * | AsciiDirective |
This directive allows emission of an ascii string with the standard C escape characters embedded into it. More... | |
const char * | AscizDirective |
If not null, this allows for special handling of zero terminated strings on this target. More... | |
const char * | Data8bitsDirective |
These directives are used to output some unit of integer data to the current section. More... | |
const char * | Data16bitsDirective |
const char * | Data32bitsDirective |
const char * | Data64bitsDirective |
const char * | GPRel64Directive = nullptr |
If non-null, a directive that is used to emit a word which should be relocated as a 64-bit GP-relative offset, e.g. More... | |
const char * | GPRel32Directive = nullptr |
If non-null, a directive that is used to emit a word which should be relocated as a 32-bit GP-relative offset, e.g. More... | |
const char * | DTPRel32Directive = nullptr |
If non-null, directives that are used to emit a word/dword which should be relocated as a 32/64-bit DTP/TP-relative offset, e.g. More... | |
const char * | DTPRel64Directive = nullptr |
const char * | TPRel32Directive = nullptr |
const char * | TPRel64Directive = nullptr |
bool | SunStyleELFSectionSwitchSyntax = false |
This is true if this target uses "Sun Style" syntax for section switching ("#alloc,#write" etc) instead of the normal ELF syntax (,"a,w") in .section directives. More... | |
bool | UsesELFSectionDirectiveForBSS = false |
This is true if this target uses ELF '.section' directive before the '.bss' one. More... | |
bool | NeedsDwarfSectionOffsetDirective = false |
bool | AlignmentIsInBytes = true |
If this is true (the default) then the asmprinter emits ".align N" directives, where N is the number of bytes to align to. More... | |
unsigned | TextAlignFillValue = 0 |
If non-zero, this is used to fill the executable space created as the result of a alignment directive. More... | |
const char * | GlobalDirective |
This is the directive used to declare a global entity. More... | |
bool | SetDirectiveSuppressesReloc = false |
True if the expression .long f - g uses a relocation but it can be suppressed by writing a = f - g .long a. More... | |
bool | HasAggressiveSymbolFolding = true |
False if the assembler requires that we use. More... | |
bool | COMMDirectiveAlignmentIsInBytes = true |
True is .comm's and .lcomms optional alignment is to be specified in bytes instead of log2(n). More... | |
LCOMM::LCOMMType | LCOMMDirectiveAlignmentType = LCOMM::NoAlignment |
Describes if the .lcomm directive for the target supports an alignment argument and how it is interpreted. More... | |
bool | HasFunctionAlignment = true |
bool | HasDotTypeDotSizeDirective = true |
True if the target has .type and .size directives, this is true for most ELF targets. More... | |
bool | HasSingleParameterDotFile = true |
True if the target has a single parameter .file directive, this is true for ELF targets. More... | |
bool | HasIdentDirective = false |
True if the target has a .ident directive, this is true for ELF targets. More... | |
bool | HasNoDeadStrip = false |
True if this target supports the MachO .no_dead_strip directive. More... | |
bool | HasAltEntry = false |
True if this target supports the MachO .alt_entry directive. More... | |
const char * | WeakDirective |
Used to declare a global as being a weak symbol. Defaults to ".weak". More... | |
const char * | WeakRefDirective = nullptr |
This directive, if non-null, is used to declare a global as being a weak undefined symbol. More... | |
bool | HasWeakDefDirective = false |
True if we have a directive to declare a global as being a weak defined symbol. More... | |
bool | HasWeakDefCanBeHiddenDirective = false |
True if we have a directive to declare a global as being a weak defined symbol that can be hidden (unexported). More... | |
bool | HasLinkOnceDirective = false |
True if we have a .linkonce directive. More... | |
MCSymbolAttr | HiddenVisibilityAttr = MCSA_Hidden |
This attribute, if not MCSA_Invalid, is used to declare a symbol as having hidden visibility. More... | |
MCSymbolAttr | HiddenDeclarationVisibilityAttr = MCSA_Hidden |
This attribute, if not MCSA_Invalid, is used to declare an undefined symbol as having hidden visibility. More... | |
MCSymbolAttr | ProtectedVisibilityAttr = MCSA_Protected |
This attribute, if not MCSA_Invalid, is used to declare a symbol as having protected visibility. More... | |
bool | SupportsDebugInformation = false |
True if target supports emission of debugging information. More... | |
ExceptionHandling | ExceptionsType = ExceptionHandling::None |
Exception handling format for the target. Defaults to None. More... | |
WinEH::EncodingType | WinEHEncodingType = WinEH::EncodingType::Invalid |
Windows exception handling data (.pdata) encoding. Defaults to Invalid. More... | |
bool | DwarfUsesRelocationsAcrossSections = true |
True if Dwarf2 output generally uses relocations for references to other .debug_* sections. More... | |
bool | DwarfFDESymbolsUseAbsDiff = false |
True if DWARF FDE symbol reference relocations should be replaced by an absolute difference. More... | |
bool | DwarfRegNumForCFI = false |
True if dwarf register numbers are printed instead of symbolic register names in .cfi_* directives. More... | |
bool | UseParensForSymbolVariant = false |
True if target uses parens to indicate the symbol variant instead of . More... | |
bool | SupportsExtendedDwarfLocDirective = true |
True if the target supports flags in ".loc" directive, false if only location is allowed. More... | |
std::vector< MCCFIInstruction > | InitialFrameState |
bool | UseIntegratedAssembler |
Should we use the integrated assembler? The integrated assembler should be enabled by default (by the constructors) when failing to parse a valid piece of assembly (inline or otherwise) is considered a bug. More... | |
bool | PreserveAsmComments |
Preserve Comments in assembly. More... | |
DebugCompressionType | CompressDebugSections = DebugCompressionType::None |
Compress DWARF debug sections. Defaults to no compression. More... | |
bool | UseLogicalShr = true |
True if the integrated assembler should interpret 'a >> b' constant expressions as logical rather than arithmetic. More... | |
bool | RelaxELFRelocations = true |
bool | HasMipsExpressions = false |
This class is intended to be used as a base class for asm properties and features specific to the target.
Definition at line 56 of file MCAsmInfo.h.
|
explicit |
Definition at line 32 of file MCAsmInfo.cpp.
References AsciiDirective, AscizDirective, Code16Directive, Code32Directive, Code64Directive, CommentString, Data16bitsDirective, Data32bitsDirective, Data64bitsDirective, Data8bitsDirective, llvm::Default, llvm::Enable, GlobalDirective, InlineAsmEnd, InlineAsmStart, LabelSuffix, LinkerPrivateGlobalPrefix, PreserveAsmComments, PrivateGlobalPrefix, PrivateLabelPrefix, SeparatorString, SupportsExtendedDwarfLocDirective, UseIntegratedAssembler, WeakDirective, ZeroDirective, and ~MCAsmInfo().
|
virtualdefault |
Referenced by MCAsmInfo().
|
inline |
Definition at line 601 of file MCAsmInfo.h.
Referenced by createAArch64MCAsmInfo(), createARCMCAsmInfo(), createARMMCAsmInfo(), createHexagonMCAsmInfo(), createMipsMCAsmInfo(), createPPCMCAsmInfo(), createSparcMCAsmInfo(), createSparcV9MCAsmInfo(), createSystemZMCAsmInfo(), createX86MCAsmInfo(), and createXCoreMCAsmInfo().
|
inline |
Definition at line 635 of file MCAsmInfo.h.
Referenced by getRelocType32(), and getRelocType64().
|
inline |
Definition at line 625 of file MCAsmInfo.h.
Referenced by isWeak().
|
inline |
Definition at line 594 of file MCAsmInfo.h.
Referenced by emitFDESymbol().
|
inline |
Definition at line 510 of file MCAsmInfo.h.
|
inline |
Definition at line 590 of file MCAsmInfo.h.
Referenced by llvm::DwarfTypeUnit::addGlobalType(), llvm::DwarfUnit::addSectionLabel(), llvm::MCGenDwarfInfo::Emit(), llvm::AsmPrinter::emitDwarfStringOffset(), llvm::AsmPrinter::emitDwarfSymbolReference(), llvm::DIEString::EmitValue(), getCIEVersion(), llvm::MCDwarfLineStr::MCDwarfLineStr(), and llvm::DIEString::SizeOf().
|
inline |
Definition at line 524 of file MCAsmInfo.h.
Referenced by llvm::MCStreamer::emitAbsoluteSymbolDiff(), and llvm::AsmPrinter::EmitJumpTableInfo().
|
inline |
Definition at line 513 of file MCAsmInfo.h.
Referenced by truncateToSize().
|
inline |
Definition at line 564 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::doInitialization().
|
inline |
Definition at line 566 of file MCAsmInfo.h.
References llvm::None.
|
inline |
Definition at line 520 of file MCAsmInfo.h.
Definition at line 518 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 519 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
|
inline |
Definition at line 509 of file MCAsmInfo.h.
Referenced by llvm::LLVMTargetMachine::addAsmPrinter(), EmitGCCInlineAsmStr(), getPlatformName(), LLVMCreateDisasmCPUFeatures(), LLVMSetDisasmOptions(), and llvm::X86MCExpr::printImpl().
|
inline |
Get the callee-saved register stack slot size in bytes.
Definition at line 400 of file MCAsmInfo.h.
Referenced by getDataAlignmentFactor().
Definition at line 506 of file MCAsmInfo.h.
Referenced by truncateToSize().
Definition at line 507 of file MCAsmInfo.h.
Referenced by truncateToSize().
Definition at line 508 of file MCAsmInfo.h.
Referenced by truncateToSize().
|
inline |
Get the code pointer size in bytes.
Definition at line 396 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::doFinalization(), dwarfCCToCodeView(), llvm::MCDwarfLineTableHeader::Emit(), llvm::MCDwarfFrameEmitter::Emit(), llvm::DwarfUnit::emitCommonHeader(), EmitDwarfLineTable(), llvm::AsmPrinter::EmitDwarfOffset(), EmitGenDwarfAranges(), EmitGenDwarfInfo(), EmitGenDwarfRanges(), emitListsTableHeaderStart(), emitLoclistsTableHeader(), emitRangeList(), llvm::AsmPrinter::emitXRayTable(), llvm::MCDwarfLineAddr::FixedEncode(), getCIEVersion(), getSizeForEncoding(), llvm::DIELabel::SizeOf(), llvm::DIEDelta::SizeOf(), llvm::DIEEntry::SizeOf(), llvm::DIELocList::SizeOf(), and useCompactUnwind().
|
inline |
Definition at line 530 of file MCAsmInfo.h.
Referenced by getPlatformName().
|
inline |
This indicates the column (zero-based) at which asm comments should be printed.
Definition at line 484 of file MCAsmInfo.h.
Referenced by emitComments(), and printDwarfFileDirective().
|
inline |
Definition at line 486 of file MCAsmInfo.h.
Referenced by llvm::AsmLexer::AsmLexer(), emitComments(), emitNullTerminatedSymbolName(), llvm::HexagonInstrInfo::getInlineAsmLength(), getPlatformName(), isAsmComment(), llvm::AsmLexer::peekTokens(), llvm::MCInstPrinter::printAnnotation(), printDwarfFileDirective(), llvm::AArch64InstPrinter::printInst(), llvm::AsmPrinter::PrintSpecial(), llvm::MCSectionWasm::PrintSwitchToSection(), llvm::MCSectionELF::PrintSwitchToSection(), and truncateToSize().
Definition at line 415 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 416 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 417 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 414 of file MCAsmInfo.h.
Referenced by llvm::NVPTXTargetStreamer::emitRawBytes(), llvm::MCTargetStreamer::emitRawBytes(), and PrintQuotedString().
|
inline |
Definition at line 479 of file MCAsmInfo.h.
Definition at line 421 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 420 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
|
inline |
Definition at line 570 of file MCAsmInfo.h.
Referenced by llvm::TargetPassConfig::addPassesToHandleExceptions(), AppendEndToFunction(), llvm::ARMException::beginFunction(), llvm::EHStreamer::computeCallSiteTable(), llvm::X86TargetMachine::createPassConfig(), llvm::AsmPrinter::doInitialization(), llvm::AsmPrinter::emitCFIInstruction(), llvm::EHStreamer::emitExceptionTable(), llvm::ARMAsmPrinter::EmitJumpTableTBInst(), llvm::ARMException::endFunction(), eraseDeadBBsAndChildren(), llvm::ARMElfTargetObjectFile::getTTypeGlobalReference(), llvm::TargetLoweringObjectFileELF::Initialize(), llvm::ARMSubtarget::isXRaySupported(), matchPair(), llvm::AsmPrinter::needsCFIMoves(), and llvm::WebAssemblyFrameLowering::needsPrologForEH().
|
virtual |
Reimplemented in llvm::SparcELFMCAsmInfo.
Definition at line 86 of file MCAsmInfo.cpp.
References Context, llvm::MCSymbolRefExpr::create(), llvm::MCBinaryExpr::createSub(), llvm::dwarf::DW_EH_PE_pcrel, llvm::MCStreamer::EmitLabel(), and llvm::MCStreamer::getContext().
Referenced by emitFDESymbol(), llvm::SparcELFMCAsmInfo::getExprForFDESymbol(), and getExprForPersonalitySymbol().
|
virtual |
Reimplemented in llvm::X86_64MCAsmInfoDarwin, llvm::SparcELFMCAsmInfo, and llvm::AArch64MCAsmInfoDarwin.
Definition at line 79 of file MCAsmInfo.cpp.
References getExprForFDESymbol().
Referenced by EmitPersonality(), and llvm::SparcELFMCAsmInfo::getExprForPersonalitySymbol().
Definition at line 522 of file MCAsmInfo.h.
Referenced by getPlatformName().
Definition at line 419 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 418 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
|
inline |
Definition at line 556 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitBasicBlockEnd().
|
inline |
Definition at line 554 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitBasicBlockEnd().
|
inline |
Definition at line 605 of file MCAsmInfo.h.
Referenced by llvm::MCStreamer::EmitCFIStartProc(), and getCIEVersion().
Definition at line 505 of file MCAsmInfo.h.
Referenced by EmitGCCInlineAsmStr().
Definition at line 504 of file MCAsmInfo.h.
Referenced by EmitGCCInlineAsmStr().
Definition at line 487 of file MCAsmInfo.h.
Referenced by truncateToSize().
|
inline |
Definition at line 534 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitGlobalVariable(), and getPlatformName().
|
inline |
Definition at line 498 of file MCAsmInfo.h.
Referenced by llvm::MCContext::createLinkerPrivateTempSymbol().
|
inline |
Definition at line 477 of file MCAsmInfo.h.
Referenced by llvm::HexagonInstrInfo::getInlineAsmLength(), and llvm::TargetInstrInfo::getInlineAsmLength().
|
inline |
Definition at line 478 of file MCAsmInfo.h.
Referenced by llvm::MCDwarfLineTableHeader::Emit(), getCIEVersion(), and ScaleAddrDelta().
|
inlinevirtual |
Targets can implement this method to specify a section to switch to if the translation unit doesn't have any trampolines that require an executable stack.
Definition at line 428 of file MCAsmInfo.h.
References Name, and llvm::ARMBuildAttrs::Section.
Referenced by llvm::AsmPrinter::doFinalization(), and llvm::MCELFStreamer::InitSections().
|
inline |
Definition at line 491 of file MCAsmInfo.h.
Referenced by llvm::MCContext::createTempSymbol(), llvm::LanaiMCInstLower::GetConstantPoolIndexSymbol(), llvm::MCStreamer::getDwarfLineTableSymbol(), llvm::LanaiMCInstLower::GetJumpTableSymbol(), llvm::MCContext::getOrCreateFrameAllocSymbol(), llvm::MCContext::getOrCreateLSDASymbol(), and llvm::MCContext::getOrCreateParentFrameOffsetSymbol().
|
inline |
Definition at line 492 of file MCAsmInfo.h.
Referenced by llvm::MachineBasicBlock::getSymbol().
|
inline |
Definition at line 560 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitBasicBlockEnd().
Definition at line 480 of file MCAsmInfo.h.
Referenced by llvm::HexagonInstrInfo::getInlineAsmLength(), llvm::TargetInstrInfo::getInlineAsmLength(), llvm::AsmLexer::LexToken(), llvm::AsmLexer::peekTokens(), and truncateToSize().
|
inline |
Definition at line 521 of file MCAsmInfo.h.
Referenced by parseHexOcta(), and PrintQuotedString().
Definition at line 423 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 422 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
Definition at line 544 of file MCAsmInfo.h.
Referenced by getPlatformName().
Definition at line 545 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::doFinalization(), llvm::AsmPrinter::emitGlobalGOTEquivs(), and getPlatformName().
|
inline |
Definition at line 571 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::doInitialization().
Definition at line 517 of file MCAsmInfo.h.
Referenced by PrintQuotedString().
|
inline |
Definition at line 528 of file MCAsmInfo.h.
Referenced by forceExpAbs().
|
inline |
Definition at line 543 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::emitGlobalGOTEquivs().
|
inline |
Definition at line 475 of file MCAsmInfo.h.
Referenced by getWinCFISection().
|
inline |
Definition at line 476 of file MCAsmInfo.h.
Referenced by llvm::TargetLoweringObjectFileCOFF::getSectionForConstant().
|
inline |
Definition at line 539 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitDebugValue(), llvm::AsmPrinter::EmitFunctionBody(), llvm::AsmPrinter::emitGlobalGOTEquivs(), llvm::AsmPrinter::EmitGlobalVariable(), and getPlatformName().
|
inline |
Definition at line 538 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitDebugValue().
|
inline |
Definition at line 541 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitSpecialLLVMGlobal(), and printDwarfFileDirective().
|
inline |
Definition at line 494 of file MCAsmInfo.h.
|
inline |
Definition at line 552 of file MCAsmInfo.h.
Referenced by canBeHidden().
|
inline |
Definition at line 474 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitGlobalVariable().
|
inline |
Definition at line 473 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitGlobalVariable().
|
inline |
Definition at line 637 of file MCAsmInfo.h.
Referenced by llvm::AsmLexer::LexToken().
|
inline |
Definition at line 542 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitSpecialLLVMGlobal(), and getPlatformName().
|
inline |
Definition at line 540 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::doInitialization(), and PrintQuotedString().
|
inline |
Definition at line 410 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitDebugValue(), llvm::AsmPrinter::EmitFunctionBody(), llvm::AsmPrinter::EmitGlobalConstant(), and getPlatformName().
|
inline |
Definition at line 548 of file MCAsmInfo.h.
Referenced by canBeHidden().
|
inline |
Definition at line 546 of file MCAsmInfo.h.
Referenced by canBeHidden().
|
inline |
True if the target is little endian.
Definition at line 405 of file MCAsmInfo.h.
Referenced by llvm::ARMTargetStreamer::emitInst(), llvm::MCStreamer::EmitIntValue(), llvm::MCDwarfFrameEmitter::EncodeAdvanceLoc(), parseHexOcta(), PrintCFIEscape(), and PrintQuotedString().
True if the section is atomized using the symbols in it.
This is false if the section is not atomized at all (most ELF sections) or if it is atomized based on its contents (MachO' __TEXT,__cstring for example).
Reimplemented in llvm::MCAsmInfoDarwin.
Definition at line 74 of file MCAsmInfo.cpp.
Referenced by canUseLocalRelocation(), canUsePrivateLabel(), llvm::MCAssembler::getAtom(), and getFixupKindLog2Size().
|
inline |
True if target stack grow up.
Definition at line 408 of file MCAsmInfo.h.
Referenced by getDataAlignmentFactor().
Return true if the identifier Name
does not need quotes to be syntactically correct.
Definition at line 105 of file MCAsmInfo.cpp.
References C, llvm::StringRef::empty(), and isAcceptableChar().
Referenced by llvm::MCSymbol::print().
|
inline |
Definition at line 467 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::emitDwarfSymbolReference(), EmitGenDwarfAranges(), EmitGenDwarfInfo(), and llvm::AsmPrinter::EmitLabelPlusOffset().
|
inline |
Definition at line 490 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::SetupMachineFunction().
|
inline |
Return true if assembly (inline or otherwise) should be parsed.
Definition at line 618 of file MCAsmInfo.h.
|
inline |
Definition at line 629 of file MCAsmInfo.h.
Referenced by llvm::LLVMTargetMachine::initAsmInfo().
|
inline |
Definition at line 573 of file MCAsmInfo.h.
Referenced by llvm::LLVMTargetMachine::initAsmInfo().
|
inlinevirtual |
Set whether assembly (inline or otherwise) should be parsed.
Definition at line 621 of file MCAsmInfo.h.
Referenced by llvm::LLVMTargetMachine::initAsmInfo().
|
inline |
Definition at line 636 of file MCAsmInfo.h.
Referenced by llvm::LLVMTargetMachine::initAsmInfo().
|
inlinevirtual |
Set whether assembly (inline or otherwise) should be parsed.
Reimplemented in llvm::ARMELFMCAsmInfo.
Definition at line 613 of file MCAsmInfo.h.
Referenced by llvm::LLVMTargetMachine::initAsmInfo().
Return true if the .section directive should be omitted when emitting SectionName
.
For example:
shouldOmitSectionDirective(".text")
returns false => .section .text,#alloc,#execinstr returns true => .text
Reimplemented in llvm::NVPTXMCAsmInfo, and llvm::AMDGPUMCAsmInfo.
Definition at line 119 of file MCAsmInfo.cpp.
References usesELFSectionDirectiveForBSS().
Referenced by llvm::AMDGPUMCAsmInfo::shouldOmitSectionDirective(), llvm::MCSectionWasm::ShouldOmitSectionDirective(), and llvm::MCSectionELF::ShouldOmitSectionDirective().
|
inline |
Definition at line 633 of file MCAsmInfo.h.
Referenced by getGNUBinOpPrecedence().
|
inline |
Definition at line 597 of file MCAsmInfo.h.
Referenced by printDwarfFileDirective().
|
inline |
Definition at line 511 of file MCAsmInfo.h.
Referenced by llvm::MCSymbol::print().
|
inline |
Definition at line 489 of file MCAsmInfo.h.
Referenced by llvm::AsmPrinter::EmitDebugValue().
|
inline |
Definition at line 595 of file MCAsmInfo.h.
Referenced by printDwarfFileDirective().
|
inline |
Return true if assembly (inline or otherwise) should be parsed.
Definition at line 610 of file MCAsmInfo.h.
Referenced by srcMgrDiagHandler().
|
inline |
Definition at line 596 of file MCAsmInfo.h.
|
inline |
Returns true if the exception handling method for the platform uses call frame information to unwind.
Definition at line 579 of file MCAsmInfo.h.
References llvm::WinEH::ARM, and llvm::DwarfCFI.
Referenced by llvm::DwarfCFIException::beginFunction(), llvm::EHStreamer::computeCallSiteTable(), and llvm::DwarfCFIException::endModule().
|
inline |
Definition at line 463 of file MCAsmInfo.h.
Referenced by shouldOmitSectionDirective().
|
inline |
Definition at line 459 of file MCAsmInfo.h.
Referenced by llvm::MCSectionELF::PrintSwitchToSection().
|
inline |
Definition at line 584 of file MCAsmInfo.h.
References llvm::WinEH::Invalid, llvm::WinEH, and llvm::WinEH::X86.
Referenced by llvm::AArch64TargetMachine::AArch64TargetMachine(), llvm::WinException::beginFunction(), llvm::X86FrameLowering::canUseLEAForSPInEpilogue(), llvm::X86FrameLowering::eliminateCallFramePseudoInstr(), llvm::X86FrameLowering::emitEpilogue(), llvm::AArch64FrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::MCStreamer::EmitWinCFIStartProc(), llvm::WinException::endFunclet(), llvm::MCStreamer::EnsureValidWinFrameInfo(), ExpandMOVImmSExti8(), llvm::X86FrameLowering::getFrameIndexReference(), giveUpWithRemarks(), LowerINTRINSIC_W_CHAIN(), llvm::AsmPrinter::needsSEHMoves(), needsWinCFI(), and X86ChooseCmpImmediateOpcode().
If this is true (the default) then the asmprinter emits ".align N" directives, where N is the number of bytes to align to.
Otherwise, it emits ".align log2(N)", e.g. 3 to align to an 8 byte boundary. Defaults to true.
Definition at line 231 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMCOFFMCAsmInfoMicrosoft::ARMCOFFMCAsmInfoMicrosoft(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::MSP430MCAsmInfo::MSP430MCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::RISCVMCAsmInfo::RISCVMCAsmInfo(), and llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo().
This is true if the assembler allows @ characters in symbol names.
Defaults to false.
Definition at line 157 of file MCAsmInfo.h.
Referenced by llvm::ARCMCAsmInfo::ARCMCAsmInfo(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
This directive allows emission of an ascii string with the standard C escape characters embedded into it.
If a target doesn't support this, it can be set to null. Defaults to "\t.ascii\t"
Definition at line 179 of file MCAsmInfo.h.
Referenced by MCAsmInfo(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
If not null, this allows for special handling of zero terminated strings on this target.
This is commonly supported as ".asciz". If a target doesn't support this, it can be set to null. Defaults to "\t.asciz\t"
Definition at line 184 of file MCAsmInfo.h.
Referenced by llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), MCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
|
protected |
Which dialect of an assembler variant to use. Defaults to 0.
Definition at line 153 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::X86ELFMCAsmInfo::X86ELFMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
|
protected |
Size of the stack slot reserved for callee-saved registers, in bytes.
Default is same as pointer size.
Definition at line 67 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AVRMCAsmInfo::AVRMCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::MSP430MCAsmInfo::MSP430MCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::RISCVMCAsmInfo::RISCVMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), llvm::X86ELFMCAsmInfo::X86ELFMCAsmInfo(), and llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin().
These are assembly directives that tells the assembler to interpret the following instructions differently.
Defaults to ".code16", ".code32", ".code64".
Definition at line 148 of file MCAsmInfo.h.
Referenced by llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), and MCAsmInfo().
Definition at line 149 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), and MCAsmInfo().
Definition at line 150 of file MCAsmInfo.h.
Referenced by MCAsmInfo().
|
protected |
Code pointer size in bytes. Default is 4.
Definition at line 63 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::AVRMCAsmInfo::AVRMCAsmInfo(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::MSP430MCAsmInfo::MSP430MCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::RISCVMCAsmInfo::RISCVMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), llvm::X86ELFMCAsmInfo::X86ELFMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
True is .comm's and .lcomms optional alignment is to be specified in bytes instead of log2(n).
Defaults to true.
Definition at line 267 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), and llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo().
|
protected |
This indicates the comment character used by the assembler.
Defaults to "#"
Definition at line 114 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMCOFFMCAsmInfoMicrosoft::ARMCOFFMCAsmInfoMicrosoft(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), llvm::AVRMCAsmInfo::AVRMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), MCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::MSP430MCAsmInfo::MSP430MCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::RISCVMCAsmInfo::RISCVMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
|
protected |
Compress DWARF debug sections. Defaults to no compression.
Definition at line 377 of file MCAsmInfo.h.
Definition at line 191 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), MCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::RISCVMCAsmInfo::RISCVMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
Definition at line 192 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), MCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::RISCVMCAsmInfo::RISCVMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
Definition at line 193 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), MCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
These directives are used to output some unit of integer data to the current section.
If a data directive is set to null, smaller data directives will be used to emit the large sizes. Defaults to "\t.byte\t", "\t.short\t", "\t.long\t", "\t.quad\t"
Definition at line 190 of file MCAsmInfo.h.
Referenced by MCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), and llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo().
The '$' token, when not referencing an identifier or constant, refers to the current PC.
Defaults to false.
Definition at line 106 of file MCAsmInfo.h.
Referenced by llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo().
If non-null, directives that are used to emit a word/dword which should be relocated as a 32/64-bit DTP/TP-relative offset, e.g.
.dtprelword/ .dtpreldword/.tprelword/.tpreldword on Mips.
Definition at line 208 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
Definition at line 209 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
True if DWARF FDE symbol reference relocations should be replaced by an absolute difference.
Definition at line 346 of file MCAsmInfo.h.
Referenced by llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin().
True if dwarf register numbers are printed instead of symbolic register names in .cfi_* directives.
Defaults to false.
Definition at line 350 of file MCAsmInfo.h.
Referenced by llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::ARMELFMCAsmInfo::setUseIntegratedAssembler(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
True if Dwarf2 output generally uses relocations for references to other .debug_* sections.
Definition at line 342 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), and llvm::BPFMCAsmInfo::setDwarfUsesRelocationsAcrossSections().
|
protected |
Exception handling format for the target. Defaults to None.
Definition at line 335 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMCOFFMCAsmInfoMicrosoft::ARMCOFFMCAsmInfoMicrosoft(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::X86ELFMCAsmInfo::X86ELFMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
This is the directive used to declare a global entity.
Defaults to ".globl".
Definition at line 241 of file MCAsmInfo.h.
Referenced by MCAsmInfo(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
If non-null, a directive that is used to emit a word which should be relocated as a 32-bit GP-relative offset, e.g.
.gpword on Mips or .gprel32 on Alpha. Defaults to nullptr.
Definition at line 203 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
If non-null, a directive that is used to emit a word which should be relocated as a 64-bit GP-relative offset, e.g.
.gpdword on Mips. Defaults to nullptr.
Definition at line 198 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
False if the assembler requires that we use.
instead of
Defaults to true.
Definition at line 263 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), and llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
True if this target supports the MachO .alt_entry directive.
Defaults to false.
Definition at line 295 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
True if this is a non-GNU COFF target.
The COFF port of the GNU linker doesn't handle associative comdats in the way that we would like to use them.
Definition at line 90 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), and llvm::MCAsmInfoGNUCOFF::MCAsmInfoGNUCOFF().
True if this is a non-GNU COFF target.
For GNU targets, we don't generate constants into comdat sections.
Definition at line 94 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), and llvm::MCAsmInfoGNUCOFF::MCAsmInfoGNUCOFF().
True if the target has .type and .size directives, this is true for most ELF targets.
Defaults to true.
Definition at line 279 of file MCAsmInfo.h.
Referenced by llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
Definition at line 275 of file MCAsmInfo.h.
Referenced by llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
True if the target has a .ident directive, this is true for ELF targets.
Defaults to false.
Definition at line 287 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::MCAsmInfoELF::MCAsmInfoELF(), and llvm::MCAsmInfoWasm::MCAsmInfoWasm().
True if we have a .linkonce directive.
This is used on cygwin/mingw. Defaults to false.
Definition at line 314 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoCOFF::MCAsmInfoCOFF().
True if this is a MachO target that supports the macho-specific .tbss directive for emitting thread local BSS Symbols.
Default is false.
Definition at line 85 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
True if this is a MachO target that supports the macho-specific .zerofill directive for emitting BSS Symbols.
Default is false.
Definition at line 81 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
Definition at line 389 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
True if this target supports the MachO .no_dead_strip directive.
Defaults to false.
Definition at line 291 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), and llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
True if the target has a single parameter .file directive, this is true for ELF targets.
Defaults to true.
Definition at line 283 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
True if this target has the MachO .subsections_via_symbols directive.
Default is false.
Definition at line 77 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
True if we have a directive to declare a global as being a weak defined symbol that can be hidden (unexported).
Defaults to false.
Definition at line 310 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), and llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin().
True if we have a directive to declare a global as being a weak defined symbol.
Defaults to false.
Definition at line 306 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
|
protected |
This attribute, if not MCSA_Invalid, is used to declare an undefined symbol as having hidden visibility.
Defaults to MCSA_Hidden.
Definition at line 322 of file MCAsmInfo.h.
Referenced by llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
|
protected |
This attribute, if not MCSA_Invalid, is used to declare a symbol as having hidden visibility.
Defaults to MCSA_Hidden.
Definition at line 318 of file MCAsmInfo.h.
Referenced by llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
|
protected |
Definition at line 362 of file MCAsmInfo.h.
Definition at line 143 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), MCAsmInfo(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
If these are nonempty, they contain a directive to emit before and after an inline assembly statement.
Defaults to "#APP\n", "#NO_APP\n"
Definition at line 142 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), MCAsmInfo(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
True if target is little endian. Default is true.
Definition at line 70 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), and llvm::SystemZMCAsmInfo::SystemZMCAsmInfo().
This is appended to emitted labels. Defaults to ":".
Definition at line 117 of file MCAsmInfo.h.
Referenced by MCAsmInfo().
|
protected |
Describes if the .lcomm directive for the target supports an alignment argument and how it is interpreted.
Defaults to NoAlignment.
Definition at line 271 of file MCAsmInfo.h.
Referenced by llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), and llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo().
|
protected |
This prefix is used for symbols that should be passed through the assembler but be removed by the linker.
This is 'l' on Darwin, currently used for some ObjC metadata. The default of "" meast that for this system a plain private symbol should be used. Defaults to "".
Definition at line 138 of file MCAsmInfo.h.
Referenced by MCAsmInfo(), and llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
|
protected |
This is the maximum possible length of an instruction, which is needed to compute the size of an inline asm.
Defaults to 4.
Definition at line 98 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMCOFFMCAsmInfoMicrosoft::ARMCOFFMCAsmInfoMicrosoft(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), and llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin().
|
protected |
Every possible instruction length is a multiple of this value.
Factored out in .debug_frame and .debug_line. Defaults to 1.
Definition at line 102 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), and llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo().
Definition at line 223 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoCOFF::MCAsmInfoCOFF().
Definition at line 123 of file MCAsmInfo.h.
Referenced by llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo().
|
protected |
Preserve Comments in assembly.
Definition at line 374 of file MCAsmInfo.h.
Referenced by MCAsmInfo().
|
protected |
This prefix is used for globals like constant pool entries that are completely private to the .s file and should not have names in the .o file.
Defaults to "L"
Definition at line 128 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMCOFFMCAsmInfoMicrosoft::ARMCOFFMCAsmInfoMicrosoft(), llvm::AVRMCAsmInfo::AVRMCAsmInfo(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), MCAsmInfo(), llvm::MCAsmInfoELF::MCAsmInfoELF(), llvm::MCAsmInfoWasm::MCAsmInfoWasm(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
|
protected |
This prefix is used for labels for basic blocks.
Defaults to the same as PrivateGlobalPrefix.
Definition at line 132 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMCOFFMCAsmInfoMicrosoft::ARMCOFFMCAsmInfoMicrosoft(), MCAsmInfo(), llvm::MCAsmInfoELF::MCAsmInfoELF(), llvm::MCAsmInfoWasm::MCAsmInfoWasm(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
|
protected |
This attribute, if not MCSA_Invalid, is used to declare a symbol as having protected visibility.
Defaults to MCSA_Protected
Definition at line 326 of file MCAsmInfo.h.
Referenced by llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
Definition at line 385 of file MCAsmInfo.h.
This string, if specified, is used to separate instructions from each other when on the same line.
Defaults to ';'
Definition at line 110 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), MCAsmInfo(), llvm::MSP430MCAsmInfo::MSP430MCAsmInfo(), and llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin().
True if the expression .long f - g uses a relocation but it can be suppressed by writing a = f - g .long a.
Definition at line 248 of file MCAsmInfo.h.
Referenced by llvm::MCAsmInfoDarwin::MCAsmInfoDarwin().
True if target stack grow up. Default is false.
Definition at line 73 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo().
This is true if this target uses "Sun Style" syntax for section switching ("#alloc,#write" etc) instead of the normal ELF syntax (,"a,w") in .section directives.
Defaults to false.
Definition at line 216 of file MCAsmInfo.h.
Referenced by llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), and llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo().
True if target supports emission of debugging information.
Defaults to false.
Definition at line 332 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::RISCVMCAsmInfo::RISCVMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), llvm::X86ELFMCAsmInfo::X86ELFMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().
True if the target supports flags in ".loc" directive, false if only location is allowed.
Definition at line 358 of file MCAsmInfo.h.
Referenced by MCAsmInfo(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
If this is true, symbol names with invalid characters will be printed in quotes.
Definition at line 161 of file MCAsmInfo.h.
Referenced by llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
|
protected |
If non-zero, this is used to fill the executable space created as the result of a alignment directive.
Defaults to 0
Definition at line 235 of file MCAsmInfo.h.
Referenced by llvm::X86ELFMCAsmInfo::X86ELFMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
Definition at line 210 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
Definition at line 211 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
Definition at line 120 of file MCAsmInfo.h.
Referenced by llvm::MipsMCAsmInfo::MipsMCAsmInfo().
This is true if data region markers should be printed as ".data_region/.end_data_region" directives.
If false, use "$d/$a" labels instead.
Definition at line 166 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), and llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin().
|
protected |
Should we use the integrated assembler? The integrated assembler should be enabled by default (by the constructors) when failing to parse a valid piece of assembly (inline or otherwise) is considered a bug.
It may then be overridden after construction (see LLVMTargetMachine::initAsmInfo()).
Definition at line 371 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo(), llvm::ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin(), llvm::AVRMCAsmInfo::AVRMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), MCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(), llvm::ARMELFMCAsmInfo::setUseIntegratedAssembler(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::X86ELFMCAsmInfo::X86ELFMCAsmInfo(), llvm::X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
True if the integrated assembler should interpret 'a >> b' constant expressions as logical rather than arithmetic.
Definition at line 381 of file MCAsmInfo.h.
Referenced by llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), and llvm::MCAsmInfoCOFF::MCAsmInfoCOFF().
True if target uses parens to indicate the symbol variant instead of .
For example, foo(plt) instead of foo. Defaults to false.
Definition at line 354 of file MCAsmInfo.h.
Referenced by llvm::ARMCOFFMCAsmInfoGNU::ARMCOFFMCAsmInfoGNU(), and llvm::ARMELFMCAsmInfo::ARMELFMCAsmInfo().
This is true if this target uses ELF '.section' directive before the '.bss' one.
It's used for PPC/Linux which doesn't support the '.bss' directive only. Defaults to false.
Definition at line 221 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoDarwin::AArch64MCAsmInfoDarwin(), llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::AVRMCAsmInfo::AVRMCAsmInfo(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), llvm::MSP430MCAsmInfo::MSP430MCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), and llvm::SystemZMCAsmInfo::SystemZMCAsmInfo().
Used to declare a global as being a weak symbol. Defaults to ".weak".
Definition at line 298 of file MCAsmInfo.h.
Referenced by MCAsmInfo(), and llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo().
This directive, if non-null, is used to declare a global as being a weak undefined symbol.
Defaults to nullptr.
Definition at line 302 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoELF::AArch64MCAsmInfoELF(), llvm::AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(), llvm::BPFMCAsmInfo::BPFMCAsmInfo(), llvm::LanaiMCAsmInfo::LanaiMCAsmInfo(), llvm::MCAsmInfoCOFF::MCAsmInfoCOFF(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::MCAsmInfoELF::MCAsmInfoELF(), and llvm::MCAsmInfoWasm::MCAsmInfoWasm().
|
protected |
Windows exception handling data (.pdata) encoding. Defaults to Invalid.
Definition at line 338 of file MCAsmInfo.h.
Referenced by llvm::AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF(), llvm::AArch64MCAsmInfoMicrosoftCOFF::AArch64MCAsmInfoMicrosoftCOFF(), llvm::X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(), and llvm::X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft().
This should be set to the directive used to get some number of zero bytes emitted to the current section.
Common cases are "\t.zero\t" and "\t.space\t". If this is set to null, the Data*bitsDirective's will be used to emit zero bytes. Defaults to "\t.zero\t"
Definition at line 174 of file MCAsmInfo.h.
Referenced by llvm::ARCMCAsmInfo::ARCMCAsmInfo(), llvm::HexagonMCAsmInfo::HexagonMCAsmInfo(), MCAsmInfo(), llvm::MCAsmInfoDarwin::MCAsmInfoDarwin(), llvm::MipsMCAsmInfo::MipsMCAsmInfo(), llvm::NVPTXMCAsmInfo::NVPTXMCAsmInfo(), llvm::PPCELFMCAsmInfo::PPCELFMCAsmInfo(), llvm::SparcELFMCAsmInfo::SparcELFMCAsmInfo(), llvm::SystemZMCAsmInfo::SystemZMCAsmInfo(), llvm::WebAssemblyMCAsmInfo::WebAssemblyMCAsmInfo(), and llvm::XCoreMCAsmInfo::XCoreMCAsmInfo().