diff options
Diffstat (limited to 'meta/packages/gcc/gcc-4.3.1/debian/pr34571.dpatch')
-rw-r--r-- | meta/packages/gcc/gcc-4.3.1/debian/pr34571.dpatch | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/meta/packages/gcc/gcc-4.3.1/debian/pr34571.dpatch b/meta/packages/gcc/gcc-4.3.1/debian/pr34571.dpatch new file mode 100644 index 0000000000..d0a654a3cc --- /dev/null +++ b/meta/packages/gcc/gcc-4.3.1/debian/pr34571.dpatch | |||
@@ -0,0 +1,63 @@ | |||
1 | #! /bin/sh -e | ||
2 | |||
3 | # DP: Proposed patch for PR target/34571 (alpha) | ||
4 | |||
5 | dir= | ||
6 | if [ $# -eq 3 -a "$2" = '-d' ]; then | ||
7 | pdir="-d $3" | ||
8 | dir="$3/" | ||
9 | elif [ $# -ne 1 ]; then | ||
10 | echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" | ||
11 | exit 1 | ||
12 | fi | ||
13 | case "$1" in | ||
14 | -patch) | ||
15 | patch $pdir -f --no-backup-if-mismatch -p0 < $0 | ||
16 | ;; | ||
17 | -unpatch) | ||
18 | patch $pdir -f --no-backup-if-mismatch -R -p0 < $0 | ||
19 | ;; | ||
20 | *) | ||
21 | echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" | ||
22 | exit 1 | ||
23 | esac | ||
24 | exit 0 | ||
25 | |||
26 | 2007-12-26 Rask Ingemann Lambertsen <rask@sygehus.dk> | ||
27 | |||
28 | PR target/34571 | ||
29 | * config/alpha/alpha.c (alpha_cannot_force_const_mem): Use | ||
30 | symbolic_operand. | ||
31 | * varasm.c (output_constant_pool_1): Fix typo. | ||
32 | |||
33 | Index: gcc/config/alpha/alpha.c | ||
34 | =================================================================== | ||
35 | --- gcc/config/alpha/alpha.c (revision 131132) | ||
36 | +++ gcc/config/alpha/alpha.c (working copy) | ||
37 | @@ -1112,10 +1112,9 @@ alpha_legitimize_address (rtx x, rtx scr | ||
38 | |||
39 | static bool | ||
40 | alpha_cannot_force_const_mem (rtx x) | ||
41 | { | ||
42 | - enum rtx_code code = GET_CODE (x); | ||
43 | - return code == SYMBOL_REF || code == LABEL_REF || code == CONST; | ||
44 | + return symbolic_operand (x, GET_MODE (x)); | ||
45 | } | ||
46 | |||
47 | /* We do not allow indirect calls to be optimized into sibling calls, nor | ||
48 | can we allow a call to a function with a different GP to be optimized | ||
49 | Index: gcc/varasm.c | ||
50 | =================================================================== | ||
51 | --- gcc/varasm.c (revision 131132) | ||
52 | +++ gcc/varasm.c (working copy) | ||
53 | @@ -3709,9 +3709,9 @@ output_constant_pool_1 (struct constant_ | ||
54 | tmp = XEXP (XEXP (x, 0), 0); | ||
55 | /* FALLTHRU */ | ||
56 | |||
57 | case LABEL_REF: | ||
58 | - tmp = XEXP (x, 0); | ||
59 | + tmp = XEXP (tmp, 0); | ||
60 | gcc_assert (!INSN_DELETED_P (tmp)); | ||
61 | gcc_assert (!NOTE_P (tmp) | ||
62 | || NOTE_KIND (tmp) != NOTE_INSN_DELETED); | ||
63 | break; | ||