diff mbox series

Remove dead code in df-scan.c (PR tree-optimization/90978).

Message ID 8384a5dd-b8dd-4b72-0e4e-1a8058273816@suse.cz
State New
Headers show
Series Remove dead code in df-scan.c (PR tree-optimization/90978). | expand

Commit Message

Martin Liška June 25, 2019, 9:21 a.m. UTC
Hi.

The patch is about removal of an unreachable code. That has been proved
by an accidental gcc_unreachable places 9 year ago.

Patch can bootstrap on x86_64-linux-gnu and survives regression tests.

Ready to be installed?
Thanks,
Martin

gcc/ChangeLog:

2019-06-25  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/90978
	* df-scan.c (df_update_entry_block_defs): Remove dead else
	branch.
	(df_update_exit_block_uses): Likewise.
---
 gcc/df-scan.c | 44 ++++++++++++--------------------------------
 1 file changed, 12 insertions(+), 32 deletions(-)

Comments

Richard Sandiford June 25, 2019, 11:45 a.m. UTC | #1
Martin Liška <mliska@suse.cz> writes:
> Hi.
>
> The patch is about removal of an unreachable code. That has been proved
> by an accidental gcc_unreachable places 9 year ago.

Heh.

> Patch can bootstrap on x86_64-linux-gnu and survives regression tests.
>
> Ready to be installed?

Yes, thanks.

Richard

> Thanks,
> Martin
>
> gcc/ChangeLog:
>
> 2019-06-25  Martin Liska  <mliska@suse.cz>
>
> 	PR tree-optimization/90978
> 	* df-scan.c (df_update_entry_block_defs): Remove dead else
> 	branch.
> 	(df_update_exit_block_uses): Likewise.
diff mbox series

Patch

diff --git a/gcc/df-scan.c b/gcc/df-scan.c
index 08d7af33371..2eea149e458 100644
--- a/gcc/df-scan.c
+++ b/gcc/df-scan.c
@@ -3601,23 +3601,13 @@  df_update_entry_block_defs (void)
 
   auto_bitmap refs (&df_bitmap_obstack);
   df_get_entry_block_def_set (refs);
-  if (df->entry_block_defs)
+  gcc_assert (df->entry_block_defs);
+  if (!bitmap_equal_p (df->entry_block_defs, refs))
     {
-      if (!bitmap_equal_p (df->entry_block_defs, refs))
-	{
-	  struct df_scan_bb_info *bb_info = df_scan_get_bb_info (ENTRY_BLOCK);
-	  df_ref_chain_delete_du_chain (bb_info->artificial_defs);
-	  df_ref_chain_delete (bb_info->artificial_defs);
-	  bb_info->artificial_defs = NULL;
-	  changed = true;
-	}
-    }
-  else
-    {
-      struct df_scan_problem_data *problem_data
-	= (struct df_scan_problem_data *) df_scan->problem_data;
-	gcc_unreachable ();
-      df->entry_block_defs = BITMAP_ALLOC (&problem_data->reg_bitmaps);
+      struct df_scan_bb_info *bb_info = df_scan_get_bb_info (ENTRY_BLOCK);
+      df_ref_chain_delete_du_chain (bb_info->artificial_defs);
+      df_ref_chain_delete (bb_info->artificial_defs);
+      bb_info->artificial_defs = NULL;
       changed = true;
     }
 
@@ -3775,23 +3765,13 @@  df_update_exit_block_uses (void)
 
   auto_bitmap refs (&df_bitmap_obstack);
   df_get_exit_block_use_set (refs);
-  if (df->exit_block_uses)
+  gcc_assert (df->exit_block_uses);
+  if (!bitmap_equal_p (df->exit_block_uses, refs))
     {
-      if (!bitmap_equal_p (df->exit_block_uses, refs))
-	{
-	  struct df_scan_bb_info *bb_info = df_scan_get_bb_info (EXIT_BLOCK);
-	  df_ref_chain_delete_du_chain (bb_info->artificial_uses);
-	  df_ref_chain_delete (bb_info->artificial_uses);
-	  bb_info->artificial_uses = NULL;
-	  changed = true;
-	}
-    }
-  else
-    {
-      struct df_scan_problem_data *problem_data
-	= (struct df_scan_problem_data *) df_scan->problem_data;
-	gcc_unreachable ();
-      df->exit_block_uses = BITMAP_ALLOC (&problem_data->reg_bitmaps);
+      struct df_scan_bb_info *bb_info = df_scan_get_bb_info (EXIT_BLOCK);
+      df_ref_chain_delete_du_chain (bb_info->artificial_uses);
+      df_ref_chain_delete (bb_info->artificial_uses);
+      bb_info->artificial_uses = NULL;
       changed = true;
     }