[Bug c++/70018] [4.9/5/6/7 Regression] Possible issue around IPO and C++ comdats discovered as pure/const
hubicka at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Apr 21 09:05:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70018
--- Comment #16 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Author: hubicka
Date: Thu Apr 21 09:05:07 2016
New Revision: 235318
URL: https://gcc.gnu.org/viewcvs?rev=235318&root=gcc&view=rev
Log:
PR ipa/70018
* cgraph.c (cgraph_set_nothrow_flag_1): Rename to ...
(set_nothrow_flag_1): ... this; handle interposition correctly;
recurse on aliases and thunks.
(cgraph_node::set_nothrow_flag): New.
* ipa-pure-const.c (ignore_edge_for_nothrow): Ignore calls to
functions compiled with non-call exceptions that binds to current
def.
(propagate_nothrow): Be safe WRT interposition.
* cgraph.h (set_nothrow_flag): Update prototype.
* g++.dg/ipa/nothrow-1.C: New testcase.
Added:
trunk/gcc/testsuite/g++.dg/ipa/nothrow-1.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraph.c
trunk/gcc/cgraph.h
trunk/gcc/ipa-pure-const.c
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list