class MCContext
Declaration
class MCContext { /* full declaration omitted */ };
Description
Context object for machine code objects. This class owns all of the sections that it creates.
Declared at: llvm/include/llvm/MC/MCContext.h:65
Method Overview
- public MCContext(const llvm::MCContext &)
- public MCContext(const llvm::MCAsmInfo * MAI, const llvm::MCRegisterInfo * MRI, const llvm::MCObjectFileInfo * MOFI, const llvm::SourceMgr * Mgr = nullptr, const llvm::MCTargetOptions * TargetOpts = nullptr, bool DoAutoReset = true)
- public void RemapDebugPaths()
- public void addDebugPrefixMapEntry(const std::string & From, const std::string & To)
- public bool addGenDwarfSection(llvm::MCSection * Sec)
- public void addMCGenDwarfLabelEntry(const llvm::MCGenDwarfLabelEntry & E)
- public void * allocate(unsigned int Size, unsigned int Align = 8)
- public void clearDwarfLocSeen()
- public llvm::MCSymbol * createDirectionalLocalSymbol(unsigned int LocalLabelVal)
- public llvm::MCSectionELF * createELFGroupSection(const llvm::MCSymbolELF * Group)
- public llvm::MCSectionELF * createELFRelSection(const llvm::Twine & Name, unsigned int Type, unsigned int Flags, unsigned int EntrySize, const llvm::MCSymbolELF * Group, const llvm::MCSectionELF * RelInfoSection)
- public llvm::MCSymbol * createLinkerPrivateTempSymbol()
- public llvm::MCSymbol * createTempSymbol(bool CanBeUnnamed = true)
- public llvm::MCSymbol * createTempSymbol(const llvm::Twine & Name, bool AlwaysAddSuffix, bool CanBeUnnamed = true)
- public void deallocate(void * Ptr)
- public void defineMacro(llvm::StringRef Name, llvm::MCAsmMacro Macro)
- public void finalizeDwarfSections(llvm::MCStreamer & MCOS)
- public const llvm::MCAsmInfo * getAsmInfo() const
- public llvm::MCSectionCOFF * getAssociativeCOFFSection(llvm::MCSectionCOFF * Sec, const llvm::MCSymbol * KeySym, unsigned int UniqueID = GenericSectionID)
- public llvm::MCSectionCOFF * getCOFFSection(llvm::StringRef Section, unsigned int Characteristics, llvm::SectionKind Kind, const char * BeginSymName = nullptr)
- public llvm::MCSectionCOFF * getCOFFSection(llvm::StringRef Section, unsigned int Characteristics, llvm::SectionKind Kind, llvm::StringRef COMDATSymName, int Selection, unsigned int UniqueID = GenericSectionID, const char * BeginSymName = nullptr)
- public llvm::CodeViewContext & getCVContext()
- public llvm::StringRef getCompilationDir() const
- public const llvm::MCDwarfLoc & getCurrentDwarfLoc()
- public llvm::MCSymbol * getDirectionalLocalSymbol(unsigned int LocalLabelVal, bool Before)
- public unsigned int getDwarfCompileUnitID()
- public llvm::StringRef getDwarfDebugFlags()
- public llvm::StringRef getDwarfDebugProducer()
- public Expected<unsigned int> getDwarfFile(llvm::StringRef Directory, llvm::StringRef FileName, unsigned int FileNumber, Optional<MD5::MD5Result> Checksum, Optional<llvm::StringRef> Source, unsigned int CUID)
- public dwarf::DwarfFormat getDwarfFormat() const
- public bool getDwarfLocSeen()
- public uint16_t getDwarfVersion() const
- public llvm::MCSectionELF * getELFNamedSection(const llvm::Twine & Prefix, const llvm::Twine & Suffix, unsigned int Type, unsigned int Flags, unsigned int EntrySize = 0)
- public llvm::MCSectionELF * getELFSection(const llvm::Twine & Section, unsigned int Type, unsigned int Flags, unsigned int EntrySize, const llvm::Twine & Group, unsigned int UniqueID)
- public llvm::MCSectionELF * getELFSection(const llvm::Twine & Section, unsigned int Type, unsigned int Flags, unsigned int EntrySize, const llvm::Twine & Group, unsigned int UniqueID, const llvm::MCSymbolELF * Associated)
- public llvm::MCSectionELF * getELFSection(const llvm::Twine & Section, unsigned int Type, unsigned int Flags, unsigned int EntrySize, const llvm::MCSymbolELF * Group, unsigned int UniqueID, const llvm::MCSymbolELF * Associated)
- public llvm::MCSectionELF * getELFSection(const llvm::Twine & Section, unsigned int Type, unsigned int Flags)
- public llvm::MCSectionELF * getELFSection(const llvm::Twine & Section, unsigned int Type, unsigned int Flags, unsigned int EntrySize, const llvm::Twine & Group)
- public unsigned int getGenDwarfFileNumber()
- public bool getGenDwarfForAssembly()
- public const SetVector<llvm::MCSection *> & getGenDwarfSectionSyms()
- public llvm::MCSymbol * getInlineAsmLabel(llvm::StringRef Name) const
- public const SmallVectorImpl<std::string> & getMCDwarfDirs(unsigned int CUID = 0)
- public const SmallVectorImpl<llvm::MCDwarfFile> & getMCDwarfFiles(unsigned int CUID = 0)
- public const llvm::MCDwarfLineTable & getMCDwarfLineTable(unsigned int CUID) const
- public llvm::MCDwarfLineTable & getMCDwarfLineTable(unsigned int CUID)
- public const std::map<unsigned int, MCDwarfLineTable> & getMCDwarfLineTables() const
- public const std::vector<MCGenDwarfLabelEntry> & getMCGenDwarfLabelEntries() const
- public llvm::MCSectionMachO * getMachOSection(llvm::StringRef Segment, llvm::StringRef Section, unsigned int TypeAndAttributes, unsigned int Reserved2, llvm::SectionKind K, const char * BeginSymName = nullptr)
- public llvm::MCSectionMachO * getMachOSection(llvm::StringRef Segment, llvm::StringRef Section, unsigned int TypeAndAttributes, llvm::SectionKind K, const char * BeginSymName = nullptr)
- public const std::string & getMainFileName() const
- public const llvm::MCObjectFileInfo * getObjectFileInfo() const
- public llvm::MCSymbol * getOrCreateFrameAllocSymbol(llvm::StringRef FuncName, unsigned int Idx)
- public llvm::MCSymbol * getOrCreateLSDASymbol(llvm::StringRef FuncName)
- public llvm::MCSymbol * getOrCreateParentFrameOffsetSymbol(llvm::StringRef FuncName)
- public llvm::MCSymbol * getOrCreateSymbol(const llvm::Twine & Name)
- public const llvm::MCRegisterInfo * getRegisterInfo() const
- public llvm::raw_fd_ostream * getSecureLog()
- public char * getSecureLogFile()
- public bool getSecureLogUsed()
- public const llvm::SourceMgr * getSourceManager() const
- public llvm::MCSubtargetInfo & getSubtargetCopy(const llvm::MCSubtargetInfo & STI)
- public const llvm::MCContext::SymbolTable & getSymbols() const
- public llvm::MCSectionWasm * getWasmSection(const llvm::Twine & Section, llvm::SectionKind K, const llvm::MCSymbolWasm * Group, unsigned int UniqueID, const char * BeginSymName)
- public llvm::MCSectionWasm * getWasmSection(const llvm::Twine & Section, llvm::SectionKind K, const llvm::Twine & Group, unsigned int UniqueID, const char * BeginSymName)
- public llvm::MCSectionWasm * getWasmSection(const llvm::Twine & Section, llvm::SectionKind K, const llvm::Twine & Group, unsigned int UniqueID)
- public llvm::MCSectionWasm * getWasmSection(const llvm::Twine & Section, llvm::SectionKind K, const char * BeginSymName)
- public llvm::MCSectionWasm * getWasmSection(const llvm::Twine & Section, llvm::SectionKind K)
- public llvm::MCSectionXCOFF * getXCOFFSection(llvm::StringRef Section, XCOFF::StorageMappingClass MappingClass, XCOFF::SymbolType CSectType, XCOFF::StorageClass StorageClass, llvm::SectionKind K, const char * BeginSymName = nullptr)
- public bool hadError()
- public bool isDwarfMD5UsageConsistent(unsigned int CUID) const
- public bool isValidDwarfFileNumber(unsigned int FileNumber, unsigned int CUID = 0)
- public const llvm::MCAsmMacro * lookupMacro(llvm::StringRef Name)
- public llvm::MCSymbol * lookupSymbol(const llvm::Twine & Name) const
- public void registerInlineAsmLabel(llvm::MCSymbol * Sym)
- public void renameELFSection(llvm::MCSectionELF * Section, llvm::StringRef Name)
- public void reportError(llvm::SMLoc L, const llvm::Twine & Msg)
- public void reportFatalError(llvm::SMLoc L, const llvm::Twine & Msg)
- public void reportWarning(llvm::SMLoc L, const llvm::Twine & Msg)
- public void reset()
- public void setAllowTemporaryLabels(bool Value)
- public void setCompilationDir(llvm::StringRef S)
- public void setCurrentDwarfLoc(unsigned int FileNum, unsigned int Line, unsigned int Column, unsigned int Flags, unsigned int Isa, unsigned int Discriminator)
- public void setDwarfCompileUnitID(unsigned int CUIndex)
- public void setDwarfDebugFlags(llvm::StringRef S)
- public void setDwarfDebugProducer(llvm::StringRef S)
- public void setDwarfVersion(uint16_t v)
- public void setGenDwarfFileNumber(unsigned int FileNumber)
- public void setGenDwarfForAssembly(bool Value)
- public void setGenDwarfRootFile(llvm::StringRef FileName, llvm::StringRef Buffer)
- public void setInlineSourceManager(llvm::SourceMgr * SM)
- public void setMCLineTableRootFile(unsigned int CUID, llvm::StringRef CompilationDir, llvm::StringRef Filename, Optional<MD5::MD5Result> Checksum, Optional<llvm::StringRef> Source)
- public void setMainFileName(llvm::StringRef S)
- public void setSecureLog(std::unique_ptr<raw_fd_ostream> Value)
- public void setSecureLogUsed(bool Value)
- public void setSymbolValue(llvm::MCStreamer & Streamer, llvm::StringRef Sym, uint64_t Val)
- public void setUseNamesOnTempLabels(bool Value)
- public void undefineMacro(llvm::StringRef Name)
- public ~MCContext()
Methods
¶MCContext(const llvm::MCContext&)
MCContext(const llvm::MCContext&)
Declared at: llvm/include/llvm/MC/MCContext.h:310
Parameters
- const llvm::MCContext&
¶MCContext(const llvm::MCAsmInfo* MAI,
const llvm::MCRegisterInfo* MRI,
const llvm::MCObjectFileInfo* MOFI,
const llvm::SourceMgr* Mgr = nullptr,
const llvm::MCTargetOptions*
TargetOpts = nullptr,
bool DoAutoReset = true)
MCContext(const llvm::MCAsmInfo* MAI,
const llvm::MCRegisterInfo* MRI,
const llvm::MCObjectFileInfo* MOFI,
const llvm::SourceMgr* Mgr = nullptr,
const llvm::MCTargetOptions*
TargetOpts = nullptr,
bool DoAutoReset = true)
Declared at: llvm/include/llvm/MC/MCContext.h:305
Parameters
- const llvm::MCAsmInfo* MAI
- const llvm::MCRegisterInfo* MRI
- const llvm::MCObjectFileInfo* MOFI
- const llvm::SourceMgr* Mgr = nullptr
- const llvm::MCTargetOptions* TargetOpts = nullptr
- bool DoAutoReset = true
¶void RemapDebugPaths()
void RemapDebugPaths()
Declared at: llvm/include/llvm/MC/MCContext.h:536
¶void addDebugPrefixMapEntry(
const std::string& From,
const std::string& To)
void addDebugPrefixMapEntry(
const std::string& From,
const std::string& To)
Description
Add an entry to the debug prefix map.
Declared at: llvm/include/llvm/MC/MCContext.h:533
Parameters
- const std::string& From
- const std::string& To
¶bool addGenDwarfSection(llvm::MCSection* Sec)
bool addGenDwarfSection(llvm::MCSection* Sec)
Declared at: llvm/include/llvm/MC/MCContext.h:634
Parameters
- llvm::MCSection* Sec
¶void addMCGenDwarfLabelEntry(
const llvm::MCGenDwarfLabelEntry& E)
void addMCGenDwarfLabelEntry(
const llvm::MCGenDwarfLabelEntry& E)
Declared at: llvm/include/llvm/MC/MCContext.h:644
Parameters
- const llvm::MCGenDwarfLabelEntry& E
¶void* allocate(unsigned int Size,
unsigned int Align = 8)
void* allocate(unsigned int Size,
unsigned int Align = 8)
Declared at: llvm/include/llvm/MC/MCContext.h:674
Parameters
- unsigned int Size
- unsigned int Align = 8
¶void clearDwarfLocSeen()
void clearDwarfLocSeen()
Declared at: llvm/include/llvm/MC/MCContext.h:613
¶llvm::MCSymbol* createDirectionalLocalSymbol(
unsigned int LocalLabelVal)
llvm::MCSymbol* createDirectionalLocalSymbol(
unsigned int LocalLabelVal)
Description
Create the definition of a directional local symbol for numbered label (used for "1:" definitions).
Declared at: llvm/include/llvm/MC/MCContext.h:354
Parameters
- unsigned int LocalLabelVal
¶llvm::MCSectionELF* createELFGroupSection(
const llvm::MCSymbolELF* Group)
llvm::MCSectionELF* createELFGroupSection(
const llvm::MCSymbolELF* Group)
Declared at: llvm/include/llvm/MC/MCContext.h:467
Parameters
- const llvm::MCSymbolELF* Group
¶llvm::MCSectionELF* createELFRelSection(
const llvm::Twine& Name,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::MCSymbolELF* Group,
const llvm::MCSectionELF* RelInfoSection)
llvm::MCSectionELF* createELFRelSection(
const llvm::Twine& Name,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::MCSymbolELF* Group,
const llvm::MCSectionELF* RelInfoSection)
Declared at: llvm/include/llvm/MC/MCContext.h:460
Parameters
- const llvm::Twine& Name
- unsigned int Type
- unsigned int Flags
- unsigned int EntrySize
- const llvm::MCSymbolELF* Group
- const llvm::MCSectionELF* RelInfoSection
¶llvm::MCSymbol* createLinkerPrivateTempSymbol()
llvm::MCSymbol* createLinkerPrivateTempSymbol()
Description
Create and return a new linker temporary symbol with a unique but unspecified name.
Declared at: llvm/include/llvm/MC/MCContext.h:343
¶llvm::MCSymbol* createTempSymbol(
bool CanBeUnnamed = true)
llvm::MCSymbol* createTempSymbol(
bool CanBeUnnamed = true)
Description
Create and return a new assembler temporary symbol with a unique but unspecified name.
Declared at: llvm/include/llvm/MC/MCContext.h:347
Parameters
- bool CanBeUnnamed = true
¶llvm::MCSymbol* createTempSymbol(
const llvm::Twine& Name,
bool AlwaysAddSuffix,
bool CanBeUnnamed = true)
llvm::MCSymbol* createTempSymbol(
const llvm::Twine& Name,
bool AlwaysAddSuffix,
bool CanBeUnnamed = true)
Declared at: llvm/include/llvm/MC/MCContext.h:349
Parameters
- const llvm::Twine& Name
- bool AlwaysAddSuffix
- bool CanBeUnnamed = true
¶void deallocate(void* Ptr)
void deallocate(void* Ptr)
Declared at: llvm/include/llvm/MC/MCContext.h:678
Parameters
- void* Ptr
¶void defineMacro(llvm::StringRef Name,
llvm::MCAsmMacro Macro)
void defineMacro(llvm::StringRef Name,
llvm::MCAsmMacro Macro)
Declared at: llvm/include/llvm/MC/MCContext.h:694
Parameters
- llvm::StringRef Name
- llvm::MCAsmMacro Macro
¶void finalizeDwarfSections(llvm::MCStreamer& MCOS)
void finalizeDwarfSections(llvm::MCStreamer& MCOS)
Declared at: llvm/include/llvm/MC/MCContext.h:638
Parameters
- llvm::MCStreamer& MCOS
¶const llvm::MCAsmInfo* getAsmInfo() const
const llvm::MCAsmInfo* getAsmInfo() const
Declared at: llvm/include/llvm/MC/MCContext.h:318
¶llvm::MCSectionCOFF* getAssociativeCOFFSection(
llvm::MCSectionCOFF* Sec,
const llvm::MCSymbol* KeySym,
unsigned int UniqueID = GenericSectionID)
llvm::MCSectionCOFF* getAssociativeCOFFSection(
llvm::MCSectionCOFF* Sec,
const llvm::MCSymbol* KeySym,
unsigned int UniqueID = GenericSectionID)
Description
Gets or creates a section equivalent to Sec that is associated with the section containing KeySym. For example, to create a debug info section associated with an inline function, pass the normal debug info section as Sec and the function symbol as KeySym.
Declared at: llvm/include/llvm/MC/MCContext.h:484
Parameters
- llvm::MCSectionCOFF* Sec
- const llvm::MCSymbol* KeySym
- unsigned int UniqueID = GenericSectionID
¶llvm::MCSectionCOFF* getCOFFSection(
llvm::StringRef Section,
unsigned int Characteristics,
llvm::SectionKind Kind,
const char* BeginSymName = nullptr)
llvm::MCSectionCOFF* getCOFFSection(
llvm::StringRef Section,
unsigned int Characteristics,
llvm::SectionKind Kind,
const char* BeginSymName = nullptr)
Declared at: llvm/include/llvm/MC/MCContext.h:475
Parameters
- llvm::StringRef Section
- unsigned int Characteristics
- llvm::SectionKind Kind
- const char* BeginSymName = nullptr
¶llvm::MCSectionCOFF* getCOFFSection(
llvm::StringRef Section,
unsigned int Characteristics,
llvm::SectionKind Kind,
llvm::StringRef COMDATSymName,
int Selection,
unsigned int UniqueID = GenericSectionID,
const char* BeginSymName = nullptr)
llvm::MCSectionCOFF* getCOFFSection(
llvm::StringRef Section,
unsigned int Characteristics,
llvm::SectionKind Kind,
llvm::StringRef COMDATSymName,
int Selection,
unsigned int UniqueID = GenericSectionID,
const char* BeginSymName = nullptr)
Declared at: llvm/include/llvm/MC/MCContext.h:469
Parameters
- llvm::StringRef Section
- unsigned int Characteristics
- llvm::SectionKind Kind
- llvm::StringRef COMDATSymName
- int Selection
- unsigned int UniqueID = GenericSectionID
- const char* BeginSymName = nullptr
¶llvm::CodeViewContext& getCVContext()
llvm::CodeViewContext& getCVContext()
Declared at: llvm/include/llvm/MC/MCContext.h:324
¶llvm::StringRef getCompilationDir() const
llvm::StringRef getCompilationDir() const
Description
Get the compilation directory for DW_AT_comp_dir The compilation directory should be set with \c setCompilationDir before calling this function. If it is unset, an empty string will be returned.
Declared at: llvm/include/llvm/MC/MCContext.h:527
¶const llvm::MCDwarfLoc& getCurrentDwarfLoc()
const llvm::MCDwarfLoc& getCurrentDwarfLoc()
Declared at: llvm/include/llvm/MC/MCContext.h:616
¶llvm::MCSymbol* getDirectionalLocalSymbol(
unsigned int LocalLabelVal,
bool Before)
llvm::MCSymbol* getDirectionalLocalSymbol(
unsigned int LocalLabelVal,
bool Before)
Description
Create and return a directional local symbol for numbered label (used for "1b" or 1f" references).
Declared at: llvm/include/llvm/MC/MCContext.h:358
Parameters
- unsigned int LocalLabelVal
- bool Before
¶unsigned int getDwarfCompileUnitID()
unsigned int getDwarfCompileUnitID()
Declared at: llvm/include/llvm/MC/MCContext.h:576
¶llvm::StringRef getDwarfDebugFlags()
llvm::StringRef getDwarfDebugFlags()
Declared at: llvm/include/llvm/MC/MCContext.h:649
¶llvm::StringRef getDwarfDebugProducer()
llvm::StringRef getDwarfDebugProducer()
Declared at: llvm/include/llvm/MC/MCContext.h:652
¶Expected<unsigned int> getDwarfFile(
llvm::StringRef Directory,
llvm::StringRef FileName,
unsigned int FileNumber,
Optional<MD5::MD5Result> Checksum,
Optional<llvm::StringRef> Source,
unsigned int CUID)
Expected<unsigned int> getDwarfFile(
llvm::StringRef Directory,
llvm::StringRef FileName,
unsigned int FileNumber,
Optional<MD5::MD5Result> Checksum,
Optional<llvm::StringRef> Source,
unsigned int CUID)
Description
Creates an entry in the dwarf file and directory tables.
Declared at: llvm/include/llvm/MC/MCContext.h:547
Parameters
- llvm::StringRef Directory
- llvm::StringRef FileName
- unsigned int FileNumber
- Optional<MD5::MD5Result> Checksum
- Optional<llvm::StringRef> Source
- unsigned int CUID
¶dwarf::DwarfFormat getDwarfFormat() const
dwarf::DwarfFormat getDwarfFormat() const
Declared at: llvm/include/llvm/MC/MCContext.h:654
¶bool getDwarfLocSeen()
bool getDwarfLocSeen()
Declared at: llvm/include/llvm/MC/MCContext.h:615
¶uint16_t getDwarfVersion() const
uint16_t getDwarfVersion() const
Declared at: llvm/include/llvm/MC/MCContext.h:660
¶llvm::MCSectionELF* getELFNamedSection(
const llvm::Twine& Prefix,
const llvm::Twine& Suffix,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize = 0)
llvm::MCSectionELF* getELFNamedSection(
const llvm::Twine& Prefix,
const llvm::Twine& Suffix,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize = 0)
Description
Get a section with the provided group identifier. This section is named by concatenating \p Prefix with '.' then \p Suffix. The \p Type describes the type of the section and \p Flags are used to further configure this named section.
Declared at: llvm/include/llvm/MC/MCContext.h:456
Parameters
- const llvm::Twine& Prefix
- const llvm::Twine& Suffix
- unsigned int Type
- unsigned int Flags
- unsigned int EntrySize = 0
¶llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::Twine& Group,
unsigned int UniqueID)
llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::Twine& Group,
unsigned int UniqueID)
Declared at: llvm/include/llvm/MC/MCContext.h:435
Parameters
- const llvm::Twine& Section
- unsigned int Type
- unsigned int Flags
- unsigned int EntrySize
- const llvm::Twine& Group
- unsigned int UniqueID
¶llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::Twine& Group,
unsigned int UniqueID,
const llvm::MCSymbolELF* Associated)
llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::Twine& Group,
unsigned int UniqueID,
const llvm::MCSymbolELF* Associated)
Declared at: llvm/include/llvm/MC/MCContext.h:442
Parameters
- const llvm::Twine& Section
- unsigned int Type
- unsigned int Flags
- unsigned int EntrySize
- const llvm::Twine& Group
- unsigned int UniqueID
- const llvm::MCSymbolELF* Associated
¶llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::MCSymbolELF* Group,
unsigned int UniqueID,
const llvm::MCSymbolELF* Associated)
llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::MCSymbolELF* Group,
unsigned int UniqueID,
const llvm::MCSymbolELF* Associated)
Declared at: llvm/include/llvm/MC/MCContext.h:447
Parameters
- const llvm::Twine& Section
- unsigned int Type
- unsigned int Flags
- unsigned int EntrySize
- const llvm::MCSymbolELF* Group
- unsigned int UniqueID
- const llvm::MCSymbolELF* Associated
¶llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags)
llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags)
Declared at: llvm/include/llvm/MC/MCContext.h:424
Parameters
- const llvm::Twine& Section
- unsigned int Type
- unsigned int Flags
¶llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::Twine& Group)
llvm::MCSectionELF* getELFSection(
const llvm::Twine& Section,
unsigned int Type,
unsigned int Flags,
unsigned int EntrySize,
const llvm::Twine& Group)
Declared at: llvm/include/llvm/MC/MCContext.h:429
Parameters
- const llvm::Twine& Section
- unsigned int Type
- unsigned int Flags
- unsigned int EntrySize
- const llvm::Twine& Group
¶unsigned int getGenDwarfFileNumber()
unsigned int getGenDwarfFileNumber()
Declared at: llvm/include/llvm/MC/MCContext.h:620
¶bool getGenDwarfForAssembly()
bool getGenDwarfForAssembly()
Declared at: llvm/include/llvm/MC/MCContext.h:618
¶const SetVector<llvm::MCSection*>&
getGenDwarfSectionSyms()
const SetVector<llvm::MCSection*>&
getGenDwarfSectionSyms()
Declared at: llvm/include/llvm/MC/MCContext.h:630
¶llvm::MCSymbol* getInlineAsmLabel(
llvm::StringRef Name) const
llvm::MCSymbol* getInlineAsmLabel(
llvm::StringRef Name) const
Description
isInlineAsmLabel - Return true if the name is a label referenced in inline assembly.
Declared at: llvm/include/llvm/MC/MCContext.h:390
Parameters
- llvm::StringRef Name
¶const SmallVectorImpl<std::string>&
getMCDwarfDirs(unsigned int CUID = 0)
const SmallVectorImpl<std::string>&
getMCDwarfDirs(unsigned int CUID = 0)
Declared at: llvm/include/llvm/MC/MCContext.h:572
Parameters
- unsigned int CUID = 0
¶const SmallVectorImpl<llvm::MCDwarfFile>&
getMCDwarfFiles(unsigned int CUID = 0)
const SmallVectorImpl<llvm::MCDwarfFile>&
getMCDwarfFiles(unsigned int CUID = 0)
Declared at: llvm/include/llvm/MC/MCContext.h:568
Parameters
- unsigned int CUID = 0
¶const llvm::MCDwarfLineTable& getMCDwarfLineTable(
unsigned int CUID) const
const llvm::MCDwarfLineTable& getMCDwarfLineTable(
unsigned int CUID) const
Declared at: llvm/include/llvm/MC/MCContext.h:562
Parameters
- unsigned int CUID
¶llvm::MCDwarfLineTable& getMCDwarfLineTable(
unsigned int CUID)
llvm::MCDwarfLineTable& getMCDwarfLineTable(
unsigned int CUID)
Declared at: llvm/include/llvm/MC/MCContext.h:558
Parameters
- unsigned int CUID
¶const std::map<unsigned int, MCDwarfLineTable>&
getMCDwarfLineTables() const
const std::map<unsigned int, MCDwarfLineTable>&
getMCDwarfLineTables() const
Declared at: llvm/include/llvm/MC/MCContext.h:554
¶const std::vector<MCGenDwarfLabelEntry>&
getMCGenDwarfLabelEntries() const
const std::vector<MCGenDwarfLabelEntry>&
getMCGenDwarfLabelEntries() const
Declared at: llvm/include/llvm/MC/MCContext.h:640
¶llvm::MCSectionMachO* getMachOSection(
llvm::StringRef Segment,
llvm::StringRef Section,
unsigned int TypeAndAttributes,
unsigned int Reserved2,
llvm::SectionKind K,
const char* BeginSymName = nullptr)
llvm::MCSectionMachO* getMachOSection(
llvm::StringRef Segment,
llvm::StringRef Section,
unsigned int TypeAndAttributes,
unsigned int Reserved2,
llvm::SectionKind K,
const char* BeginSymName = nullptr)
Description
Return the MCSection for the specified mach-o section. This requires the operands to be valid.
Declared at: llvm/include/llvm/MC/MCContext.h:412
Parameters
- llvm::StringRef Segment
- llvm::StringRef Section
- unsigned int TypeAndAttributes
- unsigned int Reserved2
- llvm::SectionKind K
- const char* BeginSymName = nullptr
¶llvm::MCSectionMachO* getMachOSection(
llvm::StringRef Segment,
llvm::StringRef Section,
unsigned int TypeAndAttributes,
llvm::SectionKind K,
const char* BeginSymName = nullptr)
llvm::MCSectionMachO* getMachOSection(
llvm::StringRef Segment,
llvm::StringRef Section,
unsigned int TypeAndAttributes,
llvm::SectionKind K,
const char* BeginSymName = nullptr)
Declared at: llvm/include/llvm/MC/MCContext.h:417
Parameters
- llvm::StringRef Segment
- llvm::StringRef Section
- unsigned int TypeAndAttributes
- llvm::SectionKind K
- const char* BeginSymName = nullptr
¶const std::string& getMainFileName() const
const std::string& getMainFileName() const
Description
Get the main file name for use in error messages and debug info. This can be set to ensure we've got the correct file name after preprocessing or for -save-temps.
Declared at: llvm/include/llvm/MC/MCContext.h:541
¶const llvm::MCObjectFileInfo* getObjectFileInfo()
const
const llvm::MCObjectFileInfo* getObjectFileInfo()
const
Declared at: llvm/include/llvm/MC/MCContext.h:322
¶llvm::MCSymbol* getOrCreateFrameAllocSymbol(
llvm::StringRef FuncName,
unsigned int Idx)
llvm::MCSymbol* getOrCreateFrameAllocSymbol(
llvm::StringRef FuncName,
unsigned int Idx)
Description
Gets a symbol that will be defined to the final stack offset of a local variable after codegen.
Declared at: llvm/include/llvm/MC/MCContext.h:370
Parameters
- llvm::StringRef FuncName
- unsigned int Idx
- - The index of a local variable passed to @ llvm.localescape.
¶llvm::MCSymbol* getOrCreateLSDASymbol(
llvm::StringRef FuncName)
llvm::MCSymbol* getOrCreateLSDASymbol(
llvm::StringRef FuncName)
Declared at: llvm/include/llvm/MC/MCContext.h:374
Parameters
- llvm::StringRef FuncName
¶llvm::MCSymbol*
getOrCreateParentFrameOffsetSymbol(
llvm::StringRef FuncName)
llvm::MCSymbol*
getOrCreateParentFrameOffsetSymbol(
llvm::StringRef FuncName)
Declared at: llvm/include/llvm/MC/MCContext.h:372
Parameters
- llvm::StringRef FuncName
¶llvm::MCSymbol* getOrCreateSymbol(
const llvm::Twine& Name)
llvm::MCSymbol* getOrCreateSymbol(
const llvm::Twine& Name)
Description
Lookup the symbol inside with the specified \p Name. If it exists, return it. If not, create a forward reference and return it.
Declared at: llvm/include/llvm/MC/MCContext.h:364
Parameters
- const llvm::Twine& Name
- - The symbol name, which must be unique across all symbols.
¶const llvm::MCRegisterInfo* getRegisterInfo()
const
const llvm::MCRegisterInfo* getRegisterInfo()
const
Declared at: llvm/include/llvm/MC/MCContext.h:320
¶llvm::raw_fd_ostream* getSecureLog()
llvm::raw_fd_ostream* getSecureLog()
Declared at: llvm/include/llvm/MC/MCContext.h:665
¶char* getSecureLogFile()
char* getSecureLogFile()
Description
@ }
Declared at: llvm/include/llvm/MC/MCContext.h:664
¶bool getSecureLogUsed()
bool getSecureLogUsed()
Declared at: llvm/include/llvm/MC/MCContext.h:671
¶const llvm::SourceMgr* getSourceManager() const
const llvm::SourceMgr* getSourceManager() const
Declared at: llvm/include/llvm/MC/MCContext.h:314
¶llvm::MCSubtargetInfo& getSubtargetCopy(
const llvm::MCSubtargetInfo& STI)
llvm::MCSubtargetInfo& getSubtargetCopy(
const llvm::MCSubtargetInfo& STI)
Declared at: llvm/include/llvm/MC/MCContext.h:517
Parameters
- const llvm::MCSubtargetInfo& STI
¶const llvm::MCContext::SymbolTable& getSymbols()
const
const llvm::MCContext::SymbolTable& getSymbols()
const
Description
getSymbols - Get a reference for the symbol table for clients that want to, for example, iterate over all symbols. 'const' because we still want any modifications to the table itself to use the MCContext APIs.
Declared at: llvm/include/llvm/MC/MCContext.h:386
¶llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const llvm::MCSymbolWasm* Group,
unsigned int UniqueID,
const char* BeginSymName)
llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const llvm::MCSymbolWasm* Group,
unsigned int UniqueID,
const char* BeginSymName)
Declared at: llvm/include/llvm/MC/MCContext.h:505
Parameters
- const llvm::Twine& Section
- llvm::SectionKind K
- const llvm::MCSymbolWasm* Group
- unsigned int UniqueID
- const char* BeginSymName
¶llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const llvm::Twine& Group,
unsigned int UniqueID,
const char* BeginSymName)
llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const llvm::Twine& Group,
unsigned int UniqueID,
const char* BeginSymName)
Declared at: llvm/include/llvm/MC/MCContext.h:501
Parameters
- const llvm::Twine& Section
- llvm::SectionKind K
- const llvm::Twine& Group
- unsigned int UniqueID
- const char* BeginSymName
¶llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const llvm::Twine& Group,
unsigned int UniqueID)
llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const llvm::Twine& Group,
unsigned int UniqueID)
Declared at: llvm/include/llvm/MC/MCContext.h:496
Parameters
- const llvm::Twine& Section
- llvm::SectionKind K
- const llvm::Twine& Group
- unsigned int UniqueID
¶llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const char* BeginSymName)
llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K,
const char* BeginSymName)
Declared at: llvm/include/llvm/MC/MCContext.h:491
Parameters
- const llvm::Twine& Section
- llvm::SectionKind K
- const char* BeginSymName
¶llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K)
llvm::MCSectionWasm* getWasmSection(
const llvm::Twine& Section,
llvm::SectionKind K)
Declared at: llvm/include/llvm/MC/MCContext.h:487
Parameters
- const llvm::Twine& Section
- llvm::SectionKind K
¶llvm::MCSectionXCOFF* getXCOFFSection(
llvm::StringRef Section,
XCOFF::StorageMappingClass MappingClass,
XCOFF::SymbolType CSectType,
XCOFF::StorageClass StorageClass,
llvm::SectionKind K,
const char* BeginSymName = nullptr)
llvm::MCSectionXCOFF* getXCOFFSection(
llvm::StringRef Section,
XCOFF::StorageMappingClass MappingClass,
XCOFF::SymbolType CSectType,
XCOFF::StorageClass StorageClass,
llvm::SectionKind K,
const char* BeginSymName = nullptr)
Declared at: llvm/include/llvm/MC/MCContext.h:509
Parameters
- llvm::StringRef Section
- XCOFF::StorageMappingClass MappingClass
- XCOFF::SymbolType CSectType
- XCOFF::StorageClass StorageClass
- llvm::SectionKind K
- const char* BeginSymName = nullptr
¶bool hadError()
bool hadError()
Declared at: llvm/include/llvm/MC/MCContext.h:680
¶bool isDwarfMD5UsageConsistent(
unsigned int CUID) const
bool isDwarfMD5UsageConsistent(
unsigned int CUID) const
Description
Reports whether MD5 checksum usage is consistent (all-or-none).
Declared at: llvm/include/llvm/MC/MCContext.h:593
Parameters
- unsigned int CUID
¶bool isValidDwarfFileNumber(
unsigned int FileNumber,
unsigned int CUID = 0)
bool isValidDwarfFileNumber(
unsigned int FileNumber,
unsigned int CUID = 0)
Declared at: llvm/include/llvm/MC/MCContext.h:552
Parameters
- unsigned int FileNumber
- unsigned int CUID = 0
¶const llvm::MCAsmMacro* lookupMacro(
llvm::StringRef Name)
const llvm::MCAsmMacro* lookupMacro(
llvm::StringRef Name)
Declared at: llvm/include/llvm/MC/MCContext.h:689
Parameters
- llvm::StringRef Name
¶llvm::MCSymbol* lookupSymbol(
const llvm::Twine& Name) const
llvm::MCSymbol* lookupSymbol(
const llvm::Twine& Name) const
Description
Get the symbol for \p Name, or null.
Declared at: llvm/include/llvm/MC/MCContext.h:377
Parameters
- const llvm::Twine& Name
¶void registerInlineAsmLabel(llvm::MCSymbol* Sym)
void registerInlineAsmLabel(llvm::MCSymbol* Sym)
Description
registerInlineAsmLabel - Records that the name is a label referenced in inline assembly.
Declared at: llvm/include/llvm/MC/MCContext.h:396
Parameters
- llvm::MCSymbol* Sym
¶void renameELFSection(llvm::MCSectionELF* Section,
llvm::StringRef Name)
void renameELFSection(llvm::MCSectionELF* Section,
llvm::StringRef Name)
Declared at: llvm/include/llvm/MC/MCContext.h:465
Parameters
- llvm::MCSectionELF* Section
- llvm::StringRef Name
¶void reportError(llvm::SMLoc L,
const llvm::Twine& Msg)
void reportError(llvm::SMLoc L,
const llvm::Twine& Msg)
Declared at: llvm/include/llvm/MC/MCContext.h:681
Parameters
- llvm::SMLoc L
- const llvm::Twine& Msg
¶void reportFatalError(llvm::SMLoc L,
const llvm::Twine& Msg)
void reportFatalError(llvm::SMLoc L,
const llvm::Twine& Msg)
Declared at: llvm/include/llvm/MC/MCContext.h:686
Parameters
- llvm::SMLoc L
- const llvm::Twine& Msg
¶void reportWarning(llvm::SMLoc L,
const llvm::Twine& Msg)
void reportWarning(llvm::SMLoc L,
const llvm::Twine& Msg)
Declared at: llvm/include/llvm/MC/MCContext.h:682
Parameters
- llvm::SMLoc L
- const llvm::Twine& Msg
¶void reset()
void reset()
Description
reset - return object to right after construction state to prepare to process a new module
Declared at: llvm/include/llvm/MC/MCContext.h:334
¶void setAllowTemporaryLabels(bool Value)
void setAllowTemporaryLabels(bool Value)
Declared at: llvm/include/llvm/MC/MCContext.h:326
Parameters
- bool Value
¶void setCompilationDir(llvm::StringRef S)
void setCompilationDir(llvm::StringRef S)
Description
Set the compilation directory for DW_AT_comp_dir
Declared at: llvm/include/llvm/MC/MCContext.h:530
Parameters
¶void setCurrentDwarfLoc(
unsigned int FileNum,
unsigned int Line,
unsigned int Column,
unsigned int Flags,
unsigned int Isa,
unsigned int Discriminator)
void setCurrentDwarfLoc(
unsigned int FileNum,
unsigned int Line,
unsigned int Column,
unsigned int Flags,
unsigned int Isa,
unsigned int Discriminator)
Description
Saves the information from the currently parsed dwarf .loc directive and sets DwarfLocSeen. When the next instruction is assembled an entry in the line number table with this information and the address of the instruction will be created.
Declared at: llvm/include/llvm/MC/MCContext.h:601
Parameters
- unsigned int FileNum
- unsigned int Line
- unsigned int Column
- unsigned int Flags
- unsigned int Isa
- unsigned int Discriminator
¶void setDwarfCompileUnitID(unsigned int CUIndex)
void setDwarfCompileUnitID(unsigned int CUIndex)
Declared at: llvm/include/llvm/MC/MCContext.h:578
Parameters
- unsigned int CUIndex
¶void setDwarfDebugFlags(llvm::StringRef S)
void setDwarfDebugFlags(llvm::StringRef S)
Declared at: llvm/include/llvm/MC/MCContext.h:648
Parameters
¶void setDwarfDebugProducer(llvm::StringRef S)
void setDwarfDebugProducer(llvm::StringRef S)
Declared at: llvm/include/llvm/MC/MCContext.h:651
Parameters
¶void setDwarfVersion(uint16_t v)
void setDwarfVersion(uint16_t v)
Declared at: llvm/include/llvm/MC/MCContext.h:659
Parameters
- uint16_t v
¶void setGenDwarfFileNumber(
unsigned int FileNumber)
void setGenDwarfFileNumber(
unsigned int FileNumber)
Declared at: llvm/include/llvm/MC/MCContext.h:622
Parameters
- unsigned int FileNumber
¶void setGenDwarfForAssembly(bool Value)
void setGenDwarfForAssembly(bool Value)
Declared at: llvm/include/llvm/MC/MCContext.h:619
Parameters
- bool Value
¶void setGenDwarfRootFile(llvm::StringRef FileName,
llvm::StringRef Buffer)
void setGenDwarfRootFile(llvm::StringRef FileName,
llvm::StringRef Buffer)
Description
Specifies information about the "root file" for assembler clients (e.g., llvm-mc). Assumes compilation dir etc. have been set up.
Declared at: llvm/include/llvm/MC/MCContext.h:628
Parameters
- llvm::StringRef FileName
- llvm::StringRef Buffer
¶void setInlineSourceManager(llvm::SourceMgr* SM)
void setInlineSourceManager(llvm::SourceMgr* SM)
Declared at: llvm/include/llvm/MC/MCContext.h:316
Parameters
- llvm::SourceMgr* SM
¶void setMCLineTableRootFile(
unsigned int CUID,
llvm::StringRef CompilationDir,
llvm::StringRef Filename,
Optional<MD5::MD5Result> Checksum,
Optional<llvm::StringRef> Source)
void setMCLineTableRootFile(
unsigned int CUID,
llvm::StringRef CompilationDir,
llvm::StringRef Filename,
Optional<MD5::MD5Result> Checksum,
Optional<llvm::StringRef> Source)
Description
Specifies the "root" file and directory of the compilation unit. These are "file 0" and "directory 0" in DWARF v5.
Declared at: llvm/include/llvm/MC/MCContext.h:584
Parameters
- unsigned int CUID
- llvm::StringRef CompilationDir
- llvm::StringRef Filename
- Optional<MD5::MD5Result> Checksum
- Optional<llvm::StringRef> Source
¶void setMainFileName(llvm::StringRef S)
void setMainFileName(llvm::StringRef S)
Description
Set the main file name and override the default.
Declared at: llvm/include/llvm/MC/MCContext.h:544
Parameters
¶void setSecureLog(
std::unique_ptr<raw_fd_ostream> Value)
void setSecureLog(
std::unique_ptr<raw_fd_ostream> Value)
Declared at: llvm/include/llvm/MC/MCContext.h:667
Parameters
- std::unique_ptr<raw_fd_ostream> Value
¶void setSecureLogUsed(bool Value)
void setSecureLogUsed(bool Value)
Declared at: llvm/include/llvm/MC/MCContext.h:672
Parameters
- bool Value
¶void setSymbolValue(llvm::MCStreamer& Streamer,
llvm::StringRef Sym,
uint64_t Val)
void setSymbolValue(llvm::MCStreamer& Streamer,
llvm::StringRef Sym,
uint64_t Val)
Description
Set value for a symbol.
Declared at: llvm/include/llvm/MC/MCContext.h:380
Parameters
- llvm::MCStreamer& Streamer
- llvm::StringRef Sym
- uint64_t Val
¶void setUseNamesOnTempLabels(bool Value)
void setUseNamesOnTempLabels(bool Value)
Declared at: llvm/include/llvm/MC/MCContext.h:327
Parameters
- bool Value
¶void undefineMacro(llvm::StringRef Name)
void undefineMacro(llvm::StringRef Name)
Declared at: llvm/include/llvm/MC/MCContext.h:698
Parameters
- llvm::StringRef Name
¶~MCContext()
~MCContext()
Declared at: llvm/include/llvm/MC/MCContext.h:312