LLVM 22.0.0git
|
Classes | |
struct | ImmOp |
struct | RegOp |
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. |
Static Public Member Functions | |
static std::unique_ptr< XtensaOperand > | createToken (StringRef Str, SMLoc S) |
static std::unique_ptr< XtensaOperand > | createReg (unsigned RegNo, SMLoc S, SMLoc E) |
static std::unique_ptr< XtensaOperand > | createImm (const MCExpr *Val, SMLoc S, SMLoc E) |
Public Attributes | |
enum XtensaOperand::KindTy | Kind |
SMLoc | StartLoc |
SMLoc | EndLoc |
union { | |
StringRef Tok | |
RegOp Reg | |
ImmOp Imm | |
}; |
Additional Inherited Members | |
Protected Member Functions inherited from llvm::MCParsedAsmOperand | |
MCParsedAsmOperand ()=default | |
MCParsedAsmOperand (const MCParsedAsmOperand &RHS)=default | |
MCParsedAsmOperand & | operator= (const MCParsedAsmOperand &)=default |
Definition at line 115 of file XtensaAsmParser.cpp.
Enumerator | |
---|---|
Token | |
Register | |
Immediate |
Definition at line 117 of file XtensaAsmParser.cpp.
|
inline |
Definition at line 138 of file XtensaAsmParser.cpp.
References Kind, and llvm::MCParsedAsmOperand::MCParsedAsmOperand().
Referenced by XtensaOperand().
|
inline |
Definition at line 141 of file XtensaAsmParser.cpp.
References EndLoc, Imm, Immediate, Kind, llvm::MCParsedAsmOperand::MCParsedAsmOperand(), Reg, Register, StartLoc, Tok, Token, and XtensaOperand().
Definition at line 346 of file XtensaAsmParser.cpp.
References llvm::MCInst::addOperand(), assert(), llvm::MCOperand::createExpr(), llvm::MCOperand::createImm(), llvm::dyn_cast(), and Imm.
Referenced by addImmOperands().
Definition at line 363 of file XtensaAsmParser.cpp.
References llvm::MCInst::addOperand(), assert(), llvm::MCOperand::createReg(), getReg(), and N.
|
inlinestatic |
Definition at line 337 of file XtensaAsmParser.cpp.
References Immediate.
|
inlinestatic |
Definition at line 328 of file XtensaAsmParser.cpp.
References Register.
|
inlinestatic |
Definition at line 320 of file XtensaAsmParser.cpp.
References Token.
|
inlineoverridevirtual |
getEndLoc - Gets location of the last token of this operand
Implements llvm::MCParsedAsmOperand.
Definition at line 288 of file XtensaAsmParser.cpp.
References EndLoc.
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().
|
inlineoverridevirtual |
Implements llvm::MCParsedAsmOperand.
Definition at line 290 of file XtensaAsmParser.cpp.
References assert(), Kind, Reg, and Register.
Referenced by addRegOperands(), and print().
|
inlineoverridevirtual |
getStartLoc - Gets location of the first token of this operand
Implements llvm::MCParsedAsmOperand.
Definition at line 286 of file XtensaAsmParser.cpp.
References StartLoc.
|
inline |
|
inline |
Definition at line 223 of file XtensaAsmParser.cpp.
References llvm::dyn_cast(), getImm(), Immediate, and Kind.
|
inline |
Definition at line 253 of file XtensaAsmParser.cpp.
References llvm::dyn_cast(), getImm(), Immediate, and Kind.
|
inline |
Definition at line 196 of file XtensaAsmParser.cpp.
References llvm::cast(), getImm(), and isImm().
|
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().
|
inline |
|
inline |
Definition at line 174 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 177 of file XtensaAsmParser.cpp.
|
inline |
Definition at line 209 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 211 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 214 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 216 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 218 of file XtensaAsmParser.cpp.
References llvm::cast(), getImm(), and isImm().
|
inline |
Definition at line 283 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 167 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 169 of file XtensaAsmParser.cpp.
References llvm::cast(), getImm(), and isImm().
|
inline |
Definition at line 205 of file XtensaAsmParser.cpp.
References isImm().
|
inlineoverridevirtual |
isMem - Is this a memory operand?
Implements llvm::MCParsedAsmOperand.
Definition at line 161 of file XtensaAsmParser.cpp.
|
inline |
Definition at line 179 of file XtensaAsmParser.cpp.
References llvm::cast(), getImm(), and isImm().
|
inline |
Definition at line 186 of file XtensaAsmParser.cpp.
References llvm::cast(), getImm(), and isImm().
|
inline |
Definition at line 191 of file XtensaAsmParser.cpp.
References llvm::cast(), getImm(), and isImm().
|
inline |
Definition at line 184 of file XtensaAsmParser.cpp.
References isImm().
|
inlineoverridevirtual |
isReg - Is this a register operand?
Implements llvm::MCParsedAsmOperand.
Definition at line 159 of file XtensaAsmParser.cpp.
|
inline |
Definition at line 207 of file XtensaAsmParser.cpp.
References isImm().
|
inlineoverridevirtual |
isToken - Is this a token operand?
Implements llvm::MCParsedAsmOperand.
Definition at line 158 of file XtensaAsmParser.cpp.
|
inline |
Definition at line 201 of file XtensaAsmParser.cpp.
References isImm().
|
inline |
Definition at line 203 of file XtensaAsmParser.cpp.
References isImm().
|
inlineoverridevirtual |
print - Print a debug representation of the operand to the given stream.
Implements llvm::MCParsedAsmOperand.
Definition at line 305 of file XtensaAsmParser.cpp.
References getImm(), getReg(), getToken(), Immediate, Kind, llvm::MCAsmInfo::printExpr(), Register, and Token.
union { ... } XtensaOperand |
SMLoc XtensaOperand::EndLoc |
Definition at line 131 of file XtensaAsmParser.cpp.
Referenced by getEndLoc(), and XtensaOperand().
ImmOp XtensaOperand::Imm |
Definition at line 135 of file XtensaAsmParser.cpp.
Referenced by addExpr(), getImm(), and XtensaOperand().
enum XtensaOperand::KindTy XtensaOperand::Kind |
Referenced by getImm(), getReg(), getToken(), isB4const(), isB4constu(), isImm(), isImm(), isImm12m(), isReg(), isToken(), print(), XtensaOperand(), and XtensaOperand().
RegOp XtensaOperand::Reg |
Definition at line 134 of file XtensaAsmParser.cpp.
Referenced by getReg(), and XtensaOperand().
SMLoc XtensaOperand::StartLoc |
Definition at line 131 of file XtensaAsmParser.cpp.
Referenced by getStartLoc(), and XtensaOperand().
StringRef XtensaOperand::Tok |
Definition at line 133 of file XtensaAsmParser.cpp.
Referenced by getToken(), and XtensaOperand().