LLVM: XtensaOperand Struct Reference (original) (raw)

Public Types
enum KindTy { Token, Register, Immediate }
Public Member Functions
XtensaOperand (KindTy K)
XtensaOperand (const XtensaOperand &o)
bool isToken () const override
isToken - Is this a token operand?
bool isReg () const override
isReg - Is this a register operand?
bool isImm () const override
isImm - Is this an immediate operand?
bool isMem () const override
isMem - Is this a memory operand?
bool isImm (int64_t MinValue, int64_t MaxValue) const
bool isImm8 () const
bool isImm8_sh8 () const
bool isImm12 () const
bool isImm12m () const
bool isOffset4m32 () const
bool isOffset8m8 () const
bool isOffset8m16 () const
bool isOffset8m32 () const
bool isentry_imm12 () const
bool isUimm4 () const
bool isUimm5 () const
bool isImm8n_7 () const
bool isShimm1_31 () const
bool isImm16_31 () const
bool isImm1_16 () const
bool isImm1n_15 () const
bool isImm32n_95 () const
bool isImm64n_4n () const
bool isB4const () const
bool isB4constu () const
bool isimm7_22 () const
SMLoc getStartLoc () const override
getStartLoc - Gets location of the first token of this operand
SMLoc getEndLoc () const override
getEndLoc - Gets location of the last token of this operand
MCRegister getReg () const override
const MCExpr * getImm () const
StringRef getToken () const
void print (raw_ostream &OS, const MCAsmInfo &MAI) const override
print - Print a debug representation of the operand to the given stream.
void addExpr (MCInst &Inst, const MCExpr *Expr) const
void addRegOperands (MCInst &Inst, unsigned N) const
void addImmOperands (MCInst &Inst, unsigned N) const
Public Member Functions inherited from llvm::MCParsedAsmOperand
virtual ~MCParsedAsmOperand ()=default
void setConstraint (StringRef C)
StringRef getConstraint ()
void setMCOperandNum (unsigned OpNum)
unsigned getMCOperandNum ()
virtual StringRef getSymName ()
virtual void * getOpDecl ()
virtual bool isMemUseUpRegs () const
isMemUseUpRegs - Is memory operand use up regs, for example, intel MS inline asm may use ARR[baseReg + IndexReg + ...] which may use up regs in [...] expr, so ARR[baseReg + IndexReg + ...] can not use extra reg for ARR.
virtual bool needAddressOf () const
needAddressOf - Do we need to emit code to get the address of the variable/label?
virtual bool isOffsetOfLocal () const
isOffsetOfLocal - Do we need to emit code to get the offset of the local variable, rather than its value?
virtual SMLoc getOffsetOfLoc () const
getOffsetOfLoc - Get the location of the offset operator.
virtual void dump () const
dump - Print to the debug stream.
Public Attributes
enum XtensaOperand::KindTy Kind
SMLoc StartLoc
SMLoc EndLoc
union {
StringRef Tok
RegOp Reg
ImmOp Imm
};

Definition at line 115 of file XtensaAsmParser.cpp.

KindTy

XtensaOperand::XtensaOperand ( KindTy K) inline

XtensaOperand() [2/2]

Definition at line 141 of file XtensaAsmParser.cpp.

References EndLoc, Imm, Immediate, Kind, llvm::MCParsedAsmOperand::MCParsedAsmOperand(), Reg, Register, StartLoc, Tok, Token, and XtensaOperand().

addExpr()

addImmOperands()

void XtensaOperand::addImmOperands ( MCInst & Inst, unsigned N ) const inline

addRegOperands()

void XtensaOperand::addRegOperands ( MCInst & Inst, unsigned N ) const inline

createImm()

createReg()

createToken()

getEndLoc()

SMLoc XtensaOperand::getEndLoc ( ) const inlineoverridevirtual

getImm()

Definition at line 295 of file XtensaAsmParser.cpp.

