https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110755
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |aldyh at gcc dot gnu.org, | |jakub at gcc dot gnu.org, | |rguenth at gcc dot gnu.org Priority|P3 |P2 Target| |powerpc64le --- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> --- if (in.0_1 > 0.0) goto <bb 3>; [59.00%] else goto <bb 4>; [41.00%] <bb 3> [local count: 633507681]: # RANGE [frange] float [8.388608e+6 (0x0.8p+24), +Inf] r_8 = in.0_1 + 8.388608e+6; # RANGE [frange] float [0.0 (0x0.0p+0), +Inf] r_9 = r_8 - 8.388608e+6; # RANGE [frange] float [0.0 (0x0.0p+0), +Inf] r_10 = ABS_EXPR <r_9>; looks like we mishandle signed zeros somehow.