diff options
Diffstat (limited to 'meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99398.patch')
-rw-r--r-- | meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99398.patch | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99398.patch b/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99398.patch new file mode 100644 index 000000000..c332d50fa --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99398.patch | |||
@@ -0,0 +1,76 @@ | |||
1 | 2010-09-21 Yao Qi <yao@codesourcery.com> | ||
2 | |||
3 | Backport from FSF to fix ICE found in LP:635409: | ||
4 | |||
5 | 2010-07-07 Bernd Schmidt <bernds@codesourcery.com> | ||
6 | |||
7 | gcc/ | ||
8 | PR rtl-optimization/44787 | ||
9 | * config/arm/arm.md (arith_shiftsi): Allow stack pointer in operand 2. | ||
10 | * config/arm/thumb2.md (thumb2_arith_shiftsi): Likewise. | ||
11 | |||
12 | gcc/testsuite/ | ||
13 | PR rtl-optimization/44787 | ||
14 | * gcc.c-torture/compile/pr44788.c: New test. | ||
15 | * gcc.target/arm/pr44788.c: New test. | ||
16 | |||
17 | 2010-09-16 Andrew Stubbs <ams@codesourcery.com> | ||
18 | |||
19 | Backport from FSF: | ||
20 | |||
21 | === modified file 'gcc/config/arm/arm.md' | ||
22 | --- old/gcc/config/arm/arm.md 2010-09-16 09:15:46 +0000 | ||
23 | +++ new/gcc/config/arm/arm.md 2010-09-22 05:54:42 +0000 | ||
24 | @@ -9268,7 +9268,7 @@ | ||
25 | [(match_operator:SI 3 "shift_operator" | ||
26 | [(match_operand:SI 4 "s_register_operand" "r") | ||
27 | (match_operand:SI 5 "reg_or_int_operand" "rI")]) | ||
28 | - (match_operand:SI 2 "s_register_operand" "r")]))] | ||
29 | + (match_operand:SI 2 "s_register_operand" "rk")]))] | ||
30 | "TARGET_ARM" | ||
31 | "%i1%?\\t%0, %2, %4%S3" | ||
32 | [(set_attr "predicable" "yes") | ||
33 | |||
34 | === modified file 'gcc/config/arm/thumb2.md' | ||
35 | --- old/gcc/config/arm/thumb2.md 2010-09-01 13:29:58 +0000 | ||
36 | +++ new/gcc/config/arm/thumb2.md 2010-09-22 05:54:42 +0000 | ||
37 | @@ -467,7 +467,7 @@ | ||
38 | [(match_operator:SI 3 "shift_operator" | ||
39 | [(match_operand:SI 4 "s_register_operand" "r") | ||
40 | (match_operand:SI 5 "const_shift_count" "M")]) | ||
41 | - (match_operand:SI 2 "s_register_operand" "r")]))] | ||
42 | + (match_operand:SI 2 "s_register_operand" "rk")]))] | ||
43 | "TARGET_THUMB2" | ||
44 | "%i1%?\\t%0, %2, %4%S3" | ||
45 | [(set_attr "predicable" "yes") | ||
46 | |||
47 | === added file 'gcc/testsuite/gcc.c-torture/compile/pr44788.c' | ||
48 | --- old/gcc/testsuite/gcc.c-torture/compile/pr44788.c 1970-01-01 00:00:00 +0000 | ||
49 | +++ new/gcc/testsuite/gcc.c-torture/compile/pr44788.c 2010-09-22 05:54:42 +0000 | ||
50 | @@ -0,0 +1,8 @@ | ||
51 | +void joint_decode(float* mlt_buffer1, int t) { | ||
52 | + int i; | ||
53 | + float decode_buffer[1060]; | ||
54 | + foo(decode_buffer); | ||
55 | + for (i=0; i<10 ; i++) { | ||
56 | + mlt_buffer1[i] = i * decode_buffer[t]; | ||
57 | + } | ||
58 | +} | ||
59 | |||
60 | === added file 'gcc/testsuite/gcc.target/arm/pr44788.c' | ||
61 | --- old/gcc/testsuite/gcc.target/arm/pr44788.c 1970-01-01 00:00:00 +0000 | ||
62 | +++ new/gcc/testsuite/gcc.target/arm/pr44788.c 2010-09-22 05:54:42 +0000 | ||
63 | @@ -0,0 +1,12 @@ | ||
64 | +/* { dg-do compile } */ | ||
65 | +/* { dg-require-effective-target arm_thumb2_ok } */ | ||
66 | +/* { dg-options "-Os -fno-strict-aliasing -fPIC -mthumb -march=armv7-a -mfpu=vfp3 -mfloat-abi=softfp" } */ | ||
67 | + | ||
68 | +void joint_decode(float* mlt_buffer1, int t) { | ||
69 | + int i; | ||
70 | + float decode_buffer[1060]; | ||
71 | + foo(decode_buffer); | ||
72 | + for (i=0; i<10 ; i++) { | ||
73 | + mlt_buffer1[i] = i * decode_buffer[t]; | ||
74 | + } | ||
75 | +} | ||
76 | |||