10 #ifndef LLVM_AVR_MCEXPR_H
11 #define LLVM_AVR_MCEXPR_H
52 void setNegated(
bool negated =
true) { Negated = negated; }
56 const MCFixup *Fixup)
const override;
74 int64_t evaluateAsInt64(int64_t
Value)
const;
82 : Kind(Kind), SubExpr(Expr), Negated(Negated) {}
88 #endif // LLVM_AVR_MCEXPR_H
MCFragment * findAssociatedFragment() const
Find the "associated section" for this expression, which is currently defined as the absolute section...
This represents an "assembler immediate".
const MCExpr * getSubExpr() const
bool evaluateAsConstant(int64_t &Result) const
Evaluates the fixup as a constant value.
Encode information on a single operation to perform on a byte sequence (e.g., an encoded instruction)...
void visitUsedExpr(MCStreamer &streamer) const override
VariantKind
Specifies the type of an expression.
Encapsulates the layout of an assembly file at a particular point in time.
A expression in AVR machine code.
Base class for the full range of assembler expressions which are needed for parsing.
This is an extension point for target-specific MCExpr subclasses to implement.
static bool classof(const MCExpr *E)
Context object for machine code objects.
void fixELFSymbolsInTLSFixups(MCAssembler &Asm) const override
void printImpl(raw_ostream &OS, const MCAsmInfo *MAI) const override
static GCRegistry::Add< CoreCLRGC > E("coreclr","CoreCLR-compatible GC")
void setNegated(bool negated=true)
This class is intended to be used as a base class for asm properties and features specific to the tar...
Streaming machine code generation interface.
Corresponds to hlo8() and hh8().
VariantKind getKind() const
Gets the type of the expression.
AVR::Fixups getFixupKind() const
Gets the fixup which corresponds to the expression.
Fixups
The set of supported fixups.
bool evaluateAsRelocatableImpl(MCValue &Res, const MCAsmLayout *Layout, const MCFixup *Fixup) const override
MCFragment * findAssociatedFragment() const override
static const AVRMCExpr * create(VariantKind Kind, const MCExpr *Expr, bool isNegated, MCContext &Ctx)
Creates an AVR machine code expression.
static VariantKind getKindByName(StringRef Name)
LLVM Value Representation.
This class implements an extremely fast bulk output stream that can only output to a stream...
StringRef - Represent a constant reference to a string, i.e.
Target specific expression.
const char * getName() const
Gets the name of the expression.