diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2016-11-21 15:44:21 +0100 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2016-11-21 15:44:21 +0100 |
commit | 1c7926f64cb0c7603a42fe2e924825cca4c2fc06 (patch) | |
tree | b6c676bac2c352579ca3bab6df0af12fb33e8286 /gcc/shrink-wrap.c | |
parent | 48330c9355e32a41f18556fc0ebccdfe2cc51044 (diff) | |
download | gcc-1c7926f64cb0c7603a42fe2e924825cca4c2fc06.zip gcc-1c7926f64cb0c7603a42fe2e924825cca4c2fc06.tar.gz gcc-1c7926f64cb0c7603a42fe2e924825cca4c2fc06.tar.bz2 |
shrink-wrap: Fix problem with DF checking (PR78400)
With my previous patch the compiler ICEs if you use --enable-checking=df.
This patch fixes it, by calling df_update_entry_exit_and_calls instead of
df_update_entry_block_defs and df_update_exit_block_uses.
PR rtl-optimization/78400
* shrink-wrap.c (try_shrink_wrapping_separate): Call
df_update_entry_exit_and_calls instead of df_update_entry_block_defs
and df_update_exit_block_uses.
From-SVN: r242663
Diffstat (limited to 'gcc/shrink-wrap.c')
-rw-r--r-- | gcc/shrink-wrap.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/shrink-wrap.c b/gcc/shrink-wrap.c index 6996d25..8803200 100644 --- a/gcc/shrink-wrap.c +++ b/gcc/shrink-wrap.c @@ -1687,8 +1687,7 @@ try_shrink_wrapping_separate (basic_block first_bb) the register for that component is in the IN or GEN or KILL set for that block. */ df_scan->local_flags |= DF_SCAN_EMPTY_ENTRY_EXIT; - df_update_entry_block_defs (); - df_update_exit_block_uses (); + df_update_entry_exit_and_calls (); df_live_add_problem (); df_live_set_all_dirty (); df_analyze (); @@ -1756,8 +1755,7 @@ try_shrink_wrapping_separate (basic_block first_bb) /* All done. */ df_scan->local_flags &= ~DF_SCAN_EMPTY_ENTRY_EXIT; - df_update_entry_block_defs (); - df_update_exit_block_uses (); + df_update_entry_exit_and_calls (); df_live_set_all_dirty (); df_analyze (); } |