================ @@ -63,11 +63,11 @@ multiclass RVVVLEFFBuiltin<list<string> types> { if ((PolicyAttrs & RVV_VTA) && (PolicyAttrs & RVV_VMA)) Ops.insert(Ops.begin(), llvm::PoisonValue::get(ResultType)); Ops.push_back(ConstantInt::get(Ops.back()->getType(), PolicyAttrs)); - IntrinsicTypes = {ResultType, Ops[4]->getType()}; + IntrinsicTypes = {ResultType, Ops[4]->getType(), Ops[2]->getType()}; ---------------- hvdijk wrote:
The types in `IntrinsicTypes` have to be whatever order the intrinsic expects, which is result first, in order if there are multiple results, then each parameter in order. The fact that the VL type appears in the intrinsic's result requires it to appear in `IntrinsicTypes` ahead of the pointer type. https://github.com/llvm/llvm-project/pull/139634 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits