diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6c8cfb4e8b6dff3422815081b0b15a6116dc4770..60fa2cc979816ac0327d92980e2f8719564aa0fb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,8 @@
 Fri Apr 14 18:07:30 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
+	* print-rtl.c (print_rtx, case NOTE): Don't blow up if NOTE_BASIC_BLOCK
+	not yet set.
+
 	* expr.c (reload.h): Now included.
 	(emit_block_move): Set volatile_ok when checking for movstr.
 	(emit_move_1): Check for replacements in addresses in multi-word case.
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index 5ffc30c9925f5d261c7fa66cbd69eeb9ef2587e9..ee7e64cebb579838db4c87eeaa5e4ccf7fe28982 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -195,7 +195,9 @@ print_rtx (in_rtx)
 	    else if (NOTE_LINE_NUMBER (in_rtx) == NOTE_INSN_BASIC_BLOCK)
 	      {
 		basic_block bb = NOTE_BASIC_BLOCK (in_rtx);
-		fprintf (outfile, " [bb %d]", bb->index);
+
+		if (bb != 0)
+		  fprintf (outfile, " [bb %d]", bb->index);
 	      }
 	    else
 	      {