diff options
author | Nitin A Kamble <nitin.a.kamble@intel.com> | 2010-07-27 12:35:33 -0700 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-07-30 14:50:31 +0100 |
commit | 620aece5630fc347d836f63eb415f110db17afb1 (patch) | |
tree | 5184f851872543c3bc6d116fcef76545147a2ad9 /meta/packages/gcc | |
parent | 7325781e35d488ec9b1dea9e8af3ea68e5f0cfcd (diff) | |
download | poky-620aece5630fc347d836f63eb415f110db17afb1.tar.gz |
gcc-4.5.0: import an arm fix patch from OE
And bump PRs of affected recipes
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Diffstat (limited to 'meta/packages/gcc')
-rw-r--r-- | meta/packages/gcc/gcc-4.5.0.inc | 1 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-4.5.0/gcc-pr43698-arm-rev-instr.patch | 117 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-cross-canadian_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-cross-initial_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-cross-intermediate_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-cross_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-crosssdk-initial_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-crosssdk-intermediate_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-crosssdk_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-runtime_4.5.0.bb | 2 | ||||
-rw-r--r-- | meta/packages/gcc/gcc_4.5.0.bb | 2 |
11 files changed, 127 insertions, 9 deletions
diff --git a/meta/packages/gcc/gcc-4.5.0.inc b/meta/packages/gcc/gcc-4.5.0.inc index 9d66940bf9..60dd48d4bd 100644 --- a/meta/packages/gcc/gcc-4.5.0.inc +++ b/meta/packages/gcc/gcc-4.5.0.inc | |||
@@ -14,6 +14,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ | |||
14 | file://gcc-flags-for-build.patch \ | 14 | file://gcc-flags-for-build.patch \ |
15 | file://libstdc++-emit-__cxa_end_cleanup-in-text.patch \ | 15 | file://libstdc++-emit-__cxa_end_cleanup-in-text.patch \ |
16 | file://arm-bswapsi2.patch \ | 16 | file://arm-bswapsi2.patch \ |
17 | file://gcc-pr43698-arm-rev-instr.patch \ | ||
17 | \ | 18 | \ |
18 | file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \ | 19 | file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \ |
19 | file://fedora/gcc43-ia64-libunwind.patch;striplevel=0 \ | 20 | file://fedora/gcc43-ia64-libunwind.patch;striplevel=0 \ |
diff --git a/meta/packages/gcc/gcc-4.5.0/gcc-pr43698-arm-rev-instr.patch b/meta/packages/gcc/gcc-4.5.0/gcc-pr43698-arm-rev-instr.patch new file mode 100644 index 0000000000..61c883e1ff --- /dev/null +++ b/meta/packages/gcc/gcc-4.5.0/gcc-pr43698-arm-rev-instr.patch | |||
@@ -0,0 +1,117 @@ | |||
1 | backport http://gcc.gnu.org/viewcvs?view=revision&revision=162404 | ||
2 | from trunk | ||
3 | |||
4 | Which fixes http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43698 | ||
5 | |||
6 | 2010-07-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> | ||
7 | |||
8 | PR target/43698 | ||
9 | * config/arm/arm.md: Split arm_rev into *arm_rev | ||
10 | and *thumb1_rev. Set *arm_rev to be predicable. | ||
11 | |||
12 | 2010-07-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> | ||
13 | |||
14 | PR target/43698 | ||
15 | * gcc.target/arm/pr43698.c: New test. | ||
16 | |||
17 | |||
18 | /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
19 | Usage: date [OPTION]... [+FORMAT] | ||
20 | Display the current time in the given FORMAT. | ||
21 | |||
22 | -d, --date=STRING display time described by STRING, not `now' | ||
23 | -f, --file=DATEFILE like --date once for each line of DATEFILE | ||
24 | -R, --rfc-822 output RFC-822 compliant date string | ||
25 | -u, --utc, --universal print or set Coordinated Universal Time | ||
26 | --help display this help and exit | ||
27 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
28 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
29 | date is /bin/date | ||
30 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
31 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
32 | date is /bin/date | ||
33 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
34 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
35 | date is /bin/date | ||
36 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
37 | date is /scratch/oe/sysroots/i686-linux/usr/share/quilt/compat/date | ||
38 | date is /bin/date | ||
39 | date | ||
40 | Khem | ||
41 | Index: gcc-4.5/gcc/config/arm/arm.md | ||
42 | =================================================================== | ||
43 | --- gcc-4.5.orig/gcc/config/arm/arm.md 2010-07-20 20:31:25.000000000 -0700 | ||
44 | +++ gcc-4.5/gcc/config/arm/arm.md 2010-07-22 14:55:54.303169081 -0700 | ||
45 | @@ -11197,15 +11197,21 @@ | ||
46 | (set_attr "length" "4")] | ||
47 | ) | ||
48 | |||
49 | -(define_insn "arm_rev" | ||
50 | +(define_insn "*arm_rev" | ||
51 | [(set (match_operand:SI 0 "s_register_operand" "=r") | ||
52 | (bswap:SI (match_operand:SI 1 "s_register_operand" "r")))] | ||
53 | - "TARGET_EITHER && arm_arch6" | ||
54 | - "rev\t%0, %1" | ||
55 | - [(set (attr "length") | ||
56 | - (if_then_else (eq_attr "is_thumb" "yes") | ||
57 | - (const_int 2) | ||
58 | - (const_int 4)))] | ||
59 | + "TARGET_32BIT && arm_arch6" | ||
60 | + "rev%?\t%0, %1" | ||
61 | + [(set_attr "predicable" "yes") | ||
62 | + (set_attr "length" "4")] | ||
63 | +) | ||
64 | + | ||
65 | +(define_insn "*thumb1_rev" | ||
66 | + [(set (match_operand:SI 0 "s_register_operand" "=l") | ||
67 | + (bswap:SI (match_operand:SI 1 "s_register_operand" "l")))] | ||
68 | + "TARGET_THUMB1 && arm_arch6" | ||
69 | + "rev\t%0, %1" | ||
70 | + [(set_attr "length" "2")] | ||
71 | ) | ||
72 | |||
73 | (define_expand "arm_legacy_rev" | ||
74 | Index: gcc-4.5/gcc/testsuite/gcc.target/arm/pr43698.c | ||
75 | =================================================================== | ||
76 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
77 | +++ gcc-4.5/gcc/testsuite/gcc.target/arm/pr43698.c 2010-07-22 14:56:35.406670213 -0700 | ||
78 | @@ -0,0 +1,39 @@ | ||
79 | +/* { dg-do run } */ | ||
80 | +/* { dg-options "-Os -march=armv7-a" } */ | ||
81 | +#include <stdint.h> | ||
82 | +#include <stdlib.h> | ||
83 | + | ||
84 | + | ||
85 | +char do_reverse_endian = 0; | ||
86 | + | ||
87 | +# define bswap_32(x) \ | ||
88 | + ((((x) & 0xff000000) >> 24) | \ | ||
89 | + (((x) & 0x00ff0000) >> 8) | \ | ||
90 | + (((x) & 0x0000ff00) << 8) | \ | ||
91 | + (((x) & 0x000000ff) << 24)) | ||
92 | + | ||
93 | +#define EGET(X) \ | ||
94 | + (__extension__ ({ \ | ||
95 | + uint64_t __res; \ | ||
96 | + if (!do_reverse_endian) { __res = (X); \ | ||
97 | + } else if (sizeof(X) == 4) { __res = bswap_32((X)); \ | ||
98 | + } \ | ||
99 | + __res; \ | ||
100 | + })) | ||
101 | + | ||
102 | +void __attribute__((noinline)) X(char **phdr, char **data, int *phoff) | ||
103 | +{ | ||
104 | + *phdr = *data + EGET(*phoff); | ||
105 | +} | ||
106 | + | ||
107 | +int main() | ||
108 | +{ | ||
109 | + char *phdr; | ||
110 | + char *data = (char *)0x40164000; | ||
111 | + int phoff = 0x34; | ||
112 | + X(&phdr, &data, &phoff); | ||
113 | + if (phdr != (char *)0x40164034) | ||
114 | + abort (); | ||
115 | + exit (0); | ||
116 | +} | ||
117 | + | ||
diff --git a/meta/packages/gcc/gcc-cross-canadian_4.5.0.bb b/meta/packages/gcc/gcc-cross-canadian_4.5.0.bb index 98e239d92c..37c64fb4ee 100644 --- a/meta/packages/gcc/gcc-cross-canadian_4.5.0.bb +++ b/meta/packages/gcc/gcc-cross-canadian_4.5.0.bb | |||
@@ -5,7 +5,7 @@ require gcc-cross-canadian.inc | |||
5 | require gcc-configure-sdk.inc | 5 | require gcc-configure-sdk.inc |
6 | require gcc-package-sdk.inc | 6 | require gcc-package-sdk.inc |
7 | 7 | ||
8 | PR = "r1" | 8 | PR = "r2" |
9 | 9 | ||
10 | DEPENDS += "gmp-nativesdk mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk" | 10 | DEPENDS += "gmp-nativesdk mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk" |
11 | RDEPENDS_${PN} += "mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk" | 11 | RDEPENDS_${PN} += "mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk" |
diff --git a/meta/packages/gcc/gcc-cross-initial_4.5.0.bb b/meta/packages/gcc/gcc-cross-initial_4.5.0.bb index a121782233..b2c257d9d4 100644 --- a/meta/packages/gcc/gcc-cross-initial_4.5.0.bb +++ b/meta/packages/gcc/gcc-cross-initial_4.5.0.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | require gcc-cross_${PV}.bb | 1 | require gcc-cross_${PV}.bb |
2 | require gcc-cross-initial.inc | 2 | require gcc-cross-initial.inc |
3 | 3 | ||
4 | PR = "r1" | 4 | PR = "r2" |
5 | 5 | ||
diff --git a/meta/packages/gcc/gcc-cross-intermediate_4.5.0.bb b/meta/packages/gcc/gcc-cross-intermediate_4.5.0.bb index 7aaa5b0512..10681dad4b 100644 --- a/meta/packages/gcc/gcc-cross-intermediate_4.5.0.bb +++ b/meta/packages/gcc/gcc-cross-intermediate_4.5.0.bb | |||
@@ -1,4 +1,4 @@ | |||
1 | require gcc-cross_${PV}.bb | 1 | require gcc-cross_${PV}.bb |
2 | require gcc-cross-intermediate.inc | 2 | require gcc-cross-intermediate.inc |
3 | PR = "r1" | 3 | PR = "r2" |
4 | 4 | ||
diff --git a/meta/packages/gcc/gcc-cross_4.5.0.bb b/meta/packages/gcc/gcc-cross_4.5.0.bb index 148d304fe5..a5a80b765d 100644 --- a/meta/packages/gcc/gcc-cross_4.5.0.bb +++ b/meta/packages/gcc/gcc-cross_4.5.0.bb | |||
@@ -1,4 +1,4 @@ | |||
1 | PR = "r1" | 1 | PR = "r2" |
2 | 2 | ||
3 | require gcc-${PV}.inc | 3 | require gcc-${PV}.inc |
4 | require gcc-cross4.inc | 4 | require gcc-cross4.inc |
diff --git a/meta/packages/gcc/gcc-crosssdk-initial_4.5.0.bb b/meta/packages/gcc/gcc-crosssdk-initial_4.5.0.bb index 0fc5faab3e..240caf56f7 100644 --- a/meta/packages/gcc/gcc-crosssdk-initial_4.5.0.bb +++ b/meta/packages/gcc/gcc-crosssdk-initial_4.5.0.bb | |||
@@ -1,4 +1,4 @@ | |||
1 | require gcc-cross-initial_${PV}.bb | 1 | require gcc-cross-initial_${PV}.bb |
2 | require gcc-crosssdk-initial.inc | 2 | require gcc-crosssdk-initial.inc |
3 | 3 | ||
4 | PR = "r1" | 4 | PR = "r2" |
diff --git a/meta/packages/gcc/gcc-crosssdk-intermediate_4.5.0.bb b/meta/packages/gcc/gcc-crosssdk-intermediate_4.5.0.bb index 4260c358ad..a6653ddfcc 100644 --- a/meta/packages/gcc/gcc-crosssdk-intermediate_4.5.0.bb +++ b/meta/packages/gcc/gcc-crosssdk-intermediate_4.5.0.bb | |||
@@ -1,4 +1,4 @@ | |||
1 | require gcc-cross-intermediate_${PV}.bb | 1 | require gcc-cross-intermediate_${PV}.bb |
2 | require gcc-crosssdk-intermediate.inc | 2 | require gcc-crosssdk-intermediate.inc |
3 | 3 | ||
4 | PR = "r1" | 4 | PR = "r2" |
diff --git a/meta/packages/gcc/gcc-crosssdk_4.5.0.bb b/meta/packages/gcc/gcc-crosssdk_4.5.0.bb index a23a66258a..129e8d31a4 100644 --- a/meta/packages/gcc/gcc-crosssdk_4.5.0.bb +++ b/meta/packages/gcc/gcc-crosssdk_4.5.0.bb | |||
@@ -1,4 +1,4 @@ | |||
1 | require gcc-cross_${PV}.bb | 1 | require gcc-cross_${PV}.bb |
2 | require gcc-crosssdk.inc | 2 | require gcc-crosssdk.inc |
3 | 3 | ||
4 | PR = "r1" | 4 | PR = "r2" |
diff --git a/meta/packages/gcc/gcc-runtime_4.5.0.bb b/meta/packages/gcc/gcc-runtime_4.5.0.bb index ca22e8be38..093f9bf963 100644 --- a/meta/packages/gcc/gcc-runtime_4.5.0.bb +++ b/meta/packages/gcc/gcc-runtime_4.5.0.bb | |||
@@ -1,4 +1,4 @@ | |||
1 | PR = "r1" | 1 | PR = "r2" |
2 | 2 | ||
3 | require gcc-${PV}.inc | 3 | require gcc-${PV}.inc |
4 | require gcc-configure-runtime.inc | 4 | require gcc-configure-runtime.inc |
diff --git a/meta/packages/gcc/gcc_4.5.0.bb b/meta/packages/gcc/gcc_4.5.0.bb index 43bceb44c4..3a1edec607 100644 --- a/meta/packages/gcc/gcc_4.5.0.bb +++ b/meta/packages/gcc/gcc_4.5.0.bb | |||
@@ -1,4 +1,4 @@ | |||
1 | PR = "r1" | 1 | PR = "r2" |
2 | 2 | ||
3 | require gcc-${PV}.inc | 3 | require gcc-${PV}.inc |
4 | require gcc-configure-target.inc | 4 | require gcc-configure-target.inc |