libclc: Fix amdgpu sub_group_broadcast for double (#188594) GitOrigin-RevId: e46a3299ac455f6c445c48db0674e464b93e69c5
diff --git a/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl b/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl index 969833b..51c6dc8 100644 --- a/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl +++ b/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl
@@ -73,9 +73,9 @@ _CLC_DEF _CLC_OVERLOAD _CLC_CONST double __clc_sub_group_broadcast(double x, uint sub_group_local_id) { - uint bitcast = __builtin_astype(x, double); + ulong bitcast = __clc_as_ulong(x); ulong broadcast = __clc_sub_group_broadcast(bitcast, sub_group_local_id); - return __builtin_astype(broadcast, double); + return __clc_as_double(broadcast); } #define __CLC_BODY "clc/subgroup/clc_subgroup_broadcast_scalarize.inc"