[llvm] Add an all-in-one histogram intrinsic, along with lowering for AArch64 (PR #88106)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 22 03:10:21 PDT 2024


================
@@ -1848,6 +1848,13 @@ def int_experimental_vp_strided_load  : DefaultAttrsIntrinsic<[llvm_anyvector_ty
                                llvm_i32_ty],
                              [ NoCapture<ArgIndex<0>>, IntrNoSync, IntrReadMem, IntrWillReturn, IntrArgMemOnly ]>;
 
+// Experimental histogram
+def int_experimental_histogram : DefaultAttrsIntrinsic<[],
+                             [ llvm_anyvector_ty, // Vector of pointers
+                               llvm_anyint_ty,    // Increment
+                               LLVMScalarOrSameVectorWidth<0, llvm_i1_ty>], // Mask
+                             [ IntrNoSync, IntrWillReturn ]>;
----------------
arsenm wrote:

IntrNoSync and IntrWillReturn are implied by DefaultAttrsIntrinsic

https://github.com/llvm/llvm-project/pull/88106


More information about the llvm-commits mailing list