patches/gcc/4.3.0/500-pr34571.patch
changeset 746 b150d6f590fc
parent 552 4edbcdb17e3d
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/patches/gcc/4.3.0/500-pr34571.patch	Mon Jul 28 21:08:01 2008 +0000
     1.3 @@ -0,0 +1,35 @@
     1.4 +Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.0/gentoo/64_all_gcc43-pr34571.patch
     1.5 +http://gcc.gnu.org/PR34571
     1.6 +
     1.7 +2007-12-26  Rask Ingemann Lambertsen  <rask@sygehus.dk>
     1.8 +
     1.9 +	PR target/34571
    1.10 +	* config/alpha/alpha.c (alpha_cannot_force_const_mem): Use
    1.11 +	symbolic_operand.
    1.12 +	* varasm.c (output_constant_pool_1): Fix typo.
    1.13 +
    1.14 +diff -durN gcc-4.3.0.orig/gcc/config/alpha/alpha.c gcc-4.3.0/gcc/config/alpha/alpha.c
    1.15 +--- gcc-4.3.0.orig/gcc/config/alpha/alpha.c	2008-02-07 18:45:24.000000000 +0100
    1.16 ++++ gcc-4.3.0/gcc/config/alpha/alpha.c	2008-06-10 14:45:13.000000000 +0200
    1.17 +@@ -1113,8 +1113,7 @@
    1.18 + static bool
    1.19 + alpha_cannot_force_const_mem (rtx x)
    1.20 + {
    1.21 +-  enum rtx_code code = GET_CODE (x);
    1.22 +-  return code == SYMBOL_REF || code == LABEL_REF || code == CONST;
    1.23 ++  return symbolic_operand (x, GET_MODE (x));
    1.24 + }
    1.25 + 
    1.26 + /* We do not allow indirect calls to be optimized into sibling calls, nor
    1.27 +diff -durN gcc-4.3.0.orig/gcc/varasm.c gcc-4.3.0/gcc/varasm.c
    1.28 +--- gcc-4.3.0.orig/gcc/varasm.c	2007-12-05 22:55:10.000000000 +0100
    1.29 ++++ gcc-4.3.0/gcc/varasm.c	2008-06-10 14:45:13.000000000 +0200
    1.30 +@@ -3710,7 +3710,7 @@
    1.31 +       /* FALLTHRU  */
    1.32 + 
    1.33 +     case LABEL_REF:
    1.34 +-      tmp = XEXP (x, 0);
    1.35 ++      tmp = XEXP (tmp, 0);
    1.36 +       gcc_assert (!INSN_DELETED_P (tmp));
    1.37 +       gcc_assert (!NOTE_P (tmp)
    1.38 + 		  || NOTE_KIND (tmp) != NOTE_INSN_DELETED);