class MCParsedAsmOperand

Declaration

class MCParsedAsmOperand { /* full declaration omitted */ };

Description

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.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:24

Member Variables

private unsigned int MCOperandNum
MCOperandNum - The corresponding MCInst operand number. Only valid when parsing MS-style inline assembly.
private std::string Constraint
Constraint - The constraint on this operand. Only valid when parsing MS-style inline assembly.

Method Overview

Methods

MCParsedAsmOperand(
    const llvm::MCParsedAsmOperand& RHS)

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:39

Parameters

const llvm::MCParsedAsmOperand& RHS

MCParsedAsmOperand()

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:38

virtual void dump() const

Description

dump - Print to the debug stream.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:93

llvm::StringRef getConstraint()

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:46

virtual llvm::SMLoc getEndLoc() const

Description

getEndLoc - Get the location of the last token of this operand.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:75

unsigned int getMCOperandNum()

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:49

virtual llvm::SMLoc getOffsetOfLoc() const

Description

getOffsetOfLoc - Get the location of the offset operator.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:87

virtual void* getOpDecl()

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:52

virtual unsigned int getReg() const

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:60

virtual llvm::SMLoc getStartLoc() const

Description

getStartLoc - Get the location of the first token of this operand.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:73

virtual llvm::StringRef getSymName()

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:51

virtual bool isImm() const

Description

isImm - Is this an immediate operand?

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:57

virtual bool isMem() const

Description

isMem - Is this a memory operand?

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:63

virtual bool isMemUseUpRegs() const

Description

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.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:70

virtual bool isOffsetOfLocal() const

Description

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.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:84

virtual bool isReg() const

Description

isReg - Is this a register operand?

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:59

virtual bool isToken() const

Description

isToken - Is this a token operand?

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:55

virtual bool needAddressOf() const

Description

needAddressOf - Do we need to emit code to get the address of the variable/label? Only valid when parsing MS-style inline assembly.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:79

virtual void print(llvm::raw_ostream& OS) const

Description

print - Print a debug representation of the operand to the given stream.

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:90

Parameters

llvm::raw_ostream& OS

void setConstraint(llvm::StringRef C)

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:45

Parameters

llvm::StringRef C

void setMCOperandNum(unsigned int OpNum)

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:48

Parameters

unsigned int OpNum

virtual ~MCParsedAsmOperand()

Declared at: llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h:43