https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107569
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Known to work| |12.2.0 Ever confirmed|0 |1 Last reconfirmed| |2023-02-27 --- Comment #44 from Richard Biener <rguenth at gcc dot gnu.org> --- I can confirm that foo() is still not optimized but we now optimize bar() in VRP1. VRP1 sees bool foo (double x) { bool _3; double _4; bool _5; <bb 2> [local count: 1073741824]: _4 = ABS_EXPR <x_2(D)>; _3 = _4 u> 1.79769313486231570814527423731704356798070567525844996599e+308; _5 = ~_3; if (_4 u> 1.79769313486231570814527423731704356798070567525844996599e+308) goto <bb 3>; [0.00%] else goto <bb 4>; [100.00%] <bb 3> [count: 0]: __builtin_unreachable (); <bb 4> [local count: 1073741824]: return _5;