Home
last modified time | relevance | path

Searched refs:SecondMI (Results 1 – 13 of 13) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64MacroFusion.cpp23 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 DPPCMacroFusion.cpp70 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 DRISCVMacroFusion.cpp
H A DRISCVExpandPseudoInsts.cpp535 MachineInstr *SecondMI = in expandAuipcInstPair() local
541 SecondMI->addMemOperand(*MF, *MI.memoperands_begin()); in expandAuipcInstPair()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DGCNCreateVOPD.cpp48 : 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 DGCNVOPDUtils.cpp39 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 DAMDGPUMacroFusion.cpp23 /// 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 DGCNVOPDUtils.h26 const MachineInstr &SecondMI);
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMMacroFusion.cpp23 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 DTargetMacroFusion.td22 // * 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 DX86MacroFusion.cpp32 /// 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 DMacroFusion.h29 /// 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 DLoongArchExpandPseudoInsts.cpp150 MachineInstr *SecondMI = in expandPcalau12iInstPair() local
156 SecondMI->addMemOperand(*MF, *MI.memoperands_begin()); in expandPcalau12iInstPair()