| /llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | MachineOperand.h | 1 //===-- llvm/CodeGen/MachineOperand.h - MachineOperand class ----*- C++ -*-===// 9 // This file contains the declaration of the MachineOperand class. 41 /// MachineOperand class - Representation of each machine instruction operand. 46 /// not having to call the MachineOperand destructor. 48 class MachineOperand { 184 MachineOperand *Prev; // Access list for register. See MRI. 185 MachineOperand *Next; 207 explicit MachineOperand(MachineOperandType K) in MachineOperand() function 210 static_assert(alignof(MachineOperand) < in MachineOperand() [all...] |
| /llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUInstructionSelector.h | 41 class MachineOperand; variable 84 MachineOperand getSubOperand64(MachineOperand &MO, 167 MachineOperand Root, MachineInstr *InsertPt, 171 selectVCSRC(MachineOperand &Root) const; 174 selectVSRC0(MachineOperand &Root) const; 177 selectVOP3Mods0(MachineOperand &Root) const; 179 selectVOP3BMods0(MachineOperand &Root) const; 181 selectVOP3OMods(MachineOperand &Root) const; 183 selectVOP3Mods(MachineOperand [all...] |
| H A D | SIPeepholeSDWA.cpp | 59 std::optional<int64_t> foldToImm(const MachineOperand &Op) const; 90 MachineOperand *Target; // Operand that would be used in converted instruction in SDWAOperand() 91 MachineOperand *Replaced; // Operand that would be replace by Target in SDWAOperand() 94 SDWAOperand(MachineOperand *TargetOp, MachineOperand *ReplacedOp) 107 MachineOperand *getTargetOperand() const { return Target; } in getMRI() 108 MachineOperand *getReplacedOperand() const { return Replaced; } in getMRI() 131 SDWASrcOperand(MachineOperand *TargetOp, MachineOperand *ReplacedOp, 148 const MachineOperand *SrcO [all...] |
| H A D | SIFoldOperands.cpp | 18 #include "llvm/CodeGen/MachineOperand.h" 28 MachineOperand *OpToFold; 34 MachineOperand::MachineOperandType Kind; 37 FoldCandidate(MachineInstr *MI, unsigned OpNo, MachineOperand *FoldOp, in FoldCandidate() 54 return Kind == MachineOperand::MO_FrameIndex; in isFI() 58 return Kind == MachineOperand::MO_Immediate; in isImm() 62 return Kind == MachineOperand::MO_Register; in isReg() 65 bool isGlobal() const { return Kind == MachineOperand::MO_GlobalAddress; } 79 const MachineOperand &OpToFold) const; 111 MachineOperand *OpToFol 658 getRegSeqInit(SmallVectorImpl<std::pair<MachineOperand *,unsigned>> & Defs,Register UseReg,uint8_t OpTy) const getRegSeqInit() argument [all...] |
| /llvm-project/llvm/lib/CodeGen/ |
| H A D | MachineOperand.cpp | 1 //===- lib/CodeGen/MachineOperand.cpp -------------------------------------===// 13 #include "llvm/CodeGen/MachineOperand.h" 43 static const MachineFunction *getMFIfAvailable(const MachineOperand &MO) { in getMFIfAvailable() 51 static MachineFunction *getMFIfAvailable(MachineOperand &MO) { in getMFIfAvailable() 53 getMFIfAvailable(const_cast<const MachineOperand &>(MO))); in getMFIfAvailable() 56 unsigned MachineOperand::getOperandNo() const { in getOperandNo() 61 void MachineOperand::setReg(Register Reg) { in setReg() 83 void MachineOperand::substVirtReg(Register Reg, unsigned SubIdx, in substVirtReg() 93 void MachineOperand::substPhysReg(MCRegister Reg, const TargetRegisterInfo &TRI) { in substPhysReg() 107 void MachineOperand [all...] |
| H A D | MIRVRegNamerUtils.cpp | 67 // Gets a hashable artifact from a given MachineOperand (ie an unsigned). in getInstructionOpcodeHash() 68 auto GetHashableMO = [this](const MachineOperand &MO) -> unsigned { in getInstructionOpcodeHash() 70 case MachineOperand::MO_CImmediate: in getInstructionOpcodeHash() 73 case MachineOperand::MO_FPImmediate: in getInstructionOpcodeHash() 77 case MachineOperand::MO_Register: in getInstructionOpcodeHash() 81 case MachineOperand::MO_Immediate: in getInstructionOpcodeHash() 83 case MachineOperand::MO_TargetIndex: in getInstructionOpcodeHash() 85 case MachineOperand::MO_FrameIndex: in getInstructionOpcodeHash() 86 case MachineOperand::MO_ConstantPoolIndex: in getInstructionOpcodeHash() 87 case MachineOperand in getInstructionOpcodeHash() [all...] |
| H A D | MachineStableHash.cpp | 9 // Stable hashing for MachineInstr and MachineOperand. Useful or getting a 25 #include "llvm/CodeGen/MachineOperand.h" 59 stable_hash llvm::stableHashValue(const MachineOperand &MO) { 61 case MachineOperand::MO_Register: in stableHashValue() 73 case MachineOperand::MO_Immediate: in stableHashValue() 75 case MachineOperand::MO_CImmediate: in stableHashValue() 76 case MachineOperand::MO_FPImmediate: { in stableHashValue() 84 case MachineOperand::MO_MachineBasicBlock: in stableHashValue() 87 case MachineOperand::MO_ConstantPoolIndex: in stableHashValue() 90 case MachineOperand in stableHashValue() [all...] |
| /llvm-project/llvm/unittests/CodeGen/ |
| H A D | MachineOperandTest.cpp | 9 #include "llvm/CodeGen/MachineOperand.h" 37 // Creating a MachineOperand to change it to TargetIndex in TEST() 38 MachineOperand MO = MachineOperand::CreateImm(50); in TEST() 41 // MachineOperand. in TEST() 64 MachineOperand MO = MachineOperand::CreateRegMask(Dummy); in TEST() 67 // MachineOperand. in TEST() 71 // Print a MachineOperand containing a RegMask. Here we check that without a in TEST() 80 // Create a MachineOperand wit in TEST() [all...] |
| H A D | MachineInstrTest.cpp | 70 MI1->addOperand(*MF, MachineOperand::CreateReg(VirtualDef1, /*isDef*/ true)); in TEST() 71 MI1->addOperand(*MF, MachineOperand::CreateReg(VirtualUse, /*isDef*/ false)); in TEST() 74 MI2->addOperand(*MF, MachineOperand::CreateReg(VirtualDef2, /*isDef*/ true)); in TEST() 75 MI2->addOperand(*MF, MachineOperand::CreateReg(VirtualUse, /*isDef*/ false)); in TEST() 90 MI3->addOperand(*MF, MachineOperand::CreateReg(VirtualDef1, /*isDef*/ true)); in TEST() 91 MI3->addOperand(*MF, MachineOperand::CreateReg(SentinelReg, /*isDef*/ true)); in TEST() 94 MI4->addOperand(*MF, MachineOperand::CreateReg(VirtualDef2, /*isDef*/ true)); in TEST() 95 MI4->addOperand(*MF, MachineOperand::CreateReg(SentinelReg, /*isDef*/ false)); in TEST() 147 MachineOperand::CreateReg(VirtualDef1, /*isDef*/ true)); in TEST() 149 MachineOperand in TEST() [all...] |
| /llvm-project/llvm/lib/Target/ARC/ |
| H A D | ARCMCInstLower.cpp | 29 MCOperand ARCMCInstLower::LowerSymbolOperand(const MachineOperand &MO, in LowerSymbolOperand() 36 case MachineOperand::MO_MachineBasicBlock: in LowerSymbolOperand() 39 case MachineOperand::MO_GlobalAddress: in LowerSymbolOperand() 43 case MachineOperand::MO_BlockAddress: in LowerSymbolOperand() 47 case MachineOperand::MO_ExternalSymbol: in LowerSymbolOperand() 51 case MachineOperand::MO_JumpTableIndex: in LowerSymbolOperand() 54 case MachineOperand::MO_ConstantPoolIndex: in LowerSymbolOperand() 76 MCOperand ARCMCInstLower::LowerOperand(const MachineOperand &MO, in LowerOperand() 83 case MachineOperand::MO_Register: in LowerOperand() 88 case MachineOperand::MO_Immediate: in LowerOperand() [all …]
|
| /llvm-project/llvm/lib/Target/XCore/ |
| H A D | XCoreMCInstLower.cpp | 31 MCOperand XCoreMCInstLower::LowerSymbolOperand(const MachineOperand &MO, in LowerSymbolOperand() 38 case MachineOperand::MO_MachineBasicBlock: in LowerSymbolOperand() 41 case MachineOperand::MO_GlobalAddress: in LowerSymbolOperand() 45 case MachineOperand::MO_BlockAddress: in LowerSymbolOperand() 49 case MachineOperand::MO_ExternalSymbol: in LowerSymbolOperand() 53 case MachineOperand::MO_JumpTableIndex: in LowerSymbolOperand() 56 case MachineOperand::MO_ConstantPoolIndex: in LowerSymbolOperand() 77 MCOperand XCoreMCInstLower::LowerOperand(const MachineOperand &MO, in LowerOperand() 83 case MachineOperand::MO_Register: in LowerOperand() 87 case MachineOperand::MO_Immediate: in LowerOperand() [all …]
|
| /llvm-project/llvm/lib/Target/Sparc/ |
| H A D | SparcMCInstLower.cpp | 30 const MachineOperand &MO, in LowerSymbolOperand() 39 case MachineOperand::MO_MachineBasicBlock: in LowerSymbolOperand() 43 case MachineOperand::MO_GlobalAddress: in LowerSymbolOperand() 47 case MachineOperand::MO_BlockAddress: in LowerSymbolOperand() 51 case MachineOperand::MO_ExternalSymbol: in LowerSymbolOperand() 55 case MachineOperand::MO_ConstantPoolIndex: in LowerSymbolOperand() 68 const MachineOperand &MO, in LowerOperand() 72 case MachineOperand::MO_Register: in LowerOperand() 77 case MachineOperand::MO_Immediate: in LowerOperand() 80 case MachineOperand::MO_MachineBasicBlock: in LowerOperand() [all …]
|
| /llvm-project/llvm/lib/Target/MSP430/ |
| H A D | MSP430MCInstLower.cpp | 31 GetGlobalAddressSymbol(const MachineOperand &MO) const { in GetGlobalAddressSymbol() 41 GetExternalSymbolSymbol(const MachineOperand &MO) const { in GetExternalSymbolSymbol() 51 GetJumpTableSymbol(const MachineOperand &MO) const { in GetJumpTableSymbol() 68 GetConstantPoolIndexSymbol(const MachineOperand &MO) const { in GetConstantPoolIndexSymbol() 85 GetBlockAddressSymbol(const MachineOperand &MO) const { in GetBlockAddressSymbol() 95 LowerSymbolOperand(const MachineOperand &MO, MCSymbol *Sym) const { in LowerSymbolOperand() 118 for (const MachineOperand &MO : MI->operands()) { in Lower() 124 case MachineOperand::MO_Register: in Lower() 129 case MachineOperand::MO_Immediate: in Lower() 132 case MachineOperand::MO_MachineBasicBlock: in Lower() [all …]
|
| /llvm-project/llvm/lib/Target/Lanai/ |
| H A D | LanaiMCInstLower.cpp | 32 LanaiMCInstLower::GetGlobalAddressSymbol(const MachineOperand &MO) const { 37 LanaiMCInstLower::GetBlockAddressSymbol(const MachineOperand &MO) const { 42 LanaiMCInstLower::GetExternalSymbolSymbol(const MachineOperand &MO) const { 46 MCSymbol *LanaiMCInstLower::GetJumpTableSymbol(const MachineOperand &MO) const { 56 LanaiMCInstLower::GetConstantPoolIndexSymbol(const MachineOperand &MO) const { 65 MCOperand LanaiMCInstLower::LowerSymbolOperand(const MachineOperand &MO, 95 for (const MachineOperand &MO : MI->operands()) { in Lower() 98 case MachineOperand::MO_Register: in Lower() 104 case MachineOperand::MO_Immediate: in Lower() 107 case MachineOperand in Lower() [all...] |
| /llvm-project/llvm/lib/Target/Xtensa/ |
| H A D | XtensaAsmPrinter.cpp | 166 const MachineOperand &MO = MI->getOperand(OpNo); in GetJumpTableSymbol() 169 case MachineOperand::MO_Register: 170 case MachineOperand::MO_Immediate: { 201 const MachineOperand &Base = MI->getOperand(OpNo); in LowerSymbolOperand() 202 const MachineOperand &Offset = MI->getOperand(OpNo + 1); in LowerSymbolOperand() 216 XtensaAsmPrinter::GetConstantPoolIndexSymbol(const MachineOperand &MO) const { in LowerSymbolOperand() 221 MCSymbol *XtensaAsmPrinter::GetJumpTableSymbol(const MachineOperand &MO) const { in lowerOperand() 226 XtensaAsmPrinter::LowerSymbolOperand(const MachineOperand &MO, in lowerOperand() 227 MachineOperand::MachineOperandType MOTy, in lowerOperand() 233 case MachineOperand in lowerOperand() [all...] |
| /llvm-project/llvm/lib/Target/BPF/ |
| H A D | BPFMCInstLower.cpp | 27 BPFMCInstLower::GetGlobalAddressSymbol(const MachineOperand &MO) const { in GetGlobalAddressSymbol() 32 BPFMCInstLower::GetExternalSymbolSymbol(const MachineOperand &MO) const { in GetExternalSymbolSymbol() 36 MCOperand BPFMCInstLower::LowerSymbolOperand(const MachineOperand &MO, in LowerSymbolOperand() 50 for (const MachineOperand &MO : MI->operands()) { in Lower() 56 case MachineOperand::MO_Register: in Lower() 62 case MachineOperand::MO_Immediate: in Lower() 65 case MachineOperand::MO_MachineBasicBlock: in Lower() 69 case MachineOperand::MO_RegisterMask: in Lower() 71 case MachineOperand::MO_ExternalSymbol: in Lower() 74 case MachineOperand::MO_GlobalAddress: in Lower() [all …]
|
| /llvm-project/llvm/lib/Target/CSKY/ |
| H A D | CSKYMCInstLower.cpp | 30 for (const MachineOperand &MO : MI->operands()) { in Lower() 37 MCOperand CSKYMCInstLower::lowerSymbolOperand(const MachineOperand &MO, in lowerSymbolOperand() 76 bool CSKYMCInstLower::lowerOperand(const MachineOperand &MO, in lowerOperand() 81 case MachineOperand::MO_RegisterMask: in lowerOperand() 83 case MachineOperand::MO_Immediate: in lowerOperand() 86 case MachineOperand::MO_Register: in lowerOperand() 91 case MachineOperand::MO_MachineBasicBlock: in lowerOperand() 95 case MachineOperand::MO_GlobalAddress: in lowerOperand() 98 case MachineOperand::MO_BlockAddress: in lowerOperand() 102 case MachineOperand::MO_ExternalSymbol: in lowerOperand() [all …]
|
| /llvm-project/llvm/lib/Target/VE/ |
| H A D | VEMCInstLower.cpp | 29 const MachineOperand &MO, in LowerSymbolOperand() 43 static MCOperand LowerOperand(const MachineInstr *MI, const MachineOperand &MO, in LowerOperand() 49 case MachineOperand::MO_Register: in LowerOperand() 54 case MachineOperand::MO_BlockAddress: in LowerOperand() 57 case MachineOperand::MO_ConstantPoolIndex: in LowerOperand() 59 case MachineOperand::MO_ExternalSymbol: in LowerOperand() 62 case MachineOperand::MO_GlobalAddress: in LowerOperand() 64 case MachineOperand::MO_Immediate: in LowerOperand() 66 case MachineOperand::MO_JumpTableIndex: in LowerOperand() 68 case MachineOperand::MO_MachineBasicBlock: in LowerOperand() [all …]
|
| /llvm-project/llvm/lib/Target/Mips/ |
| H A D | MipsMCInstLower.cpp | 20 #include "llvm/CodeGen/MachineOperand.h" 35 MCOperand MipsMCInstLower::LowerSymbolOperand(const MachineOperand &MO, in LowerSymbolOperand() 132 case MachineOperand::MO_MachineBasicBlock: in LowerSymbolOperand() 136 case MachineOperand::MO_GlobalAddress: in LowerSymbolOperand() 142 case MachineOperand::MO_BlockAddress: in LowerSymbolOperand() 147 case MachineOperand::MO_ExternalSymbol: in LowerSymbolOperand() 152 case MachineOperand::MO_MCSymbol: in LowerSymbolOperand() 157 case MachineOperand::MO_JumpTableIndex: in LowerSymbolOperand() 161 case MachineOperand::MO_ConstantPoolIndex: in LowerSymbolOperand() 186 MCOperand MipsMCInstLower::LowerOperand(const MachineOperand in LowerOperand() [all...] |
| /llvm-project/llvm/lib/Target/X86/ |
| H A D | X86OptimizeLEAs.cpp | 35 #include "llvm/CodeGen/MachineOperand.h" 67 static inline bool isIdenticalOp(const MachineOperand &MO1, 68 const MachineOperand &MO2); 72 static bool isSimilarDispOp(const MachineOperand &MO1, 73 const MachineOperand &MO2); 83 MemOpKey(const MachineOperand *Base, const MachineOperand *Scale, in MemOpKey() 84 const MachineOperand *Index, const MachineOperand *Segment, in MemOpKey() 85 const MachineOperand *Dis in MemOpKey() [all...] |
| H A D | X86AsmPrinter.cpp | 202 void X86AsmPrinter::PrintSymbolOperand(const MachineOperand &MO, in PrintSymbolOperand() 206 case MachineOperand::MO_ConstantPoolIndex: in PrintSymbolOperand() 210 case MachineOperand::MO_GlobalAddress: { in PrintSymbolOperand() 296 const MachineOperand &MO = MI->getOperand(OpNo); in PrintOperand() 300 case MachineOperand::MO_Register: { in PrintOperand() 307 case MachineOperand::MO_Immediate: in PrintOperand() 313 case MachineOperand::MO_ConstantPoolIndex: in PrintOperand() 314 case MachineOperand::MO_GlobalAddress: { in PrintOperand() 326 case MachineOperand::MO_BlockAddress: { in PrintOperand() 339 const MachineOperand in PrintModifiedOperand() [all...] |
| /llvm-project/llvm/lib/Target/SystemZ/ |
| H A D | SystemZMCInstLower.cpp | 36 SystemZMCInstLower::getExpr(const MachineOperand &MO, in getExpr() 41 case MachineOperand::MO_MachineBasicBlock: in getExpr() 46 case MachineOperand::MO_GlobalAddress: in getExpr() 50 case MachineOperand::MO_ExternalSymbol: in getExpr() 54 case MachineOperand::MO_JumpTableIndex: in getExpr() 59 case MachineOperand::MO_ConstantPoolIndex: in getExpr() 63 case MachineOperand::MO_BlockAddress: in getExpr() 79 MCOperand SystemZMCInstLower::lowerOperand(const MachineOperand &MO) const { in lowerOperand() 81 case MachineOperand::MO_Register: in lowerOperand() 84 case MachineOperand::MO_Immediate: in lowerOperand() [all …]
|
| /llvm-project/llvm/lib/Target/M68k/ |
| H A D | M68kAsmPrinter.cpp | 39 const MachineOperand &MO = MI->getOperand(OpNum); in printOperand() 41 case MachineOperand::MO_Register: in printOperand() 44 case MachineOperand::MO_Immediate: in printOperand() 47 case MachineOperand::MO_MachineBasicBlock: in printOperand() 50 case MachineOperand::MO_GlobalAddress: in printOperand() 53 case MachineOperand::MO_BlockAddress: in printOperand() 56 case MachineOperand::MO_ConstantPoolIndex: { in printOperand() 82 const MachineOperand &Op = MI->getOperand(opNum); in printDisp() 94 const MachineOperand &MO = MI->getOperand(OpNum); in printAbsMem() 104 const MachineOperand &MO = MI->getOperand(OpNo); in PrintAsmMemoryOperand() [all …]
|
| H A D | M68kMCInstLower.cpp | 39 M68kMCInstLower::GetSymbolFromOperand(const MachineOperand &MO) const { in GetSymbolFromOperand() 73 MCOperand M68kMCInstLower::LowerSymbolOperand(const MachineOperand &MO, in LowerSymbolOperand() 130 const MachineOperand &MO) const { in LowerOperand() 134 case MachineOperand::MO_Register: in LowerOperand() 139 case MachineOperand::MO_Immediate: in LowerOperand() 141 case MachineOperand::MO_MachineBasicBlock: in LowerOperand() 142 case MachineOperand::MO_GlobalAddress: in LowerOperand() 143 case MachineOperand::MO_ExternalSymbol: in LowerOperand() 145 case MachineOperand::MO_MCSymbol: in LowerOperand() 147 case MachineOperand::MO_JumpTableIndex: in LowerOperand() [all …]
|
| /llvm-project/llvm/lib/Target/AVR/ |
| H A D | AVRMCInstLower.cpp | 26 AVRMCInstLower::lowerSymbolOperand(const MachineOperand &MO, MCSymbol *Sym, in lowerSymbolOperand() 73 for (MachineOperand const &MO : MI.operands()) { in lowerInstruction() 80 case MachineOperand::MO_Register: in lowerInstruction() 86 case MachineOperand::MO_Immediate: in lowerInstruction() 89 case MachineOperand::MO_GlobalAddress: in lowerInstruction() 93 case MachineOperand::MO_ExternalSymbol: in lowerInstruction() 97 case MachineOperand::MO_MachineBasicBlock: in lowerInstruction() 101 case MachineOperand::MO_RegisterMask: in lowerInstruction() 103 case MachineOperand::MO_BlockAddress: in lowerInstruction() 107 case MachineOperand::MO_JumpTableIndex: in lowerInstruction() [all …]
|