LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
llvm::MCOperandInfo Class Reference

#include <MCInstrDesc.h>

Collaboration diagram for llvm::MCOperandInfo:
Collaboration graph
[legend]

Public Member Functions

bool isLookupPtrRegClass () const
 Currently no other information. More...
 
bool isPredicate () const
 
bool isOptionalDef () const
 

Public Attributes

int16_t RegClass
 
uint8_t Flags
 Flags - These are flags from the MCOI::OperandFlags enum. More...
 
uint8_t OperandType
 OperandType - Information about the type of the operand. More...
 
uint32_t Constraints
 

Detailed Description

MCOperandInfo - This holds information about one operand of a machine instruction, indicating the register class for register operands, etc.

Definition at line 58 of file MCInstrDesc.h.

Member Function Documentation

bool llvm::MCOperandInfo::isLookupPtrRegClass ( ) const
inline

Currently no other information.

isLookupPtrRegClass - Set if this operand is a pointer value and it requires a callback to look up its register class.

Definition at line 79 of file MCInstrDesc.h.

References Flags, and llvm::MCOI::LookupPtrRegClass.

Referenced by llvm::TargetInstrInfo::getRegClass().

bool llvm::MCOperandInfo::isOptionalDef ( ) const
inline

isOptionalDef - Set if this operand is a optional def.

Definition at line 87 of file MCInstrDesc.h.

References Flags, and llvm::MCOI::OptionalDef.

Referenced by llvm::ARMTargetLowering::AdjustInstrPostInstrSelection(), llvm::TargetSchedModel::computeOperandLatency(), and llvm::MachineInstr::print().

bool llvm::MCOperandInfo::isPredicate ( ) const
inline

isPredicate - Set if this is one of the operands that made up of the predicate operand that controls an isPredicable() instruction.

Definition at line 83 of file MCInstrDesc.h.

References Flags, and llvm::MCOI::Predicate.

Referenced by llvm::MachineInstr::findFirstPredOperandIdx(), and llvm::MachineInstr::print().

Member Data Documentation

uint32_t llvm::MCOperandInfo::Constraints

Lower 16 bits are used to specify which constraints are set. The higher 16 bits are used to specify the value of constraints (4 bits each).

Definition at line 74 of file MCInstrDesc.h.

Referenced by llvm::MCInstrDesc::getOperandConstraint().

uint8_t llvm::MCOperandInfo::Flags

Flags - These are flags from the MCOI::OperandFlags enum.

Definition at line 67 of file MCInstrDesc.h.

Referenced by isLookupPtrRegClass(), isOptionalDef(), and isPredicate().

uint8_t llvm::MCOperandInfo::OperandType

OperandType - Information about the type of the operand.

Definition at line 70 of file MCInstrDesc.h.

int16_t llvm::MCOperandInfo::RegClass

RegClass - This specifies the register class enumeration of the operand if the operand is a register. If isLookupPtrRegClass is set, then this is an index that is passed to TargetRegisterInfo::getPointerRegClass(x) to get a dynamic register class.

Definition at line 64 of file MCInstrDesc.h.

Referenced by AddThumb1SBit(), llvm::SIInstrInfo::getOpRegClass(), and llvm::TargetInstrInfo::getRegClass().


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