Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion libclc/clc/lib/generic/math/clc_nan.inc
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
//===----------------------------------------------------------------------===//

#if __CLC_FPSIZE == 64
#define NAN_MASK 0x7ff0000000000000ul
#define NAN_MASK 0x7ff8000000000000ul
#elif __CLC_FPSIZE == 32
#define NAN_MASK 0x7fc00000
#elif __CLC_FPSIZE == 16
Expand Down
3 changes: 1 addition & 2 deletions libclc/libspirv/lib/generic/math/nan.cl
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@
//
//===----------------------------------------------------------------------===//

#include <clc/clc_as_type.h>
#include <clc/utils.h>
#include <clc/math/clc_nan.h>
#include <libspirv/spirv.h>

#define __CLC_BODY <nan.inc>
Expand Down
27 changes: 5 additions & 22 deletions libclc/libspirv/lib/generic/math/nan.inc
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,10 @@
//
//===----------------------------------------------------------------------===//

#if __CLC_FPSIZE == 64
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_ULONGN code) {
return __CLC_AS_GENTYPE(code | 0x7ff8000000000000ul);
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_U_GENTYPE code) {
return __clc_nan(code);
}
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_LONGN code) {
return __spirv_ocl_nan(__CLC_AS_ULONGN(code));
}
#elif __CLC_FPSIZE == 32
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_UINTN code) {
return __CLC_AS_GENTYPE(code | 0x7fc00000);
}
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_INTN code) {
return __spirv_ocl_nan(__CLC_AS_UINTN(code));
}
#elif __CLC_FPSIZE == 16
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_USHORTN code) {
const ushort mask = 0x7e00;
const __CLC_USHORTN res = code | mask;
return __CLC_AS_GENTYPE(res);
}
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_SHORTN code) {
return __spirv_ocl_nan(__CLC_AS_USHORTN(code));

_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __spirv_ocl_nan(__CLC_S_GENTYPE code) {
return __clc_nan(code);
}
#endif
4 changes: 2 additions & 2 deletions libclc/libspirv/lib/ptx-nvidiacl/integer/mul24.cl
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@ _CLC_OVERLOAD _CLC_DEF uint __spirv_ocl_u_mul24(uint x, uint y) {
#define __CLC_GENTYPE int
#include <clc/shared/binary_def_scalarize.inc>
#undef __CLC_GENTYPE
#undef FUNCTION
#undef __CLC_FUNCTION

#define __CLC_FUNCTION __spirv_ocl_u_mul24
#define __CLC_GENTYPE uint
#include <clc/shared/binary_def_scalarize.inc>
#undef __CLC_GENTYPE
#undef FUNCTION
#undef __CLC_FUNCTION

#undef __CLC_SCALAR
4 changes: 2 additions & 2 deletions libclc/libspirv/lib/ptx-nvidiacl/integer/mul_hi.cl
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ __CLC_MUL_HI_IMPL(uint, __spirv_ocl_u_mul_hi, ushort, 16)
#define __CLC_GENTYPE long
#include <clc/shared/binary_def_scalarize.inc>
#undef __CLC_GENTYPE
#undef FUNCTION
#undef __CLC_FUNCTION

#define __CLC_FUNCTION __spirv_ocl_u_mul_hi
#define __CLC_GENTYPE uchar
Expand All @@ -67,6 +67,6 @@ __CLC_MUL_HI_IMPL(uint, __spirv_ocl_u_mul_hi, ushort, 16)
#define __CLC_GENTYPE ulong
#include <clc/shared/binary_def_scalarize.inc>
#undef __CLC_GENTYPE
#undef FUNCTION
#undef __CLC_FUNCTION

#undef __CLC_SCALAR
2 changes: 1 addition & 1 deletion libclc/libspirv/lib/ptx-nvidiacl/math/fma.cl
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ _CLC_DEF _CLC_OVERLOAD half2 __spirv_ocl_fma(half2 x, half2 y, half2 z) {

#endif

#undef FUNCTION
#undef __CLC_FUNCTION
#define __CLC_FUNCTION __clc_fma

// Requires at least sm_80
Expand Down
4 changes: 2 additions & 2 deletions libclc/libspirv/lib/ptx-nvidiacl/math/fmax.cl
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ _CLC_DEF _CLC_OVERLOAD half2 __spirv_ocl_fmax(half2 x, half2 y) {

#endif

#undef FUNCTION
#undef __CLC_FUNCTION
#define __CLC_FUNCTION __clc_fmax
#define __CLC_SCALAR

Expand All @@ -91,4 +91,4 @@ _CLC_DEF _CLC_OVERLOAD uint __clc_fmax(uint x, uint y) {
#undef __CLC_GENTYPE

#undef __CLC_SCALAR
#undef FUNCTION
#undef __CLC_FUNCTION
4 changes: 2 additions & 2 deletions libclc/libspirv/lib/ptx-nvidiacl/math/fmin.cl
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ _CLC_DEF _CLC_OVERLOAD half2 __spirv_ocl_fmin(half2 x, half2 y) {

#endif

#undef FUNCTION
#undef __CLC_FUNCTION
#define __CLC_FUNCTION __clc_fmin
#define __CLC_SCALAR

Expand All @@ -91,4 +91,4 @@ _CLC_DEF _CLC_OVERLOAD uint __clc_fmin(uint x, uint y) {
#undef __CLC_GENTYPE

#undef __CLC_SCALAR
#undef FUNCTION
#undef __CLC_FUNCTION
2 changes: 1 addition & 1 deletion libclc/libspirv/lib/ptx-nvidiacl/math/native_exp2.cl
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ _CLC_DEF _CLC_OVERLOAD half2 __clc_native_exp2(half2 x) {
__spirv_ocl_native_exp2((float)x.y));
}

#undef FUNCTION
#undef __CLC_FUNCTION
#define __CLC_FUNCTION __clc_native_exp2

#undef __CLC_MIN_VECSIZE
Expand Down
Loading