[Bug ipa/97456] [10/11 Regression] An incorrect optimization causes a function to always return the same value when using -flto

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Oct 16 11:00:48 GMT 2020


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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
     Ever confirmed|0                           |1
            Summary|An incorrect optimization   |[10/11 Regression] An
                   |causes a function to always |incorrect optimization
                   |return the same value when  |causes a function to always
                   |using -flto                 |return the same value when
                   |                            |using -flto
   Last reconfirmed|                            |2020-10-16
   Target Milestone|---                         |10.3
          Component|c++                         |ipa
             Status|UNCONFIRMED                 |NEW
                 CC|                            |jamborm at gcc dot gnu.org,
                   |                            |marxin at gcc dot gnu.org
           Priority|P3                          |P2

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed with -fwhole-program -O3  IPA SRA messes things up here cloning wrong
and producing the strange

wrong.isra (floatD.41 ISRA.85D.75004)
{
  complex floatD.45 c$_M_valueD.75007;
  floatD.41 & posD.75005;
  floatD.41 & posD.75006;
  floatD.41 _1;
  complex floatD.45 _2;
  complex floatD.45 _3;
  floatD.41 _4;
  floatD.41 _5;
  floatD.41 _6;
  doubleD.42 _7;
  floatD.41 _8;

  <bb 6> [local count: 1073741824]:

  <bb 2> [local count: 1073741824]:
  _1 = ISRA.85_10(D);

eventually mixing up param/replacement here?


More information about the Gcc-bugs mailing list