[Bug ipa/108007] [10/11/12/13 Regression] wrong code at -Os and above with "-fno-dce -fno-tree-dce" on x86_64-linux-gnu

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Dec 21 11:41:00 GMT 2022


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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2
   Last reconfirmed|2022-12-07 00:00:00         |2022-12-21

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Martin, can you please have a look?

Summary for node main/10:
  Returns value
  No parameter information.

  Summary for edge main/10->k/9:
    return value ignored

Summary for node k/9:
  No parameter information.

  Summary for edge k/9->i/8:
    return value used only to compute caller return value

Summary for node i/8:
  Returns value
  No parameter information.


the k->i edge info looks misleading (the caller returns nothing), but
the uses are all "dead".  Eventually those dead stmts are now supposed
to be cleaned up by the inliner because of the possibility of -fno-[tree-]dce,
just in this case that isn't working?

Not sure if really P2, but I guess return value removal isn't yet handled
in that code path?


More information about the Gcc-bugs mailing list