LLVM  7.0.0svn
llvm::MCAsmInfoWasm Class Reference

#include "llvm/MC/MCAsmInfoWasm.h"

Inheritance diagram for llvm::MCAsmInfoWasm:
[legend]
Collaboration diagram for llvm::MCAsmInfoWasm:
[legend]

## Protected Member Functions

MCAsmInfoWasm ()

## Additional Inherited Members

Public Member Functions inherited from llvm::MCAsmInfo
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 chargetData8bitsDirective () const

const chargetData16bitsDirective () const

const chargetData32bitsDirective () const

const chargetData64bitsDirective () const

const chargetGPRel64Directive () const

const chargetGPRel32Directive () const

const chargetDTPRel64Directive () const

const chargetDTPRel32Directive () const

const chargetTPRel64Directive () const

const chargetTPRel32Directive () const

virtual MCSectiongetNonexecutableStackSection (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 MCExprgetExprForPersonalitySymbol (const MCSymbol *Sym, unsigned Encoding, MCStreamer &Streamer) const

virtual const MCExprgetExprForFDESymbol (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

unsigned getMaxInstLength () const

unsigned getMinInstAlignment () const

bool getDollarIsPC () const

const chargetSeparatorString () const

unsigned getCommentColumn () const
This indicates the column (zero-based) at which asm comments should be printed. More...

StringRef getCommentString () const

const chargetLabelSuffix () const

bool useAssignmentForEHBegin () const

bool needsLocalForSize () const

StringRef getPrivateGlobalPrefix () const

StringRef getPrivateLabelPrefix () const

bool hasLinkerPrivateGlobalPrefix () const

StringRef getLinkerPrivateGlobalPrefix () const

const chargetInlineAsmStart () const

const chargetInlineAsmEnd () const

const chargetCode16Directive () const

const chargetCode32Directive () const

const chargetCode64Directive () const

unsigned getAssemblerDialect () const

bool doesAllowAtInName () const

bool supportsNameQuoting () const

bool doesSupportDataRegionDirectives () const

const chargetZeroDirective () const

const chargetAsciiDirective () const

const chargetAscizDirective () const

bool getAlignmentIsInBytes () const

unsigned getTextAlignFillValue () const

const chargetGlobalDirective () 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 chargetWeakDirective () const

const chargetWeakRefDirective () 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

Protected Attributes inherited from llvm::MCAsmInfo
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...

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 charSeparatorString
This string, if specified, is used to separate instructions from each other when on the same line. More...

This indicates the comment character used by the assembler. More...

const charLabelSuffix
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...

This prefix is used for symbols that should be passed through the assembler but be removed by the linker. More...

const charInlineAsmStart
If these are nonempty, they contain a directive to emit before and after an inline assembly statement. More...

const charInlineAsmEnd

const charCode16Directive
These are assembly directives that tells the assembler to interpret the following instructions differently. More...

const charCode32Directive

const charCode64Directive

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 charZeroDirective
This should be set to the directive used to get some number of zero bytes emitted to the current section. More...

const charAsciiDirective
This directive allows emission of an ascii string with the standard C escape characters embedded into it. More...

const charAscizDirective
If not null, this allows for special handling of zero terminated strings on this target. More...

const charData8bitsDirective
These directives are used to output some unit of integer data to the current section. More...

const charData16bitsDirective

const charData32bitsDirective

const charData64bitsDirective

const charGPRel64Directive = 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 charGPRel32Directive = 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 charDTPRel32Directive = 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 charDTPRel64Directive = nullptr

const charTPRel32Directive = nullptr

const charTPRel64Directive = 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 charGlobalDirective
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 charWeakDirective
Used to declare a global as being a weak symbol. Defaults to ".weak". More...

const charWeakRefDirective = 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< MCCFIInstructionInitialFrameState

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...

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

## Detailed Description

Definition at line 16 of file MCAsmInfoWasm.h.

## ◆ MCAsmInfoWasm()

 MCAsmInfoWasm::MCAsmInfoWasm ( )
protected

Definition at line 20 of file MCAsmInfoWasm.cpp.

The documentation for this class was generated from the following files: