LLVM: llvm::MCParsedAsmOperand Class Reference (original) (raw)

MCParsedAsmOperand - This abstract class represents a source-level assembly instruction operand. More...

#include "[llvm/MC/MCParser/MCParsedAsmOperand.h](MCParsedAsmOperand%5F8h%5Fsource.html)"

Public Member Functions
virtual ~MCParsedAsmOperand ()=default
void setConstraint (StringRef C)
StringRef getConstraint ()
void setMCOperandNum (unsigned OpNum)
unsigned getMCOperandNum ()
virtual StringRef getSymName ()
virtual void * getOpDecl ()
virtual bool isToken () const =0
isToken - Is this a token operand?
virtual bool isImm () const =0
isImm - Is this an immediate operand?
virtual bool isReg () const =0
isReg - Is this a register operand?
virtual MCRegister getReg () const =0
virtual bool isMem () const =0
isMem - Is this a memory operand?
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 SMLoc getStartLoc () const =0
getStartLoc - Get the location of the first token of this operand.
virtual SMLoc getEndLoc () const =0
getEndLoc - Get the location of the last token of this operand.
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 print (raw_ostream &, const MCAsmInfo &) const =0
print - Print a debug representation of the operand to the given stream.
virtual void dump () const
dump - Print to the debug stream.

MCParsedAsmOperand - This abstract class represents a source-level assembly instruction operand.

It should be subclassed by target-specific code. This base class is used by target-independent clients and is the interface between parsing an asm instruction and recognizing it.

Definition at line 27 of file MCParsedAsmOperand.h.

llvm::MCParsedAsmOperand::MCParsedAsmOperand ( ) protecteddefault

MCParsedAsmOperand() [2/2]

~MCParsedAsmOperand()

virtual llvm::MCParsedAsmOperand::~MCParsedAsmOperand ( ) virtualdefault

dump()

void MCParsedAsmOperand::dump ( ) const virtual

getConstraint()

StringRef llvm::MCParsedAsmOperand::getConstraint ( ) inline

getEndLoc()

virtual SMLoc llvm::MCParsedAsmOperand::getEndLoc ( ) const pure virtual

getMCOperandNum()

unsigned llvm::MCParsedAsmOperand::getMCOperandNum ( ) inline

getOffsetOfLoc()

virtual SMLoc llvm::MCParsedAsmOperand::getOffsetOfLoc ( ) const inlinevirtual

getOpDecl()

virtual void * llvm::MCParsedAsmOperand::getOpDecl ( ) inlinevirtual

getReg()

virtual MCRegister llvm::MCParsedAsmOperand::getReg ( ) const pure virtual

getStartLoc()

virtual SMLoc llvm::MCParsedAsmOperand::getStartLoc ( ) const pure virtual

getSymName()

virtual StringRef llvm::MCParsedAsmOperand::getSymName ( ) inlinevirtual

isImm()

virtual bool llvm::MCParsedAsmOperand::isImm ( ) const pure virtual

isMem()

virtual bool llvm::MCParsedAsmOperand::isMem ( ) const pure virtual

isMemUseUpRegs()

virtual bool llvm::MCParsedAsmOperand::isMemUseUpRegs ( ) const inlinevirtual

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.

For example, calculating ARR address to a reg or use another base reg in PIC model.

Reimplemented in llvm::X86Operand.

Definition at line 73 of file MCParsedAsmOperand.h.

isOffsetOfLocal()

virtual bool llvm::MCParsedAsmOperand::isOffsetOfLocal ( ) const inlinevirtual

isOffsetOfLocal - Do we need to emit code to get the offset of the local variable, rather than its value?

Only valid when parsing MS-style inline assembly.

Reimplemented in llvm::X86Operand.

Definition at line 87 of file MCParsedAsmOperand.h.

isReg()

virtual bool llvm::MCParsedAsmOperand::isReg ( ) const pure virtual

isToken()

virtual bool llvm::MCParsedAsmOperand::isToken ( ) const pure virtual

needAddressOf()

virtual bool llvm::MCParsedAsmOperand::needAddressOf ( ) const inlinevirtual

needAddressOf - Do we need to emit code to get the address of the variable/label?

Only valid when parsing MS-style inline assembly.

Reimplemented in llvm::X86Operand.

Definition at line 82 of file MCParsedAsmOperand.h.

operator=()

References MCParsedAsmOperand().

print()

setConstraint()

void llvm::MCParsedAsmOperand::setConstraint ( StringRef C) inline

setMCOperandNum()

void llvm::MCParsedAsmOperand::setMCOperandNum ( unsigned OpNum) inline

The documentation for this class was generated from the following files: