LLVM API Documentation
#include <MipsMCExpr.h>
Public Types | |
enum | VariantKind { VK_Mips_None, VK_Mips_LO, VK_Mips_HI, VK_Mips_HIGHER, VK_Mips_HIGHEST } |
Public Member Functions | |
VariantKind | getKind () const |
getOpcode - Get the kind of this expression. | |
const MCExpr * | getSubExpr () const |
getSubExpr - Get the child of this expression. | |
void | PrintImpl (raw_ostream &OS) const override |
bool | EvaluateAsRelocatableImpl (MCValue &Res, const MCAsmLayout *Layout, const MCFixup *Fixup) const override |
void | visitUsedExpr (MCStreamer &Streamer) const override |
const MCSection * | FindAssociatedSection () const override |
void | fixELFSymbolsInTLSFixups (MCAssembler &Asm) const override |
Static Public Member Functions | |
static bool | isSupportedBinaryExpr (MCSymbolRefExpr::VariantKind VK, const MCBinaryExpr *BE) |
static const MipsMCExpr * | Create (MCSymbolRefExpr::VariantKind VK, const MCExpr *Expr, MCContext &Ctx) |
static bool | classof (const MCExpr *E) |
Definition at line 19 of file MipsMCExpr.h.
Definition at line 21 of file MipsMCExpr.h.
static bool llvm::MipsMCExpr::classof | ( | const MCExpr * | E | ) | [inline, static] |
Reimplemented from llvm::MCTargetExpr.
Definition at line 61 of file MipsMCExpr.h.
References llvm::MCExpr::getKind(), and llvm::MCExpr::Target.
const MipsMCExpr * MipsMCExpr::Create | ( | MCSymbolRefExpr::VariantKind | VK, |
const MCExpr * | Expr, | ||
MCContext & | Ctx | ||
) | [static] |
Definition at line 44 of file MipsMCExpr.cpp.
References llvm_unreachable, llvm::MCSymbolRefExpr::VK_Mips_ABS_HI, llvm::MCSymbolRefExpr::VK_Mips_ABS_LO, VK_Mips_HI, VK_Mips_HIGHER, llvm::MCSymbolRefExpr::VK_Mips_HIGHER, VK_Mips_HIGHEST, llvm::MCSymbolRefExpr::VK_Mips_HIGHEST, and VK_Mips_LO.
bool MipsMCExpr::EvaluateAsRelocatableImpl | ( | MCValue & | Res, |
const MCAsmLayout * | Layout, | ||
const MCFixup * | Fixup | ||
) | const [override, virtual] |
Implements llvm::MCTargetExpr.
Definition at line 82 of file MipsMCExpr.cpp.
References llvm::MCExpr::EvaluateAsRelocatable(), and getSubExpr().
const MCSection* llvm::MipsMCExpr::FindAssociatedSection | ( | ) | const [inline, override, virtual] |
FindAssociatedSection - 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.
Implements llvm::MCTargetExpr.
Definition at line 54 of file MipsMCExpr.h.
References llvm::MCExpr::FindAssociatedSection(), and getSubExpr().
void llvm::MipsMCExpr::fixELFSymbolsInTLSFixups | ( | MCAssembler & | Asm | ) | const [inline, override, virtual] |
Implements llvm::MCTargetExpr.
Definition at line 59 of file MipsMCExpr.h.
VariantKind llvm::MipsMCExpr::getKind | ( | ) | const [inline] |
getOpcode - Get the kind of this expression.
Reimplemented from llvm::MCExpr.
Definition at line 44 of file MipsMCExpr.h.
const MCExpr* llvm::MipsMCExpr::getSubExpr | ( | ) | const [inline] |
getSubExpr - Get the child of this expression.
Definition at line 47 of file MipsMCExpr.h.
Referenced by EvaluateAsRelocatableImpl(), FindAssociatedSection(), and visitUsedExpr().
bool MipsMCExpr::isSupportedBinaryExpr | ( | MCSymbolRefExpr::VariantKind | VK, |
const MCBinaryExpr * | BE | ||
) | [static] |
Definition at line 20 of file MipsMCExpr.cpp.
References llvm::MCBinaryExpr::getLHS(), llvm::MCBinaryExpr::getRHS(), llvm::MCSymbolRefExpr::VK_Mips_ABS_HI, llvm::MCSymbolRefExpr::VK_Mips_ABS_LO, llvm::MCSymbolRefExpr::VK_Mips_HIGHER, and llvm::MCSymbolRefExpr::VK_Mips_HIGHEST.
void MipsMCExpr::PrintImpl | ( | raw_ostream & | OS | ) | const [override, virtual] |
Implements llvm::MCTargetExpr.
Definition at line 67 of file MipsMCExpr.cpp.
References llvm_unreachable, llvm::MCExpr::print(), VK_Mips_HI, VK_Mips_HIGHER, VK_Mips_HIGHEST, and VK_Mips_LO.
void MipsMCExpr::visitUsedExpr | ( | MCStreamer & | Streamer | ) | const [override, virtual] |
Implements llvm::MCTargetExpr.
Definition at line 88 of file MipsMCExpr.cpp.
References getSubExpr(), and llvm::MCStreamer::visitUsedExpr().