LLVM API Documentation
#include <MCExpr.h>
Public Member Functions | |
Accessors | |
const MCSymbol & | getSymbol () const |
VariantKind | getKind () const |
![]() | |
ExprKind | getKind () const |
void | print (raw_ostream &OS) const |
void | dump () const |
bool | EvaluateAsAbsolute (int64_t &Res, const MCAsmLayout &Layout, const SectionAddrMap &Addrs) const |
bool | EvaluateAsAbsolute (int64_t &Res) const |
bool | EvaluateAsAbsolute (int64_t &Res, const MCAssembler &Asm) const |
bool | EvaluateAsAbsolute (int64_t &Res, const MCAsmLayout &Layout) const |
bool | EvaluateAsRelocatable (MCValue &Res, const MCAsmLayout &Layout) const |
const MCSection * | FindAssociatedSection () const |
Static Public Member Functions | |
static bool | classof (const MCExpr *E) |
Construction | |
static const MCSymbolRefExpr * | Create (const MCSymbol *Symbol, MCContext &Ctx) |
static const MCSymbolRefExpr * | Create (const MCSymbol *Symbol, VariantKind Kind, MCContext &Ctx) |
static const MCSymbolRefExpr * | Create (StringRef Name, VariantKind Kind, MCContext &Ctx) |
Static Utility Functions | |
static StringRef | getVariantKindName (VariantKind Kind) |
static VariantKind | getVariantKindForName (StringRef Name) |
Additional Inherited Members | |
![]() | |
MCExpr (ExprKind _Kind) | |
bool | EvaluateAsRelocatableImpl (MCValue &Res, const MCAssembler *Asm, const MCAsmLayout *Layout, const SectionAddrMap *Addrs, bool InSet) const |
MCSymbolRefExpr - Represent a reference to a symbol from inside an expression.
A symbol reference in an expression may be a use of a label, a use of an assembler variable (defined constant), or constitute an implicit definition of the symbol as external.
Definition at line 297 of file MCExpr.h.
References llvm::MCExpr::getKind(), and llvm::MCExpr::SymbolRef.
|
inlinestatic |
Definition at line 270 of file MCExpr.h.
References VK_None.
Referenced by llvm::MCStreamer::BuildSymbolDiff(), llvm::AsmPrinter::doFinalization(), llvm::EmitAbsDifference(), llvm::X86AsmPrinter::EmitEndOfAsmFile(), llvm::ARMAsmPrinter::EmitEndOfAsmFile(), llvm::AsmPrinter::EmitFunctionBody(), EmitGenDwarfAranges(), EmitGenDwarfInfo(), llvm::X86AsmPrinter::EmitInstruction(), llvm::ARMAsmPrinter::EmitInstruction(), llvm::ARMAsmPrinter::EmitJump2Table(), llvm::ARMAsmPrinter::EmitJumpTable(), llvm::AsmPrinter::EmitJumpTableInfo(), llvm::AsmPrinter::EmitLabelDifference(), llvm::AsmPrinter::EmitLabelOffsetDifference(), llvm::AsmPrinter::EmitLabelPlusOffset(), llvm::SystemZAsmPrinter::EmitMachineConstantPoolValue(), llvm::ARMAsmPrinter::EmitMachineConstantPoolValue(), llvm::EmitRuntimeFunction(), llvm::EmitSymbolRefWithOfs(), llvm::MCStreamer::EmitSymbolValue(), llvm::EmitUnwindInfo(), llvm::MCObjectStreamer::EmitValueToOffset(), llvm::MCELFStreamer::EmitWeakReference(), llvm::ARMAsmPrinter::EmitXXStructor(), llvm::Win64Exception::EndFunction(), llvm::PPCMCExpr::EvaluateAsRelocatableImpl(), llvm::MCStreamer::ForceExpAbs(), llvm::DwarfUnits::getAddrPoolIndex(), llvm::TargetLoweringObjectFile::getDebugThreadLocalSymbol(), llvm::SystemZMCInstLower::getExpr(), llvm::MCAsmInfo::getExprForFDESymbol(), llvm::X86_64MCAsmInfoDarwin::getExprForPersonalitySymbol(), llvm::X86TargetLowering::getPICJumpTableRelocBaseExpr(), llvm::TargetLowering::getPICJumpTableRelocBaseExpr(), GetSymbolRef(), llvm::X86_64MachoTargetObjectFile::getTTypeGlobalReference(), llvm::ARMElfTargetObjectFile::getTTypeGlobalReference(), llvm::TargetLoweringObjectFileELF::getTTypeGlobalReference(), llvm::TargetLoweringObjectFileMachO::getTTypeGlobalReference(), llvm::TargetLoweringObjectFile::getTTypeGlobalReference(), llvm::TargetLoweringObjectFile::getTTypeReference(), llvm::HexagonLowerToMC(), llvm::AMDGPUMCInstLower::lower(), llvm::MSP430MCInstLower::Lower(), nvptx::LowerConstant(), lowerConstant(), llvm::X86TargetLowering::LowerCustomJumpTableEntry(), llvm::AArch64AsmPrinter::lowerOperand(), llvm::ARMAsmPrinter::lowerOperand(), llvm::LowerPPCMachineInstrToMCInst(), llvm::MSP430MCInstLower::LowerSymbolOperand(), llvm::AArch64AsmPrinter::lowerSymbolOperand(), MakeStartMinusEndExpr(), llvm::MCExternalSymbolizer::tryAddingSymbolicOperand(), and llvm::MCObjectSymbolizer::tryAddingSymbolicOperand().
|
static |
Definition at line 158 of file MCExpr.cpp.
|
static |
Definition at line 164 of file MCExpr.cpp.
|
inline |
Definition at line 285 of file MCExpr.h.
Referenced by llvm::MCExpr::EvaluateAsRelocatableImpl(), llvm::PPCMCExpr::EvaluateAsRelocatableImpl(), getRelocType(), HasSecRelSymbolRef(), llvm::MCObjectWriter::IsSymbolRefDifferenceFullyResolved(), llvm::MCExpr::print(), and printExpr().
|
inline |
Definition at line 283 of file MCExpr.h.
Referenced by llvm::MCSymbol::AliasedSymbol(), llvm::MCExpr::EvaluateAsRelocatableImpl(), llvm::PPCMCExpr::EvaluateAsRelocatableImpl(), llvm::MCExpr::FindAssociatedSection(), fixELFSymbolsInTLSFixupsImpl(), llvm::MachObjectWriter::getSymbolAddress(), llvm::MCAsmLayout::getSymbolOffset(), llvm::MCObjectWriter::IsSymbolRefDifferenceFullyResolved(), llvm::MCExpr::print(), printExpr(), StartsWithGlobalOffsetTable(), and llvm::MCELFObjectTargetWriter::undefinedExplicitRelSym().
|
static |
Definition at line 280 of file MCExpr.cpp.
|
static |
Definition at line 169 of file MCExpr.cpp.
Referenced by llvm::MCExpr::print().