From 130f9c511706bd423b83e3a40958240b5c17a3db Mon Sep 17 00:00:00 2001 From: Satyanvesh Dittakavi Date: Tue, 9 May 2023 13:14:20 +0000 Subject: [PATCH] SWDEV-399203 - Use clang pragma only with clang Change-Id: I21d84ccde07e243b6bc06f1980c24b399e74d1c3 [ROCm/clr commit: a7041d15a7ba194d7b7bcafff5a658f1a82ccee7] --- .../hipamd/include/hip/amd_detail/amd_device_functions.h | 4 ++++ .../include/hip/amd_detail/amd_hip_cooperative_groups.h | 6 ++++++ projects/clr/hipamd/include/hip/amd_detail/amd_hip_fp16.h | 5 +++++ .../hipamd/include/hip/amd_detail/amd_hip_unsafe_atomics.h | 6 ++++++ .../clr/hipamd/include/hip/amd_detail/amd_warp_functions.h | 5 +++++ .../include/hip/amd_detail/hip_cooperative_groups_helper.h | 5 +++++ 6 files changed, 31 insertions(+) diff --git a/projects/clr/hipamd/include/hip/amd_detail/amd_device_functions.h b/projects/clr/hipamd/include/hip/amd_detail/amd_device_functions.h index 35f8c1c8e3..1c7cf81610 100644 --- a/projects/clr/hipamd/include/hip/amd_detail/amd_device_functions.h +++ b/projects/clr/hipamd/include/hip/amd_detail/amd_device_functions.h @@ -444,8 +444,10 @@ __device__ static inline unsigned long long int __double2ull_ru(double x) { __device__ static inline unsigned long long int __double2ull_rz(double x) { return (unsigned long long int)x; } +#if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wc++98-compat-pedantic" +#endif __device__ static inline long long int __double_as_longlong(double x) { static_assert(sizeof(long long) == sizeof(double), ""); @@ -454,7 +456,9 @@ __device__ static inline long long int __double_as_longlong(double x) { return tmp; } +#if defined(__clang__) #pragma clang diagnostic pop +#endif /* __device__ unsigned short __float2half_rn(float x); diff --git a/projects/clr/hipamd/include/hip/amd_detail/amd_hip_cooperative_groups.h b/projects/clr/hipamd/include/hip/amd_detail/amd_hip_cooperative_groups.h index 68f429f7b0..5baf21db53 100644 --- a/projects/clr/hipamd/include/hip/amd_detail/amd_hip_cooperative_groups.h +++ b/projects/clr/hipamd/include/hip/amd_detail/amd_hip_cooperative_groups.h @@ -32,12 +32,14 @@ THE SOFTWARE. #ifndef HIP_INCLUDE_HIP_AMD_DETAIL_HIP_COOPERATIVE_GROUPS_H #define HIP_INCLUDE_HIP_AMD_DETAIL_HIP_COOPERATIVE_GROUPS_H +#if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wc++98-compat" #pragma clang diagnostic ignored "-Wsign-conversion" #pragma clang diagnostic ignored "-Wunused-parameter" #pragma clang diagnostic ignored "-Wreserved-macro-identifier" #pragma clang diagnostic ignored "-Wpadded" +#endif #if __cplusplus #if !defined(__HIPCC_RTC__) @@ -779,6 +781,10 @@ __CG_QUALIFIER__ thread_block_tile tiled_partition(const Paren return impl::tiled_partition_internal(g); } } // namespace cooperative_groups + +#if defined(__clang__) #pragma clang diagnostic pop +#endif + #endif // __cplusplus #endif // HIP_INCLUDE_HIP_AMD_DETAIL_HIP_COOPERATIVE_GROUPS_H diff --git a/projects/clr/hipamd/include/hip/amd_detail/amd_hip_fp16.h b/projects/clr/hipamd/include/hip/amd_detail/amd_hip_fp16.h index 7b6ace6113..bf0e6fe502 100644 --- a/projects/clr/hipamd/include/hip/amd_detail/amd_hip_fp16.h +++ b/projects/clr/hipamd/include/hip/amd_detail/amd_hip_fp16.h @@ -24,6 +24,7 @@ THE SOFTWARE. #ifndef HIP_INCLUDE_HIP_AMD_DETAIL_HIP_FP16_H #define HIP_INCLUDE_HIP_AMD_DETAIL_HIP_FP16_H +#if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wreserved-identifier" #pragma clang diagnostic ignored "-Wreserved-macro-identifier" @@ -35,6 +36,7 @@ THE SOFTWARE. #pragma clang diagnostic ignored "-Wnested-anon-types" #pragma clang diagnostic ignored "-Wgnu-anonymous-struct" #pragma clang diagnostic ignored "-Wfloat-equal" +#endif #if defined(__HIPCC_RTC__) #define __HOST_DEVICE__ __device__ @@ -1791,5 +1793,8 @@ THE SOFTWARE. #endif #endif // !defined(__clang__) && defined(__GNUC__) +#if defined(__clang__) #pragma clang diagnostic pop +#endif + #endif // HIP_INCLUDE_HIP_AMD_DETAIL_HIP_FP16_H diff --git a/projects/clr/hipamd/include/hip/amd_detail/amd_hip_unsafe_atomics.h b/projects/clr/hipamd/include/hip/amd_detail/amd_hip_unsafe_atomics.h index d54000a451..836e60e9df 100644 --- a/projects/clr/hipamd/include/hip/amd_detail/amd_hip_unsafe_atomics.h +++ b/projects/clr/hipamd/include/hip/amd_detail/amd_hip_unsafe_atomics.h @@ -23,8 +23,11 @@ THE SOFTWARE. #pragma once #ifdef __cplusplus + +#if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wold-style-cast" +#endif /** * @brief Unsafe floating point rmw atomic add. @@ -564,5 +567,8 @@ __device__ inline double safeAtomicMin(double* addr, double val) { #endif } +#if defined(__clang__) #pragma clang diagnostic pop #endif + +#endif diff --git a/projects/clr/hipamd/include/hip/amd_detail/amd_warp_functions.h b/projects/clr/hipamd/include/hip/amd_detail/amd_warp_functions.h index fb6065b187..9b268b5121 100644 --- a/projects/clr/hipamd/include/hip/amd_detail/amd_warp_functions.h +++ b/projects/clr/hipamd/include/hip/amd_detail/amd_warp_functions.h @@ -23,6 +23,7 @@ THE SOFTWARE. #ifndef HIP_INCLUDE_HIP_AMD_DETAIL_WARP_FUNCTIONS_H #define HIP_INCLUDE_HIP_AMD_DETAIL_WARP_FUNCTIONS_H +#if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wreserved-identifier" #pragma clang diagnostic ignored "-Wreserved-macro-identifier" @@ -30,6 +31,7 @@ THE SOFTWARE. #pragma clang diagnostic ignored "-Wold-style-cast" #pragma clang diagnostic ignored "-Wc++98-compat" #pragma clang diagnostic ignored "-Wc++98-compat-pedantic" +#endif __device__ static inline unsigned __hip_ds_bpermute(int index, unsigned src) { union { int i; unsigned u; float f; } tmp; tmp.u = src; @@ -499,5 +501,8 @@ unsigned long long __shfl_xor(unsigned long long var, int lane_mask, int width = return tmp1; } +#if defined(__clang__) #pragma clang diagnostic pop #endif + +#endif diff --git a/projects/clr/hipamd/include/hip/amd_detail/hip_cooperative_groups_helper.h b/projects/clr/hipamd/include/hip/amd_detail/hip_cooperative_groups_helper.h index 8657fbb1b0..041f4fd1b8 100644 --- a/projects/clr/hipamd/include/hip/amd_detail/hip_cooperative_groups_helper.h +++ b/projects/clr/hipamd/include/hip/amd_detail/hip_cooperative_groups_helper.h @@ -39,11 +39,13 @@ THE SOFTWARE. #define __align__(x) __attribute__((aligned(x))) #endif +#if defined(__clang__) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wreserved-macro-identifier" #pragma clang diagnostic ignored "-Wc++98-compat" #pragma clang diagnostic ignored "-Wc++98-compat-pedantic" #pragma clang diagnostic ignored "-Wshorten-64-to-32" +#endif #if !defined(__CG_QUALIFIER__) #define __CG_QUALIFIER__ __device__ __forceinline__ @@ -238,6 +240,9 @@ __CG_STATIC_QUALIFIER__ unsigned int masked_bit_count(lane_mask x, unsigned int /** * @} */ +#if defined(__clang__) #pragma clang diagnostic pop +#endif + #endif // __cplusplus #endif // HIP_INCLUDE_HIP_AMD_DETAIL_HIP_COOPERATIVE_GROUPS_HELPER_H