[Bug rtl-optimization/67462] [6 Regression] FAIL: gcc.dg/ifcvt-3.c scan-rtl-dump ce1 "3 true changes made"

ktkachov at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Sep 8 08:46:00 GMT 2015


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67462

ktkachov at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-09-08
     Ever confirmed|0                           |1

--- Comment #1 from ktkachov at gcc dot gnu.org ---
This is just a failure to if-convert with -m32 due to costs.
The costing logic deems it to not be profitable, which may well be a valid
decision to make. In this case, if-converting would actually always be
profitable
as the code:
 s64 d = a - b;

  if (d == 0)
    return a + c;
  else
    return b + d + c;

can be simplified to just "a + c" but that's not something we can see in ifcvt
(shouldn't the tree-level optimizers catch this earlier?).

I propose to skip the testcase for -m32, what is the standard way of specifying
that in the testsuite?



More information about the Gcc-bugs mailing list