mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-01-25 19:54:44 +08:00
Fix PR rtl-optimization/108274
Unlike other IPA passes, the ICF pass can be run at -O0 and some testcases rely on this in the testsuite. Now it effectively creates a tail call so the DF information needs be updated in this case after epilogue creation. gcc/ PR rtl-optimization/108274 * function.cc (thread_prologue_and_epilogue_insns): Also update the DF information for calls in a few more cases.
This commit is contained in:
parent
1a460d19ba
commit
4fa6845b4b
@ -6266,7 +6266,10 @@ thread_prologue_and_epilogue_insns (void)
|
|||||||
|
|
||||||
/* Threading the prologue and epilogue changes the artificial refs in the
|
/* Threading the prologue and epilogue changes the artificial refs in the
|
||||||
entry and exit blocks, and may invalidate DF info for tail calls. */
|
entry and exit blocks, and may invalidate DF info for tail calls. */
|
||||||
if (optimize)
|
if (optimize
|
||||||
|
|| flag_optimize_sibling_calls
|
||||||
|
|| flag_ipa_icf_functions
|
||||||
|
|| in_lto_p)
|
||||||
df_update_entry_exit_and_calls ();
|
df_update_entry_exit_and_calls ();
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user