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 | |
| 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>
| -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 |
