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