[libclc] [libclc] Add v3 variants of async_work_group_copy/async_work_group_strided_copy/prefetch (PR #137932)

Wenju He via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 30 00:53:29 PDT 2025


https://github.com/wenju-he created https://github.com/llvm/llvm-project/pull/137932

3-component vector type is supported for them per OpenCL spec.

>From cafb374de8d77c82fa450b732a122663090f6e34 Mon Sep 17 00:00:00 2001
From: Wenju He <wenju.he at intel.com>
Date: Wed, 30 Apr 2025 00:44:50 -0700
Subject: [PATCH] [libclc] Add v3 variants of
 async_work_group_copy/async_work_group_strided_copy/prefetch

3-component vector type is supported for them per OpenCL spec.
---
 libclc/generic/include/clc/async/gentype.inc | 44 ++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/libclc/generic/include/clc/async/gentype.inc b/libclc/generic/include/clc/async/gentype.inc
index 1114883e1ad35..e023c8bbd97d2 100644
--- a/libclc/generic/include/clc/async/gentype.inc
+++ b/libclc/generic/include/clc/async/gentype.inc
@@ -14,6 +14,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE char3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE char4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -34,6 +38,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE uchar3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE uchar4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -54,6 +62,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE short3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE short4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -74,6 +86,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE ushort3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE ushort4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -94,6 +110,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE int3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE int4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -114,6 +134,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE uint3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE uint4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -134,6 +158,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE float3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE float4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -154,6 +182,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE long3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE long4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -174,6 +206,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE ulong3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE ulong4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -197,6 +233,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE double3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE double4
 #include __CLC_BODY
 #undef __CLC_GENTYPE
@@ -222,6 +262,10 @@
 #include __CLC_BODY
 #undef __CLC_GENTYPE
 
+#define __CLC_GENTYPE half3
+#include __CLC_BODY
+#undef __CLC_GENTYPE
+
 #define __CLC_GENTYPE half4
 #include __CLC_BODY
 #undef __CLC_GENTYPE



More information about the cfe-commits mailing list