From 287f607d2b022e0d98ea19a9df679871ab3da73f Mon Sep 17 00:00:00 2001 From: Satyanvesh Dittakavi Date: Thu, 18 May 2023 10:59:36 +0000 Subject: [PATCH] SWDEV-395996 - Add double precision constants to math constants header Fixes a typo and adds missing constants matching cuda Change-Id: Iebf47d107af361cbd356c2a3b9cd6ef121d01363 --- .../hip/amd_detail/amd_hip_math_constants.h | 69 +++++++++++++++++- .../nvidia_detail/nvidia_hip_math_constants.h | 70 ++++++++++++++++++- 2 files changed, 134 insertions(+), 5 deletions(-) diff --git a/hipamd/include/hip/amd_detail/amd_hip_math_constants.h b/hipamd/include/hip/amd_detail/amd_hip_math_constants.h index 53883ae9e9..148fdcc4fb 100644 --- a/hipamd/include/hip/amd_detail/amd_hip_math_constants.h +++ b/hipamd/include/hip/amd_detail/amd_hip_math_constants.h @@ -1,5 +1,5 @@ /* -Copyright (c) 2015 - 2022 Advanced Micro Devices, Inc. All rights reserved. +Copyright (c) 2015 - 2023 Advanced Micro Devices, Inc. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -21,6 +21,8 @@ THE SOFTWARE. */ #ifndef AMD_HIP_MATH_CONSTANTS_H #define AMD_HIP_MATH_CONSTANTS_H + +// single precision constants #define HIP_INF_F __int_as_float(0x7f800000U) #define HIP_NAN_F __int_as_float(0x7fffffffU) #define HIP_MIN_DENORM_F __int_as_float(0x00000001U) @@ -54,6 +56,69 @@ THE SOFTWARE. #define HIP_TWO_TO_31_F 2147483648.0F #define HIP_TWO_TO_32_F 4294967296.0F #define HIP_REMQUO_BITS_F 3U -#define HIP_REMQUO_MASK_F (~((~0U)< + +// single precision constants #define HIP_INF_F CUDART_INF_F #define HIP_NAN_F CUDART_NAN_F #define HIP_MIN_DENORM_F CUDART_MIN_DENORM_F @@ -57,6 +60,67 @@ THE SOFTWARE. #define HIP_REMQUO_BITS_F CUDART_REMQUO_BITS_F #define HIP_REMQUO_MASK_F CUDART_REMQUO_MASK_F #define HIP_TRIG_PLOSS_F CUDART_TRIG_PLOSS_F + +// double precision constants +#define HIP_INF CUDART_INF +#define HIP_NAN CUDART_NAN +#define HIP_NEG_ZERO CUDART_NEG_ZERO +#define HIP_MIN_DENORM CUDART_MIN_DENORM +#define HIP_ZERO CUDART_ZERO +#define HIP_ONE CUDART_ONE +#define HIP_SQRT_TWO CUDART_SQRT_TWO +#define HIP_SQRT_HALF CUDART_SQRT_HALF +#define HIP_SQRT_HALF_HI CUDART_SQRT_HALF_HI +#define HIP_SQRT_HALF_LO CUDART_SQRT_HALF_LO +#define HIP_THIRD CUDART_THIRD +#define HIP_TWOTHIRD CUDART_TWOTHIRD +#define HIP_PIO4 CUDART_PIO4 +#define HIP_PIO4_HI CUDART_PIO4_HI +#define HIP_PIO4_LO CUDART_PIO4_LO +#define HIP_PIO2 CUDART_PIO2 +#define HIP_PIO2_HI CUDART_PIO2_HI +#define HIP_PIO2_LO CUDART_PIO2_LO +#define HIP_3PIO4 CUDART_3PIO4 +#define HIP_2_OVER_PI CUDART_2_OVER_PI +#define HIP_PI CUDART_PI +#define HIP_PI_HI CUDART_PI_HI +#define HIP_PI_LO CUDART_PI_LO +#define HIP_SQRT_2PI CUDART_SQRT_2PI +#define HIP_SQRT_2PI_HI CUDART_SQRT_2PI_HI +#define HIP_SQRT_2PI_LO CUDART_SQRT_2PI_LO +#define HIP_SQRT_PIO2 CUDART_SQRT_PIO2 +#define HIP_SQRT_PIO2_HI CUDART_SQRT_PIO2_HI +#define HIP_SQRT_PIO2_LO CUDART_SQRT_PIO2_LO +#define HIP_SQRT_2OPI CUDART_SQRT_2OPI +#define HIP_L2E CUDART_L2E +#define HIP_L2E_HI CUDART_L2E_HI +#define HIP_L2E_LO CUDART_L2E_LO +#define HIP_L2T CUDART_L2T +#define HIP_LG2 CUDART_LG2 +#define HIP_LG2_HI CUDART_LG2_HI +#define HIP_LG2_LO CUDART_LG2_LO +#define HIP_LGE CUDART_LGE +#define HIP_LGE_HI CUDART_LGE_HI +#define HIP_LGE_LO CUDART_LGE_LO +#define HIP_LN2 CUDART_LN2 +#define HIP_LN2_HI CUDART_LN2_HI +#define HIP_LN2_LO CUDART_LN2_LO +#define HIP_LNT CUDART_LNT +#define HIP_LNT_HI CUDART_LNT_HI +#define HIP_LNT_LO CUDART_LNT_LO +#define HIP_LNPI CUDART_LNPI +#define HIP_LN2_X_1024 CUDART_LN2_X_1024 +#define HIP_LN2_X_1025 CUDART_LN2_X_1025 +#define HIP_LN2_X_1075 CUDART_LN2_X_1075 +#define HIP_LG2_X_1024 CUDART_LG2_X_1024 +#define HIP_LG2_X_1075 CUDART_LG2_X_1075 +#define HIP_TWO_TO_23 CUDART_TWO_TO_23 +#define HIP_TWO_TO_52 CUDART_TWO_TO_52 +#define HIP_TWO_TO_53 CUDART_TWO_TO_53 +#define HIP_TWO_TO_54 CUDART_TWO_TO_54 +#define HIP_TWO_TO_M54 CUDART_TWO_TO_M54 +#define HIP_TWO_TO_M1022 CUDART_TWO_TO_M1022 +#define HIP_TRIG_PLOSS CUDART_TRIG_PLOSS +#define HIP_DBL2INT_CVT CUDART_DBL2INT_CVT + #endif - -