Lines Matching defs:II
73 /// Replace the intrinsic call \p II to \p TLIVecFunc, which is the
75 static void replaceWithTLIFunction(IntrinsicInst *II, VFInfo &Info,
77 IRBuilder<> IRBuilder(II);
78 SmallVector<Value *> Args(II->args());
81 VectorType::get(Type::getInt1Ty(II->getContext()), Info.Shape.VF);
88 II->getOperandBundlesAsDefs(OpBundles);
91 II->replaceAllUsesWith(Replacement);
94 Replacement->copyFastMathFlags(II);
97 /// Returns true when successfully replaced \p II, which is a call to a
101 IntrinsicInst *II) {
102 assert(II != nullptr && "Intrinsic cannot be null");
103 Intrinsic::ID IID = II->getIntrinsicID();
104 Type *RetTy = II->getType();
120 for (auto Arg : enumerate(II->args())) {
148 ? Intrinsic::getName(IID, OloadTys, II->getModule())
182 assert(VFParam.ParamPos < II->arg_size() && "ParamPos has invalid range");
183 Type *OrigTy = II->getArgOperand(VFParam.ParamPos)->getType();
197 getTLIFunction(II->getModule(), VectorFTy, VD->getVectorFnName(),
198 II->getCalledFunction());
199 replaceWithTLIFunction(II, *OptInfo, TLIFunc);
210 if (auto *II = dyn_cast<IntrinsicInst>(&I)) {
211 if (II->getIntrinsicID() == Intrinsic::not_intrinsic)
213 if (!II->getType()->isVectorTy() && !II->getType()->isVoidTy())
216 if (replaceWithCallToVeclib(TLI, II))