https://github.com/wenju-he updated https://github.com/llvm/llvm-project/pull/184549
>From 7ec795cbd00b6aa4e700a6ccf54eaca9d813f9f7 Mon Sep 17 00:00:00 2001 From: Wenju He <[email protected]> Date: Wed, 4 Mar 2026 06:32:37 +0100 Subject: [PATCH 1/2] [libclc][NFC] Add -Wall -Wextra to build flags and fix build warnings --- libclc/CMakeLists.txt | 2 ++ libclc/clc/lib/generic/async/clc_prefetch.inc | 5 ++++- libclc/clc/lib/generic/math/clc_cosh.inc | 1 - libclc/clc/lib/generic/math/clc_erfc.cl | 2 +- libclc/clc/lib/generic/math/clc_expm1.inc | 1 - libclc/clc/lib/generic/math/clc_fmod.cl | 3 --- libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc | 1 - libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl | 1 - libclc/clc/lib/ptx-nvidiacl/mem_fence/clc_mem_fence.cl | 2 ++ .../ptx-nvidiacl/synchronization/clc_work_group_barrier.cl | 3 +++ libclc/opencl/lib/generic/async/wait_group_events.cl | 2 ++ 11 files changed, 14 insertions(+), 9 deletions(-) diff --git a/libclc/CMakeLists.txt b/libclc/CMakeLists.txt index 3252e2625debc..c2a4aec0f8ebe 100644 --- a/libclc/CMakeLists.txt +++ b/libclc/CMakeLists.txt @@ -367,6 +367,8 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} ) -include opencl-c-base.h # Error on undefined macros -Werror=undef + -Wall + -Wextra -fdiscard-value-names -ffp-contract=fast-honor-pragmas -fdenormal-fp-math=dynamic diff --git a/libclc/clc/lib/generic/async/clc_prefetch.inc b/libclc/clc/lib/generic/async/clc_prefetch.inc index a9c6b41a8ff6e..476e35dd4d557 100644 --- a/libclc/clc/lib/generic/async/clc_prefetch.inc +++ b/libclc/clc/lib/generic/async/clc_prefetch.inc @@ -7,4 +7,7 @@ //===----------------------------------------------------------------------===// _CLC_OVERLOAD _CLC_DEF void __clc_prefetch(const global __CLC_GENTYPE *p, - size_t num_gentypes) {} + size_t num_gentypes) { + (void)p; + (void)num_gentypes; +} diff --git a/libclc/clc/lib/generic/math/clc_cosh.inc b/libclc/clc/lib/generic/math/clc_cosh.inc index c80b1a38c7768..a2be83fcf0860 100644 --- a/libclc/clc/lib/generic/math/clc_cosh.inc +++ b/libclc/clc/lib/generic/math/clc_cosh.inc @@ -20,7 +20,6 @@ _CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __clc_cosh(__CLC_GENTYPE x) { const __CLC_GENTYPE max_cosh_arg = 0x1.65a9fap+6f; const __CLC_GENTYPE small_threshold = 0x1.0a2b24p+3f; - __CLC_UINTN ux = __CLC_AS_UINTN(x); __CLC_GENTYPE y = __clc_fabs(x); __CLC_UINTN aux = __CLC_AS_UINTN(y); diff --git a/libclc/clc/lib/generic/math/clc_erfc.cl b/libclc/clc/lib/generic/math/clc_erfc.cl index 01dbcd0c39ae1..64cabb53bbe9d 100644 --- a/libclc/clc/lib/generic/math/clc_erfc.cl +++ b/libclc/clc/lib/generic/math/clc_erfc.cl @@ -497,7 +497,7 @@ _CLC_OVERLOAD _CLC_DEF double __clc_erfc(double x) { ret = x >= 28.0 ? 0.0 : ret; ret = x <= -6.0 ? 2.0 : ret; - ret = ax > 0x7ff0000000000000UL ? x : ret; + ret = ax > 0x7ff0000000000000L ? x : ret; return ret; } diff --git a/libclc/clc/lib/generic/math/clc_expm1.inc b/libclc/clc/lib/generic/math/clc_expm1.inc index a7ff90ea86ca0..568fa4e0a36fa 100644 --- a/libclc/clc/lib/generic/math/clc_expm1.inc +++ b/libclc/clc/lib/generic/math/clc_expm1.inc @@ -21,7 +21,6 @@ _CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __clc_expm1(__CLC_GENTYPE x) { // log2/64 tail: 0.0000272020388 const __CLC_GENTYPE R_LOG2_BY_64_TL = 0x1.c85fdep-16f; - __CLC_UINTN xi = __CLC_AS_UINTN(x); __CLC_INTN n = __CLC_CONVERT_INTN(x * R_64_BY_LOG2); __CLC_GENTYPE fn = __CLC_CONVERT_GENTYPE(n); diff --git a/libclc/clc/lib/generic/math/clc_fmod.cl b/libclc/clc/lib/generic/math/clc_fmod.cl index f17757c9c370b..d81ad6b96c13b 100644 --- a/libclc/clc/lib/generic/math/clc_fmod.cl +++ b/libclc/clc/lib/generic/math/clc_fmod.cl @@ -133,15 +133,12 @@ _CLC_DEF _CLC_OVERLOAD double __clc_fmod(double x, double y) { // One more time // Variable todd says whether the integer t is odd or not t = __clc_floor(dx / w); - long lt = (long)t; - int todd = lt & 1; p = w * t; pp = __clc_fma(w, t, -p); v = dx - p; dx = v + (((dx - v) - p) - pp); i = dx < 0.0; - todd ^= i; dx += i ? w : 0.0; // At this point, dx lies in the range [0,dy) diff --git a/libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc b/libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc index e029c6dcfaa02..f8c089edc8838 100644 --- a/libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc +++ b/libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc @@ -212,7 +212,6 @@ __clc_remainder_piby2_large(__CLC_DOUBLEN x, private __CLC_DOUBLEN *r, __CLC_UINTN q4s1 = __CLC_CONVERT_UINTN(q4 >> 32); __CLC_INTN k = (j >> 2) & 0x3; - __CLC_INTN c0 = k == 0; __CLC_INTN c1 = k == 1; __CLC_INTN c2 = k == 2; __CLC_INTN c3 = k == 3; diff --git a/libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl b/libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl index fa98e05550886..6f18c153df21b 100644 --- a/libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl +++ b/libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl @@ -19,7 +19,6 @@ _CLC_OVERLOAD _CLC_DEF uint __clc_get_sub_group_id() { size_t id_z = __clc_get_local_id(2); size_t size_x = __clc_get_local_size(0); size_t size_y = __clc_get_local_size(1); - size_t size_z = __clc_get_local_size(2); uint sg_size = __clc_get_max_sub_group_size(); return (id_z * size_y * size_x + id_y * size_x + id_x) / sg_size; } diff --git a/libclc/clc/lib/ptx-nvidiacl/mem_fence/clc_mem_fence.cl b/libclc/clc/lib/ptx-nvidiacl/mem_fence/clc_mem_fence.cl index 5f96ef5477642..afc72e831cd99 100644 --- a/libclc/clc/lib/ptx-nvidiacl/mem_fence/clc_mem_fence.cl +++ b/libclc/clc/lib/ptx-nvidiacl/mem_fence/clc_mem_fence.cl @@ -11,6 +11,8 @@ _CLC_OVERLOAD _CLC_DEF void __clc_mem_fence(int memory_scope, int memory_order, __CLC_MemorySemantics memory_semantics) { + (void)memory_order; + (void)memory_semantics; if (memory_scope & (__MEMORY_SCOPE_DEVICE | __MEMORY_SCOPE_WRKGRP)) __nvvm_membar_cta(); } diff --git a/libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl b/libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl index 349c0f4845132..3afc88ca50b15 100644 --- a/libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl +++ b/libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl @@ -11,5 +11,8 @@ _CLC_OVERLOAD _CLC_DEF void __clc_work_group_barrier(int memory_scope, int memory_order, __CLC_MemorySemantics memory_semantics) { + (void)memory_scope; + (void)memory_order; + (void)memory_semantics; __syncthreads(); } diff --git a/libclc/opencl/lib/generic/async/wait_group_events.cl b/libclc/opencl/lib/generic/async/wait_group_events.cl index 5bce5cdf7aacb..0881a74bd9047 100644 --- a/libclc/opencl/lib/generic/async/wait_group_events.cl +++ b/libclc/opencl/lib/generic/async/wait_group_events.cl @@ -10,5 +10,7 @@ _CLC_DEF _CLC_OVERLOAD void wait_group_events(int num_events, event_t *event_list) { + (void)num_events; + (void)event_list; barrier(CLK_LOCAL_MEM_FENCE | CLK_GLOBAL_MEM_FENCE); } >From bfe30ace8db88f2e1999bb1ca8a855868db5dfd8 Mon Sep 17 00:00:00 2001 From: Wenju He <[email protected]> Date: Wed, 4 Mar 2026 13:56:08 +0800 Subject: [PATCH 2/2] Apply suggestion from @Copilot Co-authored-by: Copilot <[email protected]> --- libclc/clc/lib/generic/math/clc_fmod.cl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libclc/clc/lib/generic/math/clc_fmod.cl b/libclc/clc/lib/generic/math/clc_fmod.cl index d81ad6b96c13b..2aeb0ae5b8b06 100644 --- a/libclc/clc/lib/generic/math/clc_fmod.cl +++ b/libclc/clc/lib/generic/math/clc_fmod.cl @@ -130,8 +130,7 @@ _CLC_DEF _CLC_OVERLOAD double __clc_fmod(double x, double y) { w *= scale; } - // One more time - // Variable todd says whether the integer t is odd or not + // One more time: final iteration of the subtraction using floor instead of trunc t = __clc_floor(dx / w); p = w * t; _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
