@@ -426,18 +426,16 @@ __CLC_GROUP_COLLECTIVE(BitwiseOrKHR, __CLC_OR, long, 0l)
426
426
__CLC_GROUP_COLLECTIVE (BitwiseXorKHR , __CLC_XOR , long , 0l )
427
427
428
428
// 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
441
439
442
440
#undef __CLC_GROUP_COLLECTIVE_4
443
441
#undef __CLC_GROUP_COLLECTIVE_5
0 commit comments