[llvm] 7b22cf1 - [Intrinsics] Fix `nvvm_prmt` intrinsic attributes
Dmitry Vassiliev via llvm-commits
llvm-commits at lists.llvm.org
Thu May 12 01:46:25 PDT 2022
Author: Dmitry Vassiliev
Date: 2022-05-12T10:46:03+02:00
New Revision: 7b22cf12ef9f3b436514818c4cb9e25df0d9cc36
URL: https://github.com/llvm/llvm-project/commit/7b22cf12ef9f3b436514818c4cb9e25df0d9cc36
DIFF: https://github.com/llvm/llvm-project/commit/7b22cf12ef9f3b436514818c4cb9e25df0d9cc36.diff
LOG: [Intrinsics] Fix `nvvm_prmt` intrinsic attributes
`nvvm_prmt` doesn't seem to be `commutative`. nvvm also sets `IntrSpeculatable` for it.
Here is the doc https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#data-movement-and-conversion-instructions-prmt
Reviewed By: tra, jchlanda
Differential Revision: https://reviews.llvm.org/D125423
Added:
Modified:
llvm/include/llvm/IR/IntrinsicsNVVM.td
Removed:
################################################################################
diff --git a/llvm/include/llvm/IR/IntrinsicsNVVM.td b/llvm/include/llvm/IR/IntrinsicsNVVM.td
index 81ba6faab79cb..eff12d106c76a 100644
--- a/llvm/include/llvm/IR/IntrinsicsNVVM.td
+++ b/llvm/include/llvm/IR/IntrinsicsNVVM.td
@@ -558,7 +558,7 @@ class SHFL_INFO<bit sync, string mode, string type, bit return_pred> {
let TargetPrefix = "nvvm" in {
def int_nvvm_prmt : GCCBuiltin<"__nvvm_prmt">,
DefaultAttrsIntrinsic<[llvm_i32_ty], [llvm_i32_ty, llvm_i32_ty, llvm_i32_ty],
- [IntrNoMem, Commutative]>;
+ [IntrNoMem, IntrSpeculatable]>;
//
// Min Max
More information about the llvm-commits
mailing list