Skip to content

Commit 4372915

Browse files
authored
[LIBCLC] Add FMulKHR for fp16 (#7153)
Add missing `fp16` case of `FMulKHR`.
1 parent b59d93c commit 4372915

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed

libclc/ptx-nvidiacl/libspirv/group/collectives.cl

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -426,18 +426,16 @@ __CLC_GROUP_COLLECTIVE(BitwiseOrKHR, __CLC_OR, long, 0l)
426426
__CLC_GROUP_COLLECTIVE(BitwiseXorKHR, __CLC_XOR, long, 0l)
427427

428428
// half requires additional mangled entry points
429-
_CLC_DEF _CLC_CONVERGENT half _Z17__spirv_GroupFAddjjDF16_(uint scope, uint op,
430-
half x) {
431-
return __spirv_GroupFAdd(scope, op, x);
432-
}
433-
_CLC_DEF _CLC_CONVERGENT half _Z17__spirv_GroupFMinjjDF16_(uint scope, uint op,
434-
half x) {
435-
return __spirv_GroupFMin(scope, op, x);
436-
}
437-
_CLC_DEF _CLC_CONVERGENT half _Z17__spirv_GroupFMaxjjDF16_(uint scope, uint op,
438-
half x) {
439-
return __spirv_GroupFMax(scope, op, x);
440-
}
429+
#define __CLC_GROUP_COLLECTIVE__DF16(MANGLED_NAME, SPIRV_DISPATCH) \
430+
_CLC_DEF _CLC_CONVERGENT half MANGLED_NAME(uint scope, uint op, half x) { \
431+
return SPIRV_DISPATCH(scope, op, x); \
432+
}
433+
__CLC_GROUP_COLLECTIVE__DF16(_Z17__spirv_GroupFAddjjDF16_, __spirv_GroupFAdd)
434+
__CLC_GROUP_COLLECTIVE__DF16(_Z17__spirv_GroupFMinjjDF16_, __spirv_GroupFMin)
435+
__CLC_GROUP_COLLECTIVE__DF16(_Z17__spirv_GroupFMaxjjDF16_, __spirv_GroupFMax)
436+
__CLC_GROUP_COLLECTIVE__DF16(_Z20__spirv_GroupFMulKHRjjDF16_,
437+
__spirv_GroupFMulKHR)
438+
#undef __CLC_GROUP_COLLECTIVE__DF16
441439

442440
#undef __CLC_GROUP_COLLECTIVE_4
443441
#undef __CLC_GROUP_COLLECTIVE_5

0 commit comments

Comments
 (0)