LLVM 19.0.0git
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::irsymtab::Symbol Struct Reference

This represents a symbol that has been read from a storage::Symbol and possibly a storage::Uncommon. More...

#include "llvm/Object/IRSymtab.h"

Inheritance diagram for llvm::irsymtab::Symbol:
Inheritance graph
[legend]

Public Types

using S = storage::Symbol
 

Public Member Functions

StringRef getName () const
 Returns the mangled symbol name.
 
StringRef getIRName () const
 Returns the unmangled symbol name, or the empty string if this is not an IR symbol.
 
int getComdatIndex () const
 Returns the index into the comdat table (see Reader::getComdatTable()), or -1 if not a comdat member.
 
GlobalValue::VisibilityTypes getVisibility () const
 
bool isUndefined () const
 
bool isWeak () const
 
bool isCommon () const
 
bool isIndirect () const
 
bool isUsed () const
 
bool isTLS () const
 
bool canBeOmittedFromSymbolTable () const
 
bool isGlobal () const
 
bool isFormatSpecific () const
 
bool isUnnamedAddr () const
 
bool isExecutable () const
 
uint64_t getCommonSize () const
 
uint32_t getCommonAlignment () const
 
StringRef getCOFFWeakExternalFallback () const
 COFF-specific: for weak externals, returns the name of the symbol that is used as a fallback if the weak external remains undefined.
 
StringRef getSectionName () const
 

Public Attributes

StringRef Name
 
StringRef IRName
 
int ComdatIndex
 
uint32_t Flags
 
uint32_t CommonSize
 
uint32_t CommonAlign
 
StringRef COFFWeakExternFallbackName
 
StringRef SectionName
 

Detailed Description

This represents a symbol that has been read from a storage::Symbol and possibly a storage::Uncommon.

Definition at line 170 of file IRSymtab.h.

Member Typedef Documentation

◆ S

Definition at line 192 of file IRSymtab.h.

Member Function Documentation

◆ canBeOmittedFromSymbolTable()

bool llvm::irsymtab::Symbol::canBeOmittedFromSymbolTable ( ) const
inline

Definition at line 205 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_may_omit, and Flags.

◆ getCOFFWeakExternalFallback()

StringRef llvm::irsymtab::Symbol::getCOFFWeakExternalFallback ( ) const
inline

COFF-specific: for weak externals, returns the name of the symbol that is used as a fallback if the weak external remains undefined.

Definition at line 226 of file IRSymtab.h.

References assert(), COFFWeakExternFallbackName, isIndirect(), and isWeak().

◆ getComdatIndex()

int llvm::irsymtab::Symbol::getComdatIndex ( ) const
inline

Returns the index into the comdat table (see Reader::getComdatTable()), or -1 if not a comdat member.

Definition at line 190 of file IRSymtab.h.

References ComdatIndex.

◆ getCommonAlignment()

uint32_t llvm::irsymtab::Symbol::getCommonAlignment ( ) const
inline

Definition at line 219 of file IRSymtab.h.

References assert(), CommonAlign, and isCommon().

◆ getCommonSize()

uint64_t llvm::irsymtab::Symbol::getCommonSize ( ) const
inline

Definition at line 214 of file IRSymtab.h.

References assert(), CommonSize, and isCommon().

◆ getIRName()

StringRef llvm::irsymtab::Symbol::getIRName ( ) const
inline

Returns the unmangled symbol name, or the empty string if this is not an IR symbol.

Definition at line 186 of file IRSymtab.h.

References IRName.

◆ getName()

StringRef llvm::irsymtab::Symbol::getName ( ) const
inline

Returns the mangled symbol name.

Definition at line 182 of file IRSymtab.h.

References Name.

◆ getSectionName()

StringRef llvm::irsymtab::Symbol::getSectionName ( ) const
inline

Definition at line 231 of file IRSymtab.h.

References SectionName.

◆ getVisibility()

GlobalValue::VisibilityTypes llvm::irsymtab::Symbol::getVisibility ( ) const
inline

Definition at line 194 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_visibility, and Flags.

◆ isCommon()

bool llvm::irsymtab::Symbol::isCommon ( ) const
inline

Definition at line 200 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_common, and Flags.

Referenced by getCommonAlignment(), and getCommonSize().

◆ isExecutable()

bool llvm::irsymtab::Symbol::isExecutable ( ) const
inline

Definition at line 212 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_executable, and Flags.

◆ isFormatSpecific()

bool llvm::irsymtab::Symbol::isFormatSpecific ( ) const
inline

Definition at line 210 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_format_specific, and Flags.

◆ isGlobal()

bool llvm::irsymtab::Symbol::isGlobal ( ) const
inline

Definition at line 209 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_global, and Flags.

◆ isIndirect()

bool llvm::irsymtab::Symbol::isIndirect ( ) const
inline

Definition at line 201 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_indirect, and Flags.

Referenced by getCOFFWeakExternalFallback().

◆ isTLS()

bool llvm::irsymtab::Symbol::isTLS ( ) const
inline

Definition at line 203 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_tls, and Flags.

◆ isUndefined()

bool llvm::irsymtab::Symbol::isUndefined ( ) const
inline

Definition at line 198 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_undefined, and Flags.

◆ isUnnamedAddr()

bool llvm::irsymtab::Symbol::isUnnamedAddr ( ) const
inline

Definition at line 211 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_unnamed_addr, and Flags.

◆ isUsed()

bool llvm::irsymtab::Symbol::isUsed ( ) const
inline

Definition at line 202 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_used, and Flags.

◆ isWeak()

bool llvm::irsymtab::Symbol::isWeak ( ) const
inline

Definition at line 199 of file IRSymtab.h.

References llvm::irsymtab::storage::Symbol::FB_weak, and Flags.

Referenced by getCOFFWeakExternalFallback().

Member Data Documentation

◆ COFFWeakExternFallbackName

StringRef llvm::irsymtab::Symbol::COFFWeakExternFallbackName

Definition at line 178 of file IRSymtab.h.

Referenced by getCOFFWeakExternalFallback().

◆ ComdatIndex

int llvm::irsymtab::Symbol::ComdatIndex

Definition at line 173 of file IRSymtab.h.

Referenced by getComdatIndex().

◆ CommonAlign

uint32_t llvm::irsymtab::Symbol::CommonAlign

Definition at line 177 of file IRSymtab.h.

Referenced by getCommonAlignment().

◆ CommonSize

uint32_t llvm::irsymtab::Symbol::CommonSize

Definition at line 177 of file IRSymtab.h.

Referenced by getCommonSize().

◆ Flags

uint32_t llvm::irsymtab::Symbol::Flags

◆ IRName

StringRef llvm::irsymtab::Symbol::IRName

Definition at line 172 of file IRSymtab.h.

Referenced by getIRName().

◆ Name

StringRef llvm::irsymtab::Symbol::Name

Definition at line 172 of file IRSymtab.h.

Referenced by getName().

◆ SectionName

StringRef llvm::irsymtab::Symbol::SectionName

Definition at line 179 of file IRSymtab.h.

Referenced by getSectionName().


The documentation for this struct was generated from the following file: