Author: Wenju He
Date: 2026-03-24T15:55:10+08:00
New Revision: b929f2f0189ef3698d7b65168ff51976bb6f86e2

URL: 
https://github.com/llvm/llvm-project/commit/b929f2f0189ef3698d7b65168ff51976bb6f86e2
DIFF: 
https://github.com/llvm/llvm-project/commit/b929f2f0189ef3698d7b65168ff51976bb6f86e2.diff

LOG: [libclc][NFC] Remove __CLC_BIT_INTN macro (#188023)

This macro was originally introduced in 64735ad63975 for relational
built-ins. It is functionally identical to __CLC_S_GENTYPE. Replacing it
simplifies gentype.inc, which is widely used in the library.

Added: 
    

Modified: 
    libclc/clc/include/clc/math/gentype.inc
    libclc/clc/include/clc/relational/binary_decl.inc
    libclc/clc/include/clc/relational/unary_decl.inc
    libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
    libclc/clc/lib/generic/atomic/clc_atomic_load.cl
    libclc/clc/lib/generic/atomic/clc_atomic_store.cl
    libclc/clc/lib/generic/common/clc_sign.inc
    libclc/opencl/lib/generic/relational/relational_binary_def.inc
    libclc/opencl/lib/generic/relational/relational_unary_def.inc

Removed: 
    


################################################################################
diff  --git a/libclc/clc/include/clc/math/gentype.inc 
b/libclc/clc/include/clc/math/gentype.inc
index 560152b464708..ff5b77e029399 100644
--- a/libclc/clc/include/clc/math/gentype.inc
+++ b/libclc/clc/include/clc/math/gentype.inc
@@ -58,8 +58,6 @@
 #define __CLC_CONVERT_UINTN __CLC_XCONCAT(__clc_convert_, __CLC_UINTN)
 #define __CLC_CONVERT_ULONGN __CLC_XCONCAT(__clc_convert_, __CLC_ULONGN)
 
-#define __CLC_CONVERT_BIT_INTN __CLC_XCONCAT(__clc_convert_, __CLC_BIT_INTN)
-
 // See definitions of __CLC_S_GENTYPE/__CLC_U_GENTYPE below, which depend on 
the
 // specific size of floating-point type. These are the signed and unsigned
 // integers of the same bitwidth and element count as the GENTYPE. They match
@@ -88,48 +86,36 @@
 #define __CLC_GENTYPE_DENORMS_ARE_ZERO __clc_denormals_are_zero_fp32()
 
 #define __CLC_BIT_INT int
-#define __CLC_BIT_INTN int
 #define __CLC_SCALAR
 #define __CLC_VECSIZE
 #define __CLC_VECSIZE_OR_1 1
 #include __CLC_BODY
 #undef __CLC_VECSIZE_OR_1
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 #undef __CLC_SCALAR
 
 #define __CLC_VECSIZE_OR_1 __CLC_VECSIZE
 
-#define __CLC_BIT_INTN int2
 #define __CLC_VECSIZE 2
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN int3
 #define __CLC_VECSIZE 3
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN int4
 #define __CLC_VECSIZE 4
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN int8
 #define __CLC_VECSIZE 8
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN int16
 #define __CLC_VECSIZE 16
 #include __CLC_BODY
 #undef __CLC_VECSIZE
 #undef __CLC_BIT_INT
-#undef __CLC_BIT_INTN
 
 #undef __CLC_VECSIZE_OR_1
 #undef __CLC_U_GENTYPE
@@ -163,45 +149,33 @@
 #define __CLC_VECSIZE
 #define __CLC_VECSIZE_OR_1 1
 #define __CLC_BIT_INT long
-#define __CLC_BIT_INTN long
 #include __CLC_BODY
 #undef __CLC_VECSIZE_OR_1
-#undef __CLC_BIT_INTN
 #undef __CLC_VECSIZE
 #undef __CLC_SCALAR
 
 #define __CLC_VECSIZE_OR_1 __CLC_VECSIZE
 
-#define __CLC_BIT_INTN long2
 #define __CLC_VECSIZE 2
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN long3
 #define __CLC_VECSIZE 3
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN long4
 #define __CLC_VECSIZE 4
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN long8
 #define __CLC_VECSIZE 8
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN long16
 #define __CLC_VECSIZE 16
 #include __CLC_BODY
 #undef __CLC_VECSIZE
 #undef __CLC_BIT_INT
-#undef __CLC_BIT_INTN
 
 #undef __CLC_VECSIZE_OR_1
 #undef __CLC_U_GENTYPE
@@ -235,45 +209,33 @@
 #define __CLC_VECSIZE
 #define __CLC_VECSIZE_OR_1 1
 #define __CLC_BIT_INT short
-#define __CLC_BIT_INTN short
 #include __CLC_BODY
-#undef __CLC_BIT_INTN
 #undef __CLC_VECSIZE_OR_1
 #undef __CLC_VECSIZE
 #undef __CLC_SCALAR
 
 #define __CLC_VECSIZE_OR_1 __CLC_VECSIZE
 
-#define __CLC_BIT_INTN short2
 #define __CLC_VECSIZE 2
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN short3
 #define __CLC_VECSIZE 3
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN short4
 #define __CLC_VECSIZE 4
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN short8
 #define __CLC_VECSIZE 8
 #include __CLC_BODY
 #undef __CLC_VECSIZE
-#undef __CLC_BIT_INTN
 
-#define __CLC_BIT_INTN short16
 #define __CLC_VECSIZE 16
 #include __CLC_BODY
 #undef __CLC_VECSIZE
 #undef __CLC_BIT_INT
-#undef __CLC_BIT_INTN
 
 #undef __CLC_VECSIZE_OR_1
 #undef __CLC_U_GENTYPE
@@ -324,8 +286,6 @@
 #undef __CLC_CONVERT_UINTN
 #undef __CLC_CONVERT_ULONGN
 
-#undef __CLC_CONVERT_BIT_INTN
-
 #undef __CLC_ULONGN
 #undef __CLC_UINTN
 #undef __CLC_USHORTN

diff  --git a/libclc/clc/include/clc/relational/binary_decl.inc 
b/libclc/clc/include/clc/relational/binary_decl.inc
index 34749559c7e09..eea7f06431c40 100644
--- a/libclc/clc/include/clc/relational/binary_decl.inc
+++ b/libclc/clc/include/clc/relational/binary_decl.inc
@@ -9,7 +9,7 @@
 #if __CLC_VECSIZE_OR_1 == 1
 #define __CLC_RETTYPE __CLC_INTN
 #else
-#define __CLC_RETTYPE __CLC_BIT_INTN
+#define __CLC_RETTYPE __CLC_S_GENTYPE
 #endif
 
 _CLC_OVERLOAD _CLC_CONST _CLC_DECL __CLC_RETTYPE

diff  --git a/libclc/clc/include/clc/relational/unary_decl.inc 
b/libclc/clc/include/clc/relational/unary_decl.inc
index df74194040253..36f2015b91654 100644
--- a/libclc/clc/include/clc/relational/unary_decl.inc
+++ b/libclc/clc/include/clc/relational/unary_decl.inc
@@ -9,7 +9,7 @@
 #if __CLC_VECSIZE_OR_1 == 1
 #define __CLC_RETTYPE __CLC_INTN
 #else
-#define __CLC_RETTYPE __CLC_BIT_INTN
+#define __CLC_RETTYPE __CLC_S_GENTYPE
 #endif
 
 _CLC_OVERLOAD _CLC_CONST _CLC_DECL __CLC_RETTYPE

diff  --git a/libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl 
b/libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
index e138780739267..9ccb3910792db 100644
--- a/libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
+++ b/libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
@@ -17,7 +17,7 @@
 #undef __CLC_CASTTYPE
 #undef __CLC_AS_RETTYPE
 #undef __CLC_AS_CASTTYPE
-#define __CLC_CASTTYPE __CLC_BIT_INTN
+#define __CLC_CASTTYPE __CLC_S_GENTYPE
 #define __CLC_AS_RETTYPE(x) __CLC_AS_GENTYPE(x)
 #define __CLC_AS_CASTTYPE __CLC_AS_S_GENTYPE
 

diff  --git a/libclc/clc/lib/generic/atomic/clc_atomic_load.cl 
b/libclc/clc/lib/generic/atomic/clc_atomic_load.cl
index 5a8cb8da017c9..c6dca35545100 100644
--- a/libclc/clc/lib/generic/atomic/clc_atomic_load.cl
+++ b/libclc/clc/lib/generic/atomic/clc_atomic_load.cl
@@ -17,7 +17,7 @@
 
 #undef __CLC_CASTTYPE
 #undef __CLC_AS_RETTYPE
-#define __CLC_CASTTYPE __CLC_BIT_INTN
+#define __CLC_CASTTYPE __CLC_S_GENTYPE
 #define __CLC_AS_RETTYPE(x) __CLC_AS_GENTYPE(x)
 
 #define __CLC_BODY "clc_atomic_def.inc"

diff  --git a/libclc/clc/lib/generic/atomic/clc_atomic_store.cl 
b/libclc/clc/lib/generic/atomic/clc_atomic_store.cl
index e0429b0acf86a..3aea423acbdc9 100644
--- a/libclc/clc/lib/generic/atomic/clc_atomic_store.cl
+++ b/libclc/clc/lib/generic/atomic/clc_atomic_store.cl
@@ -17,7 +17,7 @@
 
 #undef __CLC_CASTTYPE
 #undef __CLC_AS_CASTTYPE
-#define __CLC_CASTTYPE __CLC_BIT_INTN
+#define __CLC_CASTTYPE __CLC_S_GENTYPE
 #define __CLC_AS_CASTTYPE __CLC_AS_S_GENTYPE
 
 #define __CLC_BODY "clc_atomic_def.inc"

diff  --git a/libclc/clc/lib/generic/common/clc_sign.inc 
b/libclc/clc/lib/generic/common/clc_sign.inc
index 3b71c0a0d84ad..b6a287af692b8 100644
--- a/libclc/clc/lib/generic/common/clc_sign.inc
+++ b/libclc/clc/lib/generic/common/clc_sign.inc
@@ -7,7 +7,7 @@
 
//===----------------------------------------------------------------------===//
 
 _CLC_DEF _CLC_OVERLOAD __CLC_GENTYPE __clc_sign(__CLC_GENTYPE x) {
-  __CLC_BIT_INTN ret_zero = __clc_isnan(x) || x == __CLC_FP_LIT(0.0);
+  __CLC_S_GENTYPE ret_zero = __clc_isnan(x) || x == __CLC_FP_LIT(0.0);
   __CLC_GENTYPE ret_val =
       __clc_select(__CLC_FP_LIT(1.0), __CLC_FP_LIT(0.0), ret_zero);
   return __clc_copysign(ret_val, x);

diff  --git a/libclc/opencl/lib/generic/relational/relational_binary_def.inc 
b/libclc/opencl/lib/generic/relational/relational_binary_def.inc
index d91b893207c55..4c6d5fc23c192 100644
--- a/libclc/opencl/lib/generic/relational/relational_binary_def.inc
+++ b/libclc/opencl/lib/generic/relational/relational_binary_def.inc
@@ -13,7 +13,7 @@
 #if __CLC_VECSIZE_OR_1 == 1
 #define __CLC_RETTYPE __CLC_INTN
 #else
-#define __CLC_RETTYPE __CLC_BIT_INTN
+#define __CLC_RETTYPE __CLC_S_GENTYPE
 #endif
 
 _CLC_OVERLOAD _CLC_DEF __CLC_RETTYPE __CLC_FUNCTION(__CLC_GENTYPE a,

diff  --git a/libclc/opencl/lib/generic/relational/relational_unary_def.inc 
b/libclc/opencl/lib/generic/relational/relational_unary_def.inc
index a39c26cc2a521..1e21a8134b5d6 100644
--- a/libclc/opencl/lib/generic/relational/relational_unary_def.inc
+++ b/libclc/opencl/lib/generic/relational/relational_unary_def.inc
@@ -13,7 +13,7 @@
 #if __CLC_VECSIZE_OR_1 == 1
 #define __CLC_RETTYPE __CLC_INTN
 #else
-#define __CLC_RETTYPE __CLC_BIT_INTN
+#define __CLC_RETTYPE __CLC_S_GENTYPE
 #endif
 
 _CLC_OVERLOAD _CLC_DEF __CLC_RETTYPE __CLC_FUNCTION(__CLC_GENTYPE a) {


        
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to