LLVM API Documentation
#include <MCValue.h>
Public Member Functions | |
int64_t | getConstant () const |
const MCSymbolRefExpr * | getSymA () const |
const MCSymbolRefExpr * | getSymB () const |
bool | isAbsolute () const |
isAbsolute - Is this an absolute (as opposed to relocatable) value. More... | |
void | print (raw_ostream &OS, const MCAsmInfo *MAI) const |
print - Print the value to the stream OS . More... | |
void | dump () const |
dump - Print the value to stderr. More... | |
Static Public Member Functions | |
static MCValue | get (const MCSymbolRefExpr *SymA, const MCSymbolRefExpr *SymB=0, int64_t Val=0) |
static MCValue | get (int64_t Val) |
MCValue - This represents an "assembler immediate". In its most general form, this can hold "SymbolA - SymbolB + imm64". Not all targets supports relocations of this general form, but we need to represent this anyway.
In the general form, SymbolB can only be defined if SymbolA is, and both must be in the same (non-external) section. The latter constraint is not enforced, since a symbol's section may not be known at construction.
Note that this class must remain a simple POD value class, because we need it to live in unions etc.
void MCValue::dump | ( | ) | const |
dump - Print the value to stderr.
Definition at line 35 of file MCValue.cpp.
References llvm::dbgs(), and print().
|
inlinestatic |
Definition at line 55 of file MCValue.h.
Referenced by llvm::MCExpr::EvaluateAsRelocatableImpl(), and llvm::PPCMCExpr::EvaluateAsRelocatableImpl().
|
inlinestatic |
|
inline |
Definition at line 42 of file MCValue.h.
Referenced by llvm::PPCMCExpr::EvaluateAsRelocatableImpl(), llvm::MachObjectWriter::getSymbolAddress(), llvm::MCAsmLayout::getSymbolOffset(), and print().
|
inline |
Definition at line 43 of file MCValue.h.
Referenced by llvm::MCExpr::EvaluateAsRelocatableImpl(), llvm::PPCMCExpr::EvaluateAsRelocatableImpl(), getRelocType(), llvm::MachObjectWriter::getSymbolAddress(), llvm::MCAsmLayout::getSymbolOffset(), llvm::MachObjectWriter::markAbsoluteVariableSymbols(), print(), and llvm::MCELFObjectTargetWriter::undefinedExplicitRelSym().
|
inline |
Definition at line 44 of file MCValue.h.
Referenced by llvm::MCExpr::EvaluateAsRelocatableImpl(), llvm::PPCMCExpr::EvaluateAsRelocatableImpl(), llvm::MachObjectWriter::getSymbolAddress(), llvm::MCAsmLayout::getSymbolOffset(), llvm::MachObjectWriter::markAbsoluteVariableSymbols(), and print().
|
inline |
isAbsolute - Is this an absolute (as opposed to relocatable) value.
Definition at line 47 of file MCValue.h.
Referenced by llvm::PPCMCExpr::EvaluateAsRelocatableImpl(), getRelocType(), and print().
void MCValue::print | ( | raw_ostream & | OS, |
const MCAsmInfo * | MAI | ||
) | const |
print - Print the value to the stream OS
.
Definition at line 17 of file MCValue.cpp.
References getConstant(), getSymA(), getSymB(), isAbsolute(), and llvm::MCExpr::print().
Referenced by dump().