[Bug tree-optimization/85529] [8/9 Regression] wrong code at -O2 and -O3 on x86_64-linux-gnu
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Apr 26 10:52:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85529
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
Reassoc does
<bb 4> [local count: 530374774]:
- # b.9_28 = PHI <b.9_48(13), prephitmp_59(9)>
+ # b.9_28 = PHI <b.9_48(12), prephitmp_59(8)>
# RANGE [-83, 1] NONZERO 173
- # k_32 = PHI <k_47(13), k_12(9)>
- # c_lsm.11_10 = PHI <pretmp_22(13), c_lsm.11_6(9)>
- # c_lsm.12_24 = PHI <0(13), c_lsm.12_25(9)>
+ # k_32 = PHI <k_47(12), k_12(8)>
+ # c_lsm.11_10 = PHI <pretmp_22(12), c_lsm.11_6(8)>
+ # c_lsm.12_24 = PHI <0(12), c_lsm.12_25(8)>
_4 ={v} s.a;
# RANGE [-2147483647, 2147483647]
_42 = b.9_28 + 1;
- if (k_32 >= 0)
- goto <bb 5>; [26.46%]
- else
- goto <bb 9>; [73.54%]
-
- <bb 5> [local count: 140323371]:
- # RANGE [0, 1] NONZERO 1
_5 = (int) k_32;
- # RANGE [0, 4] NONZERO 4
_20 = _5 << 2;
- # RANGE [0, 4] NONZERO 4
iftmp.0_44 = (char) _20;
- if (k_32 < iftmp.0_44)
- goto <bb 6>; [84.48%]
+ _14 = (unsigned char) k_32;
+ _8 = (unsigned char) iftmp.0_44;
+ if (_8 > _14)
likely the reset_flow_sensitive_info_in_bb call is too late for the
simplification bits it does.
More information about the Gcc-bugs
mailing list