LLVM  3.7.0
Public Member Functions | List of all members
llvm::MipsMCAsmInfo Class Reference

#include <MipsMCAsmInfo.h>

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

Public Member Functions

 MipsMCAsmInfo (const Triple &TheTriple)
 
- Public Member Functions inherited from llvm::MCAsmInfo
 MCAsmInfo ()
 
virtual ~MCAsmInfo ()
 
unsigned getPointerSize () const
 Get the 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
 
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...
 
bool usesSunStyleELFSectionSwitchSyntax () const
 
bool usesELFSectionDirectiveForBSS () const
 
bool needsDwarfSectionOffsetDirective () const
 
bool hasMachoZeroFillDirective () const
 
bool hasMachoTBSSDirective () const
 
bool hasStaticCtorDtorReferenceInStaticMode () 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...
 
const char * getCommentString () const
 
const char * getLabelSuffix () const
 
bool useAssignmentForEHBegin () const
 
bool needsLocalForSize () const
 
const char * getPrivateGlobalPrefix () const
 
const char * getPrivateLabelPrefix () const
 
bool hasLinkerPrivateGlobalPrefix () const
 
const char * 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 doesSetDirectiveSuppressesReloc () 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
 
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
 
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
 
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 compressDebugSections () const
 
void setCompressDebugSections (bool CompressDebugSections)
 
bool shouldUseLogicalShr () const
 

Additional Inherited Members

- Protected Member Functions inherited from llvm::MCAsmInfoELF
 MCAsmInfoELF ()
 
- Protected Attributes inherited from llvm::MCAsmInfo
unsigned PointerSize
 Pointer size in bytes. Default is 4. More...
 
unsigned CalleeSaveStackSlotSize
 Size of the stack slot reserved for callee-saved registers, in bytes. More...
 
bool IsLittleEndian
 True if target is little endian. Default is true. More...
 
bool StackGrowsUp
 True if target stack grow up. Default is false. More...
 
bool HasSubsectionsViaSymbols
 True if this target has the MachO .subsections_via_symbols directive. More...
 
bool HasMachoZeroFillDirective
 True if this is a MachO target that supports the macho-specific .zerofill directive for emitting BSS Symbols. More...
 
bool HasMachoTBSSDirective
 True if this is a MachO target that supports the macho-specific .tbss directive for emitting thread local BSS Symbols. More...
 
bool HasStaticCtorDtorReferenceInStaticMode
 True if the compiler should emit a ".reference .constructors_used" or ".reference .destructors_used" directive after the static ctor/dtor list. More...
 
unsigned MaxInstLength
 This is the maximum possible length of an instruction, which is needed to compute the size of an inline asm. More...
 
unsigned MinInstAlignment
 Every possible instruction length is a multiple of this value. More...
 
bool DollarIsPC
 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...
 
const char * 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
 
bool NeedsLocalForSize
 
const char * 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...
 
const char * PrivateLabelPrefix
 This prefix is used for labels for basic blocks. More...
 
const char * 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
 Which dialect of an assembler variant to use. Defaults to 0. More...
 
bool AllowAtInName
 This is true if the assembler allows @ characters in symbol names. More...
 
bool SupportsQuotedNames
 If this is true, symbol names with invalid characters will be printed in quotes. More...
 
bool UseDataRegionDirectives
 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
 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
 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...
 
bool SunStyleELFSectionSwitchSyntax
 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
 This is true if this target uses ELF '.section' directive before the '.bss' one. More...
 
bool NeedsDwarfSectionOffsetDirective
 
bool AlignmentIsInBytes
 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
 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
 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
 False if the assembler requires that we use. More...
 
bool COMMDirectiveAlignmentIsInBytes
 True is .comm's and .lcomms optional alignment is to be specified in bytes instead of log2(n). More...
 
LCOMM::LCOMMType LCOMMDirectiveAlignmentType
 Describes if the .lcomm directive for the target supports an alignment argument and how it is interpreted. More...
 
bool HasFunctionAlignment
 
bool HasDotTypeDotSizeDirective
 True if the target has .type and .size directives, this is true for most ELF targets. More...
 
bool HasSingleParameterDotFile
 True if the target has a single parameter .file directive, this is true for ELF targets. More...
 
bool HasIdentDirective
 True if the target has a .ident directive, this is true for ELF targets. More...
 
bool HasNoDeadStrip
 True if this target supports the MachO .no_dead_strip directive. More...
 
const char * WeakDirective
 Used to declare a global as being a weak symbol. Defaults to ".weak". More...
 
const char * WeakRefDirective
 This directive, if non-null, is used to declare a global as being a weak undefined symbol. More...
 
bool HasWeakDefDirective
 True if we have a directive to declare a global as being a weak defined symbol. More...
 
bool HasWeakDefCanBeHiddenDirective
 True if we have a directive to declare a global as being a weak defined symbol that can be hidden (unexported). More...
 
bool HasLinkOnceDirective
 True if we have a .linkonce directive. More...
 
MCSymbolAttr HiddenVisibilityAttr
 This attribute, if not MCSA_Invalid, is used to declare a symbol as having hidden visibility. More...
 
MCSymbolAttr HiddenDeclarationVisibilityAttr
 This attribute, if not MCSA_Invalid, is used to declare an undefined symbol as having hidden visibility. More...
 
MCSymbolAttr ProtectedVisibilityAttr
 This attribute, if not MCSA_Invalid, is used to declare a symbol as having protected visibility. More...
 
bool SupportsDebugInformation
 True if target supports emission of debugging information. More...
 
ExceptionHandling ExceptionsType
 Exception handling format for the target. Defaults to None. More...
 
WinEH::EncodingType WinEHEncodingType
 Windows exception handling data (.pdata) encoding. Defaults to Invalid. More...
 
bool DwarfUsesRelocationsAcrossSections
 True if Dwarf2 output generally uses relocations for references to other .debug_* sections. More...
 
bool DwarfFDESymbolsUseAbsDiff
 True if DWARF FDE symbol reference relocations should be replaced by an absolute difference. More...
 
bool DwarfRegNumForCFI
 True if dwarf register numbers are printed instead of symbolic register names in .cfi_* directives. More...
 
bool UseParensForSymbolVariant
 True if target uses parens to indicate the symbol variant instead of 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...
 
bool CompressDebugSections
 Compress DWARF debug sections. Defaults to false. More...
 
bool UseLogicalShr
 True if the integrated assembler should interpret 'a >> b' constant expressions as logical rather than arithmetic. More...
 

Detailed Description

Definition at line 22 of file MipsMCAsmInfo.h.

Constructor & Destructor Documentation

MipsMCAsmInfo::MipsMCAsmInfo ( const Triple TheTriple)
explicit

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