References assert(), Imm, Immediate, and Kind.

Referenced by addImmOperands(), isB4const(), isB4constu(), isentry_imm12(), isImm(), isImm64n_4n(), isImm8_sh8(), isOffset4m32(), isOffset8m16(), isOffset8m32(), and print().

getReg()

MCRegister XtensaOperand::getReg ( ) const inlineoverridevirtual

getStartLoc()

SMLoc XtensaOperand::getStartLoc ( ) const inlineoverridevirtual

getToken()

StringRef XtensaOperand::getToken ( ) const inline

isB4const()

bool XtensaOperand::isB4const ( ) const inline

isB4constu()

bool XtensaOperand::isB4constu ( ) const inline

isentry_imm12()

bool XtensaOperand::isentry_imm12 ( ) const inline

isImm() [1/2]

bool XtensaOperand::isImm ( ) const inlineoverridevirtual

isImm - Is this an immediate operand?

Implements llvm::MCParsedAsmOperand.

Definition at line 160 of file XtensaAsmParser.cpp.

References Immediate, and Kind.

Referenced by isentry_imm12(), isImm12(), isImm16_31(), isImm1_16(), isImm1n_15(), isImm32n_95(), isImm64n_4n(), isimm7_22(), isImm8(), isImm8_sh8(), isImm8n_7(), isOffset4m32(), isOffset8m16(), isOffset8m32(), isOffset8m8(), isShimm1_31(), isUimm4(), and isUimm5().

isImm() [2/2]

bool XtensaOperand::isImm ( int64_t MinValue, int64_t MaxValue ) const inline

isImm12()

bool XtensaOperand::isImm12 ( ) const inline

isImm12m()

bool XtensaOperand::isImm12m ( ) const inline

isImm16_31()

bool XtensaOperand::isImm16_31 ( ) const inline

isImm1_16()

bool XtensaOperand::isImm1_16 ( ) const inline

isImm1n_15()

bool XtensaOperand::isImm1n_15 ( ) const inline

isImm32n_95()

bool XtensaOperand::isImm32n_95 ( ) const inline

isImm64n_4n()

bool XtensaOperand::isImm64n_4n ( ) const inline

isimm7_22()

bool XtensaOperand::isimm7_22 ( ) const inline

isImm8()

bool XtensaOperand::isImm8 ( ) const inline

isImm8_sh8()

bool XtensaOperand::isImm8_sh8 ( ) const inline

isImm8n_7()

bool XtensaOperand::isImm8n_7 ( ) const inline

isMem()

bool XtensaOperand::isMem ( ) const inlineoverridevirtual

isOffset4m32()

bool XtensaOperand::isOffset4m32 ( ) const inline

isOffset8m16()

bool XtensaOperand::isOffset8m16 ( ) const inline

isOffset8m32()

bool XtensaOperand::isOffset8m32 ( ) const inline

isOffset8m8()

bool XtensaOperand::isOffset8m8 ( ) const inline

isReg()

bool XtensaOperand::isReg ( ) const inlineoverridevirtual

isShimm1_31()

bool XtensaOperand::isShimm1_31 ( ) const inline

isToken()

bool XtensaOperand::isToken ( ) const inlineoverridevirtual

isUimm4()

bool XtensaOperand::isUimm4 ( ) const inline

isUimm5()

bool XtensaOperand::isUimm5 ( ) const inline

print()

[union]

EndLoc

SMLoc XtensaOperand::EndLoc

Imm

Kind

enum XtensaOperand::KindTy XtensaOperand::Kind

Referenced by getImm(), getReg(), getToken(), isB4const(), isB4constu(), isImm(), isImm(), isImm12m(), isReg(), isToken(), print(), XtensaOperand(), and XtensaOperand().

Reg

StartLoc

SMLoc XtensaOperand::StartLoc

Tok


The documentation for this struct was generated from the following file: