================ @@ -46,9 +46,7 @@ _CLC_DEF _CLC_OVERLOAD __CLC_GENTYPE __clc_hypot(__CLC_GENTYPE x, __CLC_GENTYPE retval = __clc_sqrt(__clc_mad(fx, fx, fy * fy)) * fx_exp; retval = (ux > PINFBITPATT_SP32 || uy == 0) ? __CLC_AS_GENTYPE(ux) : retval; - retval = (ux == PINFBITPATT_SP32 || uy == PINFBITPATT_SP32) - ? __CLC_AS_GENTYPE((__CLC_UINTN)PINFBITPATT_SP32) - : retval; + retval = __clc_isinf(x) || __clc_isinf(y) ? __CLC_GENTYPE_INF : retval; ---------------- arsenm wrote:
``` float hypot(float x, float y) { float a = __builtin_fabsf(x); float b = __builtin_fabsf(y); float t = __builtin_fmaxf(a, b); int e = __clc_frexp_exp(t) ; a = __builtin_ldexpf(a, -e); b = __builtin_ldexpf(b, -e); float ret = __builtin_ldexpf(__clc_sqrt(__clc_mad(a, a, b*b)), e); ret = __builtin_isinf(t) ? PINF_F32 : ret; return ret; } ``` https://github.com/llvm/llvm-project/pull/129738 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits