summaryrefslogtreecommitdiffstats
path: root/toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch')
-rw-r--r--toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch126
1 files changed, 0 insertions, 126 deletions
diff --git a/toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch b/toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch
deleted file mode 100644
index 017b1df7e..000000000
--- a/toolchain-layer/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch
+++ /dev/null
@@ -1,126 +0,0 @@
12011-04-21 Andrew Stubbs <ams@codesourcery.com>
2
3 Backport from FSF:
4
5 2008-12-03 Daniel Jacobowitz <dan@codesourcery.com>
6
7 gcc/testsuite/
8 * gcc.dg/vect/vect-shift-3.c, gcc.dg/vect/vect-shift-4.c: New.
9 * lib/target-supports.exp (check_effective_target_vect_shift_char): New
10 function.
11
12=== added file 'gcc/testsuite/gcc.dg/vect/vect-shift-3.c'
13--- old/gcc/testsuite/gcc.dg/vect/vect-shift-3.c 1970-01-01 00:00:00 +0000
14+++ new/gcc/testsuite/gcc.dg/vect/vect-shift-3.c 2011-04-21 13:51:06 +0000
15@@ -0,0 +1,37 @@
16+/* { dg-require-effective-target vect_shift } */
17+/* { dg-require-effective-target vect_int } */
18+
19+#include "tree-vect.h"
20+
21+#define N 32
22+
23+unsigned short dst[N] __attribute__((aligned(N)));
24+unsigned short src[N] __attribute__((aligned(N)));
25+
26+__attribute__ ((noinline))
27+void array_shift(void)
28+{
29+ int i;
30+ for (i = 0; i < N; i++)
31+ dst[i] = src[i] >> 3;
32+}
33+
34+int main()
35+{
36+ volatile int i;
37+ check_vect ();
38+
39+ for (i = 0; i < N; i++)
40+ src[i] = i << 3;
41+
42+ array_shift ();
43+
44+ for (i = 0; i < N; i++)
45+ if (dst[i] != i)
46+ abort ();
47+
48+ return 0;
49+}
50+
51+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
52+/* { dg-final { cleanup-tree-dump "vect" } } */
53
54=== added file 'gcc/testsuite/gcc.dg/vect/vect-shift-4.c'
55--- old/gcc/testsuite/gcc.dg/vect/vect-shift-4.c 1970-01-01 00:00:00 +0000
56+++ new/gcc/testsuite/gcc.dg/vect/vect-shift-4.c 2011-04-21 13:51:06 +0000
57@@ -0,0 +1,37 @@
58+/* { dg-require-effective-target vect_shift_char } */
59+/* { dg-require-effective-target vect_int } */
60+
61+#include "tree-vect.h"
62+
63+#define N 32
64+
65+unsigned char dst[N] __attribute__((aligned(N)));
66+unsigned char src[N] __attribute__((aligned(N)));
67+
68+__attribute__ ((noinline))
69+void array_shift(void)
70+{
71+ int i;
72+ for (i = 0; i < N; i++)
73+ dst[i] = src[i] >> 3;
74+}
75+
76+int main()
77+{
78+ volatile int i;
79+ check_vect ();
80+
81+ for (i = 0; i < N; i++)
82+ src[i] = i << 3;
83+
84+ array_shift ();
85+
86+ for (i = 0; i < N; i++)
87+ if (dst[i] != i)
88+ abort ();
89+
90+ return 0;
91+}
92+
93+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
94+/* { dg-final { cleanup-tree-dump "vect" } } */
95
96=== modified file 'gcc/testsuite/lib/target-supports.exp'
97--- old/gcc/testsuite/lib/target-supports.exp 2011-02-19 15:31:15 +0000
98+++ new/gcc/testsuite/lib/target-supports.exp 2011-04-21 13:51:06 +0000
99@@ -2308,6 +2308,26 @@
100 }
101
102
103+# Return 1 if the target supports hardware vector shift operation for char.
104+
105+proc check_effective_target_vect_shift_char { } {
106+ global et_vect_shift_char_saved
107+
108+ if [info exists et_vect_shift_char_saved] {
109+ verbose "check_effective_target_vect_shift_char: using cached result" 2
110+ } else {
111+ set et_vect_shift_char_saved 0
112+ if { ([istarget powerpc*-*-*]
113+ && ![istarget powerpc-*-linux*paired*])
114+ || [check_effective_target_arm32] } {
115+ set et_vect_shift_char_saved 1
116+ }
117+ }
118+
119+ verbose "check_effective_target_vect_shift_char: returning $et_vect_shift_char_saved" 2
120+ return $et_vect_shift_char_saved
121+}
122+
123 # Return 1 if the target supports hardware vectors of long, 0 otherwise.
124 #
125 # This can change for different subtargets so do not cache the result.
126