| Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/64_all_gcc43-pr34571.patch |
| http://gcc.gnu.org/PR34571 |
| |
| 2007-12-26 Rask Ingemann Lambertsen <rask@sygehus.dk> |
| |
| PR target/34571 |
| * config/alpha/alpha.c (alpha_cannot_force_const_mem): Use |
| symbolic_operand. |
| * varasm.c (output_constant_pool_1): Fix typo. |
| |
| diff -durN gcc-4.3.1.orig/gcc/config/alpha/alpha.c gcc-4.3.1/gcc/config/alpha/alpha.c |
| --- gcc-4.3.1.orig/gcc/config/alpha/alpha.c 2008-02-07 18:45:24.000000000 +0100 |
| +++ gcc-4.3.1/gcc/config/alpha/alpha.c 2008-06-10 14:58:24.000000000 +0200 |
| @@ -1113,8 +1113,7 @@ |
| static bool |
| alpha_cannot_force_const_mem (rtx x) |
| { |
| - enum rtx_code code = GET_CODE (x); |
| - return code == SYMBOL_REF || code == LABEL_REF || code == CONST; |
| + return symbolic_operand (x, GET_MODE (x)); |
| } |
| |
| /* We do not allow indirect calls to be optimized into sibling calls, nor |
| diff -durN gcc-4.3.1.orig/gcc/varasm.c gcc-4.3.1/gcc/varasm.c |
| --- gcc-4.3.1.orig/gcc/varasm.c 2007-12-05 22:55:10.000000000 +0100 |
| +++ gcc-4.3.1/gcc/varasm.c 2008-06-10 14:58:24.000000000 +0200 |
| @@ -3710,7 +3710,7 @@ |
| /* 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); |