]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/ipa-reference.c
cgraph.c (cgraph_edge_cannot_lead_to_return): Also check if caller is noreturn.
authorJan Hubicka <jh@suse.cz>
Mon, 7 Jun 2010 15:33:34 +0000 (17:33 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Mon, 7 Jun 2010 15:33:34 +0000 (15:33 +0000)
commitf10ea6402795bce5c74a2a086cbbe27b267f8880
tree27f7a4b02c0fe509806c2b0ca767116cf3ebf7fd
parentdba16b83d4b296964daeb709abdb15bfecfc6ac5
cgraph.c (cgraph_edge_cannot_lead_to_return): Also check if caller is noreturn.

* cgraph.c (cgraph_edge_cannot_lead_to_return): Also check
if caller is noreturn.
* ipa-reference.c (analyze_function): Use ipa_ref_cannot_lead_to_return
* ipa-ref.h (ipa_ref_cannot_lead_to_return): New function.
* ipa-ref.c (ipa_ref_cannot_lead_to_return): New function.
* ipa-pure-const.c (check_decl): Add IPA parameter.
(state_from_flags): New function.
(better_state, worse_state): New functions.
(check_call): When in IPA mode, do not care about callees.
(check_load, check_store): Update.
(check_ipa_load, check_ipa_store): New.
(check_stmt): When in IPA mode, use IPA checkers.
(analyze_function): Use state_from_flags.
(propagate): Check indirect edges and references.

From-SVN: r160380
gcc/ChangeLog
gcc/cgraph.c
gcc/ipa-pure-const.c
gcc/ipa-ref.c
gcc/ipa-ref.h
gcc/ipa-reference.c
gcc/ipa.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/ipa/pure-const-1.c [new file with mode: 0644]