LLVM 22.0.0git
|
MCExpr that represents the physical number for the sections that contains a symbol. More...
Public Member Functions | |
void | printImpl (raw_ostream &OS, const MCAsmInfo *MAI) const override |
bool | evaluateAsRelocatableImpl (MCValue &Res, const MCAssembler *Asm) const override |
void | visitUsedExpr (MCStreamer &Streamer) const override |
MCFragment * | findAssociatedFragment () const override |
![]() | |
virtual void | printImpl (raw_ostream &OS, const MCAsmInfo *MAI) const =0 |
virtual bool | evaluateAsRelocatableImpl (MCValue &Res, const MCAssembler *Asm) const =0 |
virtual bool | isEqualTo (const MCExpr *x) const |
virtual bool | inlineAssignedExpr () const |
virtual void | visitUsedExpr (MCStreamer &Streamer) const =0 |
virtual MCFragment * | findAssociatedFragment () const =0 |
![]() | |
MCExpr (const MCExpr &)=delete | |
MCExpr & | operator= (const MCExpr &)=delete |
ExprKind | getKind () const |
SMLoc | getLoc () const |
LLVM_ABI void | dump () const |
LLVM_ABI bool | evaluateAsAbsolute (int64_t &Res) const |
Try to evaluate the expression to an absolute value. | |
LLVM_ABI bool | evaluateAsAbsolute (int64_t &Res, const MCAssembler &Asm) const |
LLVM_ABI bool | evaluateAsAbsolute (int64_t &Res, const MCAssembler *Asm) const |
LLVM_ABI bool | evaluateKnownAbsolute (int64_t &Res, const MCAssembler &Asm) const |
Aggressive variant of evaluateAsRelocatable when relocations are unavailable (e.g. | |
LLVM_ABI bool | evaluateAsRelocatable (MCValue &Res, const MCAssembler *Asm) const |
Try to evaluate the expression to a relocatable value, i.e. | |
LLVM_ABI bool | evaluateAsValue (MCValue &Res, const MCAssembler &Asm) const |
Try to evaluate the expression to the form (a - b + constant) where neither a nor b are variables. | |
LLVM_ABI MCFragment * | findAssociatedFragment () const |
Find the "associated section" for this expression, which is currently defined as the absolute section for constants, or otherwise the section associated with the first defined symbol in the expression. | |
Static Public Member Functions | |
static MCCOFFSectionNumberTargetExpr * | create (const MCSymbol &SectionSymbol, const WinCOFFObjectWriter &Writer, MCContext &Ctx) |
![]() | |
static bool | classof (const MCExpr *E) |
![]() | |
static LLVM_ABI bool | evaluateSymbolicAdd (const MCAssembler *, bool, const MCValue &, const MCValue &, MCValue &) |
Additional Inherited Members | |
![]() | |
enum | ExprKind : uint8_t { Binary , Constant , SymbolRef , Unary , Specifier , Target } |
![]() | |
using | Spec = uint16_t |
![]() | |
MCTargetExpr () | |
virtual | ~MCTargetExpr ()=default |
![]() | |
MCExpr (ExprKind Kind, SMLoc Loc, unsigned SubclassData=0) | |
LLVM_ABI bool | evaluateAsRelocatableImpl (MCValue &Res, const MCAssembler *Asm, bool InSet) const |
unsigned | getSubclassData () const |
MCExpr that represents the physical number for the sections that contains a symbol.
Definition at line 47 of file MCWinCOFFStreamer.cpp.
|
inlinestatic |
Definition at line 57 of file MCWinCOFFStreamer.cpp.
Referenced by llvm::MCWinCOFFStreamer::emitCOFFSecNumber().
|
inlineoverridevirtual |
Implements llvm::MCTargetExpr.
Definition at line 67 of file MCWinCOFFStreamer.cpp.
References assert(), llvm::MCValue::get(), and llvm::WinCOFFObjectWriter::getSectionNumber().
|
inlineoverridevirtual |
Implements llvm::MCTargetExpr.
Definition at line 80 of file MCWinCOFFStreamer.cpp.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Implements llvm::MCTargetExpr.
Definition at line 76 of file MCWinCOFFStreamer.cpp.