/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64MacroFusion.cpp | 23 const MachineInstr &SecondMI, bool CmpOnly) { in isArithmeticBccPair() argument 24 if (SecondMI.getOpcode() != AArch64::Bcc) in isArithmeticBccPair() 72 const MachineInstr &SecondMI) { in isArithmeticCbzPair() argument 73 if (SecondMI.getOpcode() != AArch64::CBZW && in isArithmeticCbzPair() 74 SecondMI.getOpcode() != AArch64::CBZX && in isArithmeticCbzPair() 75 SecondMI.getOpcode() != AArch64::CBNZW && in isArithmeticCbzPair() 76 SecondMI.getOpcode() != AArch64::CBNZX) in isArithmeticCbzPair() 122 const MachineInstr &SecondMI) { in isAESPair() argument 124 switch (SecondMI.getOpcode()) { in isAESPair() 140 const MachineInstr &SecondMI) { in isCryptoEORPair() argument [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/ |
H A D | PPCMacroFusion.cpp | 70 const MachineInstr &SecondMI, in matchingRegOps() argument 73 const MachineOperand &Op2 = SecondMI.getOperand(SecondMIOpIndex); in matchingRegOps() 93 // Return true if the FirstMI meets the constraints of SecondMI according to 97 const MachineInstr &SecondMI) { in checkOpConstraints() argument 105 const MachineOperand &RA = SecondMI.getOperand(1); in checkOpConstraints() 114 const MachineOperand &RT = SecondMI.getOperand(0); in checkOpConstraints() 122 if (!matchingRegOps(SecondMI, 0, SecondMI, 2) || in checkOpConstraints() 137 const MachineOperand &D = SecondMI.getOperand(1); in checkOpConstraints() 143 if (SecondMI in checkOpConstraints() 237 shouldScheduleAdjacent(const TargetInstrInfo & TII,const TargetSubtargetInfo & TSI,const MachineInstr * FirstMI,const MachineInstr & SecondMI) shouldScheduleAdjacent() argument [all...] |
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
H A D | RISCVMacroFusion.cpp |
|
H A D | RISCVExpandPseudoInsts.cpp | 535 MachineInstr *SecondMI = in expandAuipcInstPair() local 541 SecondMI->addMemOperand(*MF, *MI.memoperands_begin()); in expandAuipcInstPair()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | GCNCreateVOPD.cpp | 48 : FirstMI(First), SecondMI(Second) {} in VOPDCombineInfo() 51 MachineInstr *SecondMI; member in __anon4acca4580111::GCNCreateVOPD::VOPDCombineInfo 71 auto *SecondMI = CI.SecondMI; in doReplace() local 73 unsigned Opc2 = SecondMI->getOpcode(); in doReplace() 84 .setMIFlags(FirstMI->getFlags() | SecondMI->getFlags()); in doReplace() 87 MachineInstr *MI[] = {FirstMI, SecondMI}; in doReplace() 89 AMDGPU::getVOPDInstInfo(FirstMI->getDesc(), SecondMI->getDesc()); in doReplace() 109 << *CI.FirstMI << "\tY: " << *CI.SecondMI << "\n"); in doReplace() 140 auto *SecondMI = &*MII; in runOnMachineFunction() local 142 unsigned Opc2 = SecondMI->getOpcode(); in runOnMachineFunction() [all …]
|
H A D | GCNVOPDUtils.cpp | 39 const MachineInstr &SecondMI) { in checkVOPDRegConstraints() argument 59 if (&*MII == &SecondMI) in checkVOPDRegConstraints() 63 }() && "Expected FirstMI to precede SecondMI"); in checkVOPDRegConstraints() 65 for (const auto &Use : SecondMI.uses()) in checkVOPDRegConstraints() 70 const MachineInstr &MI = (OpcodeIdx == VOPD::X) ? FirstMI : SecondMI; in checkVOPDRegConstraints() 78 AMDGPU::getVOPDInstInfo(FirstMI.getDesc(), SecondMI.getDesc()); in checkVOPDRegConstraints() 81 const MachineInstr &MI = (CompIdx == VOPD::X) ? FirstMI : SecondMI; in checkVOPDRegConstraints() 110 SecondMI.getOpcode() == AMDGPU::V_MOV_B32_e32; in checkVOPDRegConstraints() 116 << "\n\tY: " << SecondMI << "\n"); 120 /// Check if the instr pair, FirstMI and SecondMI, shoul in shouldScheduleVOPDAdjacent() argument [all...] |
H A D | AMDGPUMacroFusion.cpp | 23 /// Check if the instr pair, FirstMI and SecondMI, should be fused 24 /// together. Given SecondMI, when FirstMI is unspecified, then check if 25 /// SecondMI may be part of a fused pair at all. 29 const MachineInstr &SecondMI) { in shouldScheduleAdjacent() argument 32 switch (SecondMI.getOpcode()) { in shouldScheduleAdjacent() 46 const MachineOperand *Src2 = TII.getNamedOperand(SecondMI, in shouldScheduleAdjacent()
|
H A D | GCNVOPDUtils.h | 26 const MachineInstr &SecondMI);
|
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
H A D | ARMMacroFusion.cpp | 23 const MachineInstr &SecondMI) { in isAESPair() argument 25 switch(SecondMI.getOpcode()) { in isAESPair() 39 const MachineInstr &SecondMI) { in isLiteralsPair() argument 42 SecondMI.getOpcode() == ARM::MOVTi16) in isLiteralsPair() 48 /// Check if the instr pair, FirstMI and SecondMI, should be fused 49 /// together. Given SecondMI, when FirstMI is unspecified, then check if 50 /// SecondMI may be part of a fused pair at all. 54 const MachineInstr &SecondMI) { in shouldScheduleAdjacent() argument 57 if (ST.hasFuseAES() && isAESPair(FirstMI, SecondMI)) in shouldScheduleAdjacent() 59 if (ST.hasFuseLiterals() && isLiteralsPair(FirstMI, SecondMI)) in shouldScheduleAdjacent() [all...] |
/freebsd/contrib/llvm-project/llvm/include/llvm/Target/ |
H A D | TargetMacroFusion.td | 22 // * const MachineInstr &SecondMI 49 // `firstOpIdx` should be the same as the operand of `SecondMI` at position 58 // The operand of `SecondMI` at position `firstOpIdx` should be the same as the 89 // const MachineInstr &SecondMI) { 90 // auto &MRI = SecondMI.getMF()->getRegInfo(); 108 // const MachineInstr &SecondMI) { 109 // auto &MRI = SecondMI.getMF()->getRegInfo(); 111 // /* Predicate for `SecondMI` */
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86MacroFusion.cpp | 32 /// Check if the instr pair, FirstMI and SecondMI, should be fused 33 /// together. Given SecondMI, when FirstMI is unspecified, then check if 34 /// SecondMI may be part of a fused pair at all. 38 const MachineInstr &SecondMI) { in shouldScheduleAdjacent() argument 45 const X86::SecondMacroFusionInstKind BranchKind = classifySecond(SecondMI); in shouldScheduleAdjacent()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | MacroFusion.h | 29 /// Check if the instr pair, FirstMI and SecondMI, should be fused 30 /// together. Given SecondMI, when FirstMI is unspecified, then check if 31 /// SecondMI may be part of a fused pair at all. 35 const MachineInstr &SecondMI);
|
/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/ |
H A D | LoongArchExpandPseudoInsts.cpp | 150 MachineInstr *SecondMI = in expandPcalau12iInstPair() local 156 SecondMI->addMemOperand(*MF, *MI.memoperands_begin()); in expandPcalau12iInstPair()
|