From 4bd8d9a1a924797535d769011914e1aeb85cb6d7 Mon Sep 17 00:00:00 2001 From: wilson Date: Tue, 1 Apr 2008 03:04:15 +0000 Subject: [PATCH] Fix IA-64 enable-checking glibc ICE. * varasm.c (output_constant_pool_1): In LABEL_REF check, use tmp consistently. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133783 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 3 +++ gcc/varasm.c | 10 +++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 44dabe8..fbc465e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -19,6 +19,9 @@ 2008-03-31 James E. Wilson + * 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 diff --git a/gcc/varasm.c b/gcc/varasm.c index f4607b4..7311049 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -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); -- 2.7.4