From f2eff9f86ad596c24fd547a880de783878c83e5c Mon Sep 17 00:00:00 2001
From: Jan Hubicka <jh@suse.cz>
Date: Tue, 8 Jun 2010 00:48:32 +0200
Subject: [PATCH] re PR middle-end/44454 (Many new failures)

	PR middle-end/44454
	(df_lr_top_dump, df_lr_bottom_dump): Check that in/out bitmaps
	are allocated.

From-SVN: r160410
---
 gcc/ChangeLog     |  6 ++++++
 gcc/df-problems.c | 14 ++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6268186dbd66..5896305da4a8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-06-07  Jan Hubicka  <jh@suse.cz>
+
+	PR middle-end/44454
+	(df_lr_top_dump, df_lr_bottom_dump): Check that in/out bitmaps
+	are allocated.
+
 2010-06-07  Kaz Kojima  <kkojima@gcc.gnu.org>
 
 	* config/sh/sh.c (sh_build_builtin_va_list): Set tree type
diff --git a/gcc/df-problems.c b/gcc/df-problems.c
index f11b2518079a..05d41b56ed05 100644
--- a/gcc/df-problems.c
+++ b/gcc/df-problems.c
@@ -1120,8 +1120,11 @@ df_lr_top_dump (basic_block bb, FILE *file)
   if (df_lr->problem_data)
     {
       problem_data = (struct df_lr_problem_data *)df_lr->problem_data;
-      fprintf (file, ";;  old in  \t");
-      df_print_regset (file, &problem_data->in[bb->index]);
+      if (problem_data->in)
+	{
+      	  fprintf (file, ";;  old in  \t");
+      	  df_print_regset (file, &problem_data->in[bb->index]);
+	}
     }
   fprintf (file, ";; lr  use \t");
   df_print_regset (file, &bb_info->use);
@@ -1145,8 +1148,11 @@ df_lr_bottom_dump (basic_block bb, FILE *file)
   if (df_lr->problem_data)
     {
       problem_data = (struct df_lr_problem_data *)df_lr->problem_data;
-      fprintf (file, ";;  old out  \t");
-      df_print_regset (file, &problem_data->out[bb->index]);
+      if (problem_data->out)
+	{
+          fprintf (file, ";;  old out  \t");
+          df_print_regset (file, &problem_data->out[bb->index]);
+	}
     }
 }
 
-- 
GitLab