|
| | MCAsmInfo () |
| |
| virtual | ~MCAsmInfo () |
| |
| unsigned | getCodePointerSize () const |
| | Get the code pointer size in bytes. More...
|
| |
| unsigned | getCalleeSaveStackSlotSize () const |
| | Get the callee-saved register stack slot size in bytes. More...
|
| |
| bool | isLittleEndian () const |
| | True if the target is little endian. More...
|
| |
| bool | isStackGrowthDirectionUp () const |
| | True if target stack grow up. More...
|
| |
| bool | hasSubsectionsViaSymbols () const |
| |
| const char * | getData8bitsDirective () const |
| |
| const char * | getData16bitsDirective () const |
| |
| const char * | getData32bitsDirective () const |
| |
| const char * | getData64bitsDirective () const |
| |
| const char * | getGPRel64Directive () const |
| |
| const char * | getGPRel32Directive () const |
| |
| const char * | getDTPRel64Directive () const |
| |
| const char * | getDTPRel32Directive () const |
| |
| const char * | getTPRel64Directive () const |
| |
| const char * | getTPRel32Directive () const |
| |
| virtual MCSection * | getNonexecutableStackSection (MCContext &Ctx) const |
| | 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. More...
|
| |
| virtual bool | isSectionAtomizableBySymbols (const MCSection &Section) const |
| | True if the section is atomized using the symbols in it. More...
|
| |
| virtual const MCExpr * | getExprForPersonalitySymbol (const MCSymbol *Sym, unsigned Encoding, MCStreamer &Streamer) const |
| |
| virtual const MCExpr * | getExprForFDESymbol (const MCSymbol *Sym, unsigned Encoding, MCStreamer &Streamer) const |
| |
| virtual bool | isValidUnquotedName (StringRef Name) const |
| | Return true if the identifier Name does not need quotes to be syntactically correct. More...
|
| |
| virtual bool | shouldOmitSectionDirective (StringRef SectionName) const |
| | Return true if the .section directive should be omitted when emitting SectionName. More...
|
| |
| bool | usesSunStyleELFSectionSwitchSyntax () const |
| |
| bool | usesELFSectionDirectiveForBSS () const |
| |
| bool | needsDwarfSectionOffsetDirective () const |
| |
| bool | hasMachoZeroFillDirective () const |
| |
| bool | hasMachoTBSSDirective () const |
| |
| bool | hasCOFFAssociativeComdats () const |
| |
| bool | hasCOFFComdatConstants () const |
| |
| unsigned | getMaxInstLength () const |
| |
| unsigned | getMinInstAlignment () const |
| |
| bool | getDollarIsPC () const |
| |
| const char * | getSeparatorString () const |
| |
| unsigned | getCommentColumn () const |
| | This indicates the column (zero-based) at which asm comments should be printed. More...
|
| |
| StringRef | getCommentString () const |
| |
| const char * | getLabelSuffix () const |
| |
| bool | useAssignmentForEHBegin () const |
| |
| bool | needsLocalForSize () const |
| |
| StringRef | getPrivateGlobalPrefix () const |
| |
| StringRef | getPrivateLabelPrefix () const |
| |
| bool | hasLinkerPrivateGlobalPrefix () const |
| |
| StringRef | getLinkerPrivateGlobalPrefix () const |
| |
| const char * | getInlineAsmStart () const |
| |
| const char * | getInlineAsmEnd () const |
| |
| const char * | getCode16Directive () const |
| |
| const char * | getCode32Directive () const |
| |
| const char * | getCode64Directive () const |
| |
| unsigned | getAssemblerDialect () const |
| |
| bool | doesAllowAtInName () const |
| |
| bool | supportsNameQuoting () const |
| |
| bool | doesSupportDataRegionDirectives () const |
| |
| const char * | getZeroDirective () const |
| |
| const char * | getAsciiDirective () const |
| |
| const char * | getAscizDirective () const |
| |
| bool | getAlignmentIsInBytes () const |
| |
| unsigned | getTextAlignFillValue () const |
| |
| const char * | getGlobalDirective () const |
| |
| bool | doesSetDirectiveSuppressReloc () const |
| |
| bool | hasAggressiveSymbolFolding () const |
| |
| bool | getCOMMDirectiveAlignmentIsInBytes () const |
| |
| LCOMM::LCOMMType | getLCOMMDirectiveAlignmentType () const |
| |
| bool | hasFunctionAlignment () const |
| |
| bool | hasDotTypeDotSizeDirective () const |
| |
| bool | hasSingleParameterDotFile () const |
| |
| bool | hasIdentDirective () const |
| |
| bool | hasNoDeadStrip () const |
| |
| bool | hasAltEntry () const |
| |
| const char * | getWeakDirective () const |
| |
| const char * | getWeakRefDirective () const |
| |
| bool | hasWeakDefDirective () const |
| |
| bool | hasWeakDefCanBeHiddenDirective () const |
| |
| bool | hasLinkOnceDirective () const |
| |
| MCSymbolAttr | getHiddenVisibilityAttr () const |
| |
| MCSymbolAttr | getHiddenDeclarationVisibilityAttr () const |
| |
| MCSymbolAttr | getProtectedVisibilityAttr () const |
| |
| bool | doesSupportDebugInformation () const |
| |
| bool | doesSupportExceptionHandling () const |
| |
| ExceptionHandling | getExceptionHandlingType () const |
| |
| WinEH::EncodingType | getWinEHEncodingType () const |
| |
| void | setExceptionsType (ExceptionHandling EH) |
| |
| bool | usesCFIForEH () const |
| | Returns true if the exception handling method for the platform uses call frame information to unwind. More...
|
| |
| bool | usesWindowsCFI () const |
| |
| bool | doesDwarfUseRelocationsAcrossSections () const |
| |
| bool | doDwarfFDESymbolsUseAbsDiff () const |
| |
| bool | useDwarfRegNumForCFI () const |
| |
| bool | useParensForSymbolVariant () const |
| |
| bool | supportsExtendedDwarfLocDirective () const |
| |
| void | addInitialFrameState (const MCCFIInstruction &Inst) |
| |
| const std::vector< MCCFIInstruction > & | getInitialFrameState () const |
| |
| bool | useIntegratedAssembler () const |
| | Return true if assembly (inline or otherwise) should be parsed. More...
|
| |
| virtual void | setUseIntegratedAssembler (bool Value) |
| | Set whether assembly (inline or otherwise) should be parsed. More...
|
| |
| bool | preserveAsmComments () const |
| | Return true if assembly (inline or otherwise) should be parsed. More...
|
| |
| virtual void | setPreserveAsmComments (bool Value) |
| | Set whether assembly (inline or otherwise) should be parsed. More...
|
| |
| DebugCompressionType | compressDebugSections () const |
| |
| void | setCompressDebugSections (DebugCompressionType CompressDebugSections) |
| |
| bool | shouldUseLogicalShr () const |
| |
| bool | canRelaxRelocations () const |
| |
| void | setRelaxELFRelocations (bool V) |
| |
| bool | hasMipsExpressions () const |
| |
| 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 |
| |