LLVM 20.0.0git
Public Types | Public Member Functions | List of all members
llvm::SrcOp Class Reference

#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"

Public Types

enum class  SrcType { Ty_Reg , Ty_MIB , Ty_Predicate , Ty_Imm }
 

Public Member Functions

 SrcOp (Register R)
 
 SrcOp (const MachineOperand &Op)
 
 SrcOp (const MachineInstrBuilder &MIB)
 
 SrcOp (const CmpInst::Predicate P)
 
 SrcOp (unsigned)=delete
 Use of registers held in unsigned integer variables (or more rarely signed integers) is no longer permitted to avoid ambiguity with upcoming support for immediates.
 
 SrcOp (int)=delete
 
 SrcOp (uint64_t V)
 
 SrcOp (int64_t V)
 
void addSrcToMIB (MachineInstrBuilder &MIB) const
 
LLT getLLTTy (const MachineRegisterInfo &MRI) const
 
Register getReg () const
 
CmpInst::Predicate getPredicate () const
 
int64_t getImm () const
 
SrcType getSrcOpKind () const
 

Detailed Description

Definition at line 142 of file MachineIRBuilder.h.

Member Enumeration Documentation

◆ SrcType

enum class llvm::SrcOp::SrcType
strong
Enumerator
Ty_Reg 
Ty_MIB 
Ty_Predicate 
Ty_Imm 

Definition at line 151 of file MachineIRBuilder.h.

Constructor & Destructor Documentation

◆ SrcOp() [1/8]

llvm::SrcOp::SrcOp ( Register  R)
inline

Definition at line 152 of file MachineIRBuilder.h.

◆ SrcOp() [2/8]

llvm::SrcOp::SrcOp ( const MachineOperand Op)
inline

Definition at line 153 of file MachineIRBuilder.h.

◆ SrcOp() [3/8]

llvm::SrcOp::SrcOp ( const MachineInstrBuilder MIB)
inline

Definition at line 154 of file MachineIRBuilder.h.

◆ SrcOp() [4/8]

llvm::SrcOp::SrcOp ( const CmpInst::Predicate  P)
inline

Definition at line 155 of file MachineIRBuilder.h.

◆ SrcOp() [5/8]

llvm::SrcOp::SrcOp ( unsigned  )
delete

Use of registers held in unsigned integer variables (or more rarely signed integers) is no longer permitted to avoid ambiguity with upcoming support for immediates.

◆ SrcOp() [6/8]

llvm::SrcOp::SrcOp ( int  )
delete

◆ SrcOp() [7/8]

llvm::SrcOp::SrcOp ( uint64_t  V)
inline

Definition at line 161 of file MachineIRBuilder.h.

◆ SrcOp() [8/8]

llvm::SrcOp::SrcOp ( int64_t  V)
inline

Definition at line 162 of file MachineIRBuilder.h.

Member Function Documentation

◆ addSrcToMIB()

void llvm::SrcOp::addSrcToMIB ( MachineInstrBuilder MIB) const
inline

◆ getImm()

int64_t llvm::SrcOp::getImm ( ) const
inline

◆ getLLTTy()

LLT llvm::SrcOp::getLLTTy ( const MachineRegisterInfo MRI) const
inline

◆ getPredicate()

CmpInst::Predicate llvm::SrcOp::getPredicate ( ) const
inline

Definition at line 207 of file MachineIRBuilder.h.

References llvm_unreachable, Pred, and Ty_Predicate.

◆ getReg()

Register llvm::SrcOp::getReg ( ) const
inline

◆ getSrcOpKind()

SrcType llvm::SrcOp::getSrcOpKind ( ) const
inline

Definition at line 225 of file MachineIRBuilder.h.

Member Data Documentation

◆ Imm

int64_t llvm::SrcOp::Imm

Definition at line 147 of file MachineIRBuilder.h.

Referenced by addSrcToMIB(), and getImm().

◆ Pred

CmpInst::Predicate llvm::SrcOp::Pred

Definition at line 146 of file MachineIRBuilder.h.

Referenced by addSrcToMIB(), and getPredicate().

◆ Reg

Register llvm::SrcOp::Reg

Definition at line 145 of file MachineIRBuilder.h.

Referenced by addSrcToMIB(), getLLTTy(), and getReg().

◆ SrcMIB

MachineInstrBuilder llvm::SrcOp::SrcMIB

Definition at line 144 of file MachineIRBuilder.h.

Referenced by addSrcToMIB(), getLLTTy(), and getReg().


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