Lines Matching refs:II
137 bool RISCVCodeGenPrepare::widenVPMerge(IntrinsicInst &II) { in widenVPMerge() argument
138 if (!II.getType()->getScalarType()->isIntegerTy(1)) in widenVPMerge()
143 if (!match(&II, in widenVPMerge()
151 Phi->getIncomingValue(1) != &II) in widenVPMerge()
155 VectorType::get(IntegerType::getInt8Ty(II.getContext()), in widenVPMerge()
156 cast<VectorType>(II.getType())->getElementCount()); in widenVPMerge()
162 Builder.SetInsertPoint(&II); in widenVPMerge()
167 Value *Trunc = Builder.CreateTrunc(WideMerge, II.getType()); in widenVPMerge()
169 II.replaceAllUsesWith(Trunc); in widenVPMerge()
173 llvm::RecursivelyDeleteTriviallyDeadInstructions(&II); in widenVPMerge()
247 bool RISCVCodeGenPrepare::expandVPStrideLoad(IntrinsicInst &II) { in expandVPStrideLoad() argument
251 if (!match(&II, m_Intrinsic<Intrinsic::experimental_vp_strided_load>( in expandVPStrideLoad()
257 if (II.getType()->getScalarSizeInBits() > ST->getXLen()) in expandVPStrideLoad()
260 if (!isKnownNonZero(VL, {*DL, DT, nullptr, &II})) in expandVPStrideLoad()
263 auto *VTy = cast<VectorType>(II.getType()); in expandVPStrideLoad()
265 IRBuilder<> Builder(&II); in expandVPStrideLoad()
269 {Val, II.getOperand(2), VL}); in expandVPStrideLoad()
271 II.replaceAllUsesWith(Res); in expandVPStrideLoad()
272 II.eraseFromParent(); in expandVPStrideLoad()