[PATCH] D125423: [Intrinsics] Fix `nvvm_prmt` intrinsic attributes

Dmitry Vassiliev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 11 14:30:14 PDT 2022


slydiman created this revision.
slydiman added reviewers: tra, npmiller, jchlanda, JackAKirk.
slydiman added a project: LLVM.
Herald added subscribers: mattd, gchakrabarti, jholewinski.
Herald added a project: All.
slydiman requested review of this revision.
Herald added a subscriber: llvm-commits.

`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


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D125423

Files:
  llvm/include/llvm/IR/IntrinsicsNVVM.td


Index: llvm/include/llvm/IR/IntrinsicsNVVM.td
===================================================================
--- llvm/include/llvm/IR/IntrinsicsNVVM.td
+++ llvm/include/llvm/IR/IntrinsicsNVVM.td
@@ -558,7 +558,7 @@
 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


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D125423.428780.patch
Type: text/x-patch
Size: 482 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220511/900412c3/attachment.bin>


More information about the llvm-commits mailing list