diff options
| author | Koen Kooi <koen@dominion.thruhere.net> | 2010-11-02 22:03:58 +0100 |
|---|---|---|
| committer | Koen Kooi <koen@dominion.thruhere.net> | 2010-11-02 22:12:02 +0100 |
| commit | be10a6b1321f250b1034c7d9d0a8ef18b296eef1 (patch) | |
| tree | 9249025cbfbfbee4cc430d62b27f75301dd4dfde /recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99324.patch | |
| parent | 93b28937ac67ba46d65f55637e42552e224aa7e2 (diff) | |
| download | meta-openembedded-be10a6b1321f250b1034c7d9d0a8ef18b296eef1.tar.gz | |
angstrom-layers: meta-openembedded: replace poky gcc 4.5 sources with OE ones
This needs further investigation, but for now we can get the tested sources into the poky gcc harness
Signed-off-by: Koen Kooi <k-kooi@ti.com>
Diffstat (limited to 'recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99324.patch')
| -rw-r--r-- | recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99324.patch | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99324.patch b/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99324.patch new file mode 100644 index 0000000000..40b368862d --- /dev/null +++ b/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99324.patch | |||
| @@ -0,0 +1,109 @@ | |||
| 1 | Julian Brown <julian@codesourcery.com> | ||
| 2 | Mark Shinwell <mark@codesourcery.com> | ||
| 3 | |||
| 4 | gcc/ | ||
| 5 | * regrename.c (addresses.h): Move include of addresses.h after | ||
| 6 | include of flags.h. | ||
| 7 | * recog.c: Likewise. | ||
| 8 | * regcprop.c: Likewise. | ||
| 9 | * config/arm/arm.h (CLASS_LIKELY_SPILLED_P): Check against | ||
| 10 | LO_REGS only for Thumb-1. | ||
| 11 | (MODE_BASE_REG_CLASS): Restrict base registers to those which can | ||
| 12 | be used in short instructions when optimising for size on Thumb-2. | ||
| 13 | |||
| 14 | 2010-07-26 Julian Brown <julian@codesourcery.com> | ||
| 15 | |||
| 16 | Merge from Sourcery G++ 4.4: | ||
| 17 | |||
| 18 | Vladimir Prus <vladimir@codesourcery.com> | ||
| 19 | Julian Brown <julian@codesourcery.com> | ||
| 20 | |||
| 21 | |||
| 22 | === modified file 'gcc/config/arm/arm.h' | ||
| 23 | --- old/gcc/config/arm/arm.h 2010-08-05 15:20:54 +0000 | ||
| 24 | +++ new/gcc/config/arm/arm.h 2010-08-05 15:28:47 +0000 | ||
| 25 | @@ -1254,11 +1254,14 @@ | ||
| 26 | || reg_classes_intersect_p (VFP_REGS, (CLASS)) \ | ||
| 27 | : 0) | ||
| 28 | |||
| 29 | -/* We need to define this for LO_REGS on thumb. Otherwise we can end up | ||
| 30 | - using r0-r4 for function arguments, r7 for the stack frame and don't | ||
| 31 | - have enough left over to do doubleword arithmetic. */ | ||
| 32 | +/* We need to define this for LO_REGS on Thumb-1. Otherwise we can end up | ||
| 33 | + using r0-r4 for function arguments, r7 for the stack frame and don't have | ||
| 34 | + enough left over to do doubleword arithmetic. For Thumb-2 all the | ||
| 35 | + potentially problematic instructions accept high registers so this is not | ||
| 36 | + necessary. Care needs to be taken to avoid adding new Thumb-2 patterns | ||
| 37 | + that require many low registers. */ | ||
| 38 | #define CLASS_LIKELY_SPILLED_P(CLASS) \ | ||
| 39 | - ((TARGET_THUMB && (CLASS) == LO_REGS) \ | ||
| 40 | + ((TARGET_THUMB1 && (CLASS) == LO_REGS) \ | ||
| 41 | || (CLASS) == CC_REG) | ||
| 42 | |||
| 43 | /* The class value for index registers, and the one for base regs. */ | ||
| 44 | @@ -1269,7 +1272,7 @@ | ||
| 45 | when addressing quantities in QI or HI mode; if we don't know the | ||
| 46 | mode, then we must be conservative. */ | ||
| 47 | #define MODE_BASE_REG_CLASS(MODE) \ | ||
| 48 | - (TARGET_32BIT ? CORE_REGS : \ | ||
| 49 | + (TARGET_ARM || (TARGET_THUMB2 && !optimize_size) ? CORE_REGS : \ | ||
| 50 | (((MODE) == SImode) ? BASE_REGS : LO_REGS)) | ||
| 51 | |||
| 52 | /* For Thumb we can not support SP+reg addressing, so we return LO_REGS | ||
| 53 | |||
| 54 | === modified file 'gcc/recog.c' | ||
| 55 | --- old/gcc/recog.c 2010-04-02 18:54:46 +0000 | ||
| 56 | +++ new/gcc/recog.c 2010-08-05 15:28:47 +0000 | ||
| 57 | @@ -31,10 +31,10 @@ | ||
| 58 | #include "hard-reg-set.h" | ||
| 59 | #include "recog.h" | ||
| 60 | #include "regs.h" | ||
| 61 | -#include "addresses.h" | ||
| 62 | #include "expr.h" | ||
| 63 | #include "function.h" | ||
| 64 | #include "flags.h" | ||
| 65 | +#include "addresses.h" | ||
| 66 | #include "real.h" | ||
| 67 | #include "toplev.h" | ||
| 68 | #include "basic-block.h" | ||
| 69 | |||
| 70 | === modified file 'gcc/regcprop.c' | ||
| 71 | --- old/gcc/regcprop.c 2010-02-26 11:01:28 +0000 | ||
| 72 | +++ new/gcc/regcprop.c 2010-08-05 15:28:47 +0000 | ||
| 73 | @@ -26,7 +26,6 @@ | ||
| 74 | #include "tm_p.h" | ||
| 75 | #include "insn-config.h" | ||
| 76 | #include "regs.h" | ||
| 77 | -#include "addresses.h" | ||
| 78 | #include "hard-reg-set.h" | ||
| 79 | #include "basic-block.h" | ||
| 80 | #include "reload.h" | ||
| 81 | @@ -34,6 +33,7 @@ | ||
| 82 | #include "function.h" | ||
| 83 | #include "recog.h" | ||
| 84 | #include "flags.h" | ||
| 85 | +#include "addresses.h" | ||
| 86 | #include "toplev.h" | ||
| 87 | #include "obstack.h" | ||
| 88 | #include "timevar.h" | ||
| 89 | |||
| 90 | === modified file 'gcc/regrename.c' | ||
| 91 | --- old/gcc/regrename.c 2010-04-02 18:54:46 +0000 | ||
| 92 | +++ new/gcc/regrename.c 2010-08-05 15:28:47 +0000 | ||
| 93 | @@ -26,7 +26,6 @@ | ||
| 94 | #include "tm_p.h" | ||
| 95 | #include "insn-config.h" | ||
| 96 | #include "regs.h" | ||
| 97 | -#include "addresses.h" | ||
| 98 | #include "hard-reg-set.h" | ||
| 99 | #include "basic-block.h" | ||
| 100 | #include "reload.h" | ||
| 101 | @@ -34,6 +33,7 @@ | ||
| 102 | #include "function.h" | ||
| 103 | #include "recog.h" | ||
| 104 | #include "flags.h" | ||
| 105 | +#include "addresses.h" | ||
| 106 | #include "toplev.h" | ||
| 107 | #include "obstack.h" | ||
| 108 | #include "timevar.h" | ||
| 109 | |||
