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

In OpenCL Extended Instruction Set Specificatio, nancode can be signed integer 
or vector of signed integers values.
This PR has no change to amdgcn--amdhsa.bc and nvptx64--nvidiacl.bc because the 
newly added clc functions are no used in OpenCL library.

>From 7ba65b7355d6939ce6da9d771ce8ed56a07f9d75 Mon Sep 17 00:00:00 2001
From: Wenju He <[email protected]>
Date: Tue, 1 Jul 2025 10:11:18 +0200
Subject: [PATCH] [libclc] Add __clc_nan implementation with signed nancode
 argument

In OpenCL Extended Instruction Set Specificatio, nancode can be signed
integer or vector of signed integers values.
This PR has no change to amdgcn--amdhsa.bc and nvptx64--nvidiacl.bc
because the newly added clc functions are no used in OpenCL library.
---
 libclc/clc/include/clc/math/clc_nan.inc | 1 +
 libclc/clc/lib/generic/math/clc_nan.inc | 4 ++++
 2 files changed, 5 insertions(+)

diff --git a/libclc/clc/include/clc/math/clc_nan.inc 
b/libclc/clc/include/clc/math/clc_nan.inc
index 637928f0839fd..22604e0a5785e 100644
--- a/libclc/clc/include/clc/math/clc_nan.inc
+++ b/libclc/clc/include/clc/math/clc_nan.inc
@@ -7,3 +7,4 @@
 
//===----------------------------------------------------------------------===//
 
 _CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __clc_nan(__CLC_U_GENTYPE code);
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __clc_nan(__CLC_S_GENTYPE code);
diff --git a/libclc/clc/lib/generic/math/clc_nan.inc 
b/libclc/clc/lib/generic/math/clc_nan.inc
index e934416351db1..46e828ba48c7e 100644
--- a/libclc/clc/lib/generic/math/clc_nan.inc
+++ b/libclc/clc/lib/generic/math/clc_nan.inc
@@ -20,4 +20,8 @@ _CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE 
__clc_nan(__CLC_U_GENTYPE code) {
   return __CLC_AS_GENTYPE(res);
 }
 
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __clc_nan(__CLC_S_GENTYPE code) {
+  return __clc_nan(__CLC_AS_U_GENTYPE(code));
+}
+
 #undef NAN_MASK

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

Reply via email to