Home
last modified time | relevance | path

Searched refs:CmpInstr (Results 1 – 14 of 14) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Target/Lanai/
H A DLanaiInstrInfo.cpp286 MachineInstr &CmpInstr, Register SrcReg, Register SrcReg2, in optimizeCompareInstr() argument
295 MachineBasicBlock::iterator I = CmpInstr, E = MI, in optimizeCompareInstr()
296 B = CmpInstr.getParent()->begin(); in optimizeCompareInstr()
310 else if (MI->getParent() != CmpInstr.getParent() || CmpValue != 0) { in optimizeCompareInstr()
314 if (CmpInstr.getOpcode() == Lanai::SFSUB_F_RI_LO) in optimizeCompareInstr()
333 if (isRedundantFlagInstr(&CmpInstr, SrcReg, SrcReg2, CmpValue, &*I)) { in optimizeCompareInstr()
356 I = CmpInstr; in optimizeCompareInstr()
357 E = CmpInstr.getParent()->end(); in optimizeCompareInstr()
423 MachineBasicBlock *MBB = CmpInstr.getParent(); in optimizeCompareInstr()
432 CmpInstr.eraseFromParent(); in optimizeCompareInstr()
H A DLanaiInstrInfo.h107 bool optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg,
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64InstrInfo.h430 bool optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg,
586 bool substituteCmpToZero(MachineInstr &CmpInstr, unsigned SrcReg,
588 bool removeCmpToZeroOrOne(MachineInstr &CmpInstr, unsigned SrcReg,
632 examineCFlagsUse(MachineInstr &MI, MachineInstr &CmpInstr,
H A DAArch64InstrInfo.cpp1658 MachineInstr &CmpInstr, Register SrcReg, Register SrcReg2, int64_t CmpMask, in optimizeCompareInstr() argument
1660 assert(CmpInstr.getParent()); in optimizeCompareInstr()
1665 CmpInstr.findRegisterDefOperandIdx(AArch64::NZCV, /*TRI=*/nullptr, true); in optimizeCompareInstr()
1667 if (CmpInstr.definesRegister(AArch64::WZR, /*TRI=*/nullptr) || in optimizeCompareInstr()
1668 CmpInstr.definesRegister(AArch64::XZR, /*TRI=*/nullptr)) { in optimizeCompareInstr()
1669 CmpInstr.eraseFromParent(); in optimizeCompareInstr()
1672 unsigned Opc = CmpInstr.getOpcode(); in optimizeCompareInstr()
1673 unsigned NewOpc = convertToNonFlagSettingOpc(CmpInstr); in optimizeCompareInstr()
1677 CmpInstr.setDesc(MCID); in optimizeCompareInstr()
1678 CmpInstr.removeOperand(DeadNZCVIdx); in optimizeCompareInstr()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMBaseInstrInfo.cpp2858 MachineInstr &CmpInstr, Register SrcReg, Register SrcReg2, int64_t CmpMask, in optimizeCompareInstr() argument
2871 if (UI->getParent() != CmpInstr.getParent()) in optimizeCompareInstr()
2885 MachineBasicBlock::iterator I = CmpInstr, E = MI, in optimizeCompareInstr()
2886 B = CmpInstr.getParent()->begin(); in optimizeCompareInstr()
2900 else if (MI->getParent() != CmpInstr.getParent() || CmpValue != 0) { in optimizeCompareInstr()
2905 if (CmpInstr.getOpcode() == ARM::CMPri || in optimizeCompareInstr()
2906 CmpInstr.getOpcode() == ARM::t2CMPri || in optimizeCompareInstr()
2907 CmpInstr.getOpcode() == ARM::tCMPi8) in optimizeCompareInstr()
2942 E = CmpInstr; in optimizeCompareInstr()
2943 CmpInstr.getParent()->insert(E, MI); in optimizeCompareInstr()
[all …]
H A DARMBaseInstrInfo.h301 bool optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg,
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstrInfo.cpp1027 findRedundantFlagInstr(MachineInstr &CmpInstr, MachineInstr &CmpValDefInstr, in findRedundantFlagInstr() argument
1032 CmpInstr.getOpcode() == X86::TEST64rr) && in findRedundantFlagInstr()
1034 CmpInstr.getOpcode() == X86::TEST16rr)) in findRedundantFlagInstr()
1040 assert((CmpInstr.getOperand(0).getReg() == CmpInstr.getOperand(1).getReg()) && in findRedundantFlagInstr()
1050 (MRI->getVRegDef(CmpInstr.getOperand(0).getReg()) == &CmpValDefInstr) && in findRedundantFlagInstr()
1054 if (CmpInstr.getOpcode() == X86::TEST16rr) { in findRedundantFlagInstr()
1069 if (CmpInstr.getOpcode() == X86::TEST64rr) { in findRedundantFlagInstr()
5273 bool X86InstrInfo::optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg, in optimizeCompareInstr() argument
5278 switch (CmpInstr.getOpcode()) { in optimizeCompareInstr()
5293 if (!MRI->use_nodbg_empty(CmpInstr.getOperand(0).getReg())) in optimizeCompareInstr()
[all …]
H A DX86InstrInfo.h617 bool optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg,
H A DX86TargetTransformInfo.cpp3347 if (auto *CmpInstr = dyn_cast_or_null<CmpInst>(I)) in getCmpSelInstrCost() local
3348 CmpWithConstant = isa<Constant>(CmpInstr->getOperand(1)); in getCmpSelInstrCost()
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCInstrInfo.cpp2400 bool PPCInstrInfo::optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg, in optimizeCompareInstr() argument
2407 int OpC = CmpInstr.getOpcode(); in optimizeCompareInstr()
2408 Register CRReg = CmpInstr.getOperand(0).getReg(); in optimizeCompareInstr()
2483 MachineBasicBlock::iterator I = CmpInstr; in optimizeCompareInstr()
2486 for (MachineBasicBlock::iterator EL = CmpInstr.getParent()->end(); I != EL; in optimizeCompareInstr()
2515 else if (MI->getParent() != CmpInstr.getParent()) in optimizeCompareInstr()
2561 CmpInstr.getOperand(2).setImm(0); in optimizeCompareInstr()
2568 MachineBasicBlock::iterator E = MI, B = CmpInstr.getParent()->begin(); in optimizeCompareInstr()
2574 if (&*I != &CmpInstr && (Instr.modifiesRegister(PPC::CR0, TRI) || in optimizeCompareInstr()
2688 CmpInstr.eraseFromParent(); in optimizeCompareInstr()
H A DPPCInstrInfo.h660 bool optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg,
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DTargetInstrInfo.h1798 virtual bool optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg, in optimizeCompareInstr() argument
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIInstrInfo.h394 bool optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg,
H A DSIInstrInfo.cpp10237 bool SIInstrInfo::optimizeCompareInstr(MachineInstr &CmpInstr, Register SrcReg, in optimizeCompareInstr() argument
10247 const auto optimizeCmpAnd = [&CmpInstr, SrcReg, CmpValue, MRI, in optimizeCompareInstr()
10274 if (!Def || Def->getParent() != CmpInstr.getParent()) in optimizeCompareInstr()
10321 for (auto I = std::next(Def->getIterator()), E = CmpInstr.getIterator(); in optimizeCompareInstr()
10331 CmpInstr.eraseFromParent(); in optimizeCompareInstr()
10354 switch (CmpInstr.getOpcode()) { in optimizeCompareInstr()