diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 37922a1ff5d016c585ec31723336deaa292079b1..203116d82e94289c15358c14690a89b6ba0a36d6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2006-11-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+	* tree-pretty-print.c (dump_generic_node): Print sign of Inf.
+
 2006-11-11  Jan Hubicka  <jh@suse.cz>
 
 	* predict.c (predict_loops): Kill RTL variant.
diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c
index c2a47f0c712bcba4961911acedac4c96a2e37567..77d1fb91b71f8bbfffc61f9955d5e40283c7dd06 100644
--- a/gcc/tree-pretty-print.c
+++ b/gcc/tree-pretty-print.c
@@ -752,7 +752,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags,
 #if !defined(REAL_IS_NOT_DOUBLE) || defined(REAL_ARITHMETIC)
 	d = TREE_REAL_CST (node);
 	if (REAL_VALUE_ISINF (d))
-	  pp_string (buffer, " Inf");
+	  pp_string (buffer, REAL_VALUE_NEGATIVE (d) ? " -Inf" : " Inf");
 	else if (REAL_VALUE_ISNAN (d))
 	  pp_string (buffer, " Nan");
 	else