Home
last modified time | relevance | path

Searched refs:FirstMI (Results 1 – 18 of 18) sorted by relevance

/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/AArch64/
H A DAArch64MacroFusion.cpp22 static bool isArithmeticBccPair(const MachineInstr *FirstMI, in isArithmeticBccPair() argument
28 if (FirstMI == nullptr) in isArithmeticBccPair()
33 if (CmpOnly && !(FirstMI->getOperand(0).getReg() == AArch64::XZR || in isArithmeticBccPair()
34 FirstMI->getOperand(0).getReg() == AArch64::WZR)) { in isArithmeticBccPair()
38 switch (FirstMI->getOpcode()) { in isArithmeticBccPair()
63 return !AArch64InstrInfo::hasShiftedReg(*FirstMI); in isArithmeticBccPair()
70 static bool isArithmeticCbzPair(const MachineInstr *FirstMI, in isArithmeticCbzPair() argument
79 if (FirstMI == nullptr) in isArithmeticCbzPair()
82 switch (FirstMI->getOpcode()) { in isArithmeticCbzPair()
113 return !AArch64InstrInfo::hasShiftedReg(*FirstMI); in isArithmeticCbzPair()
[all …]
H A DAArch64LoadStoreOptimizer.cpp572 static bool isPreLdStPairCandidate(MachineInstr &FirstMI, MachineInstr &MI) { in isPreLdStPairCandidate() argument
574 unsigned OpcA = FirstMI.getOpcode(); in isPreLdStPairCandidate()
1294 static bool areCandidatesToMergeOrPair(MachineInstr &FirstMI, MachineInstr &MI, in areCandidatesToMergeOrPair() argument
1302 assert(!FirstMI.hasOrderedMemoryRef() && in areCandidatesToMergeOrPair()
1303 !TII->isLdStPairSuppressed(FirstMI) && in areCandidatesToMergeOrPair()
1306 unsigned OpcA = FirstMI.getOpcode(); in areCandidatesToMergeOrPair()
1311 return !AArch64InstrInfo::isPreLdSt(FirstMI); in areCandidatesToMergeOrPair()
1337 if (isPreLdStPairCandidate(FirstMI, MI)) in areCandidatesToMergeOrPair()
1348 canRenameUpToDef(MachineInstr &FirstMI, LiveRegUnits &UsedInBetween, in canRenameUpToDef() argument
1351 if (!FirstMI.mayStore()) in canRenameUpToDef()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/ARM/
H A DARMMacroFusion.cpp22 static bool isAESPair(const MachineInstr *FirstMI, in isAESPair() argument
28 return FirstMI == nullptr || FirstMI->getOpcode() == ARM::AESE; in isAESPair()
31 return FirstMI == nullptr || FirstMI->getOpcode() == ARM::AESD; in isAESPair()
38 static bool isLiteralsPair(const MachineInstr *FirstMI, in isLiteralsPair() argument
41 if ((FirstMI == nullptr || FirstMI->getOpcode() == ARM::MOVi16) && in isLiteralsPair()
53 const MachineInstr *FirstMI, in shouldScheduleAdjacent() argument
57 if (ST.hasFuseAES() && isAESPair(FirstMI, SecondMI)) in shouldScheduleAdjacent()
59 if (ST.hasFuseLiterals() && isLiteralsPair(FirstMI, SecondMI)) in shouldScheduleAdjacent()
H A DARMLoadStoreOptimizer.cpp1003 const MachineInstr *FirstMI = MemOps[0].MI; in FormCandidates() local
1004 unsigned Opcode = FirstMI->getOpcode(); in FormCandidates()
1006 unsigned Size = getLSMultipleTransferSize(FirstMI); in FormCandidates()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/PowerPC/
H A DPPCMacroFusion.cpp66 static bool matchingRegOps(const MachineInstr &FirstMI, in matchingRegOps() argument
70 const MachineOperand &Op1 = FirstMI.getOperand(FirstMIOpIndex); in matchingRegOps()
81 const MachineInstr &FirstMI, in checkOpConstraints() argument
112 const MachineOperand &SI = FirstMI.getOperand(2); in checkOpConstraints()
146 const MachineInstr *FirstMI, in shouldScheduleAdjacent() argument
171 if (!FirstMI) in shouldScheduleAdjacent()
175 if (!Feature.hasOp1(FirstMI->getOpcode())) in shouldScheduleAdjacent()
182 if (!matchingRegOps(*FirstMI, 0, SecondMI, *DepOpIdx)) in shouldScheduleAdjacent()
187 if (checkOpConstraints(Feature.getKind(), *FirstMI, SecondMI)) in shouldScheduleAdjacent()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/CodeGen/
H A DMachineInstrBundle.cpp109 static DebugLoc getDebugLoc(MachineBasicBlock::instr_iterator FirstMI, in getDebugLoc() argument
111 for (auto MII = FirstMI; MII != LastMI; ++MII) in getDebugLoc()
124 MachineBasicBlock::instr_iterator FirstMI, in finalizeBundle() argument
126 assert(FirstMI != LastMI && "Empty bundle?"); in finalizeBundle()
127 MIBundleBuilder Bundle(MBB, FirstMI, LastMI); in finalizeBundle()
134 BuildMI(MF, getDebugLoc(FirstMI, LastMI), TII->get(TargetOpcode::BUNDLE)); in finalizeBundle()
146 for (auto MII = FirstMI; MII != LastMI; ++MII) { in finalizeBundle()
229 for (auto MII = FirstMI; MII != LastMI; ++MII) { in finalizeBundle()
244 MachineBasicBlock::instr_iterator FirstMI) { in finalizeBundle() argument
246 MachineBasicBlock::instr_iterator LastMI = std::next(FirstMI); in finalizeBundle()
[all …]
H A DXRayInstrumentation.cpp209 auto &FirstMI = *FirstMBB.begin(); in runOnMachineFunction() local
212 FirstMI.emitError("An attempt to perform XRay instrumentation for an" in runOnMachineFunction()
220 BuildMI(FirstMBB, FirstMI, FirstMI.getDebugLoc(), in runOnMachineFunction()
H A DVirtRegMap.cpp444 MachineInstr *FirstMI = MIs.back(); in expandCopyBundle() local
474 MachineInstr *BundleStart = FirstMI; in expandCopyBundle()
487 if (Indexes && BundledMI != FirstMI) in expandCopyBundle()
H A DModuloSchedule.cpp1300 MachineInstr *FirstMI = nullptr; in rewrite() local
1307 if (!FirstMI) in rewrite()
1308 FirstMI = MI; in rewrite()
1310 assert(FirstMI && "Failed to find first MI in schedule"); in rewrite()
1314 for (auto I = BB->getFirstNonPHI(); I != FirstMI->getIterator();) { in rewrite()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
H A DAMDGPUMacroFusion.cpp28 const MachineInstr *FirstMI, in shouldScheduleAdjacent() argument
40 if (!FirstMI) in shouldScheduleAdjacent()
43 const MachineBasicBlock &MBB = *FirstMI->getParent(); in shouldScheduleAdjacent()
48 return FirstMI->definesRegister(Src2->getReg(), TRI); in shouldScheduleAdjacent()
H A DSILowerControlFlow.cpp658 MachineInstr *FirstMI = &*MBB->begin(); in lowerInitExec() local
663 if (DefInstr != FirstMI) { in lowerInitExec()
667 MBB->insert(FirstMI, DefInstr); in lowerInitExec()
672 FirstMI = &*std::next(FirstMI->getIterator()); in lowerInitExec()
682 auto BfeMI = BuildMI(*MBB, FirstMI, DL, TII->get(AMDGPU::S_BFE_U32), CountReg) in lowerInitExec()
686 BuildMI(*MBB, FirstMI, DL, in lowerInitExec()
690 auto CmpMI = BuildMI(*MBB, FirstMI, DL, TII->get(AMDGPU::S_CMP_EQ_U32)) in lowerInitExec()
694 BuildMI(*MBB, FirstMI, DL, in lowerInitExec()
H A DSIInstrInfo.cpp609 MachineInstr *FirstMI = nullptr, *LastMI = nullptr; in expandSGPRCopy() local
632 if (!FirstMI) in expandSGPRCopy()
633 FirstMI = LastMI; in expandSGPRCopy()
639 assert(FirstMI && LastMI); in expandSGPRCopy()
641 std::swap(FirstMI, LastMI); in expandSGPRCopy()
643 FirstMI->addOperand( in expandSGPRCopy()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/X86/
H A DX86MacroFusion.cpp36 const MachineInstr *FirstMI, in shouldScheduleAdjacent() argument
49 if (FirstMI == nullptr) in shouldScheduleAdjacent()
52 const X86::FirstMacroFusionInstKind TestKind = classifyFirst(*FirstMI); in shouldScheduleAdjacent()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/Hexagon/
H A DHexagonStoreWidening.cpp314 MachineInstr *FirstMI = *Begin; in selectStores() local
315 assert(!FirstMI->memoperands_empty() && "Expecting some memory operands"); in selectStores()
316 const MachineMemOperand &FirstMMO = getStoreTarget(FirstMI); in selectStores()
319 unsigned FirstOffset = getStoreOffset(FirstMI); in selectStores()
340 OG.push_back(FirstMI); in selectStores()
341 MachineInstr *S1 = FirstMI; in selectStores()
H A DHexagonVLIWPacketizer.cpp1802 MachineBasicBlock::instr_iterator FirstMI(OldPacketMIs.front()); in endPacket() local
1804 finalizeBundle(*MBB, FirstMI, LastMI); in endPacket()
1805 auto BundleMII = std::prev(FirstMI); in endPacket()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
H A DMachineInstrBundle.h28 MachineBasicBlock::instr_iterator FirstMI,
37 MachineBasicBlock::instr_iterator FirstMI);
H A DMacroFusion.h32 const MachineInstr *FirstMI,
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/SystemZ/
H A DSystemZISelLowering.cpp7116 MachineInstr *FirstMI = Selects.front(); in createPHIsForSelects() local
7117 unsigned CCValid = FirstMI->getOperand(3).getImm(); in createPHIsForSelects()
7118 unsigned CCMask = FirstMI->getOperand(4).getImm(); in createPHIsForSelects()