[llvm] 9627602 - [VP] Mark llvm.experimental.vp.splice as having no functional equivalent (#70647)
via llvm-commits
llvm-commits at lists.llvm.org
Sun Nov 5 21:11:25 PST 2023
Author: Luke Lau
Date: 2023-11-06T13:11:22+08:00
New Revision: 9627602db1f1b2f738b72ab025565a4453b12d44
URL: https://github.com/llvm/llvm-project/commit/9627602db1f1b2f738b72ab025565a4453b12d44
DIFF: https://github.com/llvm/llvm-project/commit/9627602db1f1b2f738b72ab025565a4453b12d44.diff
LOG: [VP] Mark llvm.experimental.vp.splice as having no functional equivalent (#70647)
llvm.experimental.vp.splice has different semantics from
llvm.experimental.splice (since it takes uses the EVL arguments in a way
other
than just masking the tail elements), so it shouldn't be expanded to the
unpredicated version.
Coincidentally there's no support for llvm.experimental.vp.splice in
ExpandVectorPredication, so it wasn't getting expanded, but we shouldn't
mark
it as functionally equivalent anyway since there's other users of the
property
now e.g. in VectorCombine.
Added:
Modified:
llvm/include/llvm/IR/VPIntrinsics.def
Removed:
################################################################################
diff --git a/llvm/include/llvm/IR/VPIntrinsics.def b/llvm/include/llvm/IR/VPIntrinsics.def
index 55a68ff5768ddb0..0ca60bcfbb3d03f 100644
--- a/llvm/include/llvm/IR/VPIntrinsics.def
+++ b/llvm/include/llvm/IR/VPIntrinsics.def
@@ -699,7 +699,7 @@ VP_PROPERTY_NO_FUNCTIONAL
END_REGISTER_VP(vp_merge, VP_MERGE)
BEGIN_REGISTER_VP(experimental_vp_splice, 3, 5, EXPERIMENTAL_VP_SPLICE, -1)
-VP_PROPERTY_FUNCTIONAL_INTRINSIC(experimental_vector_splice)
+VP_PROPERTY_NO_FUNCTIONAL
END_REGISTER_VP(experimental_vp_splice, EXPERIMENTAL_VP_SPLICE)
///// } Shuffles
More information about the llvm-commits
mailing list