varasm.c (decode_addr_const, [...]): Call output_constant_def instead of looking...
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>
Sat, 29 Dec 2001 21:17:50 +0000 (21:17 +0000)
committerRichard Kenner <kenner@gcc.gnu.org>
Sat, 29 Dec 2001 21:17:50 +0000 (16:17 -0500)
* varasm.c (decode_addr_const, case INTEGER_CST): Call
output_constant_def instead of looking at TREE_CST_RTL.

From-SVN: r48386

gcc/ChangeLog
gcc/varasm.c

index 6b10d4cce29909adf5b2b44c4dc0a1315ed86e8d..85930d6f0cb576d954b2f27730227b337556ed53 100644 (file)
@@ -1,5 +1,8 @@
 Sat Dec 29 15:48:54 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
+       * varasm.c (decode_addr_const, case INTEGER_CST): Call
+       output_constant_def instead of looking at TREE_CST_RTL.
+
        * expr.c (convert_move): If -fforce-mem, force FROM to not be memory.
 
        * stor-layout.c (layout_decl): Don't misalign field of variable size
index 6a3fb7c19bc3258d7afdefa4f90c6665a9cb88aa..aabdd17a41ab4e61c594040b5741b475f7a22aee 100644 (file)
@@ -2366,7 +2366,9 @@ decode_addr_const (exp, value)
     case COMPLEX_CST:
     case CONSTRUCTOR:
     case INTEGER_CST:
-      x = TREE_CST_RTL (target);
+      /* This constant should have been output already, but we can't simply
+        use TREE_CST_RTL since INTEGER_CST doesn't have one.  */
+      x = output_constant_def (target, 1);
       break;
 
     default: