14#ifndef LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCEXPR_H
15#define LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCEXPR_H
63 if (
auto *
E = dyn_cast<X86MCExpr>(
X))
static GCRegistry::Add< CoreCLRGC > E("coreclr", "CoreCLR-compatible GC")
static GCMetadataPrinterRegistry::Add< ErlangGCPrinter > X("erlang", "erlang-compatible garbage collector")
PowerPC TLS Dynamic Call Fixup
This class is intended to be used as a base class for asm properties and features specific to the tar...
unsigned getAssemblerDialect() const
Context object for machine code objects.
Base class for the full range of assembler expressions which are needed for parsing.
@ Target
Target specific expression.
Encode information on a single operation to perform on a byte sequence (e.g., an encoded instruction)...
Wrapper class representing physical registers. Should be passed by value.
Streaming machine code generation interface.
This is an extension point for target-specific MCExpr subclasses to implement.
This represents an "assembler immediate".
static const char * getRegisterName(MCRegister Reg)
bool isEqualTo(const MCExpr *X) const override
bool evaluateAsRelocatableImpl(MCValue &Res, const MCAssembler *Asm, const MCFixup *Fixup) const override
void fixELFSymbolsInTLSFixups(MCAssembler &Asm) const override
void visitUsedExpr(MCStreamer &Streamer) const override
static const X86MCExpr * create(MCRegister Reg, MCContext &Ctx)
void printImpl(raw_ostream &OS, const MCAsmInfo *MAI) const override
MCRegister getReg() const
getSubExpr - Get the child of this expression.
MCFragment * findAssociatedFragment() const override
static bool classof(const MCExpr *E)
bool inlineAssignedExpr() const override
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.