Fix IA-64 enable-checking glibc ICE.
authorJames E Wilson <wilson@tuliptree.org>
Tue, 1 Apr 2008 03:04:15 +0000 (20:04 -0700)
committerJim Wilson <wilson@gcc.gnu.org>
Tue, 1 Apr 2008 03:04:15 +0000 (20:04 -0700)
* varasm.c (output_constant_pool_1): In LABEL_REF check, use tmp
consistently.

From-SVN: r133783

gcc/ChangeLog
gcc/varasm.c

index 44dabe846e6acd65261620d1a84697dd58aab185..fbc465e35d68f11c7fd6b8aa1b2213c17b875d8f 100644 (file)
@@ -19,6 +19,9 @@
 
 2008-03-31  James E. Wilson  <wilson@tuliptree.org>
 
+       * varasm.c (output_constant_pool_1): In LABEL_REF check, use tmp
+       consistently.
+
        PR target/35695
        * config/ia64/div.md (recip_approx_rf): Use UNSPEC not DIV.
        * config/ia64/ia64.c (rtx_needs_barrier): Handle
index f4607b49eea209f519da436ac7aba58256ae531f..73110497c8bc7fb45e02d1ce64b70d97a4fa2cf2 100644 (file)
@@ -3685,17 +3685,17 @@ output_constant_pool_1 (struct constant_descriptor_rtx *desc,
      functioning even with INSN_DELETED_P and friends.  */
 
   tmp = x;
-  switch (GET_CODE (x))
+  switch (GET_CODE (tmp))
     {
     case CONST:
-      if (GET_CODE (XEXP (x, 0)) != PLUS
-         || GET_CODE (XEXP (XEXP (x, 0), 0)) != LABEL_REF)
+      if (GET_CODE (XEXP (tmp, 0)) != PLUS
+         || GET_CODE (XEXP (XEXP (tmp, 0), 0)) != LABEL_REF)
        break;
-      tmp = XEXP (XEXP (x, 0), 0);
+      tmp = XEXP (XEXP (tmp, 0), 0);
       /* FALLTHRU  */
 
     case LABEL_REF:
-      tmp = XEXP (x, 0);
+      tmp = XEXP (tmp, 0);
       gcc_assert (!INSN_DELETED_P (tmp));
       gcc_assert (!NOTE_P (tmp)
                  || NOTE_KIND (tmp) != NOTE_INSN_DELETED);