[Bug lto/64684] [5 Regression] wrong code by LTO on x86_64-linux-gnu
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jan 20 10:30:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64684
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2015-01-20
Ever confirmed|0 |1
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Setting value number of .MEM_7 to .MEM_7 (changed)
Value numbering .MEM_8 stmt = fn2 ();
Setting value number of .MEM_8 to .MEM_8 (changed)
Value numbering _4 stmt = _4 = a;
Setting value number of _4 to -1 (changed)
Value numbering _5 stmt = _5 = _4 & 1;
Match-and-simplified _4 & 1 to 1
RHS _4 & 1 simplified to 1 has constants 1
Setting value number of _5 to 1 (changed)
so fn2 () is said to not clobber 'a'. Must be IPA references fault:
all module statics: a
Function name:fn2/3:
static not read: all module statics
static not written: all module statics
Function name:fn1/0:
static not read: all module statics
static not written: all module statics
that's wrong for both fn1 and fn2. WPA does
Promotable global:a (uid=3959)
Function name:fn2/3:
locals read:
locals written:
Function name:fn1/0:
locals read:
locals written:
And compile-time doesn't have .static-var dumps at all?! Ah, WPA stage
is supposed to generate summaries? But doesn't input nodes?
More information about the Gcc-bugs
mailing list