summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2011-05-09 11:24:27 -0700
committerKoen Kooi <koen@dominion.thruhere.net>2011-05-10 08:53:49 +0200
commitaab3fe5401f5c1f887e2229c82a0593b165595ac (patch)
tree9eec68986eeb87ea6533f739819292bbec398bf0 /meta-oe/recipes-devtools/gcc/gcc-4.6/linaro
parentd1742c8a96f97f50c831c8ceabffa0c52cc75ac3 (diff)
downloadmeta-openembedded-aab3fe5401f5c1f887e2229c82a0593b165595ac.tar.gz
gcc-4.6: Add recipes
In addition apply linaro improvements and backports from FSF gcc-4_6-branch Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe/recipes-devtools/gcc/gcc-4.6/linaro')
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106720.patch51
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106723.patch63
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106729.patch32
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106731.patch28
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106733.patch653
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch126
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106738.patch177
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106739.patch140
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106740.patch294
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106741.patch254
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106742.patch6123
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106743.patch25
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106744.patch21
13 files changed, 7987 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106720.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106720.patch
new file mode 100644
index 0000000000..4c573f401e
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106720.patch
@@ -0,0 +1,51 @@
12011-02-21 Andrew Stubbs <ams@codesourcery.com>
2 Julian Brown <julian@codesourcery.com>
3 Mark Shinwell <shinwell@codesourcery.com>
4
5 Forward-ported from Linaro GCC 4.5 (bzr99324).
6
7 gcc/
8 * config/arm/arm.h (arm_class_likely_spilled_p): Check against
9 LO_REGS only for Thumb-1.
10 (MODE_BASE_REG_CLASS): Restrict base registers to those which can
11 be used in short instructions when optimising for size on Thumb-2.
12
13=== modified file 'gcc/config/arm/arm.c'
14--- old/gcc/config/arm/arm.c 2011-01-29 03:20:57 +0000
15+++ new/gcc/config/arm/arm.c 2011-02-21 14:04:51 +0000
16@@ -22304,14 +22304,16 @@
17
18 /* Implement TARGET_CLASS_LIKELY_SPILLED_P.
19
20- We need to define this for LO_REGS on thumb. Otherwise we can end up
21- using r0-r4 for function arguments, r7 for the stack frame and don't
22- have enough left over to do doubleword arithmetic. */
23-
24+ We need to define this for LO_REGS on Thumb-1. Otherwise we can end up
25+ using r0-r4 for function arguments, r7 for the stack frame and don't have
26+ enough left over to do doubleword arithmetic. For Thumb-2 all the
27+ potentially problematic instructions accept high registers so this is not
28+ necessary. Care needs to be taken to avoid adding new Thumb-2 patterns
29+ that require many low registers. */
30 static bool
31 arm_class_likely_spilled_p (reg_class_t rclass)
32 {
33- if ((TARGET_THUMB && rclass == LO_REGS)
34+ if ((TARGET_THUMB1 && rclass == LO_REGS)
35 || rclass == CC_REG)
36 return true;
37
38
39=== modified file 'gcc/config/arm/arm.h'
40--- old/gcc/config/arm/arm.h 2011-01-29 03:20:57 +0000
41+++ new/gcc/config/arm/arm.h 2011-02-21 14:04:51 +0000
42@@ -1185,7 +1185,7 @@
43 when addressing quantities in QI or HI mode; if we don't know the
44 mode, then we must be conservative. */
45 #define MODE_BASE_REG_CLASS(MODE) \
46- (TARGET_32BIT ? CORE_REGS : \
47+ (TARGET_ARM || (TARGET_THUMB2 && !optimize_size) ? CORE_REGS : \
48 (((MODE) == SImode) ? BASE_REGS : LO_REGS))
49
50 /* For Thumb we can not support SP+reg addressing, so we return LO_REGS
51
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106723.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106723.patch
new file mode 100644
index 0000000000..5271ffa6f2
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106723.patch
@@ -0,0 +1,63 @@
12011-02-02 Richard Sandiford <richard.sandiford@linaro.org>
2
3 gcc/
4 PR target/47551
5 * config/arm/arm.c (coproc_secondary_reload_class): Handle
6 structure modes. Don't check neon_vector_mem_operand for
7 vector or structure modes.
8
9 gcc/testsuite/
10 PR target/47551
11 * gcc.target/arm/neon-modes-2.c: New test.
12
13=== modified file 'gcc/config/arm/arm.c'
14--- old/gcc/config/arm/arm.c 2011-02-21 14:04:51 +0000
15+++ new/gcc/config/arm/arm.c 2011-03-02 11:38:43 +0000
16@@ -9139,11 +9139,14 @@
17 return GENERAL_REGS;
18 }
19
20+ /* The neon move patterns handle all legitimate vector and struct
21+ addresses. */
22 if (TARGET_NEON
23+ && MEM_P (x)
24 && (GET_MODE_CLASS (mode) == MODE_VECTOR_INT
25- || GET_MODE_CLASS (mode) == MODE_VECTOR_FLOAT)
26- && neon_vector_mem_operand (x, 0))
27- return NO_REGS;
28+ || GET_MODE_CLASS (mode) == MODE_VECTOR_FLOAT
29+ || VALID_NEON_STRUCT_MODE (mode)))
30+ return NO_REGS;
31
32 if (arm_coproc_mem_operand (x, wb) || s_register_operand (x, mode))
33 return NO_REGS;
34
35=== added file 'gcc/testsuite/gcc.target/arm/neon-modes-2.c'
36--- old/gcc/testsuite/gcc.target/arm/neon-modes-2.c 1970-01-01 00:00:00 +0000
37+++ new/gcc/testsuite/gcc.target/arm/neon-modes-2.c 2011-02-02 10:02:45 +0000
38@@ -0,0 +1,24 @@
39+/* { dg-do compile } */
40+/* { dg-require-effective-target arm_neon_ok } */
41+/* { dg-options "-O1" } */
42+/* { dg-add-options arm_neon } */
43+
44+#include "arm_neon.h"
45+
46+#define SETUP(A) x##A = vld3_u32 (ptr + A * 0x20)
47+#define MODIFY(A) x##A = vld3_lane_u32 (ptr + A * 0x20 + 0x10, x##A, 1)
48+#define STORE(A) vst3_u32 (ptr + A * 0x20, x##A)
49+
50+#define MANY(A) A (0), A (1), A (2), A (3), A (4), A (5)
51+
52+void
53+bar (uint32_t *ptr, int y)
54+{
55+ uint32x2x3_t MANY (SETUP);
56+ int *x = __builtin_alloca (y);
57+ int z[0x1000];
58+ foo (x, z);
59+ MANY (MODIFY);
60+ foo (x, z);
61+ MANY (STORE);
62+}
63
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106729.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106729.patch
new file mode 100644
index 0000000000..465d09c1a0
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106729.patch
@@ -0,0 +1,32 @@
12011-03-22 Andrew Stubbs <ams@codesourcery.com>
2
3 Backport from FSF:
4
5 2011-03-21 Daniel Jacobowitz <dan@codesourcery.com>
6
7 gcc/
8 * config/arm/unwind-arm.c (__gnu_unwind_pr_common): Correct test
9 for barrier handlers.
10
11=== modified file 'gcc/config/arm/unwind-arm.c'
12--- old/gcc/config/arm/unwind-arm.c 2009-10-30 14:55:10 +0000
13+++ new/gcc/config/arm/unwind-arm.c 2011-03-22 10:59:10 +0000
14@@ -1196,8 +1196,6 @@
15 ucbp->barrier_cache.bitpattern[4] = (_uw) &data[1];
16
17 if (data[0] & uint32_highbit)
18- phase2_call_unexpected_after_unwind = 1;
19- else
20 {
21 data += rtti_count + 1;
22 /* Setup for entry to the handler. */
23@@ -1207,6 +1205,8 @@
24 _Unwind_SetGR (context, 0, (_uw) ucbp);
25 return _URC_INSTALL_CONTEXT;
26 }
27+ else
28+ phase2_call_unexpected_after_unwind = 1;
29 }
30 if (data[0] & uint32_highbit)
31 data++;
32
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106731.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106731.patch
new file mode 100644
index 0000000000..9b684aa1ca
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106731.patch
@@ -0,0 +1,28 @@
12011-03-23 Andrew Stubbs <ams@codesourcery.com>
2
3 Backport from FSF:
4
5 2011-03-23 Julian Brown <julian@codesourcery.com>
6
7 gcc/
8 * expr.c (expand_expr_real_1): Only use BLKmode for volatile
9 accesses which are not naturally aligned.
10
11=== modified file 'gcc/expr.c'
12--- old/gcc/expr.c 2011-03-18 09:04:31 +0000
13+++ new/gcc/expr.c 2011-04-05 16:18:11 +0000
14@@ -9147,8 +9147,11 @@
15 && modifier != EXPAND_CONST_ADDRESS
16 && modifier != EXPAND_INITIALIZER)
17 /* If the field is volatile, we always want an aligned
18- access. */
19- || (volatilep && flag_strict_volatile_bitfields > 0)
20+ access. Only do this if the access is not already naturally
21+ aligned, otherwise "normal" (non-bitfield) volatile fields
22+ become non-addressable. */
23+ || (volatilep && flag_strict_volatile_bitfields > 0
24+ && (bitpos % GET_MODE_ALIGNMENT (mode) != 0))
25 /* If the field isn't aligned enough to fetch as a memref,
26 fetch it as a bit field. */
27 || (mode1 != BLKmode
28
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106733.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106733.patch
new file mode 100644
index 0000000000..4b0079e1dc
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106733.patch
@@ -0,0 +1,653 @@
12011-03-27 Ira Rosen <ira.rosen@linaro.org>
2
3 gcc/
4 * doc/invoke.texi (max-stores-to-sink): Document.
5 * params.h (MAX_STORES_TO_SINK): Define.
6 * opts.c (finish_options): Set MAX_STORES_TO_SINK to 0
7 if either vectorization or if-conversion is disabled.
8 * tree-data-ref.c (dr_equal_offsets_p1): Moved and renamed from
9 tree-vect-data-refs.c vect_equal_offsets.
10 (dr_equal_offsets_p): New function.
11 (find_data_references_in_bb): Remove static.
12 * tree-data-ref.h (find_data_references_in_bb): Declare.
13 (dr_equal_offsets_p): Likewise.
14 * tree-vect-data-refs.c (vect_equal_offsets): Move to tree-data-ref.c.
15 (vect_drs_dependent_in_basic_block): Update calls to
16 vect_equal_offsets.
17 (vect_check_interleaving): Likewise.
18 * tree-ssa-phiopt.c: Include cfgloop.h and tree-data-ref.h.
19 (cond_if_else_store_replacement): Rename to...
20 (cond_if_else_store_replacement_1): ... this. Change arguments and
21 documentation.
22 (cond_if_else_store_replacement): New function.
23 * Makefile.in (tree-ssa-phiopt.o): Adjust dependencies.
24 * params.def (PARAM_MAX_STORES_TO_SINK): Define.
25
26 gcc/testsuite/
27 * gcc.dg/vect/vect-cselim-1.c: New test.
28 * gcc.dg/vect/vect-cselim-2.c: New test.
29
30=== modified file 'gcc/Makefile.in'
31--- old/gcc/Makefile.in 2011-03-26 09:20:34 +0000
32+++ new/gcc/Makefile.in 2011-04-18 11:31:29 +0000
33@@ -2422,7 +2422,8 @@
34 tree-ssa-phiopt.o : tree-ssa-phiopt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
35 $(TM_H) $(GGC_H) $(TREE_H) $(TM_P_H) $(BASIC_BLOCK_H) \
36 $(TREE_FLOW_H) $(TREE_PASS_H) $(TREE_DUMP_H) langhooks.h $(FLAGS_H) \
37- $(DIAGNOSTIC_H) $(TIMEVAR_H) pointer-set.h domwalk.h
38+ $(DIAGNOSTIC_H) $(TIMEVAR_H) pointer-set.h domwalk.h $(CFGLOOP_H) \
39+ $(TREE_DATA_REF_H)
40 tree-nrv.o : tree-nrv.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
41 $(TM_H) $(TREE_H) $(FUNCTION_H) $(BASIC_BLOCK_H) $(FLAGS_H) \
42 $(DIAGNOSTIC_H) $(TREE_FLOW_H) $(TIMEVAR_H) $(TREE_DUMP_H) $(TREE_PASS_H) \
43
44=== modified file 'gcc/doc/invoke.texi'
45--- old/gcc/doc/invoke.texi 2011-03-29 14:24:42 +0000
46+++ new/gcc/doc/invoke.texi 2011-04-18 11:31:29 +0000
47@@ -8909,6 +8909,11 @@
48 The maximum number of namespaces to consult for suggestions when C++
49 name lookup fails for an identifier. The default is 1000.
50
51+@item max-stores-to-sink
52+The maximum number of conditional stores paires that can be sunk. Set to 0
53+if either vectorization (@option{-ftree-vectorize}) or if-conversion
54+(@option{-ftree-loop-if-convert}) is disabled. The default is 2.
55+
56 @end table
57 @end table
58
59
60=== modified file 'gcc/opts.c'
61--- old/gcc/opts.c 2011-02-17 22:51:57 +0000
62+++ new/gcc/opts.c 2011-03-27 09:38:18 +0000
63@@ -823,6 +823,12 @@
64 opts->x_flag_split_stack = 0;
65 }
66 }
67+
68+ /* Set PARAM_MAX_STORES_TO_SINK to 0 if either vectorization or if-conversion
69+ is disabled. */
70+ if (!opts->x_flag_tree_vectorize || !opts->x_flag_tree_loop_if_convert)
71+ maybe_set_param_value (PARAM_MAX_STORES_TO_SINK, 0,
72+ opts->x_param_values, opts_set->x_param_values);
73 }
74
75 #define LEFT_COLUMN 27
76
77=== modified file 'gcc/params.def'
78--- old/gcc/params.def 2011-03-26 09:20:34 +0000
79+++ new/gcc/params.def 2011-04-18 11:31:29 +0000
80@@ -883,6 +883,13 @@
81 "name lookup fails",
82 1000, 0, 0)
83
84+/* Maximum number of conditional store pairs that can be sunk. */
85+DEFPARAM (PARAM_MAX_STORES_TO_SINK,
86+ "max-stores-to-sink",
87+ "Maximum number of conditional store pairs that can be sunk",
88+ 2, 0, 0)
89+
90+
91 /*
92 Local variables:
93 mode:c
94
95=== modified file 'gcc/params.h'
96--- old/gcc/params.h 2011-01-13 13:41:03 +0000
97+++ new/gcc/params.h 2011-03-27 09:38:18 +0000
98@@ -206,4 +206,6 @@
99 PARAM_VALUE (PARAM_PREFETCH_MIN_INSN_TO_MEM_RATIO)
100 #define MIN_NONDEBUG_INSN_UID \
101 PARAM_VALUE (PARAM_MIN_NONDEBUG_INSN_UID)
102+#define MAX_STORES_TO_SINK \
103+ PARAM_VALUE (PARAM_MAX_STORES_TO_SINK)
104 #endif /* ! GCC_PARAMS_H */
105
106=== added file 'gcc/testsuite/gcc.dg/vect/vect-cselim-1.c'
107--- old/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c 1970-01-01 00:00:00 +0000
108+++ new/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c 2011-03-27 09:38:18 +0000
109@@ -0,0 +1,86 @@
110+/* { dg-require-effective-target vect_int } */
111+
112+#include <stdarg.h>
113+#include "tree-vect.h"
114+
115+#define N 50
116+
117+typedef struct {
118+ short a;
119+ short b;
120+} data;
121+
122+data in1[N], in2[N], out[N];
123+short result[N*2] = {7,-7,9,-6,11,-5,13,-4,15,-3,17,-2,19,-1,21,0,23,1,25,2,27,3,29,4,31,5,33,6,35,7,37,8,39,9,41,10,43,11,45,12,47,13,49,14,51,15,53,16,55,17,57,18,59,19,61,20,63,21,65,22,67,23,69,24,71,25,73,26,75,27,77,28,79,29,81,30,83,31,85,32,87,33,89,34,91,35,93,36,95,37,97,38,99,39,101,40,103,41,105,42};
124+short out1[N], out2[N];
125+
126+__attribute__ ((noinline)) void
127+foo ()
128+{
129+ int i;
130+ short c, d;
131+
132+ /* Vectorizable with conditional store sinking. */
133+ for (i = 0; i < N; i++)
134+ {
135+ c = in1[i].b;
136+ d = in2[i].b;
137+
138+ if (c >= d)
139+ {
140+ out[i].b = c;
141+ out[i].a = d + 5;
142+ }
143+ else
144+ {
145+ out[i].b = d - 12;
146+ out[i].a = c + d;
147+ }
148+ }
149+
150+ /* Not vectorizable. */
151+ for (i = 0; i < N; i++)
152+ {
153+ c = in1[i].b;
154+ d = in2[i].b;
155+
156+ if (c >= d)
157+ {
158+ out1[i] = c;
159+ }
160+ else
161+ {
162+ out2[i] = c + d;
163+ }
164+ }
165+}
166+
167+int
168+main (void)
169+{
170+ int i;
171+
172+ check_vect ();
173+
174+ for (i = 0; i < N; i++)
175+ {
176+ in1[i].a = i;
177+ in1[i].b = i + 2;
178+ in2[i].a = 5;
179+ in2[i].b = i + 5;
180+ __asm__ volatile ("");
181+ }
182+
183+ foo ();
184+
185+ for (i = 0; i < N; i++)
186+ {
187+ if (out[i].a != result[2*i] || out[i].b != result[2*i+1])
188+ abort ();
189+ }
190+
191+ return 0;
192+}
193+
194+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { vect_no_align || {! vect_strided } } } } } */
195+/* { dg-final { cleanup-tree-dump "vect" } } */
196
197=== added file 'gcc/testsuite/gcc.dg/vect/vect-cselim-2.c'
198--- old/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c 1970-01-01 00:00:00 +0000
199+++ new/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c 2011-03-27 09:38:18 +0000
200@@ -0,0 +1,65 @@
201+/* { dg-require-effective-target vect_int } */
202+
203+#include <stdarg.h>
204+#include "tree-vect.h"
205+
206+#define N 50
207+
208+int a[N], b[N], in1[N], in2[N];
209+int result[2*N] = {5,-7,7,-6,9,-5,11,-4,13,-3,15,-2,17,-1,19,0,21,1,23,2,25,3,27,4,29,5,31,6,33,7,35,8,37,9,39,10,41,11,43,12,45,13,47,14,49,15,51,16,53,17,55,18,57,19,59,20,61,21,63,22,65,23,67,24,69,25,71,26,73,27,75,28,77,29,79,30,81,31,83,32,85,33,87,34,89,35,91,36,93,37,95,38,97,39,99,40,101,41,103,42};
210+
211+__attribute__ ((noinline)) void
212+foo (int *pa, int *pb)
213+{
214+ int i;
215+ int c, d;
216+
217+ /* Store sinking should not work here since the pointers may alias. */
218+ for (i = 0; i < N; i++)
219+ {
220+ c = in1[i];
221+ d = in2[i];
222+
223+ if (c >= d)
224+ {
225+ *pa = c;
226+ *pb = d + 5;
227+ }
228+ else
229+ {
230+ *pb = d - 12;
231+ *pa = c + d;
232+ }
233+
234+ pa++;
235+ pb++;
236+ }
237+}
238+
239+int
240+main (void)
241+{
242+ int i;
243+
244+ check_vect ();
245+
246+ for (i = 0; i < N; i++)
247+ {
248+ in1[i] = i;
249+ in2[i] = i + 5;
250+ __asm__ volatile ("");
251+ }
252+
253+ foo (a, b);
254+
255+ for (i = 0; i < N; i++)
256+ {
257+ if (a[i] != result[2*i] || b[i] != result[2*i+1])
258+ abort ();
259+ }
260+
261+ return 0;
262+}
263+
264+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 0 "vect" } } */
265+/* { dg-final { cleanup-tree-dump "vect" } } */
266
267=== modified file 'gcc/tree-data-ref.c'
268--- old/gcc/tree-data-ref.c 2011-02-05 01:39:20 +0000
269+++ new/gcc/tree-data-ref.c 2011-03-27 09:38:18 +0000
270@@ -991,6 +991,48 @@
271 return dr;
272 }
273
274+/* Check if OFFSET1 and OFFSET2 (DR_OFFSETs of some data-refs) are identical
275+ expressions. */
276+static bool
277+dr_equal_offsets_p1 (tree offset1, tree offset2)
278+{
279+ bool res;
280+
281+ STRIP_NOPS (offset1);
282+ STRIP_NOPS (offset2);
283+
284+ if (offset1 == offset2)
285+ return true;
286+
287+ if (TREE_CODE (offset1) != TREE_CODE (offset2)
288+ || (!BINARY_CLASS_P (offset1) && !UNARY_CLASS_P (offset1)))
289+ return false;
290+
291+ res = dr_equal_offsets_p1 (TREE_OPERAND (offset1, 0),
292+ TREE_OPERAND (offset2, 0));
293+
294+ if (!res || !BINARY_CLASS_P (offset1))
295+ return res;
296+
297+ res = dr_equal_offsets_p1 (TREE_OPERAND (offset1, 1),
298+ TREE_OPERAND (offset2, 1));
299+
300+ return res;
301+}
302+
303+/* Check if DRA and DRB have equal offsets. */
304+bool
305+dr_equal_offsets_p (struct data_reference *dra,
306+ struct data_reference *drb)
307+{
308+ tree offset1, offset2;
309+
310+ offset1 = DR_OFFSET (dra);
311+ offset2 = DR_OFFSET (drb);
312+
313+ return dr_equal_offsets_p1 (offset1, offset2);
314+}
315+
316 /* Returns true if FNA == FNB. */
317
318 static bool
319@@ -4294,7 +4336,7 @@
320 DATAREFS. Returns chrec_dont_know when failing to analyze a
321 difficult case, returns NULL_TREE otherwise. */
322
323-static tree
324+tree
325 find_data_references_in_bb (struct loop *loop, basic_block bb,
326 VEC (data_reference_p, heap) **datarefs)
327 {
328
329=== modified file 'gcc/tree-data-ref.h'
330--- old/gcc/tree-data-ref.h 2011-01-25 21:24:23 +0000
331+++ new/gcc/tree-data-ref.h 2011-03-27 09:38:18 +0000
332@@ -426,10 +426,14 @@
333 extern void compute_all_dependences (VEC (data_reference_p, heap) *,
334 VEC (ddr_p, heap) **, VEC (loop_p, heap) *,
335 bool);
336+extern tree find_data_references_in_bb (struct loop *, basic_block,
337+ VEC (data_reference_p, heap) **);
338
339 extern void create_rdg_vertices (struct graph *, VEC (gimple, heap) *);
340 extern bool dr_may_alias_p (const struct data_reference *,
341 const struct data_reference *);
342+extern bool dr_equal_offsets_p (struct data_reference *,
343+ struct data_reference *);
344
345
346 /* Return true when the base objects of data references A and B are
347
348=== modified file 'gcc/tree-ssa-phiopt.c'
349--- old/gcc/tree-ssa-phiopt.c 2010-11-03 15:18:50 +0000
350+++ new/gcc/tree-ssa-phiopt.c 2011-03-27 09:38:18 +0000
351@@ -34,6 +34,8 @@
352 #include "langhooks.h"
353 #include "pointer-set.h"
354 #include "domwalk.h"
355+#include "cfgloop.h"
356+#include "tree-data-ref.h"
357
358 static unsigned int tree_ssa_phiopt (void);
359 static unsigned int tree_ssa_phiopt_worker (bool);
360@@ -1292,35 +1294,18 @@
361 return true;
362 }
363
364-/* Do the main work of conditional store replacement. We already know
365- that the recognized pattern looks like so:
366-
367- split:
368- if (cond) goto THEN_BB; else goto ELSE_BB (edge E1)
369- THEN_BB:
370- X = Y;
371- goto JOIN_BB;
372- ELSE_BB:
373- X = Z;
374- fallthrough (edge E0)
375- JOIN_BB:
376- some more
377-
378- We check that THEN_BB and ELSE_BB contain only one store
379- that the stores have a "simple" RHS. */
380+/* Do the main work of conditional store replacement. */
381
382 static bool
383-cond_if_else_store_replacement (basic_block then_bb, basic_block else_bb,
384- basic_block join_bb)
385+cond_if_else_store_replacement_1 (basic_block then_bb, basic_block else_bb,
386+ basic_block join_bb, gimple then_assign,
387+ gimple else_assign)
388 {
389- gimple then_assign = last_and_only_stmt (then_bb);
390- gimple else_assign = last_and_only_stmt (else_bb);
391 tree lhs_base, lhs, then_rhs, else_rhs;
392 source_location then_locus, else_locus;
393 gimple_stmt_iterator gsi;
394 gimple newphi, new_stmt;
395
396- /* Check if then_bb and else_bb contain only one store each. */
397 if (then_assign == NULL
398 || !gimple_assign_single_p (then_assign)
399 || else_assign == NULL
400@@ -1385,6 +1370,190 @@
401 return true;
402 }
403
404+/* Conditional store replacement. We already know
405+ that the recognized pattern looks like so:
406+
407+ split:
408+ if (cond) goto THEN_BB; else goto ELSE_BB (edge E1)
409+ THEN_BB:
410+ ...
411+ X = Y;
412+ ...
413+ goto JOIN_BB;
414+ ELSE_BB:
415+ ...
416+ X = Z;
417+ ...
418+ fallthrough (edge E0)
419+ JOIN_BB:
420+ some more
421+
422+ We check that it is safe to sink the store to JOIN_BB by verifying that
423+ there are no read-after-write or write-after-write dependencies in
424+ THEN_BB and ELSE_BB. */
425+
426+static bool
427+cond_if_else_store_replacement (basic_block then_bb, basic_block else_bb,
428+ basic_block join_bb)
429+{
430+ gimple then_assign = last_and_only_stmt (then_bb);
431+ gimple else_assign = last_and_only_stmt (else_bb);
432+ VEC (data_reference_p, heap) *then_datarefs, *else_datarefs;
433+ VEC (ddr_p, heap) *then_ddrs, *else_ddrs;
434+ gimple then_store, else_store;
435+ bool found, ok = false, res;
436+ struct data_dependence_relation *ddr;
437+ data_reference_p then_dr, else_dr;
438+ int i, j;
439+ tree then_lhs, else_lhs;
440+ VEC (gimple, heap) *then_stores, *else_stores;
441+ basic_block blocks[3];
442+
443+ if (MAX_STORES_TO_SINK == 0)
444+ return false;
445+
446+ /* Handle the case with single statement in THEN_BB and ELSE_BB. */
447+ if (then_assign && else_assign)
448+ return cond_if_else_store_replacement_1 (then_bb, else_bb, join_bb,
449+ then_assign, else_assign);
450+
451+ /* Find data references. */
452+ then_datarefs = VEC_alloc (data_reference_p, heap, 1);
453+ else_datarefs = VEC_alloc (data_reference_p, heap, 1);
454+ if ((find_data_references_in_bb (NULL, then_bb, &then_datarefs)
455+ == chrec_dont_know)
456+ || !VEC_length (data_reference_p, then_datarefs)
457+ || (find_data_references_in_bb (NULL, else_bb, &else_datarefs)
458+ == chrec_dont_know)
459+ || !VEC_length (data_reference_p, else_datarefs))
460+ {
461+ free_data_refs (then_datarefs);
462+ free_data_refs (else_datarefs);
463+ return false;
464+ }
465+
466+ /* Find pairs of stores with equal LHS. */
467+ then_stores = VEC_alloc (gimple, heap, 1);
468+ else_stores = VEC_alloc (gimple, heap, 1);
469+ FOR_EACH_VEC_ELT (data_reference_p, then_datarefs, i, then_dr)
470+ {
471+ if (DR_IS_READ (then_dr))
472+ continue;
473+
474+ then_store = DR_STMT (then_dr);
475+ then_lhs = gimple_assign_lhs (then_store);
476+ found = false;
477+
478+ FOR_EACH_VEC_ELT (data_reference_p, else_datarefs, j, else_dr)
479+ {
480+ if (DR_IS_READ (else_dr))
481+ continue;
482+
483+ else_store = DR_STMT (else_dr);
484+ else_lhs = gimple_assign_lhs (else_store);
485+
486+ if (operand_equal_p (then_lhs, else_lhs, 0))
487+ {
488+ found = true;
489+ break;
490+ }
491+ }
492+
493+ if (!found)
494+ continue;
495+
496+ VEC_safe_push (gimple, heap, then_stores, then_store);
497+ VEC_safe_push (gimple, heap, else_stores, else_store);
498+ }
499+
500+ /* No pairs of stores found. */
501+ if (!VEC_length (gimple, then_stores)
502+ || VEC_length (gimple, then_stores) > (unsigned) MAX_STORES_TO_SINK)
503+ {
504+ free_data_refs (then_datarefs);
505+ free_data_refs (else_datarefs);
506+ VEC_free (gimple, heap, then_stores);
507+ VEC_free (gimple, heap, else_stores);
508+ return false;
509+ }
510+
511+ /* Compute and check data dependencies in both basic blocks. */
512+ then_ddrs = VEC_alloc (ddr_p, heap, 1);
513+ else_ddrs = VEC_alloc (ddr_p, heap, 1);
514+ compute_all_dependences (then_datarefs, &then_ddrs, NULL, false);
515+ compute_all_dependences (else_datarefs, &else_ddrs, NULL, false);
516+ blocks[0] = then_bb;
517+ blocks[1] = else_bb;
518+ blocks[2] = join_bb;
519+ renumber_gimple_stmt_uids_in_blocks (blocks, 3);
520+
521+ /* Check that there are no read-after-write or write-after-write dependencies
522+ in THEN_BB. */
523+ FOR_EACH_VEC_ELT (ddr_p, then_ddrs, i, ddr)
524+ {
525+ struct data_reference *dra = DDR_A (ddr);
526+ struct data_reference *drb = DDR_B (ddr);
527+
528+ if (DDR_ARE_DEPENDENT (ddr) != chrec_known
529+ && ((DR_IS_READ (dra) && DR_IS_WRITE (drb)
530+ && gimple_uid (DR_STMT (dra)) > gimple_uid (DR_STMT (drb)))
531+ || (DR_IS_READ (drb) && DR_IS_WRITE (dra)
532+ && gimple_uid (DR_STMT (drb)) > gimple_uid (DR_STMT (dra)))
533+ || (DR_IS_WRITE (dra) && DR_IS_WRITE (drb))))
534+ {
535+ free_dependence_relations (then_ddrs);
536+ free_dependence_relations (else_ddrs);
537+ free_data_refs (then_datarefs);
538+ free_data_refs (else_datarefs);
539+ VEC_free (gimple, heap, then_stores);
540+ VEC_free (gimple, heap, else_stores);
541+ return false;
542+ }
543+ }
544+
545+ /* Check that there are no read-after-write or write-after-write dependencies
546+ in ELSE_BB. */
547+ FOR_EACH_VEC_ELT (ddr_p, else_ddrs, i, ddr)
548+ {
549+ struct data_reference *dra = DDR_A (ddr);
550+ struct data_reference *drb = DDR_B (ddr);
551+
552+ if (DDR_ARE_DEPENDENT (ddr) != chrec_known
553+ && ((DR_IS_READ (dra) && DR_IS_WRITE (drb)
554+ && gimple_uid (DR_STMT (dra)) > gimple_uid (DR_STMT (drb)))
555+ || (DR_IS_READ (drb) && DR_IS_WRITE (dra)
556+ && gimple_uid (DR_STMT (drb)) > gimple_uid (DR_STMT (dra)))
557+ || (DR_IS_WRITE (dra) && DR_IS_WRITE (drb))))
558+ {
559+ free_dependence_relations (then_ddrs);
560+ free_dependence_relations (else_ddrs);
561+ free_data_refs (then_datarefs);
562+ free_data_refs (else_datarefs);
563+ VEC_free (gimple, heap, then_stores);
564+ VEC_free (gimple, heap, else_stores);
565+ return false;
566+ }
567+ }
568+
569+ /* Sink stores with same LHS. */
570+ FOR_EACH_VEC_ELT (gimple, then_stores, i, then_store)
571+ {
572+ else_store = VEC_index (gimple, else_stores, i);
573+ res = cond_if_else_store_replacement_1 (then_bb, else_bb, join_bb,
574+ then_store, else_store);
575+ ok = ok || res;
576+ }
577+
578+ free_dependence_relations (then_ddrs);
579+ free_dependence_relations (else_ddrs);
580+ free_data_refs (then_datarefs);
581+ free_data_refs (else_datarefs);
582+ VEC_free (gimple, heap, then_stores);
583+ VEC_free (gimple, heap, else_stores);
584+
585+ return ok;
586+}
587+
588 /* Always do these optimizations if we have SSA
589 trees to work on. */
590 static bool
591
592=== modified file 'gcc/tree-vect-data-refs.c'
593--- old/gcc/tree-vect-data-refs.c 2011-02-25 11:18:14 +0000
594+++ new/gcc/tree-vect-data-refs.c 2011-03-27 09:38:18 +0000
595@@ -289,39 +289,6 @@
596 }
597 }
598
599-
600-/* Function vect_equal_offsets.
601-
602- Check if OFFSET1 and OFFSET2 are identical expressions. */
603-
604-static bool
605-vect_equal_offsets (tree offset1, tree offset2)
606-{
607- bool res;
608-
609- STRIP_NOPS (offset1);
610- STRIP_NOPS (offset2);
611-
612- if (offset1 == offset2)
613- return true;
614-
615- if (TREE_CODE (offset1) != TREE_CODE (offset2)
616- || (!BINARY_CLASS_P (offset1) && !UNARY_CLASS_P (offset1)))
617- return false;
618-
619- res = vect_equal_offsets (TREE_OPERAND (offset1, 0),
620- TREE_OPERAND (offset2, 0));
621-
622- if (!res || !BINARY_CLASS_P (offset1))
623- return res;
624-
625- res = vect_equal_offsets (TREE_OPERAND (offset1, 1),
626- TREE_OPERAND (offset2, 1));
627-
628- return res;
629-}
630-
631-
632 /* Check dependence between DRA and DRB for basic block vectorization.
633 If the accesses share same bases and offsets, we can compare their initial
634 constant offsets to decide whether they differ or not. In case of a read-
635@@ -352,7 +319,7 @@
636 || TREE_CODE (DR_BASE_ADDRESS (drb)) != ADDR_EXPR
637 || TREE_OPERAND (DR_BASE_ADDRESS (dra), 0)
638 != TREE_OPERAND (DR_BASE_ADDRESS (drb),0)))
639- || !vect_equal_offsets (DR_OFFSET (dra), DR_OFFSET (drb)))
640+ || !dr_equal_offsets_p (dra, drb))
641 return true;
642
643 /* Check the types. */
644@@ -402,7 +369,7 @@
645 || TREE_CODE (DR_BASE_ADDRESS (drb)) != ADDR_EXPR
646 || TREE_OPERAND (DR_BASE_ADDRESS (dra), 0)
647 != TREE_OPERAND (DR_BASE_ADDRESS (drb),0)))
648- || !vect_equal_offsets (DR_OFFSET (dra), DR_OFFSET (drb))
649+ || !dr_equal_offsets_p (dra, drb)
650 || !tree_int_cst_compare (DR_INIT (dra), DR_INIT (drb))
651 || DR_IS_READ (dra) != DR_IS_READ (drb))
652 return false;
653
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch
new file mode 100644
index 0000000000..017b1df7e3
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106737.patch
@@ -0,0 +1,126 @@
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
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106738.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106738.patch
new file mode 100644
index 0000000000..3dde3b29a1
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106738.patch
@@ -0,0 +1,177 @@
12011-04-27 Ira Rosen <ira.rosen@linaro.org>
2
3 Backport from FSF:
4
5 2011-04-03 Richard Guenther <rguenther@suse.de>
6 Ira Rosen <ira.rosen@linaro.org>
7
8 gcc/
9 * tree-if-conv.c (memrefs_read_or_written_unconditionally): Strip all
10 non-variable offsets and compare the remaining bases of the two
11 accesses instead of looking for exact same data-ref.
12
13 gcc/testsuite/
14 * gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c: New test.
15 * gcc.dg/vect/vect.exp: Run if-cvt-stores-vect* tests with
16 -ftree-loop-if-convert-stores.
17
18=== added file 'gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c'
19--- old/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c 1970-01-01 00:00:00 +0000
20+++ new/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c 2011-04-24 07:45:49 +0000
21@@ -0,0 +1,69 @@
22+/* { dg-require-effective-target vect_int } */
23+
24+#include <stdarg.h>
25+#include "tree-vect.h"
26+
27+#define N 50
28+
29+typedef struct {
30+ short a;
31+ short b;
32+} data;
33+
34+data in1[N], in2[N], out[N];
35+short result[N*2] = {10,-7,11,-6,12,-5,13,-4,14,-3,15,-2,16,-1,17,0,18,1,19,2,20,3,21,4,22,5,23,6,24,7,25,8,26,9,27,10,28,11,29,12,30,13,31,14,32,15,33,16,34,17,35,18,36,19,37,20,38,21,39,22,40,23,41,24,42,25,43,26,44,27,45,28,46,29,47,30,48,31,49,32,50,33,51,34,52,35,53,36,54,37,55,38,56,39,57,40,58,41,59,42};
36+short out1[N], out2[N];
37+
38+__attribute__ ((noinline)) void
39+foo ()
40+{
41+ int i;
42+ short c, d;
43+
44+ for (i = 0; i < N; i++)
45+ {
46+ c = in1[i].b;
47+ d = in2[i].b;
48+
49+ if (c >= d)
50+ {
51+ out[i].b = in1[i].a;
52+ out[i].a = d + 5;
53+ }
54+ else
55+ {
56+ out[i].b = d - 12;
57+ out[i].a = in2[i].a + d;
58+ }
59+ }
60+}
61+
62+int
63+main (void)
64+{
65+ int i;
66+
67+ check_vect ();
68+
69+ for (i = 0; i < N; i++)
70+ {
71+ in1[i].a = i;
72+ in1[i].b = i + 2;
73+ in2[i].a = 5;
74+ in2[i].b = i + 5;
75+ __asm__ volatile ("");
76+ }
77+
78+ foo ();
79+
80+ for (i = 0; i < N; i++)
81+ {
82+ if (out[i].a != result[2*i] || out[i].b != result[2*i+1])
83+ abort ();
84+ }
85+
86+ return 0;
87+}
88+
89+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { vect_no_align || {! vect_strided } } } } } */
90+/* { dg-final { cleanup-tree-dump "vect" } } */
91
92=== modified file 'gcc/testsuite/gcc.dg/vect/vect.exp'
93--- old/gcc/testsuite/gcc.dg/vect/vect.exp 2010-11-22 21:49:19 +0000
94+++ new/gcc/testsuite/gcc.dg/vect/vect.exp 2011-04-24 07:45:49 +0000
95@@ -210,6 +210,12 @@
96 dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/ggc-*.\[cS\]]] \
97 "" $DEFAULT_VECTCFLAGS
98
99+# -ftree-loop-if-convert-stores
100+set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS
101+lappend DEFAULT_VECTCFLAGS "-ftree-loop-if-convert-stores"
102+dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/if-cvt-stores-vect-*.\[cS\]]] \
103+ "" $DEFAULT_VECTCFLAGS
104+
105 # With -O3.
106 # Don't allow IPA cloning, because it throws our counts out of whack.
107 set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS
108
109=== modified file 'gcc/tree-if-conv.c'
110--- old/gcc/tree-if-conv.c 2011-02-23 16:49:52 +0000
111+++ new/gcc/tree-if-conv.c 2011-04-24 07:45:49 +0000
112@@ -464,8 +464,8 @@
113 /* Returns true when the memory references of STMT are read or written
114 unconditionally. In other words, this function returns true when
115 for every data reference A in STMT there exist other accesses to
116- the same data reference with predicates that add up (OR-up) to the
117- true predicate: this ensures that the data reference A is touched
118+ a data reference with the same base with predicates that add up (OR-up) to
119+ the true predicate: this ensures that the data reference A is touched
120 (read or written) on every iteration of the if-converted loop. */
121
122 static bool
123@@ -489,21 +489,38 @@
124 continue;
125
126 for (j = 0; VEC_iterate (data_reference_p, drs, j, b); j++)
127- if (DR_STMT (b) != stmt
128- && same_data_refs (a, b))
129- {
130- tree cb = bb_predicate (gimple_bb (DR_STMT (b)));
131-
132- if (DR_RW_UNCONDITIONALLY (b) == 1
133- || is_true_predicate (cb)
134- || is_true_predicate (ca = fold_or_predicates (EXPR_LOCATION (cb),
135- ca, cb)))
136- {
137- DR_RW_UNCONDITIONALLY (a) = 1;
138- DR_RW_UNCONDITIONALLY (b) = 1;
139- found = true;
140- break;
141- }
142+ {
143+ tree ref_base_a = DR_REF (a);
144+ tree ref_base_b = DR_REF (b);
145+
146+ if (DR_STMT (b) == stmt)
147+ continue;
148+
149+ while (TREE_CODE (ref_base_a) == COMPONENT_REF
150+ || TREE_CODE (ref_base_a) == IMAGPART_EXPR
151+ || TREE_CODE (ref_base_a) == REALPART_EXPR)
152+ ref_base_a = TREE_OPERAND (ref_base_a, 0);
153+
154+ while (TREE_CODE (ref_base_b) == COMPONENT_REF
155+ || TREE_CODE (ref_base_b) == IMAGPART_EXPR
156+ || TREE_CODE (ref_base_b) == REALPART_EXPR)
157+ ref_base_b = TREE_OPERAND (ref_base_b, 0);
158+
159+ if (!operand_equal_p (ref_base_a, ref_base_b, 0))
160+ {
161+ tree cb = bb_predicate (gimple_bb (DR_STMT (b)));
162+
163+ if (DR_RW_UNCONDITIONALLY (b) == 1
164+ || is_true_predicate (cb)
165+ || is_true_predicate (ca
166+ = fold_or_predicates (EXPR_LOCATION (cb), ca, cb)))
167+ {
168+ DR_RW_UNCONDITIONALLY (a) = 1;
169+ DR_RW_UNCONDITIONALLY (b) = 1;
170+ found = true;
171+ break;
172+ }
173+ }
174 }
175
176 if (!found)
177
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106739.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106739.patch
new file mode 100644
index 0000000000..2c14ceb8cb
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106739.patch
@@ -0,0 +1,140 @@
12011-05-02 Ira Rosen <ira.rosen@linaro.org>
2
3 Backport from FSF:
4
5 2011-03-27 Ira Rosen <ira.rosen@linaro.org>
6
7 gcc/
8 * config/arm/arm.c (arm_autovectorize_vector_sizes): New function.
9 (TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES): Define.
10
11 gcc/testsuite/
12 * gcc.dg/vect/vect-outer-5.c: Reduce the distance between data
13 accesses to preserve the meaning of the test for doubleword vectors.
14 * gcc.dg/vect/no-vfa-pr29145.c: Likewise.
15 * gcc.dg/vect/slp-3.c: Reduce the loop bound for the same reason.
16
17=== modified file 'gcc/config/arm/arm.c'
18--- old/gcc/config/arm/arm.c 2011-03-02 11:38:43 +0000
19+++ new/gcc/config/arm/arm.c 2011-04-28 11:46:58 +0000
20@@ -250,6 +250,7 @@
21 bool is_packed);
22 static void arm_conditional_register_usage (void);
23 static reg_class_t arm_preferred_rename_class (reg_class_t rclass);
24+static unsigned int arm_autovectorize_vector_sizes (void);
25
26
27 /* Table of machine attributes. */
28@@ -395,6 +396,9 @@
29 #define TARGET_VECTOR_MODE_SUPPORTED_P arm_vector_mode_supported_p
30 #undef TARGET_VECTORIZE_PREFERRED_SIMD_MODE
31 #define TARGET_VECTORIZE_PREFERRED_SIMD_MODE arm_preferred_simd_mode
32+#undef TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES
33+#define TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES \
34+ arm_autovectorize_vector_sizes
35
36 #undef TARGET_MACHINE_DEPENDENT_REORG
37 #define TARGET_MACHINE_DEPENDENT_REORG arm_reorg
38@@ -23511,6 +23515,12 @@
39 }
40 }
41
42+static unsigned int
43+arm_autovectorize_vector_sizes (void)
44+{
45+ return TARGET_NEON_VECTORIZE_QUAD ? 16 | 8 : 0;
46+}
47+
48 static bool
49 arm_vector_alignment_reachable (const_tree type, bool is_packed)
50 {
51
52=== modified file 'gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c'
53--- old/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c 2010-10-04 14:59:30 +0000
54+++ new/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c 2011-04-28 11:46:58 +0000
55@@ -8,7 +8,7 @@
56 void with_restrict(int * __restrict p)
57 {
58 int i;
59- int *q = p - 2;
60+ int *q = p - 1;
61
62 for (i = 0; i < 1000; ++i) {
63 p[i] = q[i];
64@@ -19,7 +19,7 @@
65 void without_restrict(int * p)
66 {
67 int i;
68- int *q = p - 2;
69+ int *q = p - 1;
70
71 for (i = 0; i < 1000; ++i) {
72 p[i] = q[i];
73@@ -38,8 +38,8 @@
74 a[i] = b[i] = i;
75 }
76
77- with_restrict(a + 2);
78- without_restrict(b + 2);
79+ with_restrict(a + 1);
80+ without_restrict(b + 1);
81
82 for (i = 0; i < 1002; ++i) {
83 if (a[i] != b[i])
84
85=== modified file 'gcc/testsuite/gcc.dg/vect/slp-3.c'
86--- old/gcc/testsuite/gcc.dg/vect/slp-3.c 2010-11-22 12:16:52 +0000
87+++ new/gcc/testsuite/gcc.dg/vect/slp-3.c 2011-04-28 11:46:58 +0000
88@@ -4,9 +4,9 @@
89 #include <stdarg.h>
90 #include "tree-vect.h"
91
92-#define N 8
93+#define N 12
94
95-unsigned short in[N*8] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63};
96+unsigned short in[N*8] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31};
97
98 int
99 main1 ()
100@@ -101,7 +101,7 @@
101 }
102
103 /* SLP with unrolling by 8. */
104- for (i = 0; i < N/2; i++)
105+ for (i = 0; i < N/4; i++)
106 {
107 out[i*9] = in[i*9];
108 out[i*9 + 1] = in[i*9 + 1];
109@@ -115,7 +115,7 @@
110 }
111
112 /* check results: */
113- for (i = 0; i < N/2; i++)
114+ for (i = 0; i < N/4; i++)
115 {
116 if (out[i*9] != in[i*9]
117 || out[i*9 + 1] != in[i*9 + 1]
118
119=== modified file 'gcc/testsuite/gcc.dg/vect/vect-outer-5.c'
120--- old/gcc/testsuite/gcc.dg/vect/vect-outer-5.c 2010-11-22 12:16:52 +0000
121+++ new/gcc/testsuite/gcc.dg/vect/vect-outer-5.c 2011-04-28 11:46:58 +0000
122@@ -17,7 +17,7 @@
123 float B[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__)));
124 float C[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__)));
125 float D[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__)));
126- float E[4] = {0,1,2,480};
127+ float E[4] = {0,480,960,1440};
128 float s;
129
130 int i, j;
131@@ -55,7 +55,7 @@
132 s = 0;
133 for (j=0; j<N; j+=4)
134 s += C[j];
135- B[i+3] = B[i] + s;
136+ B[i+1] = B[i] + s;
137 }
138
139 /* check results: */
140
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106740.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106740.patch
new file mode 100644
index 0000000000..11a1da6709
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106740.patch
@@ -0,0 +1,294 @@
12011-05-04 Richard Sandiford <richard.sandiford@linaro.org>
2
3 Backport from mainline:
4
5 2011-03-29 Richard Sandiford <richard.sandiford@linaro.org>
6
7 PR debug/48190
8 * dwarf2out.c (dw_loc_list_node): Add resolved_addr and replaced.
9 (cached_dw_loc_list_def): New structure.
10 (cached_dw_loc_list): New typedef.
11 (cached_dw_loc_list_table): New variable.
12 (cached_dw_loc_list_table_hash): New function.
13 (cached_dw_loc_list_table_eq): Likewise.
14 (add_location_or_const_value_attribute): Take a bool cache_p.
15 Cache the list when the parameter is true.
16 (gen_formal_parameter_die): Update caller.
17 (gen_variable_die): Likewise.
18 (dwarf2out_finish): Likewise.
19 (dwarf2out_abstract_function): Nullify cached_dw_loc_list_table
20 while generating debug info for the decl.
21 (dwarf2out_function_decl): Clear cached_dw_loc_list_table.
22 (dwarf2out_init): Initialize cached_dw_loc_list_table.
23 (resolve_addr): Cache the result of resolving a chain of
24 location lists.
25
26=== modified file 'gcc/dwarf2out.c'
27--- old/gcc/dwarf2out.c 2011-03-29 22:47:59 +0000
28+++ new/gcc/dwarf2out.c 2011-05-04 13:20:12 +0000
29@@ -4427,6 +4427,11 @@
30 const char *section; /* Section this loclist is relative to */
31 dw_loc_descr_ref expr;
32 hashval_t hash;
33+ /* True if all addresses in this and subsequent lists are known to be
34+ resolved. */
35+ bool resolved_addr;
36+ /* True if this list has been replaced by dw_loc_next. */
37+ bool replaced;
38 bool emitted;
39 } dw_loc_list_node;
40
41@@ -6087,6 +6092,19 @@
42 /* Table of decl location linked lists. */
43 static GTY ((param_is (var_loc_list))) htab_t decl_loc_table;
44
45+/* A cached location list. */
46+struct GTY (()) cached_dw_loc_list_def {
47+ /* The DECL_UID of the decl that this entry describes. */
48+ unsigned int decl_id;
49+
50+ /* The cached location list. */
51+ dw_loc_list_ref loc_list;
52+};
53+typedef struct cached_dw_loc_list_def cached_dw_loc_list;
54+
55+/* Table of cached location lists. */
56+static GTY ((param_is (cached_dw_loc_list))) htab_t cached_dw_loc_list_table;
57+
58 /* A pointer to the base of a list of references to DIE's that
59 are uniquely identified by their tag, presence/absence of
60 children DIE's, and list of attribute/value pairs. */
61@@ -6434,7 +6452,7 @@
62 static void insert_double (double_int, unsigned char *);
63 static void insert_float (const_rtx, unsigned char *);
64 static rtx rtl_for_decl_location (tree);
65-static bool add_location_or_const_value_attribute (dw_die_ref, tree,
66+static bool add_location_or_const_value_attribute (dw_die_ref, tree, bool,
67 enum dwarf_attribute);
68 static bool tree_add_const_value_attribute (dw_die_ref, tree);
69 static bool tree_add_const_value_attribute_for_decl (dw_die_ref, tree);
70@@ -8168,6 +8186,24 @@
71 htab_find_with_hash (decl_loc_table, decl, DECL_UID (decl));
72 }
73
74+/* Returns a hash value for X (which really is a cached_dw_loc_list_list). */
75+
76+static hashval_t
77+cached_dw_loc_list_table_hash (const void *x)
78+{
79+ return (hashval_t) ((const cached_dw_loc_list *) x)->decl_id;
80+}
81+
82+/* Return nonzero if decl_id of cached_dw_loc_list X is the same as
83+ UID of decl *Y. */
84+
85+static int
86+cached_dw_loc_list_table_eq (const void *x, const void *y)
87+{
88+ return (((const cached_dw_loc_list *) x)->decl_id
89+ == DECL_UID ((const_tree) y));
90+}
91+
92 /* Equate a DIE to a particular declaration. */
93
94 static void
95@@ -16965,15 +17001,22 @@
96 these things can crop up in other ways also.) Note that one type of
97 constant value which can be passed into an inlined function is a constant
98 pointer. This can happen for example if an actual argument in an inlined
99- function call evaluates to a compile-time constant address. */
100+ function call evaluates to a compile-time constant address.
101+
102+ CACHE_P is true if it is worth caching the location list for DECL,
103+ so that future calls can reuse it rather than regenerate it from scratch.
104+ This is true for BLOCK_NONLOCALIZED_VARS in inlined subroutines,
105+ since we will need to refer to them each time the function is inlined. */
106
107 static bool
108-add_location_or_const_value_attribute (dw_die_ref die, tree decl,
109+add_location_or_const_value_attribute (dw_die_ref die, tree decl, bool cache_p,
110 enum dwarf_attribute attr)
111 {
112 rtx rtl;
113 dw_loc_list_ref list;
114 var_loc_list *loc_list;
115+ cached_dw_loc_list *cache;
116+ void **slot;
117
118 if (TREE_CODE (decl) == ERROR_MARK)
119 return false;
120@@ -17010,7 +17053,33 @@
121 && add_const_value_attribute (die, rtl))
122 return true;
123 }
124- list = loc_list_from_tree (decl, decl_by_reference_p (decl) ? 0 : 2);
125+ /* If this decl is from BLOCK_NONLOCALIZED_VARS, we might need its
126+ list several times. See if we've already cached the contents. */
127+ list = NULL;
128+ if (loc_list == NULL || cached_dw_loc_list_table == NULL)
129+ cache_p = false;
130+ if (cache_p)
131+ {
132+ cache = (cached_dw_loc_list *)
133+ htab_find_with_hash (cached_dw_loc_list_table, decl, DECL_UID (decl));
134+ if (cache)
135+ list = cache->loc_list;
136+ }
137+ if (list == NULL)
138+ {
139+ list = loc_list_from_tree (decl, decl_by_reference_p (decl) ? 0 : 2);
140+ /* It is usually worth caching this result if the decl is from
141+ BLOCK_NONLOCALIZED_VARS and if the list has at least two elements. */
142+ if (cache_p && list && list->dw_loc_next)
143+ {
144+ slot = htab_find_slot_with_hash (cached_dw_loc_list_table, decl,
145+ DECL_UID (decl), INSERT);
146+ cache = ggc_alloc_cleared_cached_dw_loc_list ();
147+ cache->decl_id = DECL_UID (decl);
148+ cache->loc_list = list;
149+ *slot = cache;
150+ }
151+ }
152 if (list)
153 {
154 add_AT_location_description (die, attr, list);
155@@ -18702,7 +18771,7 @@
156 equate_decl_number_to_die (node, parm_die);
157 if (! DECL_ABSTRACT (node_or_origin))
158 add_location_or_const_value_attribute (parm_die, node_or_origin,
159- DW_AT_location);
160+ node == NULL, DW_AT_location);
161
162 break;
163
164@@ -18887,6 +18956,7 @@
165 tree context;
166 int was_abstract;
167 htab_t old_decl_loc_table;
168+ htab_t old_cached_dw_loc_list_table;
169
170 /* Make sure we have the actual abstract inline, not a clone. */
171 decl = DECL_ORIGIN (decl);
172@@ -18901,6 +18971,8 @@
173 get locations in abstract instantces. */
174 old_decl_loc_table = decl_loc_table;
175 decl_loc_table = NULL;
176+ old_cached_dw_loc_list_table = cached_dw_loc_list_table;
177+ cached_dw_loc_list_table = NULL;
178
179 /* Be sure we've emitted the in-class declaration DIE (if any) first, so
180 we don't get confused by DECL_ABSTRACT. */
181@@ -18925,6 +18997,7 @@
182
183 current_function_decl = save_fn;
184 decl_loc_table = old_decl_loc_table;
185+ cached_dw_loc_list_table = old_cached_dw_loc_list_table;
186 pop_cfun ();
187 }
188
189@@ -19709,9 +19782,8 @@
190 && !TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl_or_origin)))
191 defer_location (decl_or_origin, var_die);
192 else
193- add_location_or_const_value_attribute (var_die,
194- decl_or_origin,
195- DW_AT_location);
196+ add_location_or_const_value_attribute (var_die, decl_or_origin,
197+ decl == NULL, DW_AT_location);
198 add_pubname (decl_or_origin, var_die);
199 }
200 else
201@@ -21498,6 +21570,7 @@
202 dwarf2out_decl (decl);
203
204 htab_empty (decl_loc_table);
205+ htab_empty (cached_dw_loc_list_table);
206 }
207
208 /* Output a marker (i.e. a label) for the beginning of the generated code for
209@@ -22230,6 +22303,11 @@
210 decl_loc_table = htab_create_ggc (10, decl_loc_table_hash,
211 decl_loc_table_eq, NULL);
212
213+ /* Allocate the cached_dw_loc_list_table. */
214+ cached_dw_loc_list_table
215+ = htab_create_ggc (10, cached_dw_loc_list_table_hash,
216+ cached_dw_loc_list_table_eq, NULL);
217+
218 /* Allocate the initial hunk of the decl_scope_table. */
219 decl_scope_table = VEC_alloc (tree, gc, 256);
220
221@@ -22870,30 +22948,53 @@
222 {
223 dw_die_ref c;
224 dw_attr_ref a;
225- dw_loc_list_ref *curr;
226+ dw_loc_list_ref *curr, *start, loc;
227 unsigned ix;
228
229 FOR_EACH_VEC_ELT (dw_attr_node, die->die_attr, ix, a)
230 switch (AT_class (a))
231 {
232 case dw_val_class_loc_list:
233- curr = AT_loc_list_ptr (a);
234- while (*curr)
235+ start = curr = AT_loc_list_ptr (a);
236+ loc = *curr;
237+ gcc_assert (loc);
238+ /* The same list can be referenced more than once. See if we have
239+ already recorded the result from a previous pass. */
240+ if (loc->replaced)
241+ *curr = loc->dw_loc_next;
242+ else if (!loc->resolved_addr)
243 {
244- if (!resolve_addr_in_expr ((*curr)->expr))
245+ /* As things stand, we do not expect or allow one die to
246+ reference a suffix of another die's location list chain.
247+ References must be identical or completely separate.
248+ There is therefore no need to cache the result of this
249+ pass on any list other than the first; doing so
250+ would lead to unnecessary writes. */
251+ while (*curr)
252 {
253- dw_loc_list_ref next = (*curr)->dw_loc_next;
254- if (next && (*curr)->ll_symbol)
255+ gcc_assert (!(*curr)->replaced && !(*curr)->resolved_addr);
256+ if (!resolve_addr_in_expr ((*curr)->expr))
257 {
258- gcc_assert (!next->ll_symbol);
259- next->ll_symbol = (*curr)->ll_symbol;
260+ dw_loc_list_ref next = (*curr)->dw_loc_next;
261+ if (next && (*curr)->ll_symbol)
262+ {
263+ gcc_assert (!next->ll_symbol);
264+ next->ll_symbol = (*curr)->ll_symbol;
265+ }
266+ *curr = next;
267 }
268- *curr = next;
269+ else
270+ curr = &(*curr)->dw_loc_next;
271 }
272+ if (loc == *start)
273+ loc->resolved_addr = 1;
274 else
275- curr = &(*curr)->dw_loc_next;
276+ {
277+ loc->replaced = 1;
278+ loc->dw_loc_next = *start;
279+ }
280 }
281- if (!AT_loc_list (a))
282+ if (!*start)
283 {
284 remove_AT (die, a->dw_attr);
285 ix--;
286@@ -23322,6 +23423,7 @@
287 add_location_or_const_value_attribute (
288 VEC_index (deferred_locations, deferred_locations_list, i)->die,
289 VEC_index (deferred_locations, deferred_locations_list, i)->variable,
290+ false,
291 DW_AT_location);
292 }
293
294
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106741.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106741.patch
new file mode 100644
index 0000000000..84f6f64989
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106741.patch
@@ -0,0 +1,254 @@
12011-04-26 Andrew Stubbs <ams@codesourcery.com>
2
3 Backport from FSF:
4
5 2011-04-15 Maxim Kuvyrkov <maxim@codesourcery.com>
6
7 gcc/
8 * combine.c (subst, combine_simlify_rtx): Add new argument, use it
9 to track processing of conditionals. Update all callers.
10 (try_combine, simplify_if_then_else): Update.
11
12 2011-04-25 Maxim Kuvyrkov <maxim@codesourcery.com>
13 Eric Botcazou <ebotcazou@adacore.com>
14
15 gcc/
16 * combine.c (combine_simplify_rtx): Avoid mis-simplifying conditionals
17 for STORE_FLAG_VALUE==-1 case.
18
19=== modified file 'gcc/combine.c'
20--- old/gcc/combine.c 2011-02-15 19:46:26 +0000
21+++ new/gcc/combine.c 2011-04-26 17:03:58 +0000
22@@ -391,8 +391,8 @@
23 static void undo_all (void);
24 static void undo_commit (void);
25 static rtx *find_split_point (rtx *, rtx, bool);
26-static rtx subst (rtx, rtx, rtx, int, int);
27-static rtx combine_simplify_rtx (rtx, enum machine_mode, int);
28+static rtx subst (rtx, rtx, rtx, int, int, int);
29+static rtx combine_simplify_rtx (rtx, enum machine_mode, int, int);
30 static rtx simplify_if_then_else (rtx);
31 static rtx simplify_set (rtx);
32 static rtx simplify_logical (rtx);
33@@ -3086,12 +3086,12 @@
34 if (i1)
35 {
36 subst_low_luid = DF_INSN_LUID (i1);
37- i1src = subst (i1src, pc_rtx, pc_rtx, 0, 0);
38+ i1src = subst (i1src, pc_rtx, pc_rtx, 0, 0, 0);
39 }
40 else
41 {
42 subst_low_luid = DF_INSN_LUID (i2);
43- i2src = subst (i2src, pc_rtx, pc_rtx, 0, 0);
44+ i2src = subst (i2src, pc_rtx, pc_rtx, 0, 0, 0);
45 }
46 }
47
48@@ -3103,7 +3103,7 @@
49 self-referential RTL when we will be substituting I1SRC for I1DEST
50 later. Likewise if I0 feeds into I2, either directly or indirectly
51 through I1, and I0DEST is in I0SRC. */
52- newpat = subst (PATTERN (i3), i2dest, i2src, 0,
53+ newpat = subst (PATTERN (i3), i2dest, i2src, 0, 0,
54 (i1_feeds_i2_n && i1dest_in_i1src)
55 || ((i0_feeds_i2_n || (i0_feeds_i1_n && i1_feeds_i2_n))
56 && i0dest_in_i0src));
57@@ -3142,7 +3142,7 @@
58 copy of I1SRC each time we substitute it, in order to avoid creating
59 self-referential RTL when we will be substituting I0SRC for I0DEST
60 later. */
61- newpat = subst (newpat, i1dest, i1src, 0,
62+ newpat = subst (newpat, i1dest, i1src, 0, 0,
63 i0_feeds_i1_n && i0dest_in_i0src);
64 substed_i1 = 1;
65
66@@ -3172,7 +3172,7 @@
67
68 n_occurrences = 0;
69 subst_low_luid = DF_INSN_LUID (i0);
70- newpat = subst (newpat, i0dest, i0src, 0, 0);
71+ newpat = subst (newpat, i0dest, i0src, 0, 0, 0);
72 substed_i0 = 1;
73 }
74
75@@ -3234,7 +3234,7 @@
76 {
77 rtx t = i1pat;
78 if (i0_feeds_i1_n)
79- t = subst (t, i0dest, i0src, 0, 0);
80+ t = subst (t, i0dest, i0src, 0, 0, 0);
81
82 XVECEXP (newpat, 0, --total_sets) = t;
83 }
84@@ -3242,10 +3242,10 @@
85 {
86 rtx t = i2pat;
87 if (i1_feeds_i2_n)
88- t = subst (t, i1dest, i1src_copy ? i1src_copy : i1src, 0,
89+ t = subst (t, i1dest, i1src_copy ? i1src_copy : i1src, 0, 0,
90 i0_feeds_i1_n && i0dest_in_i0src);
91 if ((i0_feeds_i1_n && i1_feeds_i2_n) || i0_feeds_i2_n)
92- t = subst (t, i0dest, i0src, 0, 0);
93+ t = subst (t, i0dest, i0src, 0, 0, 0);
94
95 XVECEXP (newpat, 0, --total_sets) = t;
96 }
97@@ -4914,11 +4914,13 @@
98
99 IN_DEST is nonzero if we are processing the SET_DEST of a SET.
100
101+ IN_COND is nonzero if we are on top level of the condition.
102+
103 UNIQUE_COPY is nonzero if each substitution must be unique. We do this
104 by copying if `n_occurrences' is nonzero. */
105
106 static rtx
107-subst (rtx x, rtx from, rtx to, int in_dest, int unique_copy)
108+subst (rtx x, rtx from, rtx to, int in_dest, int in_cond, int unique_copy)
109 {
110 enum rtx_code code = GET_CODE (x);
111 enum machine_mode op0_mode = VOIDmode;
112@@ -4979,7 +4981,7 @@
113 && GET_CODE (XVECEXP (x, 0, 0)) == SET
114 && GET_CODE (SET_SRC (XVECEXP (x, 0, 0))) == ASM_OPERANDS)
115 {
116- new_rtx = subst (XVECEXP (x, 0, 0), from, to, 0, unique_copy);
117+ new_rtx = subst (XVECEXP (x, 0, 0), from, to, 0, 0, unique_copy);
118
119 /* If this substitution failed, this whole thing fails. */
120 if (GET_CODE (new_rtx) == CLOBBER
121@@ -4996,7 +4998,7 @@
122 && GET_CODE (dest) != CC0
123 && GET_CODE (dest) != PC)
124 {
125- new_rtx = subst (dest, from, to, 0, unique_copy);
126+ new_rtx = subst (dest, from, to, 0, 0, unique_copy);
127
128 /* If this substitution failed, this whole thing fails. */
129 if (GET_CODE (new_rtx) == CLOBBER
130@@ -5042,8 +5044,8 @@
131 }
132 else
133 {
134- new_rtx = subst (XVECEXP (x, i, j), from, to, 0,
135- unique_copy);
136+ new_rtx = subst (XVECEXP (x, i, j), from, to, 0, 0,
137+ unique_copy);
138
139 /* If this substitution failed, this whole thing
140 fails. */
141@@ -5120,7 +5122,9 @@
142 && (code == SUBREG || code == STRICT_LOW_PART
143 || code == ZERO_EXTRACT))
144 || code == SET)
145- && i == 0), unique_copy);
146+ && i == 0),
147+ code == IF_THEN_ELSE && i == 0,
148+ unique_copy);
149
150 /* If we found that we will have to reject this combination,
151 indicate that by returning the CLOBBER ourselves, rather than
152@@ -5177,7 +5181,7 @@
153 /* If X is sufficiently simple, don't bother trying to do anything
154 with it. */
155 if (code != CONST_INT && code != REG && code != CLOBBER)
156- x = combine_simplify_rtx (x, op0_mode, in_dest);
157+ x = combine_simplify_rtx (x, op0_mode, in_dest, in_cond);
158
159 if (GET_CODE (x) == code)
160 break;
161@@ -5197,10 +5201,12 @@
162 expression.
163
164 OP0_MODE is the original mode of XEXP (x, 0). IN_DEST is nonzero
165- if we are inside a SET_DEST. */
166+ if we are inside a SET_DEST. IN_COND is nonzero if we are on the top level
167+ of a condition. */
168
169 static rtx
170-combine_simplify_rtx (rtx x, enum machine_mode op0_mode, int in_dest)
171+combine_simplify_rtx (rtx x, enum machine_mode op0_mode, int in_dest,
172+ int in_cond)
173 {
174 enum rtx_code code = GET_CODE (x);
175 enum machine_mode mode = GET_MODE (x);
176@@ -5255,8 +5261,8 @@
177 false arms to store-flag values. Be careful to use copy_rtx
178 here since true_rtx or false_rtx might share RTL with x as a
179 result of the if_then_else_cond call above. */
180- true_rtx = subst (copy_rtx (true_rtx), pc_rtx, pc_rtx, 0, 0);
181- false_rtx = subst (copy_rtx (false_rtx), pc_rtx, pc_rtx, 0, 0);
182+ true_rtx = subst (copy_rtx (true_rtx), pc_rtx, pc_rtx, 0, 0, 0);
183+ false_rtx = subst (copy_rtx (false_rtx), pc_rtx, pc_rtx, 0, 0, 0);
184
185 /* If true_rtx and false_rtx are not general_operands, an if_then_else
186 is unlikely to be simpler. */
187@@ -5600,7 +5606,7 @@
188 {
189 /* Try to simplify the expression further. */
190 rtx tor = simplify_gen_binary (IOR, mode, XEXP (x, 0), XEXP (x, 1));
191- temp = combine_simplify_rtx (tor, mode, in_dest);
192+ temp = combine_simplify_rtx (tor, mode, in_dest, 0);
193
194 /* If we could, great. If not, do not go ahead with the IOR
195 replacement, since PLUS appears in many special purpose
196@@ -5693,7 +5699,16 @@
197 ZERO_EXTRACT is indeed appropriate, it will be placed back by
198 the call to make_compound_operation in the SET case. */
199
200- if (STORE_FLAG_VALUE == 1
201+ if (in_cond)
202+ /* Don't apply below optimizations if the caller would
203+ prefer a comparison rather than a value.
204+ E.g., for the condition in an IF_THEN_ELSE most targets need
205+ an explicit comparison. */
206+ {
207+ ;
208+ }
209+
210+ else if (STORE_FLAG_VALUE == 1
211 && new_code == NE && GET_MODE_CLASS (mode) == MODE_INT
212 && op1 == const0_rtx
213 && mode == GET_MODE (op0)
214@@ -5739,7 +5754,10 @@
215
216 /* If STORE_FLAG_VALUE is -1, we have cases similar to
217 those above. */
218- if (STORE_FLAG_VALUE == -1
219+ if (in_cond)
220+ ;
221+
222+ else if (STORE_FLAG_VALUE == -1
223 && new_code == NE && GET_MODE_CLASS (mode) == MODE_INT
224 && op1 == const0_rtx
225 && (num_sign_bit_copies (op0, mode)
226@@ -5937,11 +5955,11 @@
227 if (reg_mentioned_p (from, true_rtx))
228 true_rtx = subst (known_cond (copy_rtx (true_rtx), true_code,
229 from, true_val),
230- pc_rtx, pc_rtx, 0, 0);
231+ pc_rtx, pc_rtx, 0, 0, 0);
232 if (reg_mentioned_p (from, false_rtx))
233 false_rtx = subst (known_cond (copy_rtx (false_rtx), false_code,
234 from, false_val),
235- pc_rtx, pc_rtx, 0, 0);
236+ pc_rtx, pc_rtx, 0, 0, 0);
237
238 SUBST (XEXP (x, 1), swapped ? false_rtx : true_rtx);
239 SUBST (XEXP (x, 2), swapped ? true_rtx : false_rtx);
240@@ -6158,11 +6176,11 @@
241 {
242 temp = subst (simplify_gen_relational (true_code, m, VOIDmode,
243 cond_op0, cond_op1),
244- pc_rtx, pc_rtx, 0, 0);
245+ pc_rtx, pc_rtx, 0, 0, 0);
246 temp = simplify_gen_binary (MULT, m, temp,
247 simplify_gen_binary (MULT, m, c1,
248 const_true_rtx));
249- temp = subst (temp, pc_rtx, pc_rtx, 0, 0);
250+ temp = subst (temp, pc_rtx, pc_rtx, 0, 0, 0);
251 temp = simplify_gen_binary (op, m, gen_lowpart (m, z), temp);
252
253 if (extend_op != UNKNOWN)
254
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106742.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106742.patch
new file mode 100644
index 0000000000..d14f06c3ff
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106742.patch
@@ -0,0 +1,6123 @@
12011-05-03 Richard Sandiford <richard.sandiford@linaro.org>
2
3 gcc/testsuite/
4 From Richard Earnshaw <rearnsha@arm.com>
5
6 PR target/46329
7 * gcc.target/arm/pr46329.c: New test.
8
9 gcc/
10 PR target/46329
11 * config/arm/arm.c (arm_legitimate_constant_p_1): Return false
12 for all Neon struct constants.
13
142011-05-03 Richard Sandiford <richard.sandiford@linaro.org>
15
16 gcc/
17 * targhooks.h (default_legitimate_constant_p); Declare.
18 * targhooks.c (default_legitimate_constant_p): New function.
19
20 Backport from mainline:
21 2011-04-21 Richard Sandiford <richard.sandiford@linaro.org>
22
23 * target.def (legitimate_constant_p): New hook.
24 * doc/tm.texi.in (LEGITIMATE_CONSTANT_P): Replace with...
25 (TARGET_LEGITIMATE_CONSTANT_P): ...this.
26 * doc/tm.texi: Regenerate.
27 * calls.c (precompute_register_parameters): Replace uses of
28 LEGITIMATE_CONSTANT_P with targetm.legitimate_constant_p.
29 (emit_library_call_value_1): Likewise.
30 * expr.c (move_block_to_reg, can_store_by_pieces, emit_move_insn)
31 (compress_float_constant, emit_push_insn, expand_expr_real_1): Likewise.
32 * recog.c (general_operand, immediate_operand): Likewise.
33 * reload.c (find_reloads_toplev, find_reloads_address_part): Likewise.
34 * reload1.c (init_eliminable_invariants): Likewise.
35
36 * config/arm/arm-protos.h (arm_cannot_force_const_mem): Delete.
37 * config/arm/arm.h (ARM_LEGITIMATE_CONSTANT_P): Likewise.
38 (THUMB_LEGITIMATE_CONSTANT_P, LEGITIMATE_CONSTANT_P): Likewise.
39 * config/arm/arm.c (TARGET_LEGITIMATE_CONSTANT_P): Define.
40 (arm_legitimate_constant_p_1, thumb_legitimate_constant_p)
41 (arm_legitimate_constant_p): New functions.
42 (arm_cannot_force_const_mem): Make static.
43
442011-05-03 Richard Sandiford <richard.sandiford@linaro.org>
45
46 gcc/
47 Backport from mainline:
48
49 2011-05-03 Richard Sandiford <richard.sandiford@linaro.org>
50
51 * hooks.h (hook_bool_mode_uhwi_false): Declare.
52 * hooks.c (hook_bool_mode_uhwi_false): New function.
53 * target.def (array_mode_supported_p): New hook.
54 * doc/tm.texi.in (TARGET_ARRAY_MODE_SUPPORTED_P): Add @hook.
55 * doc/tm.texi: Regenerate.
56 * stor-layout.c (mode_for_array): New function.
57 (layout_type): Use it.
58 * config/arm/arm.c (arm_array_mode_supported_p): New function.
59 (TARGET_ARRAY_MODE_SUPPORTED_P): Define.
60
612011-05-03 Richard Sandiford <richard.sandiford@linaro.org>
62
63 gcc/
64 Backport from mainline:
65
66 2011-04-12 Richard Sandiford <richard.sandiford@linaro.org>
67
68 * config/arm/arm.c (arm_print_operand): Use MEM_SIZE to get the
69 size of a '%A' memory reference.
70 (T_DREG, T_QREG): New neon_builtin_type_bits.
71 (arm_init_neon_builtins): Assert that the load and store operands
72 are neon_struct_operands.
73 (locate_neon_builtin_icode): Provide the neon_builtin_type_bits.
74 (NEON_ARG_MEMORY): New builtin_arg.
75 (neon_dereference_pointer): New function.
76 (arm_expand_neon_args): Add a neon_builtin_type_bits argument.
77 Handle NEON_ARG_MEMORY.
78 (arm_expand_neon_builtin): Update after above interface changes.
79 Use NEON_ARG_MEMORY for loads and stores.
80 * config/arm/predicates.md (neon_struct_operand): New predicate.
81 * config/arm/iterators.md (V_two_elem): Tweak formatting.
82 (V_three_elem): Use BLKmode for accesses that have no associated mode.
83 (V_four_elem): Tweak formatting.
84 * config/arm/neon.md (neon_vld1<mode>, neon_vld1_dup<mode>)
85 (neon_vst1_lane<mode>, neon_vst1<mode>, neon_vld2<mode>)
86 (neon_vld2_lane<mode>, neon_vld2_dup<mode>, neon_vst2<mode>)
87 (neon_vst2_lane<mode>, neon_vld3<mode>, neon_vld3_lane<mode>)
88 (neon_vld3_dup<mode>, neon_vst3<mode>, neon_vst3_lane<mode>)
89 (neon_vld4<mode>, neon_vld4_lane<mode>, neon_vld4_dup<mode>)
90 (neon_vst4<mode>): Replace pointer operand with a memory operand.
91 Use %A in the output template.
92 (neon_vld3qa<mode>, neon_vld3qb<mode>, neon_vst3qa<mode>)
93 (neon_vst3qb<mode>, neon_vld4qa<mode>, neon_vld4qb<mode>)
94 (neon_vst4qa<mode>, neon_vst4qb<mode>): Likewise, but halve
95 the width of the memory access. Remove post-increment.
96 * config/arm/neon-testgen.ml: Allow addresses to have an alignment.
97
98 gcc/testsuite/
99 Backport from mainline:
100
101 2011-04-12 Richard Sandiford <richard.sandiford@linaro.org>
102
103 * gcc.target/arm/neon-vld3-1.c: New test.
104 * gcc.target/arm/neon-vst3-1.c: New test.
105 * gcc.target/arm/neon/v*.c: Regenerate.
106
1072011-05-03 Richard Sandiford <richard.sandiford@linaro.org>
108
109 gcc/
110 Backport from mainline:
111
112 2011-03-30 Richard Sandiford <richard.sandiford@linaro.org>
113 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
114
115 PR target/43590
116 * config/arm/neon.md (neon_vld3qa<mode>, neon_vld4qa<mode>): Remove
117 operand 1 and reshuffle the operands to match.
118 (neon_vld3<mode>, neon_vld4<mode>): Update accordingly.
119
120=== modified file 'gcc/calls.c'
121--- old/gcc/calls.c 2011-03-03 21:56:58 +0000
122+++ new/gcc/calls.c 2011-05-03 15:17:25 +0000
123@@ -684,7 +684,7 @@
124 /* If the value is a non-legitimate constant, force it into a
125 pseudo now. TLS symbols sometimes need a call to resolve. */
126 if (CONSTANT_P (args[i].value)
127- && !LEGITIMATE_CONSTANT_P (args[i].value))
128+ && !targetm.legitimate_constant_p (args[i].mode, args[i].value))
129 args[i].value = force_reg (args[i].mode, args[i].value);
130
131 /* If we are to promote the function arg to a wider mode,
132@@ -3447,7 +3447,8 @@
133
134 /* Make sure it is a reasonable operand for a move or push insn. */
135 if (!REG_P (addr) && !MEM_P (addr)
136- && ! (CONSTANT_P (addr) && LEGITIMATE_CONSTANT_P (addr)))
137+ && !(CONSTANT_P (addr)
138+ && targetm.legitimate_constant_p (Pmode, addr)))
139 addr = force_operand (addr, NULL_RTX);
140
141 argvec[count].value = addr;
142@@ -3488,7 +3489,7 @@
143
144 /* Make sure it is a reasonable operand for a move or push insn. */
145 if (!REG_P (val) && !MEM_P (val)
146- && ! (CONSTANT_P (val) && LEGITIMATE_CONSTANT_P (val)))
147+ && !(CONSTANT_P (val) && targetm.legitimate_constant_p (mode, val)))
148 val = force_operand (val, NULL_RTX);
149
150 if (pass_by_reference (&args_so_far, mode, NULL_TREE, 1))
151
152=== modified file 'gcc/config/arm/arm-protos.h'
153--- old/gcc/config/arm/arm-protos.h 2011-01-29 03:20:57 +0000
154+++ new/gcc/config/arm/arm-protos.h 2011-05-03 15:17:25 +0000
155@@ -81,7 +81,6 @@
156 extern enum reg_class coproc_secondary_reload_class (enum machine_mode, rtx,
157 bool);
158 extern bool arm_tls_referenced_p (rtx);
159-extern bool arm_cannot_force_const_mem (rtx);
160
161 extern int cirrus_memory_offset (rtx);
162 extern int arm_coproc_mem_operand (rtx, bool);
163
164=== modified file 'gcc/config/arm/arm.c'
165--- old/gcc/config/arm/arm.c 2011-04-28 11:46:58 +0000
166+++ new/gcc/config/arm/arm.c 2011-05-03 15:18:07 +0000
167@@ -143,6 +143,8 @@
168 static void arm_output_mi_thunk (FILE *, tree, HOST_WIDE_INT, HOST_WIDE_INT,
169 tree);
170 static bool arm_have_conditional_execution (void);
171+static bool arm_cannot_force_const_mem (rtx);
172+static bool arm_legitimate_constant_p (enum machine_mode, rtx);
173 static bool arm_rtx_costs_1 (rtx, enum rtx_code, int*, bool);
174 static bool arm_size_rtx_costs (rtx, enum rtx_code, enum rtx_code, int *);
175 static bool arm_slowmul_rtx_costs (rtx, enum rtx_code, enum rtx_code, int *, bool);
176@@ -241,6 +243,8 @@
177 static bool cortex_a9_sched_adjust_cost (rtx, rtx, rtx, int *);
178 static bool xscale_sched_adjust_cost (rtx, rtx, rtx, int *);
179 static bool fa726te_sched_adjust_cost (rtx, rtx, rtx, int *);
180+static bool arm_array_mode_supported_p (enum machine_mode,
181+ unsigned HOST_WIDE_INT);
182 static enum machine_mode arm_preferred_simd_mode (enum machine_mode);
183 static bool arm_class_likely_spilled_p (reg_class_t);
184 static bool arm_vector_alignment_reachable (const_tree type, bool is_packed);
185@@ -394,6 +398,8 @@
186 #define TARGET_SHIFT_TRUNCATION_MASK arm_shift_truncation_mask
187 #undef TARGET_VECTOR_MODE_SUPPORTED_P
188 #define TARGET_VECTOR_MODE_SUPPORTED_P arm_vector_mode_supported_p
189+#undef TARGET_ARRAY_MODE_SUPPORTED_P
190+#define TARGET_ARRAY_MODE_SUPPORTED_P arm_array_mode_supported_p
191 #undef TARGET_VECTORIZE_PREFERRED_SIMD_MODE
192 #define TARGET_VECTORIZE_PREFERRED_SIMD_MODE arm_preferred_simd_mode
193 #undef TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES
194@@ -523,6 +529,9 @@
195 #undef TARGET_HAVE_CONDITIONAL_EXECUTION
196 #define TARGET_HAVE_CONDITIONAL_EXECUTION arm_have_conditional_execution
197
198+#undef TARGET_LEGITIMATE_CONSTANT_P
199+#define TARGET_LEGITIMATE_CONSTANT_P arm_legitimate_constant_p
200+
201 #undef TARGET_CANNOT_FORCE_CONST_MEM
202 #define TARGET_CANNOT_FORCE_CONST_MEM arm_cannot_force_const_mem
203
204@@ -6539,9 +6548,47 @@
205 return for_each_rtx (&x, arm_tls_operand_p_1, NULL);
206 }
207
208+/* Implement TARGET_LEGITIMATE_CONSTANT_P.
209+
210+ On the ARM, allow any integer (invalid ones are removed later by insn
211+ patterns), nice doubles and symbol_refs which refer to the function's
212+ constant pool XXX.
213+
214+ When generating pic allow anything. */
215+
216+static bool
217+arm_legitimate_constant_p_1 (enum machine_mode mode, rtx x)
218+{
219+ /* At present, we have no support for Neon structure constants, so forbid
220+ them here. It might be possible to handle simple cases like 0 and -1
221+ in future. */
222+ if (TARGET_NEON && VALID_NEON_STRUCT_MODE (mode))
223+ return false;
224+
225+ return flag_pic || !label_mentioned_p (x);
226+}
227+
228+static bool
229+thumb_legitimate_constant_p (enum machine_mode mode ATTRIBUTE_UNUSED, rtx x)
230+{
231+ return (GET_CODE (x) == CONST_INT
232+ || GET_CODE (x) == CONST_DOUBLE
233+ || CONSTANT_ADDRESS_P (x)
234+ || flag_pic);
235+}
236+
237+static bool
238+arm_legitimate_constant_p (enum machine_mode mode, rtx x)
239+{
240+ return (!arm_cannot_force_const_mem (x)
241+ && (TARGET_32BIT
242+ ? arm_legitimate_constant_p_1 (mode, x)
243+ : thumb_legitimate_constant_p (mode, x)));
244+}
245+
246 /* Implement TARGET_CANNOT_FORCE_CONST_MEM. */
247
248-bool
249+static bool
250 arm_cannot_force_const_mem (rtx x)
251 {
252 rtx base, offset;
253@@ -16598,7 +16645,7 @@
254 {
255 rtx addr;
256 bool postinc = FALSE;
257- unsigned align, modesize, align_bits;
258+ unsigned align, memsize, align_bits;
259
260 gcc_assert (GET_CODE (x) == MEM);
261 addr = XEXP (x, 0);
262@@ -16613,12 +16660,12 @@
263 instruction (for some alignments) as an aid to the memory subsystem
264 of the target. */
265 align = MEM_ALIGN (x) >> 3;
266- modesize = GET_MODE_SIZE (GET_MODE (x));
267+ memsize = INTVAL (MEM_SIZE (x));
268
269 /* Only certain alignment specifiers are supported by the hardware. */
270- if (modesize == 16 && (align % 32) == 0)
271+ if (memsize == 16 && (align % 32) == 0)
272 align_bits = 256;
273- else if ((modesize == 8 || modesize == 16) && (align % 16) == 0)
274+ else if ((memsize == 8 || memsize == 16) && (align % 16) == 0)
275 align_bits = 128;
276 else if ((align % 8) == 0)
277 align_bits = 64;
278@@ -18278,12 +18325,14 @@
279 T_V2SI = 0x0004,
280 T_V2SF = 0x0008,
281 T_DI = 0x0010,
282+ T_DREG = 0x001F,
283 T_V16QI = 0x0020,
284 T_V8HI = 0x0040,
285 T_V4SI = 0x0080,
286 T_V4SF = 0x0100,
287 T_V2DI = 0x0200,
288 T_TI = 0x0400,
289+ T_QREG = 0x07E0,
290 T_EI = 0x0800,
291 T_OI = 0x1000
292 };
293@@ -18929,10 +18978,9 @@
294 if (is_load && k == 1)
295 {
296 /* Neon load patterns always have the memory operand
297- (a SImode pointer) in the operand 1 position. We
298- want a const pointer to the element type in that
299- position. */
300- gcc_assert (insn_data[icode].operand[k].mode == SImode);
301+ in the operand 1 position. */
302+ gcc_assert (insn_data[icode].operand[k].predicate
303+ == neon_struct_operand);
304
305 switch (1 << j)
306 {
307@@ -18967,10 +19015,9 @@
308 else if (is_store && k == 0)
309 {
310 /* Similarly, Neon store patterns use operand 0 as
311- the memory location to store to (a SImode pointer).
312- Use a pointer to the element type of the store in
313- that position. */
314- gcc_assert (insn_data[icode].operand[k].mode == SImode);
315+ the memory location to store to. */
316+ gcc_assert (insn_data[icode].operand[k].predicate
317+ == neon_struct_operand);
318
319 switch (1 << j)
320 {
321@@ -19290,12 +19337,13 @@
322 }
323
324 static enum insn_code
325-locate_neon_builtin_icode (int fcode, neon_itype *itype)
326+locate_neon_builtin_icode (int fcode, neon_itype *itype,
327+ enum neon_builtin_type_bits *type_bit)
328 {
329 neon_builtin_datum key
330 = { NULL, (neon_itype) 0, 0, { CODE_FOR_nothing }, 0, 0 };
331 neon_builtin_datum *found;
332- int idx;
333+ int idx, type, ntypes;
334
335 key.base_fcode = fcode;
336 found = (neon_builtin_datum *)
337@@ -19308,20 +19356,84 @@
338 if (itype)
339 *itype = found->itype;
340
341+ if (type_bit)
342+ {
343+ ntypes = 0;
344+ for (type = 0; type < T_MAX; type++)
345+ if (found->bits & (1 << type))
346+ {
347+ if (ntypes == idx)
348+ break;
349+ ntypes++;
350+ }
351+ gcc_assert (type < T_MAX);
352+ *type_bit = (enum neon_builtin_type_bits) (1 << type);
353+ }
354 return found->codes[idx];
355 }
356
357 typedef enum {
358 NEON_ARG_COPY_TO_REG,
359 NEON_ARG_CONSTANT,
360+ NEON_ARG_MEMORY,
361 NEON_ARG_STOP
362 } builtin_arg;
363
364 #define NEON_MAX_BUILTIN_ARGS 5
365
366+/* EXP is a pointer argument to a Neon load or store intrinsic. Derive
367+ and return an expression for the accessed memory.
368+
369+ The intrinsic function operates on a block of registers that has
370+ mode REG_MODE. This block contains vectors of type TYPE_BIT.
371+ The function references the memory at EXP in mode MEM_MODE;
372+ this mode may be BLKmode if no more suitable mode is available. */
373+
374+static tree
375+neon_dereference_pointer (tree exp, enum machine_mode mem_mode,
376+ enum machine_mode reg_mode,
377+ enum neon_builtin_type_bits type_bit)
378+{
379+ HOST_WIDE_INT reg_size, vector_size, nvectors, nelems;
380+ tree elem_type, upper_bound, array_type;
381+
382+ /* Work out the size of the register block in bytes. */
383+ reg_size = GET_MODE_SIZE (reg_mode);
384+
385+ /* Work out the size of each vector in bytes. */
386+ gcc_assert (type_bit & (T_DREG | T_QREG));
387+ vector_size = (type_bit & T_QREG ? 16 : 8);
388+
389+ /* Work out how many vectors there are. */
390+ gcc_assert (reg_size % vector_size == 0);
391+ nvectors = reg_size / vector_size;
392+
393+ /* Work out how many elements are being loaded or stored.
394+ MEM_MODE == REG_MODE implies a one-to-one mapping between register
395+ and memory elements; anything else implies a lane load or store. */
396+ if (mem_mode == reg_mode)
397+ nelems = vector_size * nvectors;
398+ else
399+ nelems = nvectors;
400+
401+ /* Work out the type of each element. */
402+ gcc_assert (POINTER_TYPE_P (TREE_TYPE (exp)));
403+ elem_type = TREE_TYPE (TREE_TYPE (exp));
404+
405+ /* Create a type that describes the full access. */
406+ upper_bound = build_int_cst (size_type_node, nelems - 1);
407+ array_type = build_array_type (elem_type, build_index_type (upper_bound));
408+
409+ /* Dereference EXP using that type. */
410+ exp = convert (build_pointer_type (array_type), exp);
411+ return fold_build2 (MEM_REF, array_type, exp,
412+ build_int_cst (TREE_TYPE (exp), 0));
413+}
414+
415 /* Expand a Neon builtin. */
416 static rtx
417 arm_expand_neon_args (rtx target, int icode, int have_retval,
418+ enum neon_builtin_type_bits type_bit,
419 tree exp, ...)
420 {
421 va_list ap;
422@@ -19330,7 +19442,9 @@
423 rtx op[NEON_MAX_BUILTIN_ARGS];
424 enum machine_mode tmode = insn_data[icode].operand[0].mode;
425 enum machine_mode mode[NEON_MAX_BUILTIN_ARGS];
426+ enum machine_mode other_mode;
427 int argc = 0;
428+ int opno;
429
430 if (have_retval
431 && (!target
432@@ -19348,26 +19462,46 @@
433 break;
434 else
435 {
436+ opno = argc + have_retval;
437+ mode[argc] = insn_data[icode].operand[opno].mode;
438 arg[argc] = CALL_EXPR_ARG (exp, argc);
439+ if (thisarg == NEON_ARG_MEMORY)
440+ {
441+ other_mode = insn_data[icode].operand[1 - opno].mode;
442+ arg[argc] = neon_dereference_pointer (arg[argc], mode[argc],
443+ other_mode, type_bit);
444+ }
445 op[argc] = expand_normal (arg[argc]);
446- mode[argc] = insn_data[icode].operand[argc + have_retval].mode;
447
448 switch (thisarg)
449 {
450 case NEON_ARG_COPY_TO_REG:
451 /*gcc_assert (GET_MODE (op[argc]) == mode[argc]);*/
452- if (!(*insn_data[icode].operand[argc + have_retval].predicate)
453+ if (!(*insn_data[icode].operand[opno].predicate)
454 (op[argc], mode[argc]))
455 op[argc] = copy_to_mode_reg (mode[argc], op[argc]);
456 break;
457
458 case NEON_ARG_CONSTANT:
459 /* FIXME: This error message is somewhat unhelpful. */
460- if (!(*insn_data[icode].operand[argc + have_retval].predicate)
461+ if (!(*insn_data[icode].operand[opno].predicate)
462 (op[argc], mode[argc]))
463 error ("argument must be a constant");
464 break;
465
466+ case NEON_ARG_MEMORY:
467+ gcc_assert (MEM_P (op[argc]));
468+ PUT_MODE (op[argc], mode[argc]);
469+ /* ??? arm_neon.h uses the same built-in functions for signed
470+ and unsigned accesses, casting where necessary. This isn't
471+ alias safe. */
472+ set_mem_alias_set (op[argc], 0);
473+ if (!(*insn_data[icode].operand[opno].predicate)
474+ (op[argc], mode[argc]))
475+ op[argc] = (replace_equiv_address
476+ (op[argc], force_reg (Pmode, XEXP (op[argc], 0))));
477+ break;
478+
479 case NEON_ARG_STOP:
480 gcc_unreachable ();
481 }
482@@ -19446,14 +19580,15 @@
483 arm_expand_neon_builtin (int fcode, tree exp, rtx target)
484 {
485 neon_itype itype;
486- enum insn_code icode = locate_neon_builtin_icode (fcode, &itype);
487+ enum neon_builtin_type_bits type_bit;
488+ enum insn_code icode = locate_neon_builtin_icode (fcode, &itype, &type_bit);
489
490 switch (itype)
491 {
492 case NEON_UNOP:
493 case NEON_CONVERT:
494 case NEON_DUPLANE:
495- return arm_expand_neon_args (target, icode, 1, exp,
496+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
497 NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, NEON_ARG_STOP);
498
499 case NEON_BINOP:
500@@ -19463,90 +19598,90 @@
501 case NEON_SCALARMULH:
502 case NEON_SHIFTINSERT:
503 case NEON_LOGICBINOP:
504- return arm_expand_neon_args (target, icode, 1, exp,
505+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
506 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT,
507 NEON_ARG_STOP);
508
509 case NEON_TERNOP:
510- return arm_expand_neon_args (target, icode, 1, exp,
511+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
512 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG,
513 NEON_ARG_CONSTANT, NEON_ARG_STOP);
514
515 case NEON_GETLANE:
516 case NEON_FIXCONV:
517 case NEON_SHIFTIMM:
518- return arm_expand_neon_args (target, icode, 1, exp,
519+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
520 NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, NEON_ARG_CONSTANT,
521 NEON_ARG_STOP);
522
523 case NEON_CREATE:
524- return arm_expand_neon_args (target, icode, 1, exp,
525+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
526 NEON_ARG_COPY_TO_REG, NEON_ARG_STOP);
527
528 case NEON_DUP:
529 case NEON_SPLIT:
530 case NEON_REINTERP:
531- return arm_expand_neon_args (target, icode, 1, exp,
532+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
533 NEON_ARG_COPY_TO_REG, NEON_ARG_STOP);
534
535 case NEON_COMBINE:
536 case NEON_VTBL:
537- return arm_expand_neon_args (target, icode, 1, exp,
538+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
539 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_STOP);
540
541 case NEON_RESULTPAIR:
542- return arm_expand_neon_args (target, icode, 0, exp,
543+ return arm_expand_neon_args (target, icode, 0, type_bit, exp,
544 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG,
545 NEON_ARG_STOP);
546
547 case NEON_LANEMUL:
548 case NEON_LANEMULL:
549 case NEON_LANEMULH:
550- return arm_expand_neon_args (target, icode, 1, exp,
551+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
552 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT,
553 NEON_ARG_CONSTANT, NEON_ARG_STOP);
554
555 case NEON_LANEMAC:
556- return arm_expand_neon_args (target, icode, 1, exp,
557+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
558 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG,
559 NEON_ARG_CONSTANT, NEON_ARG_CONSTANT, NEON_ARG_STOP);
560
561 case NEON_SHIFTACC:
562- return arm_expand_neon_args (target, icode, 1, exp,
563+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
564 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT,
565 NEON_ARG_CONSTANT, NEON_ARG_STOP);
566
567 case NEON_SCALARMAC:
568- return arm_expand_neon_args (target, icode, 1, exp,
569+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
570 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG,
571 NEON_ARG_CONSTANT, NEON_ARG_STOP);
572
573 case NEON_SELECT:
574 case NEON_VTBX:
575- return arm_expand_neon_args (target, icode, 1, exp,
576+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
577 NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG,
578 NEON_ARG_STOP);
579
580 case NEON_LOAD1:
581 case NEON_LOADSTRUCT:
582- return arm_expand_neon_args (target, icode, 1, exp,
583- NEON_ARG_COPY_TO_REG, NEON_ARG_STOP);
584+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
585+ NEON_ARG_MEMORY, NEON_ARG_STOP);
586
587 case NEON_LOAD1LANE:
588 case NEON_LOADSTRUCTLANE:
589- return arm_expand_neon_args (target, icode, 1, exp,
590- NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT,
591+ return arm_expand_neon_args (target, icode, 1, type_bit, exp,
592+ NEON_ARG_MEMORY, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT,
593 NEON_ARG_STOP);
594
595 case NEON_STORE1:
596 case NEON_STORESTRUCT:
597- return arm_expand_neon_args (target, icode, 0, exp,
598- NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_STOP);
599+ return arm_expand_neon_args (target, icode, 0, type_bit, exp,
600+ NEON_ARG_MEMORY, NEON_ARG_COPY_TO_REG, NEON_ARG_STOP);
601
602 case NEON_STORE1LANE:
603 case NEON_STORESTRUCTLANE:
604- return arm_expand_neon_args (target, icode, 0, exp,
605- NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT,
606+ return arm_expand_neon_args (target, icode, 0, type_bit, exp,
607+ NEON_ARG_MEMORY, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT,
608 NEON_ARG_STOP);
609 }
610
611@@ -22267,6 +22402,20 @@
612 return false;
613 }
614
615+/* Implements target hook array_mode_supported_p. */
616+
617+static bool
618+arm_array_mode_supported_p (enum machine_mode mode,
619+ unsigned HOST_WIDE_INT nelems)
620+{
621+ if (TARGET_NEON
622+ && (VALID_NEON_DREG_MODE (mode) || VALID_NEON_QREG_MODE (mode))
623+ && (nelems >= 2 && nelems <= 4))
624+ return true;
625+
626+ return false;
627+}
628+
629 /* Use the option -mvectorize-with-neon-quad to override the use of doubleword
630 registers when autovectorizing for Neon, at least until multiple vector
631 widths are supported properly by the middle-end. */
632
633=== modified file 'gcc/config/arm/arm.h'
634--- old/gcc/config/arm/arm.h 2011-02-21 14:04:51 +0000
635+++ new/gcc/config/arm/arm.h 2011-05-03 15:17:25 +0000
636@@ -1775,27 +1775,6 @@
637 #define TARGET_DEFAULT_WORD_RELOCATIONS 0
638 #endif
639
640-/* Nonzero if the constant value X is a legitimate general operand.
641- It is given that X satisfies CONSTANT_P or is a CONST_DOUBLE.
642-
643- On the ARM, allow any integer (invalid ones are removed later by insn
644- patterns), nice doubles and symbol_refs which refer to the function's
645- constant pool XXX.
646-
647- When generating pic allow anything. */
648-#define ARM_LEGITIMATE_CONSTANT_P(X) (flag_pic || ! label_mentioned_p (X))
649-
650-#define THUMB_LEGITIMATE_CONSTANT_P(X) \
651- ( GET_CODE (X) == CONST_INT \
652- || GET_CODE (X) == CONST_DOUBLE \
653- || CONSTANT_ADDRESS_P (X) \
654- || flag_pic)
655-
656-#define LEGITIMATE_CONSTANT_P(X) \
657- (!arm_cannot_force_const_mem (X) \
658- && (TARGET_32BIT ? ARM_LEGITIMATE_CONSTANT_P (X) \
659- : THUMB_LEGITIMATE_CONSTANT_P (X)))
660-
661 #ifndef SUBTARGET_NAME_ENCODING_LENGTHS
662 #define SUBTARGET_NAME_ENCODING_LENGTHS
663 #endif
664
665=== modified file 'gcc/config/arm/iterators.md'
666--- old/gcc/config/arm/iterators.md 2010-09-21 13:11:03 +0000
667+++ new/gcc/config/arm/iterators.md 2011-05-03 15:14:56 +0000
668@@ -194,24 +194,22 @@
669
670 ;; Mode of pair of elements for each vector mode, to define transfer
671 ;; size for structure lane/dup loads and stores.
672-(define_mode_attr V_two_elem [(V8QI "HI") (V16QI "HI")
673- (V4HI "SI") (V8HI "SI")
674+(define_mode_attr V_two_elem [(V8QI "HI") (V16QI "HI")
675+ (V4HI "SI") (V8HI "SI")
676 (V2SI "V2SI") (V4SI "V2SI")
677 (V2SF "V2SF") (V4SF "V2SF")
678 (DI "V2DI") (V2DI "V2DI")])
679
680 ;; Similar, for three elements.
681-;; ??? Should we define extra modes so that sizes of all three-element
682-;; accesses can be accurately represented?
683-(define_mode_attr V_three_elem [(V8QI "SI") (V16QI "SI")
684- (V4HI "V4HI") (V8HI "V4HI")
685- (V2SI "V4SI") (V4SI "V4SI")
686- (V2SF "V4SF") (V4SF "V4SF")
687- (DI "EI") (V2DI "EI")])
688+(define_mode_attr V_three_elem [(V8QI "BLK") (V16QI "BLK")
689+ (V4HI "BLK") (V8HI "BLK")
690+ (V2SI "BLK") (V4SI "BLK")
691+ (V2SF "BLK") (V4SF "BLK")
692+ (DI "EI") (V2DI "EI")])
693
694 ;; Similar, for four elements.
695 (define_mode_attr V_four_elem [(V8QI "SI") (V16QI "SI")
696- (V4HI "V4HI") (V8HI "V4HI")
697+ (V4HI "V4HI") (V8HI "V4HI")
698 (V2SI "V4SI") (V4SI "V4SI")
699 (V2SF "V4SF") (V4SF "V4SF")
700 (DI "OI") (V2DI "OI")])
701
702=== modified file 'gcc/config/arm/neon-testgen.ml'
703--- old/gcc/config/arm/neon-testgen.ml 2010-05-24 18:36:31 +0000
704+++ new/gcc/config/arm/neon-testgen.ml 2011-05-03 15:14:56 +0000
705@@ -177,7 +177,7 @@
706 let alt2 = commas (fun x -> x) (n_things n elt_regexp) "" in
707 "\\\\\\{((" ^ alt1 ^ ")|(" ^ alt2 ^ "))\\\\\\}"
708 | (PtrTo elt | CstPtrTo elt) ->
709- "\\\\\\[" ^ (analyze_shape_elt elt) ^ "\\\\\\]"
710+ "\\\\\\[" ^ (analyze_shape_elt elt) ^ "\\(:\\[0-9\\]+\\)?\\\\\\]"
711 | Element_of_dreg -> (analyze_shape_elt Dreg) ^ "\\\\\\[\\[0-9\\]+\\\\\\]"
712 | Element_of_qreg -> (analyze_shape_elt Qreg) ^ "\\\\\\[\\[0-9\\]+\\\\\\]"
713 | All_elements_of_dreg -> (analyze_shape_elt Dreg) ^ "\\\\\\[\\\\\\]"
714
715=== modified file 'gcc/config/arm/neon.md'
716--- old/gcc/config/arm/neon.md 2011-01-03 20:52:22 +0000
717+++ new/gcc/config/arm/neon.md 2011-05-03 15:14:56 +0000
718@@ -4247,16 +4247,16 @@
719
720 (define_insn "neon_vld1<mode>"
721 [(set (match_operand:VDQX 0 "s_register_operand" "=w")
722- (unspec:VDQX [(mem:VDQX (match_operand:SI 1 "s_register_operand" "r"))]
723+ (unspec:VDQX [(match_operand:VDQX 1 "neon_struct_operand" "Um")]
724 UNSPEC_VLD1))]
725 "TARGET_NEON"
726- "vld1.<V_sz_elem>\t%h0, [%1]"
727+ "vld1.<V_sz_elem>\t%h0, %A1"
728 [(set_attr "neon_type" "neon_vld1_1_2_regs")]
729 )
730
731 (define_insn "neon_vld1_lane<mode>"
732 [(set (match_operand:VDX 0 "s_register_operand" "=w")
733- (unspec:VDX [(mem:<V_elem> (match_operand:SI 1 "s_register_operand" "r"))
734+ (unspec:VDX [(match_operand:<V_elem> 1 "neon_struct_operand" "Um")
735 (match_operand:VDX 2 "s_register_operand" "0")
736 (match_operand:SI 3 "immediate_operand" "i")]
737 UNSPEC_VLD1_LANE))]
738@@ -4267,9 +4267,9 @@
739 if (lane < 0 || lane >= max)
740 error ("lane out of range");
741 if (max == 1)
742- return "vld1.<V_sz_elem>\t%P0, [%1]";
743+ return "vld1.<V_sz_elem>\t%P0, %A1";
744 else
745- return "vld1.<V_sz_elem>\t{%P0[%c3]}, [%1]";
746+ return "vld1.<V_sz_elem>\t{%P0[%c3]}, %A1";
747 }
748 [(set (attr "neon_type")
749 (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 2))
750@@ -4279,7 +4279,7 @@
751
752 (define_insn "neon_vld1_lane<mode>"
753 [(set (match_operand:VQX 0 "s_register_operand" "=w")
754- (unspec:VQX [(mem:<V_elem> (match_operand:SI 1 "s_register_operand" "r"))
755+ (unspec:VQX [(match_operand:<V_elem> 1 "neon_struct_operand" "Um")
756 (match_operand:VQX 2 "s_register_operand" "0")
757 (match_operand:SI 3 "immediate_operand" "i")]
758 UNSPEC_VLD1_LANE))]
759@@ -4298,9 +4298,9 @@
760 }
761 operands[0] = gen_rtx_REG (<V_HALF>mode, regno);
762 if (max == 2)
763- return "vld1.<V_sz_elem>\t%P0, [%1]";
764+ return "vld1.<V_sz_elem>\t%P0, %A1";
765 else
766- return "vld1.<V_sz_elem>\t{%P0[%c3]}, [%1]";
767+ return "vld1.<V_sz_elem>\t{%P0[%c3]}, %A1";
768 }
769 [(set (attr "neon_type")
770 (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 2))
771@@ -4310,14 +4310,14 @@
772
773 (define_insn "neon_vld1_dup<mode>"
774 [(set (match_operand:VDX 0 "s_register_operand" "=w")
775- (unspec:VDX [(mem:<V_elem> (match_operand:SI 1 "s_register_operand" "r"))]
776+ (unspec:VDX [(match_operand:<V_elem> 1 "neon_struct_operand" "Um")]
777 UNSPEC_VLD1_DUP))]
778 "TARGET_NEON"
779 {
780 if (GET_MODE_NUNITS (<MODE>mode) > 1)
781- return "vld1.<V_sz_elem>\t{%P0[]}, [%1]";
782+ return "vld1.<V_sz_elem>\t{%P0[]}, %A1";
783 else
784- return "vld1.<V_sz_elem>\t%h0, [%1]";
785+ return "vld1.<V_sz_elem>\t%h0, %A1";
786 }
787 [(set (attr "neon_type")
788 (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1"))
789@@ -4327,14 +4327,14 @@
790
791 (define_insn "neon_vld1_dup<mode>"
792 [(set (match_operand:VQX 0 "s_register_operand" "=w")
793- (unspec:VQX [(mem:<V_elem> (match_operand:SI 1 "s_register_operand" "r"))]
794+ (unspec:VQX [(match_operand:<V_elem> 1 "neon_struct_operand" "Um")]
795 UNSPEC_VLD1_DUP))]
796 "TARGET_NEON"
797 {
798 if (GET_MODE_NUNITS (<MODE>mode) > 2)
799- return "vld1.<V_sz_elem>\t{%e0[], %f0[]}, [%1]";
800+ return "vld1.<V_sz_elem>\t{%e0[], %f0[]}, %A1";
801 else
802- return "vld1.<V_sz_elem>\t%h0, [%1]";
803+ return "vld1.<V_sz_elem>\t%h0, %A1";
804 }
805 [(set (attr "neon_type")
806 (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1"))
807@@ -4343,15 +4343,15 @@
808 )
809
810 (define_insn "neon_vst1<mode>"
811- [(set (mem:VDQX (match_operand:SI 0 "s_register_operand" "r"))
812+ [(set (match_operand:VDQX 0 "neon_struct_operand" "=Um")
813 (unspec:VDQX [(match_operand:VDQX 1 "s_register_operand" "w")]
814 UNSPEC_VST1))]
815 "TARGET_NEON"
816- "vst1.<V_sz_elem>\t%h1, [%0]"
817+ "vst1.<V_sz_elem>\t%h1, %A0"
818 [(set_attr "neon_type" "neon_vst1_1_2_regs_vst2_2_regs")])
819
820 (define_insn "neon_vst1_lane<mode>"
821- [(set (mem:<V_elem> (match_operand:SI 0 "s_register_operand" "r"))
822+ [(set (match_operand:<V_elem> 0 "neon_struct_operand" "=Um")
823 (vec_select:<V_elem>
824 (match_operand:VDX 1 "s_register_operand" "w")
825 (parallel [(match_operand:SI 2 "neon_lane_number" "i")])))]
826@@ -4362,9 +4362,9 @@
827 if (lane < 0 || lane >= max)
828 error ("lane out of range");
829 if (max == 1)
830- return "vst1.<V_sz_elem>\t{%P1}, [%0]";
831+ return "vst1.<V_sz_elem>\t{%P1}, %A0";
832 else
833- return "vst1.<V_sz_elem>\t{%P1[%c2]}, [%0]";
834+ return "vst1.<V_sz_elem>\t{%P1[%c2]}, %A0";
835 }
836 [(set (attr "neon_type")
837 (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 1))
838@@ -4372,7 +4372,7 @@
839 (const_string "neon_vst1_vst2_lane")))])
840
841 (define_insn "neon_vst1_lane<mode>"
842- [(set (mem:<V_elem> (match_operand:SI 0 "s_register_operand" "r"))
843+ [(set (match_operand:<V_elem> 0 "neon_struct_operand" "=Um")
844 (vec_select:<V_elem>
845 (match_operand:VQX 1 "s_register_operand" "w")
846 (parallel [(match_operand:SI 2 "neon_lane_number" "i")])))]
847@@ -4391,24 +4391,24 @@
848 }
849 operands[1] = gen_rtx_REG (<V_HALF>mode, regno);
850 if (max == 2)
851- return "vst1.<V_sz_elem>\t{%P1}, [%0]";
852+ return "vst1.<V_sz_elem>\t{%P1}, %A0";
853 else
854- return "vst1.<V_sz_elem>\t{%P1[%c2]}, [%0]";
855+ return "vst1.<V_sz_elem>\t{%P1[%c2]}, %A0";
856 }
857 [(set_attr "neon_type" "neon_vst1_vst2_lane")]
858 )
859
860 (define_insn "neon_vld2<mode>"
861 [(set (match_operand:TI 0 "s_register_operand" "=w")
862- (unspec:TI [(mem:TI (match_operand:SI 1 "s_register_operand" "r"))
863+ (unspec:TI [(match_operand:TI 1 "neon_struct_operand" "Um")
864 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
865 UNSPEC_VLD2))]
866 "TARGET_NEON"
867 {
868 if (<V_sz_elem> == 64)
869- return "vld1.64\t%h0, [%1]";
870+ return "vld1.64\t%h0, %A1";
871 else
872- return "vld2.<V_sz_elem>\t%h0, [%1]";
873+ return "vld2.<V_sz_elem>\t%h0, %A1";
874 }
875 [(set (attr "neon_type")
876 (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64"))
877@@ -4418,16 +4418,16 @@
878
879 (define_insn "neon_vld2<mode>"
880 [(set (match_operand:OI 0 "s_register_operand" "=w")
881- (unspec:OI [(mem:OI (match_operand:SI 1 "s_register_operand" "r"))
882+ (unspec:OI [(match_operand:OI 1 "neon_struct_operand" "Um")
883 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
884 UNSPEC_VLD2))]
885 "TARGET_NEON"
886- "vld2.<V_sz_elem>\t%h0, [%1]"
887+ "vld2.<V_sz_elem>\t%h0, %A1"
888 [(set_attr "neon_type" "neon_vld2_2_regs_vld1_vld2_all_lanes")])
889
890 (define_insn "neon_vld2_lane<mode>"
891 [(set (match_operand:TI 0 "s_register_operand" "=w")
892- (unspec:TI [(mem:<V_two_elem> (match_operand:SI 1 "s_register_operand" "r"))
893+ (unspec:TI [(match_operand:<V_two_elem> 1 "neon_struct_operand" "Um")
894 (match_operand:TI 2 "s_register_operand" "0")
895 (match_operand:SI 3 "immediate_operand" "i")
896 (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
897@@ -4444,7 +4444,7 @@
898 ops[1] = gen_rtx_REG (DImode, regno + 2);
899 ops[2] = operands[1];
900 ops[3] = operands[3];
901- output_asm_insn ("vld2.<V_sz_elem>\t{%P0[%c3], %P1[%c3]}, [%2]", ops);
902+ output_asm_insn ("vld2.<V_sz_elem>\t{%P0[%c3], %P1[%c3]}, %A2", ops);
903 return "";
904 }
905 [(set_attr "neon_type" "neon_vld1_vld2_lane")]
906@@ -4452,7 +4452,7 @@
907
908 (define_insn "neon_vld2_lane<mode>"
909 [(set (match_operand:OI 0 "s_register_operand" "=w")
910- (unspec:OI [(mem:<V_two_elem> (match_operand:SI 1 "s_register_operand" "r"))
911+ (unspec:OI [(match_operand:<V_two_elem> 1 "neon_struct_operand" "Um")
912 (match_operand:OI 2 "s_register_operand" "0")
913 (match_operand:SI 3 "immediate_operand" "i")
914 (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
915@@ -4474,7 +4474,7 @@
916 ops[1] = gen_rtx_REG (DImode, regno + 4);
917 ops[2] = operands[1];
918 ops[3] = GEN_INT (lane);
919- output_asm_insn ("vld2.<V_sz_elem>\t{%P0[%c3], %P1[%c3]}, [%2]", ops);
920+ output_asm_insn ("vld2.<V_sz_elem>\t{%P0[%c3], %P1[%c3]}, %A2", ops);
921 return "";
922 }
923 [(set_attr "neon_type" "neon_vld1_vld2_lane")]
924@@ -4482,15 +4482,15 @@
925
926 (define_insn "neon_vld2_dup<mode>"
927 [(set (match_operand:TI 0 "s_register_operand" "=w")
928- (unspec:TI [(mem:<V_two_elem> (match_operand:SI 1 "s_register_operand" "r"))
929+ (unspec:TI [(match_operand:<V_two_elem> 1 "neon_struct_operand" "Um")
930 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
931 UNSPEC_VLD2_DUP))]
932 "TARGET_NEON"
933 {
934 if (GET_MODE_NUNITS (<MODE>mode) > 1)
935- return "vld2.<V_sz_elem>\t{%e0[], %f0[]}, [%1]";
936+ return "vld2.<V_sz_elem>\t{%e0[], %f0[]}, %A1";
937 else
938- return "vld1.<V_sz_elem>\t%h0, [%1]";
939+ return "vld1.<V_sz_elem>\t%h0, %A1";
940 }
941 [(set (attr "neon_type")
942 (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1"))
943@@ -4499,16 +4499,16 @@
944 )
945
946 (define_insn "neon_vst2<mode>"
947- [(set (mem:TI (match_operand:SI 0 "s_register_operand" "r"))
948+ [(set (match_operand:TI 0 "neon_struct_operand" "=Um")
949 (unspec:TI [(match_operand:TI 1 "s_register_operand" "w")
950 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
951 UNSPEC_VST2))]
952 "TARGET_NEON"
953 {
954 if (<V_sz_elem> == 64)
955- return "vst1.64\t%h1, [%0]";
956+ return "vst1.64\t%h1, %A0";
957 else
958- return "vst2.<V_sz_elem>\t%h1, [%0]";
959+ return "vst2.<V_sz_elem>\t%h1, %A0";
960 }
961 [(set (attr "neon_type")
962 (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64"))
963@@ -4517,17 +4517,17 @@
964 )
965
966 (define_insn "neon_vst2<mode>"
967- [(set (mem:OI (match_operand:SI 0 "s_register_operand" "r"))
968+ [(set (match_operand:OI 0 "neon_struct_operand" "=Um")
969 (unspec:OI [(match_operand:OI 1 "s_register_operand" "w")
970 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
971 UNSPEC_VST2))]
972 "TARGET_NEON"
973- "vst2.<V_sz_elem>\t%h1, [%0]"
974+ "vst2.<V_sz_elem>\t%h1, %A0"
975 [(set_attr "neon_type" "neon_vst1_1_2_regs_vst2_2_regs")]
976 )
977
978 (define_insn "neon_vst2_lane<mode>"
979- [(set (mem:<V_two_elem> (match_operand:SI 0 "s_register_operand" "r"))
980+ [(set (match_operand:<V_two_elem> 0 "neon_struct_operand" "=Um")
981 (unspec:<V_two_elem>
982 [(match_operand:TI 1 "s_register_operand" "w")
983 (match_operand:SI 2 "immediate_operand" "i")
984@@ -4545,14 +4545,14 @@
985 ops[1] = gen_rtx_REG (DImode, regno);
986 ops[2] = gen_rtx_REG (DImode, regno + 2);
987 ops[3] = operands[2];
988- output_asm_insn ("vst2.<V_sz_elem>\t{%P1[%c3], %P2[%c3]}, [%0]", ops);
989+ output_asm_insn ("vst2.<V_sz_elem>\t{%P1[%c3], %P2[%c3]}, %A0", ops);
990 return "";
991 }
992 [(set_attr "neon_type" "neon_vst1_vst2_lane")]
993 )
994
995 (define_insn "neon_vst2_lane<mode>"
996- [(set (mem:<V_two_elem> (match_operand:SI 0 "s_register_operand" "r"))
997+ [(set (match_operand:<V_two_elem> 0 "neon_struct_operand" "=Um")
998 (unspec:<V_two_elem>
999 [(match_operand:OI 1 "s_register_operand" "w")
1000 (match_operand:SI 2 "immediate_operand" "i")
1001@@ -4575,7 +4575,7 @@
1002 ops[1] = gen_rtx_REG (DImode, regno);
1003 ops[2] = gen_rtx_REG (DImode, regno + 4);
1004 ops[3] = GEN_INT (lane);
1005- output_asm_insn ("vst2.<V_sz_elem>\t{%P1[%c3], %P2[%c3]}, [%0]", ops);
1006+ output_asm_insn ("vst2.<V_sz_elem>\t{%P1[%c3], %P2[%c3]}, %A0", ops);
1007 return "";
1008 }
1009 [(set_attr "neon_type" "neon_vst1_vst2_lane")]
1010@@ -4583,15 +4583,15 @@
1011
1012 (define_insn "neon_vld3<mode>"
1013 [(set (match_operand:EI 0 "s_register_operand" "=w")
1014- (unspec:EI [(mem:EI (match_operand:SI 1 "s_register_operand" "r"))
1015+ (unspec:EI [(match_operand:EI 1 "neon_struct_operand" "Um")
1016 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1017 UNSPEC_VLD3))]
1018 "TARGET_NEON"
1019 {
1020 if (<V_sz_elem> == 64)
1021- return "vld1.64\t%h0, [%1]";
1022+ return "vld1.64\t%h0, %A1";
1023 else
1024- return "vld3.<V_sz_elem>\t%h0, [%1]";
1025+ return "vld3.<V_sz_elem>\t%h0, %A1";
1026 }
1027 [(set (attr "neon_type")
1028 (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64"))
1029@@ -4600,27 +4600,25 @@
1030 )
1031
1032 (define_expand "neon_vld3<mode>"
1033- [(match_operand:CI 0 "s_register_operand" "=w")
1034- (match_operand:SI 1 "s_register_operand" "+r")
1035+ [(match_operand:CI 0 "s_register_operand")
1036+ (match_operand:CI 1 "neon_struct_operand")
1037 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1038 "TARGET_NEON"
1039 {
1040- emit_insn (gen_neon_vld3qa<mode> (operands[0], operands[0],
1041- operands[1], operands[1]));
1042- emit_insn (gen_neon_vld3qb<mode> (operands[0], operands[0],
1043- operands[1], operands[1]));
1044+ rtx mem;
1045+
1046+ mem = adjust_address (operands[1], EImode, 0);
1047+ emit_insn (gen_neon_vld3qa<mode> (operands[0], mem));
1048+ mem = adjust_address (mem, EImode, GET_MODE_SIZE (EImode));
1049+ emit_insn (gen_neon_vld3qb<mode> (operands[0], mem, operands[0]));
1050 DONE;
1051 })
1052
1053 (define_insn "neon_vld3qa<mode>"
1054 [(set (match_operand:CI 0 "s_register_operand" "=w")
1055- (unspec:CI [(mem:CI (match_operand:SI 3 "s_register_operand" "2"))
1056- (match_operand:CI 1 "s_register_operand" "0")
1057+ (unspec:CI [(match_operand:EI 1 "neon_struct_operand" "Um")
1058 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1059- UNSPEC_VLD3A))
1060- (set (match_operand:SI 2 "s_register_operand" "=r")
1061- (plus:SI (match_dup 3)
1062- (const_int 24)))]
1063+ UNSPEC_VLD3A))]
1064 "TARGET_NEON"
1065 {
1066 int regno = REGNO (operands[0]);
1067@@ -4628,8 +4626,8 @@
1068 ops[0] = gen_rtx_REG (DImode, regno);
1069 ops[1] = gen_rtx_REG (DImode, regno + 4);
1070 ops[2] = gen_rtx_REG (DImode, regno + 8);
1071- ops[3] = operands[2];
1072- output_asm_insn ("vld3.<V_sz_elem>\t{%P0, %P1, %P2}, [%3]!", ops);
1073+ ops[3] = operands[1];
1074+ output_asm_insn ("vld3.<V_sz_elem>\t{%P0, %P1, %P2}, %A3", ops);
1075 return "";
1076 }
1077 [(set_attr "neon_type" "neon_vld3_vld4")]
1078@@ -4637,13 +4635,10 @@
1079
1080 (define_insn "neon_vld3qb<mode>"
1081 [(set (match_operand:CI 0 "s_register_operand" "=w")
1082- (unspec:CI [(mem:CI (match_operand:SI 3 "s_register_operand" "2"))
1083- (match_operand:CI 1 "s_register_operand" "0")
1084+ (unspec:CI [(match_operand:EI 1 "neon_struct_operand" "Um")
1085+ (match_operand:CI 2 "s_register_operand" "0")
1086 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1087- UNSPEC_VLD3B))
1088- (set (match_operand:SI 2 "s_register_operand" "=r")
1089- (plus:SI (match_dup 3)
1090- (const_int 24)))]
1091+ UNSPEC_VLD3B))]
1092 "TARGET_NEON"
1093 {
1094 int regno = REGNO (operands[0]);
1095@@ -4651,8 +4646,8 @@
1096 ops[0] = gen_rtx_REG (DImode, regno + 2);
1097 ops[1] = gen_rtx_REG (DImode, regno + 6);
1098 ops[2] = gen_rtx_REG (DImode, regno + 10);
1099- ops[3] = operands[2];
1100- output_asm_insn ("vld3.<V_sz_elem>\t{%P0, %P1, %P2}, [%3]!", ops);
1101+ ops[3] = operands[1];
1102+ output_asm_insn ("vld3.<V_sz_elem>\t{%P0, %P1, %P2}, %A3", ops);
1103 return "";
1104 }
1105 [(set_attr "neon_type" "neon_vld3_vld4")]
1106@@ -4660,7 +4655,7 @@
1107
1108 (define_insn "neon_vld3_lane<mode>"
1109 [(set (match_operand:EI 0 "s_register_operand" "=w")
1110- (unspec:EI [(mem:<V_three_elem> (match_operand:SI 1 "s_register_operand" "r"))
1111+ (unspec:EI [(match_operand:<V_three_elem> 1 "neon_struct_operand" "Um")
1112 (match_operand:EI 2 "s_register_operand" "0")
1113 (match_operand:SI 3 "immediate_operand" "i")
1114 (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1115@@ -4678,7 +4673,7 @@
1116 ops[2] = gen_rtx_REG (DImode, regno + 4);
1117 ops[3] = operands[1];
1118 ops[4] = operands[3];
1119- output_asm_insn ("vld3.<V_sz_elem>\t{%P0[%c4], %P1[%c4], %P2[%c4]}, [%3]",
1120+ output_asm_insn ("vld3.<V_sz_elem>\t{%P0[%c4], %P1[%c4], %P2[%c4]}, %A3",
1121 ops);
1122 return "";
1123 }
1124@@ -4687,7 +4682,7 @@
1125
1126 (define_insn "neon_vld3_lane<mode>"
1127 [(set (match_operand:CI 0 "s_register_operand" "=w")
1128- (unspec:CI [(mem:<V_three_elem> (match_operand:SI 1 "s_register_operand" "r"))
1129+ (unspec:CI [(match_operand:<V_three_elem> 1 "neon_struct_operand" "Um")
1130 (match_operand:CI 2 "s_register_operand" "0")
1131 (match_operand:SI 3 "immediate_operand" "i")
1132 (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1133@@ -4710,7 +4705,7 @@
1134 ops[2] = gen_rtx_REG (DImode, regno + 8);
1135 ops[3] = operands[1];
1136 ops[4] = GEN_INT (lane);
1137- output_asm_insn ("vld3.<V_sz_elem>\t{%P0[%c4], %P1[%c4], %P2[%c4]}, [%3]",
1138+ output_asm_insn ("vld3.<V_sz_elem>\t{%P0[%c4], %P1[%c4], %P2[%c4]}, %A3",
1139 ops);
1140 return "";
1141 }
1142@@ -4719,7 +4714,7 @@
1143
1144 (define_insn "neon_vld3_dup<mode>"
1145 [(set (match_operand:EI 0 "s_register_operand" "=w")
1146- (unspec:EI [(mem:<V_three_elem> (match_operand:SI 1 "s_register_operand" "r"))
1147+ (unspec:EI [(match_operand:<V_three_elem> 1 "neon_struct_operand" "Um")
1148 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1149 UNSPEC_VLD3_DUP))]
1150 "TARGET_NEON"
1151@@ -4732,11 +4727,11 @@
1152 ops[1] = gen_rtx_REG (DImode, regno + 2);
1153 ops[2] = gen_rtx_REG (DImode, regno + 4);
1154 ops[3] = operands[1];
1155- output_asm_insn ("vld3.<V_sz_elem>\t{%P0[], %P1[], %P2[]}, [%3]", ops);
1156+ output_asm_insn ("vld3.<V_sz_elem>\t{%P0[], %P1[], %P2[]}, %A3", ops);
1157 return "";
1158 }
1159 else
1160- return "vld1.<V_sz_elem>\t%h0, [%1]";
1161+ return "vld1.<V_sz_elem>\t%h0, %A1";
1162 }
1163 [(set (attr "neon_type")
1164 (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1"))
1165@@ -4744,16 +4739,16 @@
1166 (const_string "neon_vld1_1_2_regs")))])
1167
1168 (define_insn "neon_vst3<mode>"
1169- [(set (mem:EI (match_operand:SI 0 "s_register_operand" "r"))
1170+ [(set (match_operand:EI 0 "neon_struct_operand" "=Um")
1171 (unspec:EI [(match_operand:EI 1 "s_register_operand" "w")
1172 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1173 UNSPEC_VST3))]
1174 "TARGET_NEON"
1175 {
1176 if (<V_sz_elem> == 64)
1177- return "vst1.64\t%h1, [%0]";
1178+ return "vst1.64\t%h1, %A0";
1179 else
1180- return "vst3.<V_sz_elem>\t%h1, [%0]";
1181+ return "vst3.<V_sz_elem>\t%h1, %A0";
1182 }
1183 [(set (attr "neon_type")
1184 (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64"))
1185@@ -4761,62 +4756,60 @@
1186 (const_string "neon_vst2_4_regs_vst3_vst4")))])
1187
1188 (define_expand "neon_vst3<mode>"
1189- [(match_operand:SI 0 "s_register_operand" "+r")
1190- (match_operand:CI 1 "s_register_operand" "w")
1191+ [(match_operand:CI 0 "neon_struct_operand")
1192+ (match_operand:CI 1 "s_register_operand")
1193 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1194 "TARGET_NEON"
1195 {
1196- emit_insn (gen_neon_vst3qa<mode> (operands[0], operands[0], operands[1]));
1197- emit_insn (gen_neon_vst3qb<mode> (operands[0], operands[0], operands[1]));
1198+ rtx mem;
1199+
1200+ mem = adjust_address (operands[0], EImode, 0);
1201+ emit_insn (gen_neon_vst3qa<mode> (mem, operands[1]));
1202+ mem = adjust_address (mem, EImode, GET_MODE_SIZE (EImode));
1203+ emit_insn (gen_neon_vst3qb<mode> (mem, operands[1]));
1204 DONE;
1205 })
1206
1207 (define_insn "neon_vst3qa<mode>"
1208- [(set (mem:EI (match_operand:SI 1 "s_register_operand" "0"))
1209- (unspec:EI [(match_operand:CI 2 "s_register_operand" "w")
1210+ [(set (match_operand:EI 0 "neon_struct_operand" "=Um")
1211+ (unspec:EI [(match_operand:CI 1 "s_register_operand" "w")
1212 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1213- UNSPEC_VST3A))
1214- (set (match_operand:SI 0 "s_register_operand" "=r")
1215- (plus:SI (match_dup 1)
1216- (const_int 24)))]
1217+ UNSPEC_VST3A))]
1218 "TARGET_NEON"
1219 {
1220- int regno = REGNO (operands[2]);
1221+ int regno = REGNO (operands[1]);
1222 rtx ops[4];
1223 ops[0] = operands[0];
1224 ops[1] = gen_rtx_REG (DImode, regno);
1225 ops[2] = gen_rtx_REG (DImode, regno + 4);
1226 ops[3] = gen_rtx_REG (DImode, regno + 8);
1227- output_asm_insn ("vst3.<V_sz_elem>\t{%P1, %P2, %P3}, [%0]!", ops);
1228+ output_asm_insn ("vst3.<V_sz_elem>\t{%P1, %P2, %P3}, %A0", ops);
1229 return "";
1230 }
1231 [(set_attr "neon_type" "neon_vst2_4_regs_vst3_vst4")]
1232 )
1233
1234 (define_insn "neon_vst3qb<mode>"
1235- [(set (mem:EI (match_operand:SI 1 "s_register_operand" "0"))
1236- (unspec:EI [(match_operand:CI 2 "s_register_operand" "w")
1237+ [(set (match_operand:EI 0 "neon_struct_operand" "=Um")
1238+ (unspec:EI [(match_operand:CI 1 "s_register_operand" "w")
1239 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1240- UNSPEC_VST3B))
1241- (set (match_operand:SI 0 "s_register_operand" "=r")
1242- (plus:SI (match_dup 1)
1243- (const_int 24)))]
1244+ UNSPEC_VST3B))]
1245 "TARGET_NEON"
1246 {
1247- int regno = REGNO (operands[2]);
1248+ int regno = REGNO (operands[1]);
1249 rtx ops[4];
1250 ops[0] = operands[0];
1251 ops[1] = gen_rtx_REG (DImode, regno + 2);
1252 ops[2] = gen_rtx_REG (DImode, regno + 6);
1253 ops[3] = gen_rtx_REG (DImode, regno + 10);
1254- output_asm_insn ("vst3.<V_sz_elem>\t{%P1, %P2, %P3}, [%0]!", ops);
1255+ output_asm_insn ("vst3.<V_sz_elem>\t{%P1, %P2, %P3}, %A0", ops);
1256 return "";
1257 }
1258 [(set_attr "neon_type" "neon_vst2_4_regs_vst3_vst4")]
1259 )
1260
1261 (define_insn "neon_vst3_lane<mode>"
1262- [(set (mem:<V_three_elem> (match_operand:SI 0 "s_register_operand" "r"))
1263+ [(set (match_operand:<V_three_elem> 0 "neon_struct_operand" "=Um")
1264 (unspec:<V_three_elem>
1265 [(match_operand:EI 1 "s_register_operand" "w")
1266 (match_operand:SI 2 "immediate_operand" "i")
1267@@ -4835,7 +4828,7 @@
1268 ops[2] = gen_rtx_REG (DImode, regno + 2);
1269 ops[3] = gen_rtx_REG (DImode, regno + 4);
1270 ops[4] = operands[2];
1271- output_asm_insn ("vst3.<V_sz_elem>\t{%P1[%c4], %P2[%c4], %P3[%c4]}, [%0]",
1272+ output_asm_insn ("vst3.<V_sz_elem>\t{%P1[%c4], %P2[%c4], %P3[%c4]}, %A0",
1273 ops);
1274 return "";
1275 }
1276@@ -4843,7 +4836,7 @@
1277 )
1278
1279 (define_insn "neon_vst3_lane<mode>"
1280- [(set (mem:<V_three_elem> (match_operand:SI 0 "s_register_operand" "r"))
1281+ [(set (match_operand:<V_three_elem> 0 "neon_struct_operand" "=Um")
1282 (unspec:<V_three_elem>
1283 [(match_operand:CI 1 "s_register_operand" "w")
1284 (match_operand:SI 2 "immediate_operand" "i")
1285@@ -4867,7 +4860,7 @@
1286 ops[2] = gen_rtx_REG (DImode, regno + 4);
1287 ops[3] = gen_rtx_REG (DImode, regno + 8);
1288 ops[4] = GEN_INT (lane);
1289- output_asm_insn ("vst3.<V_sz_elem>\t{%P1[%c4], %P2[%c4], %P3[%c4]}, [%0]",
1290+ output_asm_insn ("vst3.<V_sz_elem>\t{%P1[%c4], %P2[%c4], %P3[%c4]}, %A0",
1291 ops);
1292 return "";
1293 }
1294@@ -4875,15 +4868,15 @@
1295
1296 (define_insn "neon_vld4<mode>"
1297 [(set (match_operand:OI 0 "s_register_operand" "=w")
1298- (unspec:OI [(mem:OI (match_operand:SI 1 "s_register_operand" "r"))
1299+ (unspec:OI [(match_operand:OI 1 "neon_struct_operand" "Um")
1300 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1301 UNSPEC_VLD4))]
1302 "TARGET_NEON"
1303 {
1304 if (<V_sz_elem> == 64)
1305- return "vld1.64\t%h0, [%1]";
1306+ return "vld1.64\t%h0, %A1";
1307 else
1308- return "vld4.<V_sz_elem>\t%h0, [%1]";
1309+ return "vld4.<V_sz_elem>\t%h0, %A1";
1310 }
1311 [(set (attr "neon_type")
1312 (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64"))
1313@@ -4892,27 +4885,25 @@
1314 )
1315
1316 (define_expand "neon_vld4<mode>"
1317- [(match_operand:XI 0 "s_register_operand" "=w")
1318- (match_operand:SI 1 "s_register_operand" "+r")
1319+ [(match_operand:XI 0 "s_register_operand")
1320+ (match_operand:XI 1 "neon_struct_operand")
1321 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1322 "TARGET_NEON"
1323 {
1324- emit_insn (gen_neon_vld4qa<mode> (operands[0], operands[0],
1325- operands[1], operands[1]));
1326- emit_insn (gen_neon_vld4qb<mode> (operands[0], operands[0],
1327- operands[1], operands[1]));
1328+ rtx mem;
1329+
1330+ mem = adjust_address (operands[1], OImode, 0);
1331+ emit_insn (gen_neon_vld4qa<mode> (operands[0], mem));
1332+ mem = adjust_address (mem, OImode, GET_MODE_SIZE (OImode));
1333+ emit_insn (gen_neon_vld4qb<mode> (operands[0], mem, operands[0]));
1334 DONE;
1335 })
1336
1337 (define_insn "neon_vld4qa<mode>"
1338 [(set (match_operand:XI 0 "s_register_operand" "=w")
1339- (unspec:XI [(mem:XI (match_operand:SI 3 "s_register_operand" "2"))
1340- (match_operand:XI 1 "s_register_operand" "0")
1341+ (unspec:XI [(match_operand:OI 1 "neon_struct_operand" "Um")
1342 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1343- UNSPEC_VLD4A))
1344- (set (match_operand:SI 2 "s_register_operand" "=r")
1345- (plus:SI (match_dup 3)
1346- (const_int 32)))]
1347+ UNSPEC_VLD4A))]
1348 "TARGET_NEON"
1349 {
1350 int regno = REGNO (operands[0]);
1351@@ -4921,8 +4912,8 @@
1352 ops[1] = gen_rtx_REG (DImode, regno + 4);
1353 ops[2] = gen_rtx_REG (DImode, regno + 8);
1354 ops[3] = gen_rtx_REG (DImode, regno + 12);
1355- ops[4] = operands[2];
1356- output_asm_insn ("vld4.<V_sz_elem>\t{%P0, %P1, %P2, %P3}, [%4]!", ops);
1357+ ops[4] = operands[1];
1358+ output_asm_insn ("vld4.<V_sz_elem>\t{%P0, %P1, %P2, %P3}, %A4", ops);
1359 return "";
1360 }
1361 [(set_attr "neon_type" "neon_vld3_vld4")]
1362@@ -4930,13 +4921,10 @@
1363
1364 (define_insn "neon_vld4qb<mode>"
1365 [(set (match_operand:XI 0 "s_register_operand" "=w")
1366- (unspec:XI [(mem:XI (match_operand:SI 3 "s_register_operand" "2"))
1367- (match_operand:XI 1 "s_register_operand" "0")
1368+ (unspec:XI [(match_operand:OI 1 "neon_struct_operand" "Um")
1369+ (match_operand:XI 2 "s_register_operand" "0")
1370 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1371- UNSPEC_VLD4B))
1372- (set (match_operand:SI 2 "s_register_operand" "=r")
1373- (plus:SI (match_dup 3)
1374- (const_int 32)))]
1375+ UNSPEC_VLD4B))]
1376 "TARGET_NEON"
1377 {
1378 int regno = REGNO (operands[0]);
1379@@ -4945,8 +4933,8 @@
1380 ops[1] = gen_rtx_REG (DImode, regno + 6);
1381 ops[2] = gen_rtx_REG (DImode, regno + 10);
1382 ops[3] = gen_rtx_REG (DImode, regno + 14);
1383- ops[4] = operands[2];
1384- output_asm_insn ("vld4.<V_sz_elem>\t{%P0, %P1, %P2, %P3}, [%4]!", ops);
1385+ ops[4] = operands[1];
1386+ output_asm_insn ("vld4.<V_sz_elem>\t{%P0, %P1, %P2, %P3}, %A4", ops);
1387 return "";
1388 }
1389 [(set_attr "neon_type" "neon_vld3_vld4")]
1390@@ -4954,7 +4942,7 @@
1391
1392 (define_insn "neon_vld4_lane<mode>"
1393 [(set (match_operand:OI 0 "s_register_operand" "=w")
1394- (unspec:OI [(mem:<V_four_elem> (match_operand:SI 1 "s_register_operand" "r"))
1395+ (unspec:OI [(match_operand:<V_four_elem> 1 "neon_struct_operand" "Um")
1396 (match_operand:OI 2 "s_register_operand" "0")
1397 (match_operand:SI 3 "immediate_operand" "i")
1398 (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1399@@ -4973,7 +4961,7 @@
1400 ops[3] = gen_rtx_REG (DImode, regno + 6);
1401 ops[4] = operands[1];
1402 ops[5] = operands[3];
1403- output_asm_insn ("vld4.<V_sz_elem>\t{%P0[%c5], %P1[%c5], %P2[%c5], %P3[%c5]}, [%4]",
1404+ output_asm_insn ("vld4.<V_sz_elem>\t{%P0[%c5], %P1[%c5], %P2[%c5], %P3[%c5]}, %A4",
1405 ops);
1406 return "";
1407 }
1408@@ -4982,7 +4970,7 @@
1409
1410 (define_insn "neon_vld4_lane<mode>"
1411 [(set (match_operand:XI 0 "s_register_operand" "=w")
1412- (unspec:XI [(mem:<V_four_elem> (match_operand:SI 1 "s_register_operand" "r"))
1413+ (unspec:XI [(match_operand:<V_four_elem> 1 "neon_struct_operand" "Um")
1414 (match_operand:XI 2 "s_register_operand" "0")
1415 (match_operand:SI 3 "immediate_operand" "i")
1416 (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1417@@ -5006,7 +4994,7 @@
1418 ops[3] = gen_rtx_REG (DImode, regno + 12);
1419 ops[4] = operands[1];
1420 ops[5] = GEN_INT (lane);
1421- output_asm_insn ("vld4.<V_sz_elem>\t{%P0[%c5], %P1[%c5], %P2[%c5], %P3[%c5]}, [%4]",
1422+ output_asm_insn ("vld4.<V_sz_elem>\t{%P0[%c5], %P1[%c5], %P2[%c5], %P3[%c5]}, %A4",
1423 ops);
1424 return "";
1425 }
1426@@ -5015,7 +5003,7 @@
1427
1428 (define_insn "neon_vld4_dup<mode>"
1429 [(set (match_operand:OI 0 "s_register_operand" "=w")
1430- (unspec:OI [(mem:<V_four_elem> (match_operand:SI 1 "s_register_operand" "r"))
1431+ (unspec:OI [(match_operand:<V_four_elem> 1 "neon_struct_operand" "Um")
1432 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1433 UNSPEC_VLD4_DUP))]
1434 "TARGET_NEON"
1435@@ -5029,12 +5017,12 @@
1436 ops[2] = gen_rtx_REG (DImode, regno + 4);
1437 ops[3] = gen_rtx_REG (DImode, regno + 6);
1438 ops[4] = operands[1];
1439- output_asm_insn ("vld4.<V_sz_elem>\t{%P0[], %P1[], %P2[], %P3[]}, [%4]",
1440+ output_asm_insn ("vld4.<V_sz_elem>\t{%P0[], %P1[], %P2[], %P3[]}, %A4",
1441 ops);
1442 return "";
1443 }
1444 else
1445- return "vld1.<V_sz_elem>\t%h0, [%1]";
1446+ return "vld1.<V_sz_elem>\t%h0, %A1";
1447 }
1448 [(set (attr "neon_type")
1449 (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1"))
1450@@ -5043,16 +5031,16 @@
1451 )
1452
1453 (define_insn "neon_vst4<mode>"
1454- [(set (mem:OI (match_operand:SI 0 "s_register_operand" "r"))
1455+ [(set (match_operand:OI 0 "neon_struct_operand" "=Um")
1456 (unspec:OI [(match_operand:OI 1 "s_register_operand" "w")
1457 (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1458 UNSPEC_VST4))]
1459 "TARGET_NEON"
1460 {
1461 if (<V_sz_elem> == 64)
1462- return "vst1.64\t%h1, [%0]";
1463+ return "vst1.64\t%h1, %A0";
1464 else
1465- return "vst4.<V_sz_elem>\t%h1, [%0]";
1466+ return "vst4.<V_sz_elem>\t%h1, %A0";
1467 }
1468 [(set (attr "neon_type")
1469 (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64"))
1470@@ -5061,64 +5049,62 @@
1471 )
1472
1473 (define_expand "neon_vst4<mode>"
1474- [(match_operand:SI 0 "s_register_operand" "+r")
1475- (match_operand:XI 1 "s_register_operand" "w")
1476+ [(match_operand:XI 0 "neon_struct_operand")
1477+ (match_operand:XI 1 "s_register_operand")
1478 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1479 "TARGET_NEON"
1480 {
1481- emit_insn (gen_neon_vst4qa<mode> (operands[0], operands[0], operands[1]));
1482- emit_insn (gen_neon_vst4qb<mode> (operands[0], operands[0], operands[1]));
1483+ rtx mem;
1484+
1485+ mem = adjust_address (operands[0], OImode, 0);
1486+ emit_insn (gen_neon_vst4qa<mode> (mem, operands[1]));
1487+ mem = adjust_address (mem, OImode, GET_MODE_SIZE (OImode));
1488+ emit_insn (gen_neon_vst4qb<mode> (mem, operands[1]));
1489 DONE;
1490 })
1491
1492 (define_insn "neon_vst4qa<mode>"
1493- [(set (mem:OI (match_operand:SI 1 "s_register_operand" "0"))
1494- (unspec:OI [(match_operand:XI 2 "s_register_operand" "w")
1495+ [(set (match_operand:OI 0 "neon_struct_operand" "=Um")
1496+ (unspec:OI [(match_operand:XI 1 "s_register_operand" "w")
1497 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1498- UNSPEC_VST4A))
1499- (set (match_operand:SI 0 "s_register_operand" "=r")
1500- (plus:SI (match_dup 1)
1501- (const_int 32)))]
1502+ UNSPEC_VST4A))]
1503 "TARGET_NEON"
1504 {
1505- int regno = REGNO (operands[2]);
1506+ int regno = REGNO (operands[1]);
1507 rtx ops[5];
1508 ops[0] = operands[0];
1509 ops[1] = gen_rtx_REG (DImode, regno);
1510 ops[2] = gen_rtx_REG (DImode, regno + 4);
1511 ops[3] = gen_rtx_REG (DImode, regno + 8);
1512 ops[4] = gen_rtx_REG (DImode, regno + 12);
1513- output_asm_insn ("vst4.<V_sz_elem>\t{%P1, %P2, %P3, %P4}, [%0]!", ops);
1514+ output_asm_insn ("vst4.<V_sz_elem>\t{%P1, %P2, %P3, %P4}, %A0", ops);
1515 return "";
1516 }
1517 [(set_attr "neon_type" "neon_vst2_4_regs_vst3_vst4")]
1518 )
1519
1520 (define_insn "neon_vst4qb<mode>"
1521- [(set (mem:OI (match_operand:SI 1 "s_register_operand" "0"))
1522- (unspec:OI [(match_operand:XI 2 "s_register_operand" "w")
1523+ [(set (match_operand:OI 0 "neon_struct_operand" "=Um")
1524+ (unspec:OI [(match_operand:XI 1 "s_register_operand" "w")
1525 (unspec:VQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)]
1526- UNSPEC_VST4B))
1527- (set (match_operand:SI 0 "s_register_operand" "=r")
1528- (plus:SI (match_dup 1)
1529- (const_int 32)))]
1530+ UNSPEC_VST4B))]
1531 "TARGET_NEON"
1532 {
1533- int regno = REGNO (operands[2]);
1534+ int regno = REGNO (operands[1]);
1535 rtx ops[5];
1536 ops[0] = operands[0];
1537 ops[1] = gen_rtx_REG (DImode, regno + 2);
1538 ops[2] = gen_rtx_REG (DImode, regno + 6);
1539 ops[3] = gen_rtx_REG (DImode, regno + 10);
1540 ops[4] = gen_rtx_REG (DImode, regno + 14);
1541- output_asm_insn ("vst4.<V_sz_elem>\t{%P1, %P2, %P3, %P4}, [%0]!", ops);
1542+ output_asm_insn ("vst4.<V_sz_elem>\t{%P1, %P2, %P3, %P4}, %A0", ops);
1543 return "";
1544 }
1545 [(set_attr "neon_type" "neon_vst2_4_regs_vst3_vst4")]
1546 )
1547
1548 (define_insn "neon_vst4_lane<mode>"
1549- [(set (mem:<V_four_elem> (match_operand:SI 0 "s_register_operand" "r"))
1550+ [(set (match_operand:<V_four_elem> 0 "neon_struct_operand" "=Um")
1551 (unspec:<V_four_elem>
1552 [(match_operand:OI 1 "s_register_operand" "w")
1553 (match_operand:SI 2 "immediate_operand" "i")
1554@@ -5138,7 +5124,7 @@
1555 ops[3] = gen_rtx_REG (DImode, regno + 4);
1556 ops[4] = gen_rtx_REG (DImode, regno + 6);
1557 ops[5] = operands[2];
1558- output_asm_insn ("vst4.<V_sz_elem>\t{%P1[%c5], %P2[%c5], %P3[%c5], %P4[%c5]}, [%0]",
1559+ output_asm_insn ("vst4.<V_sz_elem>\t{%P1[%c5], %P2[%c5], %P3[%c5], %P4[%c5]}, %A0",
1560 ops);
1561 return "";
1562 }
1563@@ -5146,7 +5132,7 @@
1564 )
1565
1566 (define_insn "neon_vst4_lane<mode>"
1567- [(set (mem:<V_four_elem> (match_operand:SI 0 "s_register_operand" "r"))
1568+ [(set (match_operand:<V_four_elem> 0 "neon_struct_operand" "=Um")
1569 (unspec:<V_four_elem>
1570 [(match_operand:XI 1 "s_register_operand" "w")
1571 (match_operand:SI 2 "immediate_operand" "i")
1572@@ -5171,7 +5157,7 @@
1573 ops[3] = gen_rtx_REG (DImode, regno + 8);
1574 ops[4] = gen_rtx_REG (DImode, regno + 12);
1575 ops[5] = GEN_INT (lane);
1576- output_asm_insn ("vst4.<V_sz_elem>\t{%P1[%c5], %P2[%c5], %P3[%c5], %P4[%c5]}, [%0]",
1577+ output_asm_insn ("vst4.<V_sz_elem>\t{%P1[%c5], %P2[%c5], %P3[%c5], %P4[%c5]}, %A0",
1578 ops);
1579 return "";
1580 }
1581
1582=== modified file 'gcc/config/arm/predicates.md'
1583--- old/gcc/config/arm/predicates.md 2011-04-07 10:52:12 +0000
1584+++ new/gcc/config/arm/predicates.md 2011-05-03 15:14:56 +0000
1585@@ -683,3 +683,7 @@
1586 }
1587 return true;
1588 })
1589+
1590+(define_special_predicate "neon_struct_operand"
1591+ (and (match_code "mem")
1592+ (match_test "TARGET_32BIT && neon_vector_mem_operand (op, 2)")))
1593
1594=== modified file 'gcc/doc/tm.texi'
1595--- old/gcc/doc/tm.texi 2011-01-22 19:35:10 +0000
1596+++ new/gcc/doc/tm.texi 2011-05-03 15:17:25 +0000
1597@@ -2533,7 +2533,7 @@
1598 register, so @code{TARGET_PREFERRED_RELOAD_CLASS} returns @code{NO_REGS} when
1599 @var{x} is a floating-point constant. If the constant can't be loaded
1600 into any kind of register, code generation will be better if
1601-@code{LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1602+@code{TARGET_LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1603 of using @code{TARGET_PREFERRED_RELOAD_CLASS}.
1604
1605 If an insn has pseudos in it after register allocation, reload will go
1606@@ -2570,8 +2570,8 @@
1607 register, so @code{PREFERRED_RELOAD_CLASS} returns @code{NO_REGS} when
1608 @var{x} is a floating-point constant. If the constant can't be loaded
1609 into any kind of register, code generation will be better if
1610-@code{LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1611-of using @code{PREFERRED_RELOAD_CLASS}.
1612+@code{TARGET_LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1613+of using @code{TARGET_PREFERRED_RELOAD_CLASS}.
1614
1615 If an insn has pseudos in it after register allocation, reload will go
1616 through the alternatives and call repeatedly @code{PREFERRED_RELOAD_CLASS}
1617@@ -4319,6 +4319,34 @@
1618 must have move patterns for this mode.
1619 @end deftypefn
1620
1621+@deftypefn {Target Hook} bool TARGET_ARRAY_MODE_SUPPORTED_P (enum machine_mode @var{mode}, unsigned HOST_WIDE_INT @var{nelems})
1622+Return true if GCC should try to use a scalar mode to store an array
1623+of @var{nelems} elements, given that each element has mode @var{mode}.
1624+Returning true here overrides the usual @code{MAX_FIXED_MODE} limit
1625+and allows GCC to use any defined integer mode.
1626+
1627+One use of this hook is to support vector load and store operations
1628+that operate on several homogeneous vectors. For example, ARM NEON
1629+has operations like:
1630+
1631+@smallexample
1632+int8x8x3_t vld3_s8 (const int8_t *)
1633+@end smallexample
1634+
1635+where the return type is defined as:
1636+
1637+@smallexample
1638+typedef struct int8x8x3_t
1639+@{
1640+ int8x8_t val[3];
1641+@} int8x8x3_t;
1642+@end smallexample
1643+
1644+If this hook allows @code{val} to have a scalar mode, then
1645+@code{int8x8x3_t} can have the same mode. GCC can then store
1646+@code{int8x8x3_t}s in registers rather than forcing them onto the stack.
1647+@end deftypefn
1648+
1649 @deftypefn {Target Hook} bool TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P (enum machine_mode @var{mode})
1650 Define this to return nonzero for machine modes for which the port has
1651 small register classes. If this target hook returns nonzero for a given
1652@@ -5577,13 +5605,13 @@
1653 @code{TARGET_MODE_DEPENDENT_ADDRESS_P} target hook.
1654 @end defmac
1655
1656-@defmac LEGITIMATE_CONSTANT_P (@var{x})
1657-A C expression that is nonzero if @var{x} is a legitimate constant for
1658-an immediate operand on the target machine. You can assume that
1659-@var{x} satisfies @code{CONSTANT_P}, so you need not check this. In fact,
1660-@samp{1} is a suitable definition for this macro on machines where
1661-anything @code{CONSTANT_P} is valid.
1662-@end defmac
1663+@deftypefn {Target Hook} bool TARGET_LEGITIMATE_CONSTANT_P (enum machine_mode @var{mode}, rtx @var{x})
1664+This hook returns true if @var{x} is a legitimate constant for a
1665+@var{mode}-mode immediate operand on the target machine. You can assume that
1666+@var{x} satisfies @code{CONSTANT_P}, so you need not check this.
1667+
1668+The default definition returns true.
1669+@end deftypefn
1670
1671 @deftypefn {Target Hook} rtx TARGET_DELEGITIMIZE_ADDRESS (rtx @var{x})
1672 This hook is used to undo the possibly obfuscating effects of the
1673
1674=== modified file 'gcc/doc/tm.texi.in'
1675--- old/gcc/doc/tm.texi.in 2011-01-22 19:35:10 +0000
1676+++ new/gcc/doc/tm.texi.in 2011-05-03 15:17:25 +0000
1677@@ -2521,7 +2521,7 @@
1678 register, so @code{TARGET_PREFERRED_RELOAD_CLASS} returns @code{NO_REGS} when
1679 @var{x} is a floating-point constant. If the constant can't be loaded
1680 into any kind of register, code generation will be better if
1681-@code{LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1682+@code{TARGET_LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1683 of using @code{TARGET_PREFERRED_RELOAD_CLASS}.
1684
1685 If an insn has pseudos in it after register allocation, reload will go
1686@@ -2558,8 +2558,8 @@
1687 register, so @code{PREFERRED_RELOAD_CLASS} returns @code{NO_REGS} when
1688 @var{x} is a floating-point constant. If the constant can't be loaded
1689 into any kind of register, code generation will be better if
1690-@code{LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1691-of using @code{PREFERRED_RELOAD_CLASS}.
1692+@code{TARGET_LEGITIMATE_CONSTANT_P} makes the constant illegitimate instead
1693+of using @code{TARGET_PREFERRED_RELOAD_CLASS}.
1694
1695 If an insn has pseudos in it after register allocation, reload will go
1696 through the alternatives and call repeatedly @code{PREFERRED_RELOAD_CLASS}
1697@@ -4305,6 +4305,8 @@
1698 must have move patterns for this mode.
1699 @end deftypefn
1700
1701+@hook TARGET_ARRAY_MODE_SUPPORTED_P
1702+
1703 @hook TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P
1704 Define this to return nonzero for machine modes for which the port has
1705 small register classes. If this target hook returns nonzero for a given
1706@@ -5555,13 +5557,13 @@
1707 @code{TARGET_MODE_DEPENDENT_ADDRESS_P} target hook.
1708 @end defmac
1709
1710-@defmac LEGITIMATE_CONSTANT_P (@var{x})
1711-A C expression that is nonzero if @var{x} is a legitimate constant for
1712-an immediate operand on the target machine. You can assume that
1713-@var{x} satisfies @code{CONSTANT_P}, so you need not check this. In fact,
1714-@samp{1} is a suitable definition for this macro on machines where
1715-anything @code{CONSTANT_P} is valid.
1716-@end defmac
1717+@hook TARGET_LEGITIMATE_CONSTANT_P
1718+This hook returns true if @var{x} is a legitimate constant for a
1719+@var{mode}-mode immediate operand on the target machine. You can assume that
1720+@var{x} satisfies @code{CONSTANT_P}, so you need not check this.
1721+
1722+The default definition returns true.
1723+@end deftypefn
1724
1725 @hook TARGET_DELEGITIMIZE_ADDRESS
1726 This hook is used to undo the possibly obfuscating effects of the
1727
1728=== modified file 'gcc/expr.c'
1729--- old/gcc/expr.c 2011-04-05 16:18:11 +0000
1730+++ new/gcc/expr.c 2011-05-03 15:17:25 +0000
1731@@ -1497,7 +1497,7 @@
1732 if (nregs == 0)
1733 return;
1734
1735- if (CONSTANT_P (x) && ! LEGITIMATE_CONSTANT_P (x))
1736+ if (CONSTANT_P (x) && !targetm.legitimate_constant_p (mode, x))
1737 x = validize_mem (force_const_mem (mode, x));
1738
1739 /* See if the machine can do this with a load multiple insn. */
1740@@ -2308,7 +2308,7 @@
1741 offset -= size;
1742
1743 cst = (*constfun) (constfundata, offset, mode);
1744- if (!LEGITIMATE_CONSTANT_P (cst))
1745+ if (!targetm.legitimate_constant_p (mode, cst))
1746 return 0;
1747
1748 if (!reverse)
1749@@ -3363,7 +3363,7 @@
1750
1751 y_cst = y;
1752
1753- if (!LEGITIMATE_CONSTANT_P (y))
1754+ if (!targetm.legitimate_constant_p (mode, y))
1755 {
1756 y = force_const_mem (mode, y);
1757
1758@@ -3419,7 +3419,7 @@
1759
1760 REAL_VALUE_FROM_CONST_DOUBLE (r, y);
1761
1762- if (LEGITIMATE_CONSTANT_P (y))
1763+ if (targetm.legitimate_constant_p (dstmode, y))
1764 oldcost = rtx_cost (y, SET, speed);
1765 else
1766 oldcost = rtx_cost (force_const_mem (dstmode, y), SET, speed);
1767@@ -3442,7 +3442,7 @@
1768
1769 trunc_y = CONST_DOUBLE_FROM_REAL_VALUE (r, srcmode);
1770
1771- if (LEGITIMATE_CONSTANT_P (trunc_y))
1772+ if (targetm.legitimate_constant_p (srcmode, trunc_y))
1773 {
1774 /* Skip if the target needs extra instructions to perform
1775 the extension. */
1776@@ -3855,7 +3855,7 @@
1777 by setting SKIP to 0. */
1778 skip = (reg_parm_stack_space == 0) ? 0 : not_stack;
1779
1780- if (CONSTANT_P (x) && ! LEGITIMATE_CONSTANT_P (x))
1781+ if (CONSTANT_P (x) && !targetm.legitimate_constant_p (mode, x))
1782 x = validize_mem (force_const_mem (mode, x));
1783
1784 /* If X is a hard register in a non-integer mode, copy it into a pseudo;
1785@@ -9066,7 +9066,7 @@
1786 constant and we don't need a memory reference. */
1787 if (CONSTANT_P (op0)
1788 && mode2 != BLKmode
1789- && LEGITIMATE_CONSTANT_P (op0)
1790+ && targetm.legitimate_constant_p (mode2, op0)
1791 && !must_force_mem)
1792 op0 = force_reg (mode2, op0);
1793
1794
1795=== modified file 'gcc/hooks.c'
1796--- old/gcc/hooks.c 2010-11-25 13:16:03 +0000
1797+++ new/gcc/hooks.c 2011-05-03 15:16:01 +0000
1798@@ -101,6 +101,15 @@
1799 return true;
1800 }
1801
1802+/* Generic hook that takes (enum machine_mode, unsigned HOST_WIDE_INT)
1803+ and returns false. */
1804+bool
1805+hook_bool_mode_uhwi_false (enum machine_mode mode ATTRIBUTE_UNUSED,
1806+ unsigned HOST_WIDE_INT value ATTRIBUTE_UNUSED)
1807+{
1808+ return false;
1809+}
1810+
1811 /* Generic hook that takes (FILE *, const char *) and does nothing. */
1812 void
1813 hook_void_FILEptr_constcharptr (FILE *a ATTRIBUTE_UNUSED, const char *b ATTRIBUTE_UNUSED)
1814
1815=== modified file 'gcc/hooks.h'
1816--- old/gcc/hooks.h 2010-11-25 13:16:03 +0000
1817+++ new/gcc/hooks.h 2011-05-03 15:16:01 +0000
1818@@ -34,6 +34,8 @@
1819 extern bool hook_bool_mode_true (enum machine_mode);
1820 extern bool hook_bool_mode_const_rtx_false (enum machine_mode, const_rtx);
1821 extern bool hook_bool_mode_const_rtx_true (enum machine_mode, const_rtx);
1822+extern bool hook_bool_mode_uhwi_false (enum machine_mode,
1823+ unsigned HOST_WIDE_INT);
1824 extern bool hook_bool_tree_false (tree);
1825 extern bool hook_bool_const_tree_false (const_tree);
1826 extern bool hook_bool_tree_true (tree);
1827
1828=== modified file 'gcc/recog.c'
1829--- old/gcc/recog.c 2010-11-30 16:36:19 +0000
1830+++ new/gcc/recog.c 2011-05-03 15:17:25 +0000
1831@@ -930,7 +930,9 @@
1832 return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode
1833 || mode == VOIDmode)
1834 && (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
1835- && LEGITIMATE_CONSTANT_P (op));
1836+ && targetm.legitimate_constant_p (mode == VOIDmode
1837+ ? GET_MODE (op)
1838+ : mode, op));
1839
1840 /* Except for certain constants with VOIDmode, already checked for,
1841 OP's mode must match MODE if MODE specifies a mode. */
1842@@ -1107,7 +1109,9 @@
1843 && (GET_MODE (op) == mode || mode == VOIDmode
1844 || GET_MODE (op) == VOIDmode)
1845 && (! flag_pic || LEGITIMATE_PIC_OPERAND_P (op))
1846- && LEGITIMATE_CONSTANT_P (op));
1847+ && targetm.legitimate_constant_p (mode == VOIDmode
1848+ ? GET_MODE (op)
1849+ : mode, op));
1850 }
1851
1852 /* Returns 1 if OP is an operand that is a CONST_INT. */
1853
1854=== modified file 'gcc/reload.c'
1855--- old/gcc/reload.c 2011-02-02 16:52:21 +0000
1856+++ new/gcc/reload.c 2011-05-03 15:17:25 +0000
1857@@ -4721,7 +4721,8 @@
1858 simplify_gen_subreg (GET_MODE (x), reg_equiv_constant[regno],
1859 GET_MODE (SUBREG_REG (x)), SUBREG_BYTE (x));
1860 gcc_assert (tem);
1861- if (CONSTANT_P (tem) && !LEGITIMATE_CONSTANT_P (tem))
1862+ if (CONSTANT_P (tem)
1863+ && !targetm.legitimate_constant_p (GET_MODE (x), tem))
1864 {
1865 tem = force_const_mem (GET_MODE (x), tem);
1866 i = find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0),
1867@@ -6049,7 +6050,7 @@
1868 enum reload_type type, int ind_levels)
1869 {
1870 if (CONSTANT_P (x)
1871- && (! LEGITIMATE_CONSTANT_P (x)
1872+ && (!targetm.legitimate_constant_p (mode, x)
1873 || targetm.preferred_reload_class (x, rclass) == NO_REGS))
1874 {
1875 x = force_const_mem (mode, x);
1876@@ -6059,7 +6060,7 @@
1877
1878 else if (GET_CODE (x) == PLUS
1879 && CONSTANT_P (XEXP (x, 1))
1880- && (! LEGITIMATE_CONSTANT_P (XEXP (x, 1))
1881+ && (!targetm.legitimate_constant_p (GET_MODE (x), XEXP (x, 1))
1882 || targetm.preferred_reload_class (XEXP (x, 1), rclass)
1883 == NO_REGS))
1884 {
1885
1886=== modified file 'gcc/reload1.c'
1887--- old/gcc/reload1.c 2011-01-23 21:11:24 +0000
1888+++ new/gcc/reload1.c 2011-05-03 15:17:25 +0000
1889@@ -4155,6 +4155,9 @@
1890 }
1891 else if (function_invariant_p (x))
1892 {
1893+ enum machine_mode mode;
1894+
1895+ mode = GET_MODE (SET_DEST (set));
1896 if (GET_CODE (x) == PLUS)
1897 {
1898 /* This is PLUS of frame pointer and a constant,
1899@@ -4167,12 +4170,11 @@
1900 reg_equiv_invariant[i] = x;
1901 num_eliminable_invariants++;
1902 }
1903- else if (LEGITIMATE_CONSTANT_P (x))
1904+ else if (targetm.legitimate_constant_p (mode, x))
1905 reg_equiv_constant[i] = x;
1906 else
1907 {
1908- reg_equiv_memory_loc[i]
1909- = force_const_mem (GET_MODE (SET_DEST (set)), x);
1910+ reg_equiv_memory_loc[i] = force_const_mem (mode, x);
1911 if (! reg_equiv_memory_loc[i])
1912 reg_equiv_init[i] = NULL_RTX;
1913 }
1914
1915=== modified file 'gcc/stor-layout.c'
1916--- old/gcc/stor-layout.c 2011-03-10 22:37:22 +0000
1917+++ new/gcc/stor-layout.c 2011-05-03 15:16:01 +0000
1918@@ -546,6 +546,34 @@
1919 return MIN (BIGGEST_ALIGNMENT, MAX (1, mode_base_align[mode]*BITS_PER_UNIT));
1920 }
1921
1922+/* Return the natural mode of an array, given that it is SIZE bytes in
1923+ total and has elements of type ELEM_TYPE. */
1924+
1925+static enum machine_mode
1926+mode_for_array (tree elem_type, tree size)
1927+{
1928+ tree elem_size;
1929+ unsigned HOST_WIDE_INT int_size, int_elem_size;
1930+ bool limit_p;
1931+
1932+ /* One-element arrays get the component type's mode. */
1933+ elem_size = TYPE_SIZE (elem_type);
1934+ if (simple_cst_equal (size, elem_size))
1935+ return TYPE_MODE (elem_type);
1936+
1937+ limit_p = true;
1938+ if (host_integerp (size, 1) && host_integerp (elem_size, 1))
1939+ {
1940+ int_size = tree_low_cst (size, 1);
1941+ int_elem_size = tree_low_cst (elem_size, 1);
1942+ if (int_elem_size > 0
1943+ && int_size % int_elem_size == 0
1944+ && targetm.array_mode_supported_p (TYPE_MODE (elem_type),
1945+ int_size / int_elem_size))
1946+ limit_p = false;
1947+ }
1948+ return mode_for_size_tree (size, MODE_INT, limit_p);
1949+}
1950
1951 /* Subroutine of layout_decl: Force alignment required for the data type.
1952 But if the decl itself wants greater alignment, don't override that. */
1953@@ -2039,14 +2067,8 @@
1954 && (TYPE_MODE (TREE_TYPE (type)) != BLKmode
1955 || TYPE_NO_FORCE_BLK (TREE_TYPE (type))))
1956 {
1957- /* One-element arrays get the component type's mode. */
1958- if (simple_cst_equal (TYPE_SIZE (type),
1959- TYPE_SIZE (TREE_TYPE (type))))
1960- SET_TYPE_MODE (type, TYPE_MODE (TREE_TYPE (type)));
1961- else
1962- SET_TYPE_MODE (type, mode_for_size_tree (TYPE_SIZE (type),
1963- MODE_INT, 1));
1964-
1965+ SET_TYPE_MODE (type, mode_for_array (TREE_TYPE (type),
1966+ TYPE_SIZE (type)));
1967 if (TYPE_MODE (type) != BLKmode
1968 && STRICT_ALIGNMENT && TYPE_ALIGN (type) < BIGGEST_ALIGNMENT
1969 && TYPE_ALIGN (type) < GET_MODE_ALIGNMENT (TYPE_MODE (type)))
1970
1971=== modified file 'gcc/target.def'
1972--- old/gcc/target.def 2011-01-22 19:35:10 +0000
1973+++ new/gcc/target.def 2011-05-03 15:17:25 +0000
1974@@ -1344,6 +1344,13 @@
1975 unsigned, (unsigned nunroll, struct loop *loop),
1976 NULL)
1977
1978+/* True if X is a legitimate MODE-mode immediate operand. */
1979+DEFHOOK
1980+(legitimate_constant_p,
1981+ "",
1982+ bool, (enum machine_mode mode, rtx x),
1983+ default_legitimate_constant_p)
1984+
1985 /* True if the constant X cannot be placed in the constant pool. */
1986 DEFHOOK
1987 (cannot_force_const_mem,
1988@@ -1611,6 +1618,38 @@
1989 bool, (enum machine_mode mode),
1990 hook_bool_mode_false)
1991
1992+/* True if we should try to use a scalar mode to represent an array,
1993+ overriding the usual MAX_FIXED_MODE limit. */
1994+DEFHOOK
1995+(array_mode_supported_p,
1996+ "Return true if GCC should try to use a scalar mode to store an array\n\
1997+of @var{nelems} elements, given that each element has mode @var{mode}.\n\
1998+Returning true here overrides the usual @code{MAX_FIXED_MODE} limit\n\
1999+and allows GCC to use any defined integer mode.\n\
2000+\n\
2001+One use of this hook is to support vector load and store operations\n\
2002+that operate on several homogeneous vectors. For example, ARM NEON\n\
2003+has operations like:\n\
2004+\n\
2005+@smallexample\n\
2006+int8x8x3_t vld3_s8 (const int8_t *)\n\
2007+@end smallexample\n\
2008+\n\
2009+where the return type is defined as:\n\
2010+\n\
2011+@smallexample\n\
2012+typedef struct int8x8x3_t\n\
2013+@{\n\
2014+ int8x8_t val[3];\n\
2015+@} int8x8x3_t;\n\
2016+@end smallexample\n\
2017+\n\
2018+If this hook allows @code{val} to have a scalar mode, then\n\
2019+@code{int8x8x3_t} can have the same mode. GCC can then store\n\
2020+@code{int8x8x3_t}s in registers rather than forcing them onto the stack.",
2021+ bool, (enum machine_mode mode, unsigned HOST_WIDE_INT nelems),
2022+ hook_bool_mode_uhwi_false)
2023+
2024 /* Compute cost of moving data from a register of class FROM to one of
2025 TO, using MODE. */
2026 DEFHOOK
2027
2028=== modified file 'gcc/targhooks.c'
2029--- old/gcc/targhooks.c 2011-01-14 15:02:20 +0000
2030+++ new/gcc/targhooks.c 2011-05-03 15:17:25 +0000
2031@@ -1519,4 +1519,15 @@
2032 { OPT_LEVELS_NONE, 0, NULL, 0 }
2033 };
2034
2035+bool
2036+default_legitimate_constant_p (enum machine_mode mode ATTRIBUTE_UNUSED,
2037+ rtx x ATTRIBUTE_UNUSED)
2038+{
2039+#ifdef LEGITIMATE_CONSTANT_P
2040+ return LEGITIMATE_CONSTANT_P (x);
2041+#else
2042+ return true;
2043+#endif
2044+}
2045+
2046 #include "gt-targhooks.h"
2047
2048=== modified file 'gcc/targhooks.h'
2049--- old/gcc/targhooks.h 2011-01-14 15:02:20 +0000
2050+++ new/gcc/targhooks.h 2011-05-03 15:17:25 +0000
2051@@ -183,3 +183,4 @@
2052
2053 extern void *default_get_pch_validity (size_t *);
2054 extern const char *default_pch_valid_p (const void *, size_t);
2055+extern bool default_legitimate_constant_p (enum machine_mode, rtx);
2056
2057=== added file 'gcc/testsuite/gcc.target/arm/neon-vld3-1.c'
2058--- old/gcc/testsuite/gcc.target/arm/neon-vld3-1.c 1970-01-01 00:00:00 +0000
2059+++ new/gcc/testsuite/gcc.target/arm/neon-vld3-1.c 2011-05-03 15:14:56 +0000
2060@@ -0,0 +1,27 @@
2061+/* { dg-do run } */
2062+/* { dg-require-effective-target arm_neon_hw } */
2063+/* { dg-options "-O2" } */
2064+/* { dg-add-options arm_neon } */
2065+
2066+#include "arm_neon.h"
2067+
2068+uint32_t buffer[12];
2069+
2070+void __attribute__((noinline))
2071+foo (uint32_t *a)
2072+{
2073+ uint32x4x3_t x;
2074+
2075+ x = vld3q_u32 (a);
2076+ x.val[0] = vaddq_u32 (x.val[0], x.val[1]);
2077+ vst3q_u32 (a, x);
2078+}
2079+
2080+int
2081+main (void)
2082+{
2083+ buffer[0] = 1;
2084+ buffer[1] = 2;
2085+ foo (buffer);
2086+ return buffer[0] != 3;
2087+}
2088
2089=== added file 'gcc/testsuite/gcc.target/arm/neon-vst3-1.c'
2090--- old/gcc/testsuite/gcc.target/arm/neon-vst3-1.c 1970-01-01 00:00:00 +0000
2091+++ new/gcc/testsuite/gcc.target/arm/neon-vst3-1.c 2011-05-03 15:14:56 +0000
2092@@ -0,0 +1,25 @@
2093+/* { dg-do run } */
2094+/* { dg-require-effective-target arm_neon_hw } */
2095+/* { dg-options "-O2" } */
2096+/* { dg-add-options arm_neon } */
2097+
2098+#include "arm_neon.h"
2099+
2100+uint32_t buffer[64];
2101+
2102+void __attribute__((noinline))
2103+foo (uint32_t *a)
2104+{
2105+ uint32x4x3_t x;
2106+
2107+ x = vld3q_u32 (a);
2108+ a[35] = 1;
2109+ vst3q_lane_u32 (a + 32, x, 1);
2110+}
2111+
2112+int
2113+main (void)
2114+{
2115+ foo (buffer);
2116+ return buffer[35] != 1;
2117+}
2118
2119=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c'
2120--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c 2010-05-24 18:36:31 +0000
2121+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c 2011-05-03 15:14:56 +0000
2122@@ -15,5 +15,5 @@
2123 out_float32x4_t = vld1q_dup_f32 (0);
2124 }
2125
2126-/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2127+/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2128 /* { dg-final { cleanup-saved-temps } } */
2129
2130=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c'
2131--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c 2010-05-24 18:36:31 +0000
2132+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c 2011-05-03 15:14:56 +0000
2133@@ -15,5 +15,5 @@
2134 out_poly16x8_t = vld1q_dup_p16 (0);
2135 }
2136
2137-/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2138+/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2139 /* { dg-final { cleanup-saved-temps } } */
2140
2141=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c'
2142--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c 2010-05-24 18:36:31 +0000
2143+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c 2011-05-03 15:14:56 +0000
2144@@ -15,5 +15,5 @@
2145 out_poly8x16_t = vld1q_dup_p8 (0);
2146 }
2147
2148-/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2149+/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2150 /* { dg-final { cleanup-saved-temps } } */
2151
2152=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c'
2153--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c 2010-05-24 18:36:31 +0000
2154+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c 2011-05-03 15:14:56 +0000
2155@@ -15,5 +15,5 @@
2156 out_int16x8_t = vld1q_dup_s16 (0);
2157 }
2158
2159-/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2160+/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2161 /* { dg-final { cleanup-saved-temps } } */
2162
2163=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c'
2164--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c 2010-05-24 18:36:31 +0000
2165+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c 2011-05-03 15:14:56 +0000
2166@@ -15,5 +15,5 @@
2167 out_int32x4_t = vld1q_dup_s32 (0);
2168 }
2169
2170-/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2171+/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2172 /* { dg-final { cleanup-saved-temps } } */
2173
2174=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c'
2175--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c 2010-05-24 18:36:31 +0000
2176+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c 2011-05-03 15:14:56 +0000
2177@@ -15,5 +15,5 @@
2178 out_int64x2_t = vld1q_dup_s64 (0);
2179 }
2180
2181-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2182+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2183 /* { dg-final { cleanup-saved-temps } } */
2184
2185=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c'
2186--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c 2010-05-24 18:36:31 +0000
2187+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c 2011-05-03 15:14:56 +0000
2188@@ -15,5 +15,5 @@
2189 out_int8x16_t = vld1q_dup_s8 (0);
2190 }
2191
2192-/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2193+/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2194 /* { dg-final { cleanup-saved-temps } } */
2195
2196=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c'
2197--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c 2010-05-24 18:36:31 +0000
2198+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c 2011-05-03 15:14:56 +0000
2199@@ -15,5 +15,5 @@
2200 out_uint16x8_t = vld1q_dup_u16 (0);
2201 }
2202
2203-/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2204+/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2205 /* { dg-final { cleanup-saved-temps } } */
2206
2207=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c'
2208--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c 2010-05-24 18:36:31 +0000
2209+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c 2011-05-03 15:14:56 +0000
2210@@ -15,5 +15,5 @@
2211 out_uint32x4_t = vld1q_dup_u32 (0);
2212 }
2213
2214-/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2215+/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2216 /* { dg-final { cleanup-saved-temps } } */
2217
2218=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c'
2219--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c 2010-05-24 18:36:31 +0000
2220+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c 2011-05-03 15:14:56 +0000
2221@@ -15,5 +15,5 @@
2222 out_uint64x2_t = vld1q_dup_u64 (0);
2223 }
2224
2225-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2226+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2227 /* { dg-final { cleanup-saved-temps } } */
2228
2229=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c'
2230--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c 2010-05-24 18:36:31 +0000
2231+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c 2011-05-03 15:14:56 +0000
2232@@ -15,5 +15,5 @@
2233 out_uint8x16_t = vld1q_dup_u8 (0);
2234 }
2235
2236-/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2237+/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2238 /* { dg-final { cleanup-saved-temps } } */
2239
2240=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c'
2241--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c 2010-05-24 18:36:31 +0000
2242+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c 2011-05-03 15:14:56 +0000
2243@@ -16,5 +16,5 @@
2244 out_float32x4_t = vld1q_lane_f32 (0, arg1_float32x4_t, 1);
2245 }
2246
2247-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2248+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2249 /* { dg-final { cleanup-saved-temps } } */
2250
2251=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c'
2252--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c 2010-05-24 18:36:31 +0000
2253+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c 2011-05-03 15:14:56 +0000
2254@@ -16,5 +16,5 @@
2255 out_poly16x8_t = vld1q_lane_p16 (0, arg1_poly16x8_t, 1);
2256 }
2257
2258-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2259+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2260 /* { dg-final { cleanup-saved-temps } } */
2261
2262=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c'
2263--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c 2010-05-24 18:36:31 +0000
2264+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c 2011-05-03 15:14:56 +0000
2265@@ -16,5 +16,5 @@
2266 out_poly8x16_t = vld1q_lane_p8 (0, arg1_poly8x16_t, 1);
2267 }
2268
2269-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2270+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2271 /* { dg-final { cleanup-saved-temps } } */
2272
2273=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c'
2274--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c 2010-05-24 18:36:31 +0000
2275+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c 2011-05-03 15:14:56 +0000
2276@@ -16,5 +16,5 @@
2277 out_int16x8_t = vld1q_lane_s16 (0, arg1_int16x8_t, 1);
2278 }
2279
2280-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2281+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2282 /* { dg-final { cleanup-saved-temps } } */
2283
2284=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c'
2285--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c 2010-05-24 18:36:31 +0000
2286+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c 2011-05-03 15:14:56 +0000
2287@@ -16,5 +16,5 @@
2288 out_int32x4_t = vld1q_lane_s32 (0, arg1_int32x4_t, 1);
2289 }
2290
2291-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2292+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2293 /* { dg-final { cleanup-saved-temps } } */
2294
2295=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c'
2296--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c 2010-05-24 18:36:31 +0000
2297+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c 2011-05-03 15:14:56 +0000
2298@@ -16,5 +16,5 @@
2299 out_int64x2_t = vld1q_lane_s64 (0, arg1_int64x2_t, 1);
2300 }
2301
2302-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2303+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2304 /* { dg-final { cleanup-saved-temps } } */
2305
2306=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c'
2307--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c 2010-05-24 18:36:31 +0000
2308+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c 2011-05-03 15:14:56 +0000
2309@@ -16,5 +16,5 @@
2310 out_int8x16_t = vld1q_lane_s8 (0, arg1_int8x16_t, 1);
2311 }
2312
2313-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2314+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2315 /* { dg-final { cleanup-saved-temps } } */
2316
2317=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c'
2318--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c 2010-05-24 18:36:31 +0000
2319+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c 2011-05-03 15:14:56 +0000
2320@@ -16,5 +16,5 @@
2321 out_uint16x8_t = vld1q_lane_u16 (0, arg1_uint16x8_t, 1);
2322 }
2323
2324-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2325+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2326 /* { dg-final { cleanup-saved-temps } } */
2327
2328=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c'
2329--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c 2010-05-24 18:36:31 +0000
2330+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c 2011-05-03 15:14:56 +0000
2331@@ -16,5 +16,5 @@
2332 out_uint32x4_t = vld1q_lane_u32 (0, arg1_uint32x4_t, 1);
2333 }
2334
2335-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2336+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2337 /* { dg-final { cleanup-saved-temps } } */
2338
2339=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c'
2340--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c 2010-05-24 18:36:31 +0000
2341+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c 2011-05-03 15:14:56 +0000
2342@@ -16,5 +16,5 @@
2343 out_uint64x2_t = vld1q_lane_u64 (0, arg1_uint64x2_t, 1);
2344 }
2345
2346-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2347+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2348 /* { dg-final { cleanup-saved-temps } } */
2349
2350=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c'
2351--- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c 2010-05-24 18:36:31 +0000
2352+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c 2011-05-03 15:14:56 +0000
2353@@ -16,5 +16,5 @@
2354 out_uint8x16_t = vld1q_lane_u8 (0, arg1_uint8x16_t, 1);
2355 }
2356
2357-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2358+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2359 /* { dg-final { cleanup-saved-temps } } */
2360
2361=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c'
2362--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c 2010-05-24 18:36:31 +0000
2363+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c 2011-05-03 15:14:56 +0000
2364@@ -15,5 +15,5 @@
2365 out_float32x4_t = vld1q_f32 (0);
2366 }
2367
2368-/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2369+/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2370 /* { dg-final { cleanup-saved-temps } } */
2371
2372=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c'
2373--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c 2010-05-24 18:36:31 +0000
2374+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c 2011-05-03 15:14:56 +0000
2375@@ -15,5 +15,5 @@
2376 out_poly16x8_t = vld1q_p16 (0);
2377 }
2378
2379-/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2380+/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2381 /* { dg-final { cleanup-saved-temps } } */
2382
2383=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c'
2384--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c 2010-05-24 18:36:31 +0000
2385+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c 2011-05-03 15:14:56 +0000
2386@@ -15,5 +15,5 @@
2387 out_poly8x16_t = vld1q_p8 (0);
2388 }
2389
2390-/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2391+/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2392 /* { dg-final { cleanup-saved-temps } } */
2393
2394=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c'
2395--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c 2010-05-24 18:36:31 +0000
2396+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c 2011-05-03 15:14:56 +0000
2397@@ -15,5 +15,5 @@
2398 out_int16x8_t = vld1q_s16 (0);
2399 }
2400
2401-/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2402+/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2403 /* { dg-final { cleanup-saved-temps } } */
2404
2405=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c'
2406--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c 2010-05-24 18:36:31 +0000
2407+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c 2011-05-03 15:14:56 +0000
2408@@ -15,5 +15,5 @@
2409 out_int32x4_t = vld1q_s32 (0);
2410 }
2411
2412-/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2413+/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2414 /* { dg-final { cleanup-saved-temps } } */
2415
2416=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c'
2417--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c 2010-05-24 18:36:31 +0000
2418+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c 2011-05-03 15:14:56 +0000
2419@@ -15,5 +15,5 @@
2420 out_int64x2_t = vld1q_s64 (0);
2421 }
2422
2423-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2424+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2425 /* { dg-final { cleanup-saved-temps } } */
2426
2427=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c'
2428--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c 2010-05-24 18:36:31 +0000
2429+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c 2011-05-03 15:14:56 +0000
2430@@ -15,5 +15,5 @@
2431 out_int8x16_t = vld1q_s8 (0);
2432 }
2433
2434-/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2435+/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2436 /* { dg-final { cleanup-saved-temps } } */
2437
2438=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c'
2439--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c 2010-05-24 18:36:31 +0000
2440+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c 2011-05-03 15:14:56 +0000
2441@@ -15,5 +15,5 @@
2442 out_uint16x8_t = vld1q_u16 (0);
2443 }
2444
2445-/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2446+/* { dg-final { scan-assembler "vld1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2447 /* { dg-final { cleanup-saved-temps } } */
2448
2449=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c'
2450--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c 2010-05-24 18:36:31 +0000
2451+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c 2011-05-03 15:14:56 +0000
2452@@ -15,5 +15,5 @@
2453 out_uint32x4_t = vld1q_u32 (0);
2454 }
2455
2456-/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2457+/* { dg-final { scan-assembler "vld1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2458 /* { dg-final { cleanup-saved-temps } } */
2459
2460=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c'
2461--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c 2010-05-24 18:36:31 +0000
2462+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c 2011-05-03 15:14:56 +0000
2463@@ -15,5 +15,5 @@
2464 out_uint64x2_t = vld1q_u64 (0);
2465 }
2466
2467-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2468+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2469 /* { dg-final { cleanup-saved-temps } } */
2470
2471=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c'
2472--- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c 2010-05-24 18:36:31 +0000
2473+++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c 2011-05-03 15:14:56 +0000
2474@@ -15,5 +15,5 @@
2475 out_uint8x16_t = vld1q_u8 (0);
2476 }
2477
2478-/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2479+/* { dg-final { scan-assembler "vld1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2480 /* { dg-final { cleanup-saved-temps } } */
2481
2482=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c'
2483--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c 2010-05-24 18:36:31 +0000
2484+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c 2011-05-03 15:14:56 +0000
2485@@ -15,5 +15,5 @@
2486 out_float32x2_t = vld1_dup_f32 (0);
2487 }
2488
2489-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2490+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2491 /* { dg-final { cleanup-saved-temps } } */
2492
2493=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c'
2494--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c 2010-05-24 18:36:31 +0000
2495+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c 2011-05-03 15:14:56 +0000
2496@@ -15,5 +15,5 @@
2497 out_poly16x4_t = vld1_dup_p16 (0);
2498 }
2499
2500-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2501+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2502 /* { dg-final { cleanup-saved-temps } } */
2503
2504=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c'
2505--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c 2010-05-24 18:36:31 +0000
2506+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c 2011-05-03 15:14:56 +0000
2507@@ -15,5 +15,5 @@
2508 out_poly8x8_t = vld1_dup_p8 (0);
2509 }
2510
2511-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2512+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2513 /* { dg-final { cleanup-saved-temps } } */
2514
2515=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c'
2516--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c 2010-05-24 18:36:31 +0000
2517+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c 2011-05-03 15:14:56 +0000
2518@@ -15,5 +15,5 @@
2519 out_int16x4_t = vld1_dup_s16 (0);
2520 }
2521
2522-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2523+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2524 /* { dg-final { cleanup-saved-temps } } */
2525
2526=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c'
2527--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c 2010-05-24 18:36:31 +0000
2528+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c 2011-05-03 15:14:56 +0000
2529@@ -15,5 +15,5 @@
2530 out_int32x2_t = vld1_dup_s32 (0);
2531 }
2532
2533-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2534+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2535 /* { dg-final { cleanup-saved-temps } } */
2536
2537=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c'
2538--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c 2010-05-24 18:36:31 +0000
2539+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c 2011-05-03 15:14:56 +0000
2540@@ -15,5 +15,5 @@
2541 out_int64x1_t = vld1_dup_s64 (0);
2542 }
2543
2544-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2545+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2546 /* { dg-final { cleanup-saved-temps } } */
2547
2548=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c'
2549--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c 2010-05-24 18:36:31 +0000
2550+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c 2011-05-03 15:14:56 +0000
2551@@ -15,5 +15,5 @@
2552 out_int8x8_t = vld1_dup_s8 (0);
2553 }
2554
2555-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2556+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2557 /* { dg-final { cleanup-saved-temps } } */
2558
2559=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c'
2560--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c 2010-05-24 18:36:31 +0000
2561+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c 2011-05-03 15:14:56 +0000
2562@@ -15,5 +15,5 @@
2563 out_uint16x4_t = vld1_dup_u16 (0);
2564 }
2565
2566-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2567+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2568 /* { dg-final { cleanup-saved-temps } } */
2569
2570=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c'
2571--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c 2010-05-24 18:36:31 +0000
2572+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c 2011-05-03 15:14:56 +0000
2573@@ -15,5 +15,5 @@
2574 out_uint32x2_t = vld1_dup_u32 (0);
2575 }
2576
2577-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2578+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2579 /* { dg-final { cleanup-saved-temps } } */
2580
2581=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c'
2582--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c 2010-05-24 18:36:31 +0000
2583+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c 2011-05-03 15:14:56 +0000
2584@@ -15,5 +15,5 @@
2585 out_uint64x1_t = vld1_dup_u64 (0);
2586 }
2587
2588-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2589+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2590 /* { dg-final { cleanup-saved-temps } } */
2591
2592=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c'
2593--- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c 2010-05-24 18:36:31 +0000
2594+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c 2011-05-03 15:14:56 +0000
2595@@ -15,5 +15,5 @@
2596 out_uint8x8_t = vld1_dup_u8 (0);
2597 }
2598
2599-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2600+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2601 /* { dg-final { cleanup-saved-temps } } */
2602
2603=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c'
2604--- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c 2010-05-24 18:36:31 +0000
2605+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c 2011-05-03 15:14:56 +0000
2606@@ -16,5 +16,5 @@
2607 out_float32x2_t = vld1_lane_f32 (0, arg1_float32x2_t, 1);
2608 }
2609
2610-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2611+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2612 /* { dg-final { cleanup-saved-temps } } */
2613
2614=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c'
2615--- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c 2010-05-24 18:36:31 +0000
2616+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c 2011-05-03 15:14:56 +0000
2617@@ -16,5 +16,5 @@
2618 out_poly16x4_t = vld1_lane_p16 (0, arg1_poly16x4_t, 1);
2619 }
2620
2621-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2622+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2623 /* { dg-final { cleanup-saved-temps } } */
2624
2625=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c'
2626--- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c 2010-05-24 18:36:31 +0000
2627+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c 2011-05-03 15:14:56 +0000
2628@@ -16,5 +16,5 @@
2629 out_poly8x8_t = vld1_lane_p8 (0, arg1_poly8x8_t, 1);
2630 }
2631
2632-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2633+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2634 /* { dg-final { cleanup-saved-temps } } */
2635
2636=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c'
2637--- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c 2010-05-24 18:36:31 +0000
2638+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c 2011-05-03 15:14:56 +0000
2639@@ -16,5 +16,5 @@
2640 out_int16x4_t = vld1_lane_s16 (0, arg1_int16x4_t, 1);
2641 }
2642
2643-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2644+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2645 /* { dg-final { cleanup-saved-temps } } */
2646
2647=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c'
2648--- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c 2010-05-24 18:36:31 +0000
2649+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c 2011-05-03 15:14:56 +0000
2650@@ -16,5 +16,5 @@
2651 out_int32x2_t = vld1_lane_s32 (0, arg1_int32x2_t, 1);
2652 }
2653
2654-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2655+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2656 /* { dg-final { cleanup-saved-temps } } */
2657
2658=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c'
2659--- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c 2010-05-24 18:36:31 +0000
2660+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c 2011-05-03 15:14:56 +0000
2661@@ -16,5 +16,5 @@
2662 out_int64x1_t = vld1_lane_s64 (0, arg1_int64x1_t, 0);
2663 }
2664
2665-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2666+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2667 /* { dg-final { cleanup-saved-temps } } */
2668
2669=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c'
2670--- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c 2010-05-24 18:36:31 +0000
2671+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c 2011-05-03 15:14:56 +0000
2672@@ -16,5 +16,5 @@
2673 out_int8x8_t = vld1_lane_s8 (0, arg1_int8x8_t, 1);
2674 }
2675
2676-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2677+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2678 /* { dg-final { cleanup-saved-temps } } */
2679
2680=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c'
2681--- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c 2010-05-24 18:36:31 +0000
2682+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c 2011-05-03 15:14:56 +0000
2683@@ -16,5 +16,5 @@
2684 out_uint16x4_t = vld1_lane_u16 (0, arg1_uint16x4_t, 1);
2685 }
2686
2687-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2688+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2689 /* { dg-final { cleanup-saved-temps } } */
2690
2691=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c'
2692--- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c 2010-05-24 18:36:31 +0000
2693+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c 2011-05-03 15:14:56 +0000
2694@@ -16,5 +16,5 @@
2695 out_uint32x2_t = vld1_lane_u32 (0, arg1_uint32x2_t, 1);
2696 }
2697
2698-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2699+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2700 /* { dg-final { cleanup-saved-temps } } */
2701
2702=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c'
2703--- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c 2010-05-24 18:36:31 +0000
2704+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c 2011-05-03 15:14:56 +0000
2705@@ -16,5 +16,5 @@
2706 out_uint64x1_t = vld1_lane_u64 (0, arg1_uint64x1_t, 0);
2707 }
2708
2709-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2710+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2711 /* { dg-final { cleanup-saved-temps } } */
2712
2713=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c'
2714--- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c 2010-05-24 18:36:31 +0000
2715+++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c 2011-05-03 15:14:56 +0000
2716@@ -16,5 +16,5 @@
2717 out_uint8x8_t = vld1_lane_u8 (0, arg1_uint8x8_t, 1);
2718 }
2719
2720-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2721+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2722 /* { dg-final { cleanup-saved-temps } } */
2723
2724=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1f32.c'
2725--- old/gcc/testsuite/gcc.target/arm/neon/vld1f32.c 2010-05-24 18:36:31 +0000
2726+++ new/gcc/testsuite/gcc.target/arm/neon/vld1f32.c 2011-05-03 15:14:56 +0000
2727@@ -15,5 +15,5 @@
2728 out_float32x2_t = vld1_f32 (0);
2729 }
2730
2731-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2732+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2733 /* { dg-final { cleanup-saved-temps } } */
2734
2735=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1p16.c'
2736--- old/gcc/testsuite/gcc.target/arm/neon/vld1p16.c 2010-05-24 18:36:31 +0000
2737+++ new/gcc/testsuite/gcc.target/arm/neon/vld1p16.c 2011-05-03 15:14:56 +0000
2738@@ -15,5 +15,5 @@
2739 out_poly16x4_t = vld1_p16 (0);
2740 }
2741
2742-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2743+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2744 /* { dg-final { cleanup-saved-temps } } */
2745
2746=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1p8.c'
2747--- old/gcc/testsuite/gcc.target/arm/neon/vld1p8.c 2010-05-24 18:36:31 +0000
2748+++ new/gcc/testsuite/gcc.target/arm/neon/vld1p8.c 2011-05-03 15:14:56 +0000
2749@@ -15,5 +15,5 @@
2750 out_poly8x8_t = vld1_p8 (0);
2751 }
2752
2753-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2754+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2755 /* { dg-final { cleanup-saved-temps } } */
2756
2757=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s16.c'
2758--- old/gcc/testsuite/gcc.target/arm/neon/vld1s16.c 2010-05-24 18:36:31 +0000
2759+++ new/gcc/testsuite/gcc.target/arm/neon/vld1s16.c 2011-05-03 15:14:56 +0000
2760@@ -15,5 +15,5 @@
2761 out_int16x4_t = vld1_s16 (0);
2762 }
2763
2764-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2765+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2766 /* { dg-final { cleanup-saved-temps } } */
2767
2768=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s32.c'
2769--- old/gcc/testsuite/gcc.target/arm/neon/vld1s32.c 2010-05-24 18:36:31 +0000
2770+++ new/gcc/testsuite/gcc.target/arm/neon/vld1s32.c 2011-05-03 15:14:56 +0000
2771@@ -15,5 +15,5 @@
2772 out_int32x2_t = vld1_s32 (0);
2773 }
2774
2775-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2776+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2777 /* { dg-final { cleanup-saved-temps } } */
2778
2779=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s64.c'
2780--- old/gcc/testsuite/gcc.target/arm/neon/vld1s64.c 2010-05-24 18:36:31 +0000
2781+++ new/gcc/testsuite/gcc.target/arm/neon/vld1s64.c 2011-05-03 15:14:56 +0000
2782@@ -15,5 +15,5 @@
2783 out_int64x1_t = vld1_s64 (0);
2784 }
2785
2786-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2787+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2788 /* { dg-final { cleanup-saved-temps } } */
2789
2790=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s8.c'
2791--- old/gcc/testsuite/gcc.target/arm/neon/vld1s8.c 2010-05-24 18:36:31 +0000
2792+++ new/gcc/testsuite/gcc.target/arm/neon/vld1s8.c 2011-05-03 15:14:56 +0000
2793@@ -15,5 +15,5 @@
2794 out_int8x8_t = vld1_s8 (0);
2795 }
2796
2797-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2798+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2799 /* { dg-final { cleanup-saved-temps } } */
2800
2801=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u16.c'
2802--- old/gcc/testsuite/gcc.target/arm/neon/vld1u16.c 2010-05-24 18:36:31 +0000
2803+++ new/gcc/testsuite/gcc.target/arm/neon/vld1u16.c 2011-05-03 15:14:56 +0000
2804@@ -15,5 +15,5 @@
2805 out_uint16x4_t = vld1_u16 (0);
2806 }
2807
2808-/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2809+/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2810 /* { dg-final { cleanup-saved-temps } } */
2811
2812=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u32.c'
2813--- old/gcc/testsuite/gcc.target/arm/neon/vld1u32.c 2010-05-24 18:36:31 +0000
2814+++ new/gcc/testsuite/gcc.target/arm/neon/vld1u32.c 2011-05-03 15:14:56 +0000
2815@@ -15,5 +15,5 @@
2816 out_uint32x2_t = vld1_u32 (0);
2817 }
2818
2819-/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2820+/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2821 /* { dg-final { cleanup-saved-temps } } */
2822
2823=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u64.c'
2824--- old/gcc/testsuite/gcc.target/arm/neon/vld1u64.c 2010-05-24 18:36:31 +0000
2825+++ new/gcc/testsuite/gcc.target/arm/neon/vld1u64.c 2011-05-03 15:14:56 +0000
2826@@ -15,5 +15,5 @@
2827 out_uint64x1_t = vld1_u64 (0);
2828 }
2829
2830-/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2831+/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2832 /* { dg-final { cleanup-saved-temps } } */
2833
2834=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u8.c'
2835--- old/gcc/testsuite/gcc.target/arm/neon/vld1u8.c 2010-05-24 18:36:31 +0000
2836+++ new/gcc/testsuite/gcc.target/arm/neon/vld1u8.c 2011-05-03 15:14:56 +0000
2837@@ -15,5 +15,5 @@
2838 out_uint8x8_t = vld1_u8 (0);
2839 }
2840
2841-/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2842+/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2843 /* { dg-final { cleanup-saved-temps } } */
2844
2845=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c'
2846--- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c 2010-05-24 18:36:31 +0000
2847+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c 2011-05-03 15:14:56 +0000
2848@@ -16,5 +16,5 @@
2849 out_float32x4x2_t = vld2q_lane_f32 (0, arg1_float32x4x2_t, 1);
2850 }
2851
2852-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2853+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2854 /* { dg-final { cleanup-saved-temps } } */
2855
2856=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c'
2857--- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c 2010-05-24 18:36:31 +0000
2858+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c 2011-05-03 15:14:56 +0000
2859@@ -16,5 +16,5 @@
2860 out_poly16x8x2_t = vld2q_lane_p16 (0, arg1_poly16x8x2_t, 1);
2861 }
2862
2863-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2864+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2865 /* { dg-final { cleanup-saved-temps } } */
2866
2867=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c'
2868--- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c 2010-05-24 18:36:31 +0000
2869+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c 2011-05-03 15:14:56 +0000
2870@@ -16,5 +16,5 @@
2871 out_int16x8x2_t = vld2q_lane_s16 (0, arg1_int16x8x2_t, 1);
2872 }
2873
2874-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2875+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2876 /* { dg-final { cleanup-saved-temps } } */
2877
2878=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c'
2879--- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c 2010-05-24 18:36:31 +0000
2880+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c 2011-05-03 15:14:56 +0000
2881@@ -16,5 +16,5 @@
2882 out_int32x4x2_t = vld2q_lane_s32 (0, arg1_int32x4x2_t, 1);
2883 }
2884
2885-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2886+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2887 /* { dg-final { cleanup-saved-temps } } */
2888
2889=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c'
2890--- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c 2010-05-24 18:36:31 +0000
2891+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c 2011-05-03 15:14:56 +0000
2892@@ -16,5 +16,5 @@
2893 out_uint16x8x2_t = vld2q_lane_u16 (0, arg1_uint16x8x2_t, 1);
2894 }
2895
2896-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2897+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2898 /* { dg-final { cleanup-saved-temps } } */
2899
2900=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c'
2901--- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c 2010-05-24 18:36:31 +0000
2902+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c 2011-05-03 15:14:56 +0000
2903@@ -16,5 +16,5 @@
2904 out_uint32x4x2_t = vld2q_lane_u32 (0, arg1_uint32x4x2_t, 1);
2905 }
2906
2907-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2908+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2909 /* { dg-final { cleanup-saved-temps } } */
2910
2911=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c'
2912--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c 2010-05-24 18:36:31 +0000
2913+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c 2011-05-03 15:14:56 +0000
2914@@ -15,6 +15,6 @@
2915 out_float32x4x2_t = vld2q_f32 (0);
2916 }
2917
2918-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2919-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2920+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2921+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2922 /* { dg-final { cleanup-saved-temps } } */
2923
2924=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c'
2925--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c 2010-05-24 18:36:31 +0000
2926+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c 2011-05-03 15:14:56 +0000
2927@@ -15,6 +15,6 @@
2928 out_poly16x8x2_t = vld2q_p16 (0);
2929 }
2930
2931-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2932-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2933+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2934+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2935 /* { dg-final { cleanup-saved-temps } } */
2936
2937=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c'
2938--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c 2010-05-24 18:36:31 +0000
2939+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c 2011-05-03 15:14:56 +0000
2940@@ -15,6 +15,6 @@
2941 out_poly8x16x2_t = vld2q_p8 (0);
2942 }
2943
2944-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2945-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2946+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2947+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2948 /* { dg-final { cleanup-saved-temps } } */
2949
2950=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c'
2951--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c 2010-05-24 18:36:31 +0000
2952+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c 2011-05-03 15:14:56 +0000
2953@@ -15,6 +15,6 @@
2954 out_int16x8x2_t = vld2q_s16 (0);
2955 }
2956
2957-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2958-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2959+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2960+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2961 /* { dg-final { cleanup-saved-temps } } */
2962
2963=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c'
2964--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c 2010-05-24 18:36:31 +0000
2965+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c 2011-05-03 15:14:56 +0000
2966@@ -15,6 +15,6 @@
2967 out_int32x4x2_t = vld2q_s32 (0);
2968 }
2969
2970-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2971-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2972+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2973+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2974 /* { dg-final { cleanup-saved-temps } } */
2975
2976=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c'
2977--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c 2010-05-24 18:36:31 +0000
2978+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c 2011-05-03 15:14:56 +0000
2979@@ -15,6 +15,6 @@
2980 out_int8x16x2_t = vld2q_s8 (0);
2981 }
2982
2983-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2984-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2985+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2986+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2987 /* { dg-final { cleanup-saved-temps } } */
2988
2989=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c'
2990--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c 2010-05-24 18:36:31 +0000
2991+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c 2011-05-03 15:14:56 +0000
2992@@ -15,6 +15,6 @@
2993 out_uint16x8x2_t = vld2q_u16 (0);
2994 }
2995
2996-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2997-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2998+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
2999+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3000 /* { dg-final { cleanup-saved-temps } } */
3001
3002=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c'
3003--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c 2010-05-24 18:36:31 +0000
3004+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c 2011-05-03 15:14:56 +0000
3005@@ -15,6 +15,6 @@
3006 out_uint32x4x2_t = vld2q_u32 (0);
3007 }
3008
3009-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3010-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3011+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3012+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3013 /* { dg-final { cleanup-saved-temps } } */
3014
3015=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c'
3016--- old/gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c 2010-05-24 18:36:31 +0000
3017+++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c 2011-05-03 15:14:56 +0000
3018@@ -15,6 +15,6 @@
3019 out_uint8x16x2_t = vld2q_u8 (0);
3020 }
3021
3022-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3023-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3024+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3025+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3026 /* { dg-final { cleanup-saved-temps } } */
3027
3028=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c'
3029--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c 2010-05-24 18:36:31 +0000
3030+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c 2011-05-03 15:14:56 +0000
3031@@ -15,5 +15,5 @@
3032 out_float32x2x2_t = vld2_dup_f32 (0);
3033 }
3034
3035-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3036+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3037 /* { dg-final { cleanup-saved-temps } } */
3038
3039=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c'
3040--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c 2010-05-24 18:36:31 +0000
3041+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c 2011-05-03 15:14:56 +0000
3042@@ -15,5 +15,5 @@
3043 out_poly16x4x2_t = vld2_dup_p16 (0);
3044 }
3045
3046-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3047+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3048 /* { dg-final { cleanup-saved-temps } } */
3049
3050=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c'
3051--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c 2010-05-24 18:36:31 +0000
3052+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c 2011-05-03 15:14:56 +0000
3053@@ -15,5 +15,5 @@
3054 out_poly8x8x2_t = vld2_dup_p8 (0);
3055 }
3056
3057-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3058+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3059 /* { dg-final { cleanup-saved-temps } } */
3060
3061=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c'
3062--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c 2010-05-24 18:36:31 +0000
3063+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c 2011-05-03 15:14:56 +0000
3064@@ -15,5 +15,5 @@
3065 out_int16x4x2_t = vld2_dup_s16 (0);
3066 }
3067
3068-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3069+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3070 /* { dg-final { cleanup-saved-temps } } */
3071
3072=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c'
3073--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c 2010-05-24 18:36:31 +0000
3074+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c 2011-05-03 15:14:56 +0000
3075@@ -15,5 +15,5 @@
3076 out_int32x2x2_t = vld2_dup_s32 (0);
3077 }
3078
3079-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3080+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3081 /* { dg-final { cleanup-saved-temps } } */
3082
3083=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c'
3084--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c 2010-05-24 18:36:31 +0000
3085+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c 2011-05-03 15:14:56 +0000
3086@@ -15,5 +15,5 @@
3087 out_int64x1x2_t = vld2_dup_s64 (0);
3088 }
3089
3090-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3091+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3092 /* { dg-final { cleanup-saved-temps } } */
3093
3094=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c'
3095--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c 2010-05-24 18:36:31 +0000
3096+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c 2011-05-03 15:14:56 +0000
3097@@ -15,5 +15,5 @@
3098 out_int8x8x2_t = vld2_dup_s8 (0);
3099 }
3100
3101-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3102+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3103 /* { dg-final { cleanup-saved-temps } } */
3104
3105=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c'
3106--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c 2010-05-24 18:36:31 +0000
3107+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c 2011-05-03 15:14:56 +0000
3108@@ -15,5 +15,5 @@
3109 out_uint16x4x2_t = vld2_dup_u16 (0);
3110 }
3111
3112-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3113+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3114 /* { dg-final { cleanup-saved-temps } } */
3115
3116=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c'
3117--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c 2010-05-24 18:36:31 +0000
3118+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c 2011-05-03 15:14:56 +0000
3119@@ -15,5 +15,5 @@
3120 out_uint32x2x2_t = vld2_dup_u32 (0);
3121 }
3122
3123-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3124+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3125 /* { dg-final { cleanup-saved-temps } } */
3126
3127=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c'
3128--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c 2010-05-24 18:36:31 +0000
3129+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c 2011-05-03 15:14:56 +0000
3130@@ -15,5 +15,5 @@
3131 out_uint64x1x2_t = vld2_dup_u64 (0);
3132 }
3133
3134-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3135+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3136 /* { dg-final { cleanup-saved-temps } } */
3137
3138=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c'
3139--- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c 2010-05-24 18:36:31 +0000
3140+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c 2011-05-03 15:14:56 +0000
3141@@ -15,5 +15,5 @@
3142 out_uint8x8x2_t = vld2_dup_u8 (0);
3143 }
3144
3145-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3146+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3147 /* { dg-final { cleanup-saved-temps } } */
3148
3149=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c'
3150--- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c 2010-05-24 18:36:31 +0000
3151+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c 2011-05-03 15:14:56 +0000
3152@@ -16,5 +16,5 @@
3153 out_float32x2x2_t = vld2_lane_f32 (0, arg1_float32x2x2_t, 1);
3154 }
3155
3156-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3157+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3158 /* { dg-final { cleanup-saved-temps } } */
3159
3160=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c'
3161--- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c 2010-05-24 18:36:31 +0000
3162+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c 2011-05-03 15:14:56 +0000
3163@@ -16,5 +16,5 @@
3164 out_poly16x4x2_t = vld2_lane_p16 (0, arg1_poly16x4x2_t, 1);
3165 }
3166
3167-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3168+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3169 /* { dg-final { cleanup-saved-temps } } */
3170
3171=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c'
3172--- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c 2010-05-24 18:36:31 +0000
3173+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c 2011-05-03 15:14:56 +0000
3174@@ -16,5 +16,5 @@
3175 out_poly8x8x2_t = vld2_lane_p8 (0, arg1_poly8x8x2_t, 1);
3176 }
3177
3178-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3179+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3180 /* { dg-final { cleanup-saved-temps } } */
3181
3182=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c'
3183--- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c 2010-05-24 18:36:31 +0000
3184+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c 2011-05-03 15:14:56 +0000
3185@@ -16,5 +16,5 @@
3186 out_int16x4x2_t = vld2_lane_s16 (0, arg1_int16x4x2_t, 1);
3187 }
3188
3189-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3190+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3191 /* { dg-final { cleanup-saved-temps } } */
3192
3193=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c'
3194--- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c 2010-05-24 18:36:31 +0000
3195+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c 2011-05-03 15:14:56 +0000
3196@@ -16,5 +16,5 @@
3197 out_int32x2x2_t = vld2_lane_s32 (0, arg1_int32x2x2_t, 1);
3198 }
3199
3200-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3201+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3202 /* { dg-final { cleanup-saved-temps } } */
3203
3204=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c'
3205--- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c 2010-05-24 18:36:31 +0000
3206+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c 2011-05-03 15:14:56 +0000
3207@@ -16,5 +16,5 @@
3208 out_int8x8x2_t = vld2_lane_s8 (0, arg1_int8x8x2_t, 1);
3209 }
3210
3211-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3212+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3213 /* { dg-final { cleanup-saved-temps } } */
3214
3215=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c'
3216--- old/gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c 2010-05-24 18:36:31 +0000
3217+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c 2011-05-03 15:14:56 +0000
3218@@ -16,5 +16,5 @@
3219 out_uint16x4x2_t = vld2_lane_u16 (0, arg1_uint16x4x2_t, 1);
3220 }
3221
3222-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3223+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3224 /* { dg-final { cleanup-saved-temps } } */
3225
3226=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c'
3227--- old/gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c 2010-05-24 18:36:31 +0000
3228+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c 2011-05-03 15:14:56 +0000
3229@@ -16,5 +16,5 @@
3230 out_uint32x2x2_t = vld2_lane_u32 (0, arg1_uint32x2x2_t, 1);
3231 }
3232
3233-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3234+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3235 /* { dg-final { cleanup-saved-temps } } */
3236
3237=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c'
3238--- old/gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c 2010-05-24 18:36:31 +0000
3239+++ new/gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c 2011-05-03 15:14:56 +0000
3240@@ -16,5 +16,5 @@
3241 out_uint8x8x2_t = vld2_lane_u8 (0, arg1_uint8x8x2_t, 1);
3242 }
3243
3244-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3245+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3246 /* { dg-final { cleanup-saved-temps } } */
3247
3248=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2f32.c'
3249--- old/gcc/testsuite/gcc.target/arm/neon/vld2f32.c 2010-05-24 18:36:31 +0000
3250+++ new/gcc/testsuite/gcc.target/arm/neon/vld2f32.c 2011-05-03 15:14:56 +0000
3251@@ -15,5 +15,5 @@
3252 out_float32x2x2_t = vld2_f32 (0);
3253 }
3254
3255-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3256+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3257 /* { dg-final { cleanup-saved-temps } } */
3258
3259=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2p16.c'
3260--- old/gcc/testsuite/gcc.target/arm/neon/vld2p16.c 2010-05-24 18:36:31 +0000
3261+++ new/gcc/testsuite/gcc.target/arm/neon/vld2p16.c 2011-05-03 15:14:56 +0000
3262@@ -15,5 +15,5 @@
3263 out_poly16x4x2_t = vld2_p16 (0);
3264 }
3265
3266-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3267+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3268 /* { dg-final { cleanup-saved-temps } } */
3269
3270=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2p8.c'
3271--- old/gcc/testsuite/gcc.target/arm/neon/vld2p8.c 2010-05-24 18:36:31 +0000
3272+++ new/gcc/testsuite/gcc.target/arm/neon/vld2p8.c 2011-05-03 15:14:56 +0000
3273@@ -15,5 +15,5 @@
3274 out_poly8x8x2_t = vld2_p8 (0);
3275 }
3276
3277-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3278+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3279 /* { dg-final { cleanup-saved-temps } } */
3280
3281=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s16.c'
3282--- old/gcc/testsuite/gcc.target/arm/neon/vld2s16.c 2010-05-24 18:36:31 +0000
3283+++ new/gcc/testsuite/gcc.target/arm/neon/vld2s16.c 2011-05-03 15:14:56 +0000
3284@@ -15,5 +15,5 @@
3285 out_int16x4x2_t = vld2_s16 (0);
3286 }
3287
3288-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3289+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3290 /* { dg-final { cleanup-saved-temps } } */
3291
3292=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s32.c'
3293--- old/gcc/testsuite/gcc.target/arm/neon/vld2s32.c 2010-05-24 18:36:31 +0000
3294+++ new/gcc/testsuite/gcc.target/arm/neon/vld2s32.c 2011-05-03 15:14:56 +0000
3295@@ -15,5 +15,5 @@
3296 out_int32x2x2_t = vld2_s32 (0);
3297 }
3298
3299-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3300+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3301 /* { dg-final { cleanup-saved-temps } } */
3302
3303=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s64.c'
3304--- old/gcc/testsuite/gcc.target/arm/neon/vld2s64.c 2010-05-24 18:36:31 +0000
3305+++ new/gcc/testsuite/gcc.target/arm/neon/vld2s64.c 2011-05-03 15:14:56 +0000
3306@@ -15,5 +15,5 @@
3307 out_int64x1x2_t = vld2_s64 (0);
3308 }
3309
3310-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3311+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3312 /* { dg-final { cleanup-saved-temps } } */
3313
3314=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s8.c'
3315--- old/gcc/testsuite/gcc.target/arm/neon/vld2s8.c 2010-05-24 18:36:31 +0000
3316+++ new/gcc/testsuite/gcc.target/arm/neon/vld2s8.c 2011-05-03 15:14:56 +0000
3317@@ -15,5 +15,5 @@
3318 out_int8x8x2_t = vld2_s8 (0);
3319 }
3320
3321-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3322+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3323 /* { dg-final { cleanup-saved-temps } } */
3324
3325=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u16.c'
3326--- old/gcc/testsuite/gcc.target/arm/neon/vld2u16.c 2010-05-24 18:36:31 +0000
3327+++ new/gcc/testsuite/gcc.target/arm/neon/vld2u16.c 2011-05-03 15:14:56 +0000
3328@@ -15,5 +15,5 @@
3329 out_uint16x4x2_t = vld2_u16 (0);
3330 }
3331
3332-/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3333+/* { dg-final { scan-assembler "vld2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3334 /* { dg-final { cleanup-saved-temps } } */
3335
3336=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u32.c'
3337--- old/gcc/testsuite/gcc.target/arm/neon/vld2u32.c 2010-05-24 18:36:31 +0000
3338+++ new/gcc/testsuite/gcc.target/arm/neon/vld2u32.c 2011-05-03 15:14:56 +0000
3339@@ -15,5 +15,5 @@
3340 out_uint32x2x2_t = vld2_u32 (0);
3341 }
3342
3343-/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3344+/* { dg-final { scan-assembler "vld2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3345 /* { dg-final { cleanup-saved-temps } } */
3346
3347=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u64.c'
3348--- old/gcc/testsuite/gcc.target/arm/neon/vld2u64.c 2010-05-24 18:36:31 +0000
3349+++ new/gcc/testsuite/gcc.target/arm/neon/vld2u64.c 2011-05-03 15:14:56 +0000
3350@@ -15,5 +15,5 @@
3351 out_uint64x1x2_t = vld2_u64 (0);
3352 }
3353
3354-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3355+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3356 /* { dg-final { cleanup-saved-temps } } */
3357
3358=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u8.c'
3359--- old/gcc/testsuite/gcc.target/arm/neon/vld2u8.c 2010-05-24 18:36:31 +0000
3360+++ new/gcc/testsuite/gcc.target/arm/neon/vld2u8.c 2011-05-03 15:14:56 +0000
3361@@ -15,5 +15,5 @@
3362 out_uint8x8x2_t = vld2_u8 (0);
3363 }
3364
3365-/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3366+/* { dg-final { scan-assembler "vld2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3367 /* { dg-final { cleanup-saved-temps } } */
3368
3369=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c'
3370--- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c 2010-05-24 18:36:31 +0000
3371+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c 2011-05-03 15:14:56 +0000
3372@@ -16,5 +16,5 @@
3373 out_float32x4x3_t = vld3q_lane_f32 (0, arg1_float32x4x3_t, 1);
3374 }
3375
3376-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3377+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3378 /* { dg-final { cleanup-saved-temps } } */
3379
3380=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c'
3381--- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c 2010-05-24 18:36:31 +0000
3382+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c 2011-05-03 15:14:56 +0000
3383@@ -16,5 +16,5 @@
3384 out_poly16x8x3_t = vld3q_lane_p16 (0, arg1_poly16x8x3_t, 1);
3385 }
3386
3387-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3388+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3389 /* { dg-final { cleanup-saved-temps } } */
3390
3391=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c'
3392--- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c 2010-05-24 18:36:31 +0000
3393+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c 2011-05-03 15:14:56 +0000
3394@@ -16,5 +16,5 @@
3395 out_int16x8x3_t = vld3q_lane_s16 (0, arg1_int16x8x3_t, 1);
3396 }
3397
3398-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3399+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3400 /* { dg-final { cleanup-saved-temps } } */
3401
3402=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c'
3403--- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c 2010-05-24 18:36:31 +0000
3404+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c 2011-05-03 15:14:56 +0000
3405@@ -16,5 +16,5 @@
3406 out_int32x4x3_t = vld3q_lane_s32 (0, arg1_int32x4x3_t, 1);
3407 }
3408
3409-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3410+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3411 /* { dg-final { cleanup-saved-temps } } */
3412
3413=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c'
3414--- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c 2010-05-24 18:36:31 +0000
3415+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c 2011-05-03 15:14:56 +0000
3416@@ -16,5 +16,5 @@
3417 out_uint16x8x3_t = vld3q_lane_u16 (0, arg1_uint16x8x3_t, 1);
3418 }
3419
3420-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3421+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3422 /* { dg-final { cleanup-saved-temps } } */
3423
3424=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c'
3425--- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c 2010-05-24 18:36:31 +0000
3426+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c 2011-05-03 15:14:56 +0000
3427@@ -16,5 +16,5 @@
3428 out_uint32x4x3_t = vld3q_lane_u32 (0, arg1_uint32x4x3_t, 1);
3429 }
3430
3431-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3432+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3433 /* { dg-final { cleanup-saved-temps } } */
3434
3435=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c'
3436--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c 2010-05-24 18:36:31 +0000
3437+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c 2011-05-03 15:14:56 +0000
3438@@ -15,6 +15,6 @@
3439 out_float32x4x3_t = vld3q_f32 (0);
3440 }
3441
3442-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3443-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3444+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3445+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3446 /* { dg-final { cleanup-saved-temps } } */
3447
3448=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c'
3449--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c 2010-05-24 18:36:31 +0000
3450+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c 2011-05-03 15:14:56 +0000
3451@@ -15,6 +15,6 @@
3452 out_poly16x8x3_t = vld3q_p16 (0);
3453 }
3454
3455-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3456-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3457+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3458+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3459 /* { dg-final { cleanup-saved-temps } } */
3460
3461=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c'
3462--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c 2010-05-24 18:36:31 +0000
3463+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c 2011-05-03 15:14:56 +0000
3464@@ -15,6 +15,6 @@
3465 out_poly8x16x3_t = vld3q_p8 (0);
3466 }
3467
3468-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3469-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3470+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3471+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3472 /* { dg-final { cleanup-saved-temps } } */
3473
3474=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c'
3475--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c 2010-05-24 18:36:31 +0000
3476+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c 2011-05-03 15:14:56 +0000
3477@@ -15,6 +15,6 @@
3478 out_int16x8x3_t = vld3q_s16 (0);
3479 }
3480
3481-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3482-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3483+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3484+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3485 /* { dg-final { cleanup-saved-temps } } */
3486
3487=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c'
3488--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c 2010-05-24 18:36:31 +0000
3489+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c 2011-05-03 15:14:56 +0000
3490@@ -15,6 +15,6 @@
3491 out_int32x4x3_t = vld3q_s32 (0);
3492 }
3493
3494-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3495-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3496+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3497+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3498 /* { dg-final { cleanup-saved-temps } } */
3499
3500=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c'
3501--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c 2010-05-24 18:36:31 +0000
3502+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c 2011-05-03 15:14:56 +0000
3503@@ -15,6 +15,6 @@
3504 out_int8x16x3_t = vld3q_s8 (0);
3505 }
3506
3507-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3508-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3509+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3510+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3511 /* { dg-final { cleanup-saved-temps } } */
3512
3513=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c'
3514--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c 2010-05-24 18:36:31 +0000
3515+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c 2011-05-03 15:14:56 +0000
3516@@ -15,6 +15,6 @@
3517 out_uint16x8x3_t = vld3q_u16 (0);
3518 }
3519
3520-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3521-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3522+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3523+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3524 /* { dg-final { cleanup-saved-temps } } */
3525
3526=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c'
3527--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c 2010-05-24 18:36:31 +0000
3528+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c 2011-05-03 15:14:56 +0000
3529@@ -15,6 +15,6 @@
3530 out_uint32x4x3_t = vld3q_u32 (0);
3531 }
3532
3533-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3534-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3535+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3536+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3537 /* { dg-final { cleanup-saved-temps } } */
3538
3539=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c'
3540--- old/gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c 2010-05-24 18:36:31 +0000
3541+++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c 2011-05-03 15:14:56 +0000
3542@@ -15,6 +15,6 @@
3543 out_uint8x16x3_t = vld3q_u8 (0);
3544 }
3545
3546-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3547-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3548+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3549+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3550 /* { dg-final { cleanup-saved-temps } } */
3551
3552=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c'
3553--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c 2010-05-24 18:36:31 +0000
3554+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c 2011-05-03 15:14:56 +0000
3555@@ -15,5 +15,5 @@
3556 out_float32x2x3_t = vld3_dup_f32 (0);
3557 }
3558
3559-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3560+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3561 /* { dg-final { cleanup-saved-temps } } */
3562
3563=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c'
3564--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c 2010-05-24 18:36:31 +0000
3565+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c 2011-05-03 15:14:56 +0000
3566@@ -15,5 +15,5 @@
3567 out_poly16x4x3_t = vld3_dup_p16 (0);
3568 }
3569
3570-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3571+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3572 /* { dg-final { cleanup-saved-temps } } */
3573
3574=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c'
3575--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c 2010-05-24 18:36:31 +0000
3576+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c 2011-05-03 15:14:56 +0000
3577@@ -15,5 +15,5 @@
3578 out_poly8x8x3_t = vld3_dup_p8 (0);
3579 }
3580
3581-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3582+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3583 /* { dg-final { cleanup-saved-temps } } */
3584
3585=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c'
3586--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c 2010-05-24 18:36:31 +0000
3587+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c 2011-05-03 15:14:56 +0000
3588@@ -15,5 +15,5 @@
3589 out_int16x4x3_t = vld3_dup_s16 (0);
3590 }
3591
3592-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3593+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3594 /* { dg-final { cleanup-saved-temps } } */
3595
3596=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c'
3597--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c 2010-05-24 18:36:31 +0000
3598+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c 2011-05-03 15:14:56 +0000
3599@@ -15,5 +15,5 @@
3600 out_int32x2x3_t = vld3_dup_s32 (0);
3601 }
3602
3603-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3604+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3605 /* { dg-final { cleanup-saved-temps } } */
3606
3607=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c'
3608--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c 2010-05-24 18:36:31 +0000
3609+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c 2011-05-03 15:14:56 +0000
3610@@ -15,5 +15,5 @@
3611 out_int64x1x3_t = vld3_dup_s64 (0);
3612 }
3613
3614-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3615+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3616 /* { dg-final { cleanup-saved-temps } } */
3617
3618=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c'
3619--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c 2010-05-24 18:36:31 +0000
3620+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c 2011-05-03 15:14:56 +0000
3621@@ -15,5 +15,5 @@
3622 out_int8x8x3_t = vld3_dup_s8 (0);
3623 }
3624
3625-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3626+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3627 /* { dg-final { cleanup-saved-temps } } */
3628
3629=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c'
3630--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c 2010-05-24 18:36:31 +0000
3631+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c 2011-05-03 15:14:56 +0000
3632@@ -15,5 +15,5 @@
3633 out_uint16x4x3_t = vld3_dup_u16 (0);
3634 }
3635
3636-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3637+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3638 /* { dg-final { cleanup-saved-temps } } */
3639
3640=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c'
3641--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c 2010-05-24 18:36:31 +0000
3642+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c 2011-05-03 15:14:56 +0000
3643@@ -15,5 +15,5 @@
3644 out_uint32x2x3_t = vld3_dup_u32 (0);
3645 }
3646
3647-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3648+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3649 /* { dg-final { cleanup-saved-temps } } */
3650
3651=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c'
3652--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c 2010-05-24 18:36:31 +0000
3653+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c 2011-05-03 15:14:56 +0000
3654@@ -15,5 +15,5 @@
3655 out_uint64x1x3_t = vld3_dup_u64 (0);
3656 }
3657
3658-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3659+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3660 /* { dg-final { cleanup-saved-temps } } */
3661
3662=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c'
3663--- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c 2010-05-24 18:36:31 +0000
3664+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c 2011-05-03 15:14:56 +0000
3665@@ -15,5 +15,5 @@
3666 out_uint8x8x3_t = vld3_dup_u8 (0);
3667 }
3668
3669-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3670+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3671 /* { dg-final { cleanup-saved-temps } } */
3672
3673=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c'
3674--- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c 2010-05-24 18:36:31 +0000
3675+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c 2011-05-03 15:14:56 +0000
3676@@ -16,5 +16,5 @@
3677 out_float32x2x3_t = vld3_lane_f32 (0, arg1_float32x2x3_t, 1);
3678 }
3679
3680-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3681+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3682 /* { dg-final { cleanup-saved-temps } } */
3683
3684=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c'
3685--- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c 2010-05-24 18:36:31 +0000
3686+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c 2011-05-03 15:14:56 +0000
3687@@ -16,5 +16,5 @@
3688 out_poly16x4x3_t = vld3_lane_p16 (0, arg1_poly16x4x3_t, 1);
3689 }
3690
3691-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3692+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3693 /* { dg-final { cleanup-saved-temps } } */
3694
3695=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c'
3696--- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c 2010-05-24 18:36:31 +0000
3697+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c 2011-05-03 15:14:56 +0000
3698@@ -16,5 +16,5 @@
3699 out_poly8x8x3_t = vld3_lane_p8 (0, arg1_poly8x8x3_t, 1);
3700 }
3701
3702-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3703+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3704 /* { dg-final { cleanup-saved-temps } } */
3705
3706=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c'
3707--- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c 2010-05-24 18:36:31 +0000
3708+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c 2011-05-03 15:14:56 +0000
3709@@ -16,5 +16,5 @@
3710 out_int16x4x3_t = vld3_lane_s16 (0, arg1_int16x4x3_t, 1);
3711 }
3712
3713-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3714+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3715 /* { dg-final { cleanup-saved-temps } } */
3716
3717=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c'
3718--- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c 2010-05-24 18:36:31 +0000
3719+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c 2011-05-03 15:14:56 +0000
3720@@ -16,5 +16,5 @@
3721 out_int32x2x3_t = vld3_lane_s32 (0, arg1_int32x2x3_t, 1);
3722 }
3723
3724-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3725+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3726 /* { dg-final { cleanup-saved-temps } } */
3727
3728=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c'
3729--- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c 2010-05-24 18:36:31 +0000
3730+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c 2011-05-03 15:14:56 +0000
3731@@ -16,5 +16,5 @@
3732 out_int8x8x3_t = vld3_lane_s8 (0, arg1_int8x8x3_t, 1);
3733 }
3734
3735-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3736+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3737 /* { dg-final { cleanup-saved-temps } } */
3738
3739=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c'
3740--- old/gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c 2010-05-24 18:36:31 +0000
3741+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c 2011-05-03 15:14:56 +0000
3742@@ -16,5 +16,5 @@
3743 out_uint16x4x3_t = vld3_lane_u16 (0, arg1_uint16x4x3_t, 1);
3744 }
3745
3746-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3747+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3748 /* { dg-final { cleanup-saved-temps } } */
3749
3750=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c'
3751--- old/gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c 2010-05-24 18:36:31 +0000
3752+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c 2011-05-03 15:14:56 +0000
3753@@ -16,5 +16,5 @@
3754 out_uint32x2x3_t = vld3_lane_u32 (0, arg1_uint32x2x3_t, 1);
3755 }
3756
3757-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3758+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3759 /* { dg-final { cleanup-saved-temps } } */
3760
3761=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c'
3762--- old/gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c 2010-05-24 18:36:31 +0000
3763+++ new/gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c 2011-05-03 15:14:56 +0000
3764@@ -16,5 +16,5 @@
3765 out_uint8x8x3_t = vld3_lane_u8 (0, arg1_uint8x8x3_t, 1);
3766 }
3767
3768-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3769+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3770 /* { dg-final { cleanup-saved-temps } } */
3771
3772=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3f32.c'
3773--- old/gcc/testsuite/gcc.target/arm/neon/vld3f32.c 2010-05-24 18:36:31 +0000
3774+++ new/gcc/testsuite/gcc.target/arm/neon/vld3f32.c 2011-05-03 15:14:56 +0000
3775@@ -15,5 +15,5 @@
3776 out_float32x2x3_t = vld3_f32 (0);
3777 }
3778
3779-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3780+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3781 /* { dg-final { cleanup-saved-temps } } */
3782
3783=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3p16.c'
3784--- old/gcc/testsuite/gcc.target/arm/neon/vld3p16.c 2010-05-24 18:36:31 +0000
3785+++ new/gcc/testsuite/gcc.target/arm/neon/vld3p16.c 2011-05-03 15:14:56 +0000
3786@@ -15,5 +15,5 @@
3787 out_poly16x4x3_t = vld3_p16 (0);
3788 }
3789
3790-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3791+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3792 /* { dg-final { cleanup-saved-temps } } */
3793
3794=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3p8.c'
3795--- old/gcc/testsuite/gcc.target/arm/neon/vld3p8.c 2010-05-24 18:36:31 +0000
3796+++ new/gcc/testsuite/gcc.target/arm/neon/vld3p8.c 2011-05-03 15:14:56 +0000
3797@@ -15,5 +15,5 @@
3798 out_poly8x8x3_t = vld3_p8 (0);
3799 }
3800
3801-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3802+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3803 /* { dg-final { cleanup-saved-temps } } */
3804
3805=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s16.c'
3806--- old/gcc/testsuite/gcc.target/arm/neon/vld3s16.c 2010-05-24 18:36:31 +0000
3807+++ new/gcc/testsuite/gcc.target/arm/neon/vld3s16.c 2011-05-03 15:14:56 +0000
3808@@ -15,5 +15,5 @@
3809 out_int16x4x3_t = vld3_s16 (0);
3810 }
3811
3812-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3813+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3814 /* { dg-final { cleanup-saved-temps } } */
3815
3816=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s32.c'
3817--- old/gcc/testsuite/gcc.target/arm/neon/vld3s32.c 2010-05-24 18:36:31 +0000
3818+++ new/gcc/testsuite/gcc.target/arm/neon/vld3s32.c 2011-05-03 15:14:56 +0000
3819@@ -15,5 +15,5 @@
3820 out_int32x2x3_t = vld3_s32 (0);
3821 }
3822
3823-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3824+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3825 /* { dg-final { cleanup-saved-temps } } */
3826
3827=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s64.c'
3828--- old/gcc/testsuite/gcc.target/arm/neon/vld3s64.c 2010-05-24 18:36:31 +0000
3829+++ new/gcc/testsuite/gcc.target/arm/neon/vld3s64.c 2011-05-03 15:14:56 +0000
3830@@ -15,5 +15,5 @@
3831 out_int64x1x3_t = vld3_s64 (0);
3832 }
3833
3834-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3835+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3836 /* { dg-final { cleanup-saved-temps } } */
3837
3838=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s8.c'
3839--- old/gcc/testsuite/gcc.target/arm/neon/vld3s8.c 2010-05-24 18:36:31 +0000
3840+++ new/gcc/testsuite/gcc.target/arm/neon/vld3s8.c 2011-05-03 15:14:56 +0000
3841@@ -15,5 +15,5 @@
3842 out_int8x8x3_t = vld3_s8 (0);
3843 }
3844
3845-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3846+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3847 /* { dg-final { cleanup-saved-temps } } */
3848
3849=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u16.c'
3850--- old/gcc/testsuite/gcc.target/arm/neon/vld3u16.c 2010-05-24 18:36:31 +0000
3851+++ new/gcc/testsuite/gcc.target/arm/neon/vld3u16.c 2011-05-03 15:14:56 +0000
3852@@ -15,5 +15,5 @@
3853 out_uint16x4x3_t = vld3_u16 (0);
3854 }
3855
3856-/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3857+/* { dg-final { scan-assembler "vld3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3858 /* { dg-final { cleanup-saved-temps } } */
3859
3860=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u32.c'
3861--- old/gcc/testsuite/gcc.target/arm/neon/vld3u32.c 2010-05-24 18:36:31 +0000
3862+++ new/gcc/testsuite/gcc.target/arm/neon/vld3u32.c 2011-05-03 15:14:56 +0000
3863@@ -15,5 +15,5 @@
3864 out_uint32x2x3_t = vld3_u32 (0);
3865 }
3866
3867-/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3868+/* { dg-final { scan-assembler "vld3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3869 /* { dg-final { cleanup-saved-temps } } */
3870
3871=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u64.c'
3872--- old/gcc/testsuite/gcc.target/arm/neon/vld3u64.c 2010-05-24 18:36:31 +0000
3873+++ new/gcc/testsuite/gcc.target/arm/neon/vld3u64.c 2011-05-03 15:14:56 +0000
3874@@ -15,5 +15,5 @@
3875 out_uint64x1x3_t = vld3_u64 (0);
3876 }
3877
3878-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3879+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3880 /* { dg-final { cleanup-saved-temps } } */
3881
3882=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u8.c'
3883--- old/gcc/testsuite/gcc.target/arm/neon/vld3u8.c 2010-05-24 18:36:31 +0000
3884+++ new/gcc/testsuite/gcc.target/arm/neon/vld3u8.c 2011-05-03 15:14:56 +0000
3885@@ -15,5 +15,5 @@
3886 out_uint8x8x3_t = vld3_u8 (0);
3887 }
3888
3889-/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3890+/* { dg-final { scan-assembler "vld3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3891 /* { dg-final { cleanup-saved-temps } } */
3892
3893=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c'
3894--- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c 2010-05-24 18:36:31 +0000
3895+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c 2011-05-03 15:14:56 +0000
3896@@ -16,5 +16,5 @@
3897 out_float32x4x4_t = vld4q_lane_f32 (0, arg1_float32x4x4_t, 1);
3898 }
3899
3900-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3901+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3902 /* { dg-final { cleanup-saved-temps } } */
3903
3904=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c'
3905--- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c 2010-05-24 18:36:31 +0000
3906+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c 2011-05-03 15:14:56 +0000
3907@@ -16,5 +16,5 @@
3908 out_poly16x8x4_t = vld4q_lane_p16 (0, arg1_poly16x8x4_t, 1);
3909 }
3910
3911-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3912+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3913 /* { dg-final { cleanup-saved-temps } } */
3914
3915=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c'
3916--- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c 2010-05-24 18:36:31 +0000
3917+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c 2011-05-03 15:14:56 +0000
3918@@ -16,5 +16,5 @@
3919 out_int16x8x4_t = vld4q_lane_s16 (0, arg1_int16x8x4_t, 1);
3920 }
3921
3922-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3923+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3924 /* { dg-final { cleanup-saved-temps } } */
3925
3926=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c'
3927--- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c 2010-05-24 18:36:31 +0000
3928+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c 2011-05-03 15:14:56 +0000
3929@@ -16,5 +16,5 @@
3930 out_int32x4x4_t = vld4q_lane_s32 (0, arg1_int32x4x4_t, 1);
3931 }
3932
3933-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3934+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3935 /* { dg-final { cleanup-saved-temps } } */
3936
3937=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c'
3938--- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c 2010-05-24 18:36:31 +0000
3939+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c 2011-05-03 15:14:56 +0000
3940@@ -16,5 +16,5 @@
3941 out_uint16x8x4_t = vld4q_lane_u16 (0, arg1_uint16x8x4_t, 1);
3942 }
3943
3944-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3945+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3946 /* { dg-final { cleanup-saved-temps } } */
3947
3948=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c'
3949--- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c 2010-05-24 18:36:31 +0000
3950+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c 2011-05-03 15:14:56 +0000
3951@@ -16,5 +16,5 @@
3952 out_uint32x4x4_t = vld4q_lane_u32 (0, arg1_uint32x4x4_t, 1);
3953 }
3954
3955-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3956+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3957 /* { dg-final { cleanup-saved-temps } } */
3958
3959=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c'
3960--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c 2010-05-24 18:36:31 +0000
3961+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c 2011-05-03 15:14:56 +0000
3962@@ -15,6 +15,6 @@
3963 out_float32x4x4_t = vld4q_f32 (0);
3964 }
3965
3966-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3967-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3968+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3969+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3970 /* { dg-final { cleanup-saved-temps } } */
3971
3972=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c'
3973--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c 2010-05-24 18:36:31 +0000
3974+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c 2011-05-03 15:14:56 +0000
3975@@ -15,6 +15,6 @@
3976 out_poly16x8x4_t = vld4q_p16 (0);
3977 }
3978
3979-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3980-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3981+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3982+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3983 /* { dg-final { cleanup-saved-temps } } */
3984
3985=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c'
3986--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c 2010-05-24 18:36:31 +0000
3987+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c 2011-05-03 15:14:56 +0000
3988@@ -15,6 +15,6 @@
3989 out_poly8x16x4_t = vld4q_p8 (0);
3990 }
3991
3992-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3993-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3994+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3995+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
3996 /* { dg-final { cleanup-saved-temps } } */
3997
3998=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c'
3999--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c 2010-05-24 18:36:31 +0000
4000+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c 2011-05-03 15:14:56 +0000
4001@@ -15,6 +15,6 @@
4002 out_int16x8x4_t = vld4q_s16 (0);
4003 }
4004
4005-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4006-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4007+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4008+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4009 /* { dg-final { cleanup-saved-temps } } */
4010
4011=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c'
4012--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c 2010-05-24 18:36:31 +0000
4013+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c 2011-05-03 15:14:56 +0000
4014@@ -15,6 +15,6 @@
4015 out_int32x4x4_t = vld4q_s32 (0);
4016 }
4017
4018-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4019-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4020+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4021+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4022 /* { dg-final { cleanup-saved-temps } } */
4023
4024=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c'
4025--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c 2010-05-24 18:36:31 +0000
4026+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c 2011-05-03 15:14:56 +0000
4027@@ -15,6 +15,6 @@
4028 out_int8x16x4_t = vld4q_s8 (0);
4029 }
4030
4031-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4032-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4033+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4034+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4035 /* { dg-final { cleanup-saved-temps } } */
4036
4037=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c'
4038--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c 2010-05-24 18:36:31 +0000
4039+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c 2011-05-03 15:14:56 +0000
4040@@ -15,6 +15,6 @@
4041 out_uint16x8x4_t = vld4q_u16 (0);
4042 }
4043
4044-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4045-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4046+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4047+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4048 /* { dg-final { cleanup-saved-temps } } */
4049
4050=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c'
4051--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c 2010-05-24 18:36:31 +0000
4052+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c 2011-05-03 15:14:56 +0000
4053@@ -15,6 +15,6 @@
4054 out_uint32x4x4_t = vld4q_u32 (0);
4055 }
4056
4057-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4058-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4059+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4060+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4061 /* { dg-final { cleanup-saved-temps } } */
4062
4063=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c'
4064--- old/gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c 2010-05-24 18:36:31 +0000
4065+++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c 2011-05-03 15:14:56 +0000
4066@@ -15,6 +15,6 @@
4067 out_uint8x16x4_t = vld4q_u8 (0);
4068 }
4069
4070-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4071-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4072+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4073+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4074 /* { dg-final { cleanup-saved-temps } } */
4075
4076=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c'
4077--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c 2010-05-24 18:36:31 +0000
4078+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c 2011-05-03 15:14:56 +0000
4079@@ -15,5 +15,5 @@
4080 out_float32x2x4_t = vld4_dup_f32 (0);
4081 }
4082
4083-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4084+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4085 /* { dg-final { cleanup-saved-temps } } */
4086
4087=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c'
4088--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c 2010-05-24 18:36:31 +0000
4089+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c 2011-05-03 15:14:56 +0000
4090@@ -15,5 +15,5 @@
4091 out_poly16x4x4_t = vld4_dup_p16 (0);
4092 }
4093
4094-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4095+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4096 /* { dg-final { cleanup-saved-temps } } */
4097
4098=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c'
4099--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c 2010-05-24 18:36:31 +0000
4100+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c 2011-05-03 15:14:56 +0000
4101@@ -15,5 +15,5 @@
4102 out_poly8x8x4_t = vld4_dup_p8 (0);
4103 }
4104
4105-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4106+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4107 /* { dg-final { cleanup-saved-temps } } */
4108
4109=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c'
4110--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c 2010-05-24 18:36:31 +0000
4111+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c 2011-05-03 15:14:56 +0000
4112@@ -15,5 +15,5 @@
4113 out_int16x4x4_t = vld4_dup_s16 (0);
4114 }
4115
4116-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4117+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4118 /* { dg-final { cleanup-saved-temps } } */
4119
4120=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c'
4121--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c 2010-05-24 18:36:31 +0000
4122+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c 2011-05-03 15:14:56 +0000
4123@@ -15,5 +15,5 @@
4124 out_int32x2x4_t = vld4_dup_s32 (0);
4125 }
4126
4127-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4128+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4129 /* { dg-final { cleanup-saved-temps } } */
4130
4131=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c'
4132--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c 2010-05-24 18:36:31 +0000
4133+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c 2011-05-03 15:14:56 +0000
4134@@ -15,5 +15,5 @@
4135 out_int64x1x4_t = vld4_dup_s64 (0);
4136 }
4137
4138-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4139+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4140 /* { dg-final { cleanup-saved-temps } } */
4141
4142=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c'
4143--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c 2010-05-24 18:36:31 +0000
4144+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c 2011-05-03 15:14:56 +0000
4145@@ -15,5 +15,5 @@
4146 out_int8x8x4_t = vld4_dup_s8 (0);
4147 }
4148
4149-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4150+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4151 /* { dg-final { cleanup-saved-temps } } */
4152
4153=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c'
4154--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c 2010-05-24 18:36:31 +0000
4155+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c 2011-05-03 15:14:56 +0000
4156@@ -15,5 +15,5 @@
4157 out_uint16x4x4_t = vld4_dup_u16 (0);
4158 }
4159
4160-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4161+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4162 /* { dg-final { cleanup-saved-temps } } */
4163
4164=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c'
4165--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c 2010-05-24 18:36:31 +0000
4166+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c 2011-05-03 15:14:56 +0000
4167@@ -15,5 +15,5 @@
4168 out_uint32x2x4_t = vld4_dup_u32 (0);
4169 }
4170
4171-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4172+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4173 /* { dg-final { cleanup-saved-temps } } */
4174
4175=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c'
4176--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c 2010-05-24 18:36:31 +0000
4177+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c 2011-05-03 15:14:56 +0000
4178@@ -15,5 +15,5 @@
4179 out_uint64x1x4_t = vld4_dup_u64 (0);
4180 }
4181
4182-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4183+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4184 /* { dg-final { cleanup-saved-temps } } */
4185
4186=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c'
4187--- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c 2010-05-24 18:36:31 +0000
4188+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c 2011-05-03 15:14:56 +0000
4189@@ -15,5 +15,5 @@
4190 out_uint8x8x4_t = vld4_dup_u8 (0);
4191 }
4192
4193-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4194+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\\\]-\[dD\]\[0-9\]+\\\[\\\])|(\[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\], \[dD\]\[0-9\]+\\\[\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4195 /* { dg-final { cleanup-saved-temps } } */
4196
4197=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c'
4198--- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c 2010-05-24 18:36:31 +0000
4199+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c 2011-05-03 15:14:56 +0000
4200@@ -16,5 +16,5 @@
4201 out_float32x2x4_t = vld4_lane_f32 (0, arg1_float32x2x4_t, 1);
4202 }
4203
4204-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4205+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4206 /* { dg-final { cleanup-saved-temps } } */
4207
4208=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c'
4209--- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c 2010-05-24 18:36:31 +0000
4210+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c 2011-05-03 15:14:56 +0000
4211@@ -16,5 +16,5 @@
4212 out_poly16x4x4_t = vld4_lane_p16 (0, arg1_poly16x4x4_t, 1);
4213 }
4214
4215-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4216+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4217 /* { dg-final { cleanup-saved-temps } } */
4218
4219=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c'
4220--- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c 2010-05-24 18:36:31 +0000
4221+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c 2011-05-03 15:14:56 +0000
4222@@ -16,5 +16,5 @@
4223 out_poly8x8x4_t = vld4_lane_p8 (0, arg1_poly8x8x4_t, 1);
4224 }
4225
4226-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4227+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4228 /* { dg-final { cleanup-saved-temps } } */
4229
4230=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c'
4231--- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c 2010-05-24 18:36:31 +0000
4232+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c 2011-05-03 15:14:56 +0000
4233@@ -16,5 +16,5 @@
4234 out_int16x4x4_t = vld4_lane_s16 (0, arg1_int16x4x4_t, 1);
4235 }
4236
4237-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4238+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4239 /* { dg-final { cleanup-saved-temps } } */
4240
4241=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c'
4242--- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c 2010-05-24 18:36:31 +0000
4243+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c 2011-05-03 15:14:56 +0000
4244@@ -16,5 +16,5 @@
4245 out_int32x2x4_t = vld4_lane_s32 (0, arg1_int32x2x4_t, 1);
4246 }
4247
4248-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4249+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4250 /* { dg-final { cleanup-saved-temps } } */
4251
4252=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c'
4253--- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c 2010-05-24 18:36:31 +0000
4254+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c 2011-05-03 15:14:56 +0000
4255@@ -16,5 +16,5 @@
4256 out_int8x8x4_t = vld4_lane_s8 (0, arg1_int8x8x4_t, 1);
4257 }
4258
4259-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4260+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4261 /* { dg-final { cleanup-saved-temps } } */
4262
4263=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c'
4264--- old/gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c 2010-05-24 18:36:31 +0000
4265+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c 2011-05-03 15:14:56 +0000
4266@@ -16,5 +16,5 @@
4267 out_uint16x4x4_t = vld4_lane_u16 (0, arg1_uint16x4x4_t, 1);
4268 }
4269
4270-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4271+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4272 /* { dg-final { cleanup-saved-temps } } */
4273
4274=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c'
4275--- old/gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c 2010-05-24 18:36:31 +0000
4276+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c 2011-05-03 15:14:56 +0000
4277@@ -16,5 +16,5 @@
4278 out_uint32x2x4_t = vld4_lane_u32 (0, arg1_uint32x2x4_t, 1);
4279 }
4280
4281-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4282+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4283 /* { dg-final { cleanup-saved-temps } } */
4284
4285=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c'
4286--- old/gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c 2010-05-24 18:36:31 +0000
4287+++ new/gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c 2011-05-03 15:14:56 +0000
4288@@ -16,5 +16,5 @@
4289 out_uint8x8x4_t = vld4_lane_u8 (0, arg1_uint8x8x4_t, 1);
4290 }
4291
4292-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4293+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4294 /* { dg-final { cleanup-saved-temps } } */
4295
4296=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4f32.c'
4297--- old/gcc/testsuite/gcc.target/arm/neon/vld4f32.c 2010-05-24 18:36:31 +0000
4298+++ new/gcc/testsuite/gcc.target/arm/neon/vld4f32.c 2011-05-03 15:14:56 +0000
4299@@ -15,5 +15,5 @@
4300 out_float32x2x4_t = vld4_f32 (0);
4301 }
4302
4303-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4304+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4305 /* { dg-final { cleanup-saved-temps } } */
4306
4307=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4p16.c'
4308--- old/gcc/testsuite/gcc.target/arm/neon/vld4p16.c 2010-05-24 18:36:31 +0000
4309+++ new/gcc/testsuite/gcc.target/arm/neon/vld4p16.c 2011-05-03 15:14:56 +0000
4310@@ -15,5 +15,5 @@
4311 out_poly16x4x4_t = vld4_p16 (0);
4312 }
4313
4314-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4315+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4316 /* { dg-final { cleanup-saved-temps } } */
4317
4318=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4p8.c'
4319--- old/gcc/testsuite/gcc.target/arm/neon/vld4p8.c 2010-05-24 18:36:31 +0000
4320+++ new/gcc/testsuite/gcc.target/arm/neon/vld4p8.c 2011-05-03 15:14:56 +0000
4321@@ -15,5 +15,5 @@
4322 out_poly8x8x4_t = vld4_p8 (0);
4323 }
4324
4325-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4326+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4327 /* { dg-final { cleanup-saved-temps } } */
4328
4329=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s16.c'
4330--- old/gcc/testsuite/gcc.target/arm/neon/vld4s16.c 2010-05-24 18:36:31 +0000
4331+++ new/gcc/testsuite/gcc.target/arm/neon/vld4s16.c 2011-05-03 15:14:56 +0000
4332@@ -15,5 +15,5 @@
4333 out_int16x4x4_t = vld4_s16 (0);
4334 }
4335
4336-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4337+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4338 /* { dg-final { cleanup-saved-temps } } */
4339
4340=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s32.c'
4341--- old/gcc/testsuite/gcc.target/arm/neon/vld4s32.c 2010-05-24 18:36:31 +0000
4342+++ new/gcc/testsuite/gcc.target/arm/neon/vld4s32.c 2011-05-03 15:14:56 +0000
4343@@ -15,5 +15,5 @@
4344 out_int32x2x4_t = vld4_s32 (0);
4345 }
4346
4347-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4348+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4349 /* { dg-final { cleanup-saved-temps } } */
4350
4351=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s64.c'
4352--- old/gcc/testsuite/gcc.target/arm/neon/vld4s64.c 2010-05-24 18:36:31 +0000
4353+++ new/gcc/testsuite/gcc.target/arm/neon/vld4s64.c 2011-05-03 15:14:56 +0000
4354@@ -15,5 +15,5 @@
4355 out_int64x1x4_t = vld4_s64 (0);
4356 }
4357
4358-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4359+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4360 /* { dg-final { cleanup-saved-temps } } */
4361
4362=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s8.c'
4363--- old/gcc/testsuite/gcc.target/arm/neon/vld4s8.c 2010-05-24 18:36:31 +0000
4364+++ new/gcc/testsuite/gcc.target/arm/neon/vld4s8.c 2011-05-03 15:14:56 +0000
4365@@ -15,5 +15,5 @@
4366 out_int8x8x4_t = vld4_s8 (0);
4367 }
4368
4369-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4370+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4371 /* { dg-final { cleanup-saved-temps } } */
4372
4373=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u16.c'
4374--- old/gcc/testsuite/gcc.target/arm/neon/vld4u16.c 2010-05-24 18:36:31 +0000
4375+++ new/gcc/testsuite/gcc.target/arm/neon/vld4u16.c 2011-05-03 15:14:56 +0000
4376@@ -15,5 +15,5 @@
4377 out_uint16x4x4_t = vld4_u16 (0);
4378 }
4379
4380-/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4381+/* { dg-final { scan-assembler "vld4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4382 /* { dg-final { cleanup-saved-temps } } */
4383
4384=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u32.c'
4385--- old/gcc/testsuite/gcc.target/arm/neon/vld4u32.c 2010-05-24 18:36:31 +0000
4386+++ new/gcc/testsuite/gcc.target/arm/neon/vld4u32.c 2011-05-03 15:14:56 +0000
4387@@ -15,5 +15,5 @@
4388 out_uint32x2x4_t = vld4_u32 (0);
4389 }
4390
4391-/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4392+/* { dg-final { scan-assembler "vld4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4393 /* { dg-final { cleanup-saved-temps } } */
4394
4395=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u64.c'
4396--- old/gcc/testsuite/gcc.target/arm/neon/vld4u64.c 2010-05-24 18:36:31 +0000
4397+++ new/gcc/testsuite/gcc.target/arm/neon/vld4u64.c 2011-05-03 15:14:56 +0000
4398@@ -15,5 +15,5 @@
4399 out_uint64x1x4_t = vld4_u64 (0);
4400 }
4401
4402-/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4403+/* { dg-final { scan-assembler "vld1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4404 /* { dg-final { cleanup-saved-temps } } */
4405
4406=== modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u8.c'
4407--- old/gcc/testsuite/gcc.target/arm/neon/vld4u8.c 2010-05-24 18:36:31 +0000
4408+++ new/gcc/testsuite/gcc.target/arm/neon/vld4u8.c 2011-05-03 15:14:56 +0000
4409@@ -15,5 +15,5 @@
4410 out_uint8x8x4_t = vld4_u8 (0);
4411 }
4412
4413-/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4414+/* { dg-final { scan-assembler "vld4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4415 /* { dg-final { cleanup-saved-temps } } */
4416
4417=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c'
4418--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c 2010-05-24 18:36:31 +0000
4419+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c 2011-05-03 15:14:56 +0000
4420@@ -16,5 +16,5 @@
4421 vst1q_lane_f32 (arg0_float32_t, arg1_float32x4_t, 1);
4422 }
4423
4424-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4425+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4426 /* { dg-final { cleanup-saved-temps } } */
4427
4428=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c'
4429--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c 2010-05-24 18:36:31 +0000
4430+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c 2011-05-03 15:14:56 +0000
4431@@ -16,5 +16,5 @@
4432 vst1q_lane_p16 (arg0_poly16_t, arg1_poly16x8_t, 1);
4433 }
4434
4435-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4436+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4437 /* { dg-final { cleanup-saved-temps } } */
4438
4439=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c'
4440--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c 2010-05-24 18:36:31 +0000
4441+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c 2011-05-03 15:14:56 +0000
4442@@ -16,5 +16,5 @@
4443 vst1q_lane_p8 (arg0_poly8_t, arg1_poly8x16_t, 1);
4444 }
4445
4446-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4447+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4448 /* { dg-final { cleanup-saved-temps } } */
4449
4450=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c'
4451--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c 2010-05-24 18:36:31 +0000
4452+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c 2011-05-03 15:14:56 +0000
4453@@ -16,5 +16,5 @@
4454 vst1q_lane_s16 (arg0_int16_t, arg1_int16x8_t, 1);
4455 }
4456
4457-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4458+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4459 /* { dg-final { cleanup-saved-temps } } */
4460
4461=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c'
4462--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c 2010-05-24 18:36:31 +0000
4463+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c 2011-05-03 15:14:56 +0000
4464@@ -16,5 +16,5 @@
4465 vst1q_lane_s32 (arg0_int32_t, arg1_int32x4_t, 1);
4466 }
4467
4468-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4469+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4470 /* { dg-final { cleanup-saved-temps } } */
4471
4472=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c'
4473--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c 2010-05-24 18:36:31 +0000
4474+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c 2011-05-03 15:14:56 +0000
4475@@ -16,5 +16,5 @@
4476 vst1q_lane_s64 (arg0_int64_t, arg1_int64x2_t, 1);
4477 }
4478
4479-/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4480+/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4481 /* { dg-final { cleanup-saved-temps } } */
4482
4483=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c'
4484--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c 2010-05-24 18:36:31 +0000
4485+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c 2011-05-03 15:14:56 +0000
4486@@ -16,5 +16,5 @@
4487 vst1q_lane_s8 (arg0_int8_t, arg1_int8x16_t, 1);
4488 }
4489
4490-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4491+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4492 /* { dg-final { cleanup-saved-temps } } */
4493
4494=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c'
4495--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c 2010-05-24 18:36:31 +0000
4496+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c 2011-05-03 15:14:56 +0000
4497@@ -16,5 +16,5 @@
4498 vst1q_lane_u16 (arg0_uint16_t, arg1_uint16x8_t, 1);
4499 }
4500
4501-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4502+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4503 /* { dg-final { cleanup-saved-temps } } */
4504
4505=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c'
4506--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c 2010-05-24 18:36:31 +0000
4507+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c 2011-05-03 15:14:56 +0000
4508@@ -16,5 +16,5 @@
4509 vst1q_lane_u32 (arg0_uint32_t, arg1_uint32x4_t, 1);
4510 }
4511
4512-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4513+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4514 /* { dg-final { cleanup-saved-temps } } */
4515
4516=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c'
4517--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c 2010-05-24 18:36:31 +0000
4518+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c 2011-05-03 15:14:56 +0000
4519@@ -16,5 +16,5 @@
4520 vst1q_lane_u64 (arg0_uint64_t, arg1_uint64x2_t, 1);
4521 }
4522
4523-/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4524+/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4525 /* { dg-final { cleanup-saved-temps } } */
4526
4527=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c'
4528--- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c 2010-05-24 18:36:31 +0000
4529+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c 2011-05-03 15:14:56 +0000
4530@@ -16,5 +16,5 @@
4531 vst1q_lane_u8 (arg0_uint8_t, arg1_uint8x16_t, 1);
4532 }
4533
4534-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4535+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4536 /* { dg-final { cleanup-saved-temps } } */
4537
4538=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c'
4539--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c 2010-05-24 18:36:31 +0000
4540+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c 2011-05-03 15:14:56 +0000
4541@@ -16,5 +16,5 @@
4542 vst1q_f32 (arg0_float32_t, arg1_float32x4_t);
4543 }
4544
4545-/* { dg-final { scan-assembler "vst1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4546+/* { dg-final { scan-assembler "vst1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4547 /* { dg-final { cleanup-saved-temps } } */
4548
4549=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c'
4550--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c 2010-05-24 18:36:31 +0000
4551+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c 2011-05-03 15:14:56 +0000
4552@@ -16,5 +16,5 @@
4553 vst1q_p16 (arg0_poly16_t, arg1_poly16x8_t);
4554 }
4555
4556-/* { dg-final { scan-assembler "vst1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4557+/* { dg-final { scan-assembler "vst1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4558 /* { dg-final { cleanup-saved-temps } } */
4559
4560=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c'
4561--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c 2010-05-24 18:36:31 +0000
4562+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c 2011-05-03 15:14:56 +0000
4563@@ -16,5 +16,5 @@
4564 vst1q_p8 (arg0_poly8_t, arg1_poly8x16_t);
4565 }
4566
4567-/* { dg-final { scan-assembler "vst1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4568+/* { dg-final { scan-assembler "vst1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4569 /* { dg-final { cleanup-saved-temps } } */
4570
4571=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c'
4572--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c 2010-05-24 18:36:31 +0000
4573+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c 2011-05-03 15:14:56 +0000
4574@@ -16,5 +16,5 @@
4575 vst1q_s16 (arg0_int16_t, arg1_int16x8_t);
4576 }
4577
4578-/* { dg-final { scan-assembler "vst1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4579+/* { dg-final { scan-assembler "vst1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4580 /* { dg-final { cleanup-saved-temps } } */
4581
4582=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c'
4583--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c 2010-05-24 18:36:31 +0000
4584+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c 2011-05-03 15:14:56 +0000
4585@@ -16,5 +16,5 @@
4586 vst1q_s32 (arg0_int32_t, arg1_int32x4_t);
4587 }
4588
4589-/* { dg-final { scan-assembler "vst1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4590+/* { dg-final { scan-assembler "vst1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4591 /* { dg-final { cleanup-saved-temps } } */
4592
4593=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c'
4594--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c 2010-05-24 18:36:31 +0000
4595+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c 2011-05-03 15:14:56 +0000
4596@@ -16,5 +16,5 @@
4597 vst1q_s64 (arg0_int64_t, arg1_int64x2_t);
4598 }
4599
4600-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4601+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4602 /* { dg-final { cleanup-saved-temps } } */
4603
4604=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c'
4605--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c 2010-05-24 18:36:31 +0000
4606+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c 2011-05-03 15:14:56 +0000
4607@@ -16,5 +16,5 @@
4608 vst1q_s8 (arg0_int8_t, arg1_int8x16_t);
4609 }
4610
4611-/* { dg-final { scan-assembler "vst1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4612+/* { dg-final { scan-assembler "vst1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4613 /* { dg-final { cleanup-saved-temps } } */
4614
4615=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c'
4616--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c 2010-05-24 18:36:31 +0000
4617+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c 2011-05-03 15:14:56 +0000
4618@@ -16,5 +16,5 @@
4619 vst1q_u16 (arg0_uint16_t, arg1_uint16x8_t);
4620 }
4621
4622-/* { dg-final { scan-assembler "vst1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4623+/* { dg-final { scan-assembler "vst1\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4624 /* { dg-final { cleanup-saved-temps } } */
4625
4626=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c'
4627--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c 2010-05-24 18:36:31 +0000
4628+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c 2011-05-03 15:14:56 +0000
4629@@ -16,5 +16,5 @@
4630 vst1q_u32 (arg0_uint32_t, arg1_uint32x4_t);
4631 }
4632
4633-/* { dg-final { scan-assembler "vst1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4634+/* { dg-final { scan-assembler "vst1\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4635 /* { dg-final { cleanup-saved-temps } } */
4636
4637=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c'
4638--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c 2010-05-24 18:36:31 +0000
4639+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c 2011-05-03 15:14:56 +0000
4640@@ -16,5 +16,5 @@
4641 vst1q_u64 (arg0_uint64_t, arg1_uint64x2_t);
4642 }
4643
4644-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4645+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4646 /* { dg-final { cleanup-saved-temps } } */
4647
4648=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c'
4649--- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c 2010-05-24 18:36:31 +0000
4650+++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c 2011-05-03 15:14:56 +0000
4651@@ -16,5 +16,5 @@
4652 vst1q_u8 (arg0_uint8_t, arg1_uint8x16_t);
4653 }
4654
4655-/* { dg-final { scan-assembler "vst1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4656+/* { dg-final { scan-assembler "vst1\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4657 /* { dg-final { cleanup-saved-temps } } */
4658
4659=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c'
4660--- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c 2010-05-24 18:36:31 +0000
4661+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c 2011-05-03 15:14:56 +0000
4662@@ -16,5 +16,5 @@
4663 vst1_lane_f32 (arg0_float32_t, arg1_float32x2_t, 1);
4664 }
4665
4666-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4667+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4668 /* { dg-final { cleanup-saved-temps } } */
4669
4670=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c'
4671--- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c 2010-05-24 18:36:31 +0000
4672+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c 2011-05-03 15:14:56 +0000
4673@@ -16,5 +16,5 @@
4674 vst1_lane_p16 (arg0_poly16_t, arg1_poly16x4_t, 1);
4675 }
4676
4677-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4678+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4679 /* { dg-final { cleanup-saved-temps } } */
4680
4681=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c'
4682--- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c 2010-05-24 18:36:31 +0000
4683+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c 2011-05-03 15:14:56 +0000
4684@@ -16,5 +16,5 @@
4685 vst1_lane_p8 (arg0_poly8_t, arg1_poly8x8_t, 1);
4686 }
4687
4688-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4689+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4690 /* { dg-final { cleanup-saved-temps } } */
4691
4692=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c'
4693--- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c 2010-05-24 18:36:31 +0000
4694+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c 2011-05-03 15:14:56 +0000
4695@@ -16,5 +16,5 @@
4696 vst1_lane_s16 (arg0_int16_t, arg1_int16x4_t, 1);
4697 }
4698
4699-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4700+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4701 /* { dg-final { cleanup-saved-temps } } */
4702
4703=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c'
4704--- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c 2010-05-24 18:36:31 +0000
4705+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c 2011-05-03 15:14:56 +0000
4706@@ -16,5 +16,5 @@
4707 vst1_lane_s32 (arg0_int32_t, arg1_int32x2_t, 1);
4708 }
4709
4710-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4711+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4712 /* { dg-final { cleanup-saved-temps } } */
4713
4714=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c'
4715--- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c 2010-05-24 18:36:31 +0000
4716+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c 2011-05-03 15:14:56 +0000
4717@@ -16,5 +16,5 @@
4718 vst1_lane_s64 (arg0_int64_t, arg1_int64x1_t, 0);
4719 }
4720
4721-/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4722+/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4723 /* { dg-final { cleanup-saved-temps } } */
4724
4725=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c'
4726--- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c 2010-05-24 18:36:31 +0000
4727+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c 2011-05-03 15:14:56 +0000
4728@@ -16,5 +16,5 @@
4729 vst1_lane_s8 (arg0_int8_t, arg1_int8x8_t, 1);
4730 }
4731
4732-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4733+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4734 /* { dg-final { cleanup-saved-temps } } */
4735
4736=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c'
4737--- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c 2010-05-24 18:36:31 +0000
4738+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c 2011-05-03 15:14:56 +0000
4739@@ -16,5 +16,5 @@
4740 vst1_lane_u16 (arg0_uint16_t, arg1_uint16x4_t, 1);
4741 }
4742
4743-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4744+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4745 /* { dg-final { cleanup-saved-temps } } */
4746
4747=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c'
4748--- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c 2010-05-24 18:36:31 +0000
4749+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c 2011-05-03 15:14:56 +0000
4750@@ -16,5 +16,5 @@
4751 vst1_lane_u32 (arg0_uint32_t, arg1_uint32x2_t, 1);
4752 }
4753
4754-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4755+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4756 /* { dg-final { cleanup-saved-temps } } */
4757
4758=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c'
4759--- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c 2010-05-24 18:36:31 +0000
4760+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c 2011-05-03 15:14:56 +0000
4761@@ -16,5 +16,5 @@
4762 vst1_lane_u64 (arg0_uint64_t, arg1_uint64x1_t, 0);
4763 }
4764
4765-/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4766+/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4767 /* { dg-final { cleanup-saved-temps } } */
4768
4769=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c'
4770--- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c 2010-05-24 18:36:31 +0000
4771+++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c 2011-05-03 15:14:56 +0000
4772@@ -16,5 +16,5 @@
4773 vst1_lane_u8 (arg0_uint8_t, arg1_uint8x8_t, 1);
4774 }
4775
4776-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4777+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]\\\})|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4778 /* { dg-final { cleanup-saved-temps } } */
4779
4780=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1f32.c'
4781--- old/gcc/testsuite/gcc.target/arm/neon/vst1f32.c 2010-05-24 18:36:31 +0000
4782+++ new/gcc/testsuite/gcc.target/arm/neon/vst1f32.c 2011-05-03 15:14:56 +0000
4783@@ -16,5 +16,5 @@
4784 vst1_f32 (arg0_float32_t, arg1_float32x2_t);
4785 }
4786
4787-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4788+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4789 /* { dg-final { cleanup-saved-temps } } */
4790
4791=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1p16.c'
4792--- old/gcc/testsuite/gcc.target/arm/neon/vst1p16.c 2010-05-24 18:36:31 +0000
4793+++ new/gcc/testsuite/gcc.target/arm/neon/vst1p16.c 2011-05-03 15:14:56 +0000
4794@@ -16,5 +16,5 @@
4795 vst1_p16 (arg0_poly16_t, arg1_poly16x4_t);
4796 }
4797
4798-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4799+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4800 /* { dg-final { cleanup-saved-temps } } */
4801
4802=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1p8.c'
4803--- old/gcc/testsuite/gcc.target/arm/neon/vst1p8.c 2010-05-24 18:36:31 +0000
4804+++ new/gcc/testsuite/gcc.target/arm/neon/vst1p8.c 2011-05-03 15:14:56 +0000
4805@@ -16,5 +16,5 @@
4806 vst1_p8 (arg0_poly8_t, arg1_poly8x8_t);
4807 }
4808
4809-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4810+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4811 /* { dg-final { cleanup-saved-temps } } */
4812
4813=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s16.c'
4814--- old/gcc/testsuite/gcc.target/arm/neon/vst1s16.c 2010-05-24 18:36:31 +0000
4815+++ new/gcc/testsuite/gcc.target/arm/neon/vst1s16.c 2011-05-03 15:14:56 +0000
4816@@ -16,5 +16,5 @@
4817 vst1_s16 (arg0_int16_t, arg1_int16x4_t);
4818 }
4819
4820-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4821+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4822 /* { dg-final { cleanup-saved-temps } } */
4823
4824=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s32.c'
4825--- old/gcc/testsuite/gcc.target/arm/neon/vst1s32.c 2010-05-24 18:36:31 +0000
4826+++ new/gcc/testsuite/gcc.target/arm/neon/vst1s32.c 2011-05-03 15:14:56 +0000
4827@@ -16,5 +16,5 @@
4828 vst1_s32 (arg0_int32_t, arg1_int32x2_t);
4829 }
4830
4831-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4832+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4833 /* { dg-final { cleanup-saved-temps } } */
4834
4835=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s64.c'
4836--- old/gcc/testsuite/gcc.target/arm/neon/vst1s64.c 2010-05-24 18:36:31 +0000
4837+++ new/gcc/testsuite/gcc.target/arm/neon/vst1s64.c 2011-05-03 15:14:56 +0000
4838@@ -16,5 +16,5 @@
4839 vst1_s64 (arg0_int64_t, arg1_int64x1_t);
4840 }
4841
4842-/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4843+/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4844 /* { dg-final { cleanup-saved-temps } } */
4845
4846=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s8.c'
4847--- old/gcc/testsuite/gcc.target/arm/neon/vst1s8.c 2010-05-24 18:36:31 +0000
4848+++ new/gcc/testsuite/gcc.target/arm/neon/vst1s8.c 2011-05-03 15:14:56 +0000
4849@@ -16,5 +16,5 @@
4850 vst1_s8 (arg0_int8_t, arg1_int8x8_t);
4851 }
4852
4853-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4854+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4855 /* { dg-final { cleanup-saved-temps } } */
4856
4857=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u16.c'
4858--- old/gcc/testsuite/gcc.target/arm/neon/vst1u16.c 2010-05-24 18:36:31 +0000
4859+++ new/gcc/testsuite/gcc.target/arm/neon/vst1u16.c 2011-05-03 15:14:56 +0000
4860@@ -16,5 +16,5 @@
4861 vst1_u16 (arg0_uint16_t, arg1_uint16x4_t);
4862 }
4863
4864-/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4865+/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4866 /* { dg-final { cleanup-saved-temps } } */
4867
4868=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u32.c'
4869--- old/gcc/testsuite/gcc.target/arm/neon/vst1u32.c 2010-05-24 18:36:31 +0000
4870+++ new/gcc/testsuite/gcc.target/arm/neon/vst1u32.c 2011-05-03 15:14:56 +0000
4871@@ -16,5 +16,5 @@
4872 vst1_u32 (arg0_uint32_t, arg1_uint32x2_t);
4873 }
4874
4875-/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4876+/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4877 /* { dg-final { cleanup-saved-temps } } */
4878
4879=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u64.c'
4880--- old/gcc/testsuite/gcc.target/arm/neon/vst1u64.c 2010-05-24 18:36:31 +0000
4881+++ new/gcc/testsuite/gcc.target/arm/neon/vst1u64.c 2011-05-03 15:14:56 +0000
4882@@ -16,5 +16,5 @@
4883 vst1_u64 (arg0_uint64_t, arg1_uint64x1_t);
4884 }
4885
4886-/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4887+/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4888 /* { dg-final { cleanup-saved-temps } } */
4889
4890=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u8.c'
4891--- old/gcc/testsuite/gcc.target/arm/neon/vst1u8.c 2010-05-24 18:36:31 +0000
4892+++ new/gcc/testsuite/gcc.target/arm/neon/vst1u8.c 2011-05-03 15:14:56 +0000
4893@@ -16,5 +16,5 @@
4894 vst1_u8 (arg0_uint8_t, arg1_uint8x8_t);
4895 }
4896
4897-/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4898+/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4899 /* { dg-final { cleanup-saved-temps } } */
4900
4901=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c'
4902--- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c 2010-05-24 18:36:31 +0000
4903+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c 2011-05-03 15:14:56 +0000
4904@@ -16,5 +16,5 @@
4905 vst2q_lane_f32 (arg0_float32_t, arg1_float32x4x2_t, 1);
4906 }
4907
4908-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4909+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4910 /* { dg-final { cleanup-saved-temps } } */
4911
4912=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c'
4913--- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c 2010-05-24 18:36:31 +0000
4914+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c 2011-05-03 15:14:56 +0000
4915@@ -16,5 +16,5 @@
4916 vst2q_lane_p16 (arg0_poly16_t, arg1_poly16x8x2_t, 1);
4917 }
4918
4919-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4920+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4921 /* { dg-final { cleanup-saved-temps } } */
4922
4923=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c'
4924--- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c 2010-05-24 18:36:31 +0000
4925+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c 2011-05-03 15:14:56 +0000
4926@@ -16,5 +16,5 @@
4927 vst2q_lane_s16 (arg0_int16_t, arg1_int16x8x2_t, 1);
4928 }
4929
4930-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4931+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4932 /* { dg-final { cleanup-saved-temps } } */
4933
4934=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c'
4935--- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c 2010-05-24 18:36:31 +0000
4936+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c 2011-05-03 15:14:56 +0000
4937@@ -16,5 +16,5 @@
4938 vst2q_lane_s32 (arg0_int32_t, arg1_int32x4x2_t, 1);
4939 }
4940
4941-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4942+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4943 /* { dg-final { cleanup-saved-temps } } */
4944
4945=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c'
4946--- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c 2010-05-24 18:36:31 +0000
4947+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c 2011-05-03 15:14:56 +0000
4948@@ -16,5 +16,5 @@
4949 vst2q_lane_u16 (arg0_uint16_t, arg1_uint16x8x2_t, 1);
4950 }
4951
4952-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4953+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4954 /* { dg-final { cleanup-saved-temps } } */
4955
4956=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c'
4957--- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c 2010-05-24 18:36:31 +0000
4958+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c 2011-05-03 15:14:56 +0000
4959@@ -16,5 +16,5 @@
4960 vst2q_lane_u32 (arg0_uint32_t, arg1_uint32x4x2_t, 1);
4961 }
4962
4963-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4964+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4965 /* { dg-final { cleanup-saved-temps } } */
4966
4967=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c'
4968--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c 2010-05-24 18:36:31 +0000
4969+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c 2011-05-03 15:14:56 +0000
4970@@ -16,6 +16,6 @@
4971 vst2q_f32 (arg0_float32_t, arg1_float32x4x2_t);
4972 }
4973
4974-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4975-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4976+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4977+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4978 /* { dg-final { cleanup-saved-temps } } */
4979
4980=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c'
4981--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c 2010-05-24 18:36:31 +0000
4982+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c 2011-05-03 15:14:56 +0000
4983@@ -16,6 +16,6 @@
4984 vst2q_p16 (arg0_poly16_t, arg1_poly16x8x2_t);
4985 }
4986
4987-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4988-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4989+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4990+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
4991 /* { dg-final { cleanup-saved-temps } } */
4992
4993=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c'
4994--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c 2010-05-24 18:36:31 +0000
4995+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c 2011-05-03 15:14:56 +0000
4996@@ -16,6 +16,6 @@
4997 vst2q_p8 (arg0_poly8_t, arg1_poly8x16x2_t);
4998 }
4999
5000-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5001-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5002+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5003+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5004 /* { dg-final { cleanup-saved-temps } } */
5005
5006=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c'
5007--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c 2010-05-24 18:36:31 +0000
5008+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c 2011-05-03 15:14:56 +0000
5009@@ -16,6 +16,6 @@
5010 vst2q_s16 (arg0_int16_t, arg1_int16x8x2_t);
5011 }
5012
5013-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5014-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5015+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5016+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5017 /* { dg-final { cleanup-saved-temps } } */
5018
5019=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c'
5020--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c 2010-05-24 18:36:31 +0000
5021+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c 2011-05-03 15:14:56 +0000
5022@@ -16,6 +16,6 @@
5023 vst2q_s32 (arg0_int32_t, arg1_int32x4x2_t);
5024 }
5025
5026-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5027-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5028+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5029+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5030 /* { dg-final { cleanup-saved-temps } } */
5031
5032=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c'
5033--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c 2010-05-24 18:36:31 +0000
5034+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c 2011-05-03 15:14:56 +0000
5035@@ -16,6 +16,6 @@
5036 vst2q_s8 (arg0_int8_t, arg1_int8x16x2_t);
5037 }
5038
5039-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5040-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5041+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5042+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5043 /* { dg-final { cleanup-saved-temps } } */
5044
5045=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c'
5046--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c 2010-05-24 18:36:31 +0000
5047+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c 2011-05-03 15:14:56 +0000
5048@@ -16,6 +16,6 @@
5049 vst2q_u16 (arg0_uint16_t, arg1_uint16x8x2_t);
5050 }
5051
5052-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5053-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5054+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5055+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5056 /* { dg-final { cleanup-saved-temps } } */
5057
5058=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c'
5059--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c 2010-05-24 18:36:31 +0000
5060+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c 2011-05-03 15:14:56 +0000
5061@@ -16,6 +16,6 @@
5062 vst2q_u32 (arg0_uint32_t, arg1_uint32x4x2_t);
5063 }
5064
5065-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5066-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5067+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5068+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5069 /* { dg-final { cleanup-saved-temps } } */
5070
5071=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c'
5072--- old/gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c 2010-05-24 18:36:31 +0000
5073+++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c 2011-05-03 15:14:56 +0000
5074@@ -16,6 +16,6 @@
5075 vst2q_u8 (arg0_uint8_t, arg1_uint8x16x2_t);
5076 }
5077
5078-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5079-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5080+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5081+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5082 /* { dg-final { cleanup-saved-temps } } */
5083
5084=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c'
5085--- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c 2010-05-24 18:36:31 +0000
5086+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c 2011-05-03 15:14:56 +0000
5087@@ -16,5 +16,5 @@
5088 vst2_lane_f32 (arg0_float32_t, arg1_float32x2x2_t, 1);
5089 }
5090
5091-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5092+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5093 /* { dg-final { cleanup-saved-temps } } */
5094
5095=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c'
5096--- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c 2010-05-24 18:36:31 +0000
5097+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c 2011-05-03 15:14:56 +0000
5098@@ -16,5 +16,5 @@
5099 vst2_lane_p16 (arg0_poly16_t, arg1_poly16x4x2_t, 1);
5100 }
5101
5102-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5103+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5104 /* { dg-final { cleanup-saved-temps } } */
5105
5106=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c'
5107--- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c 2010-05-24 18:36:31 +0000
5108+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c 2011-05-03 15:14:56 +0000
5109@@ -16,5 +16,5 @@
5110 vst2_lane_p8 (arg0_poly8_t, arg1_poly8x8x2_t, 1);
5111 }
5112
5113-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5114+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5115 /* { dg-final { cleanup-saved-temps } } */
5116
5117=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c'
5118--- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c 2010-05-24 18:36:31 +0000
5119+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c 2011-05-03 15:14:56 +0000
5120@@ -16,5 +16,5 @@
5121 vst2_lane_s16 (arg0_int16_t, arg1_int16x4x2_t, 1);
5122 }
5123
5124-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5125+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5126 /* { dg-final { cleanup-saved-temps } } */
5127
5128=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c'
5129--- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c 2010-05-24 18:36:31 +0000
5130+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c 2011-05-03 15:14:56 +0000
5131@@ -16,5 +16,5 @@
5132 vst2_lane_s32 (arg0_int32_t, arg1_int32x2x2_t, 1);
5133 }
5134
5135-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5136+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5137 /* { dg-final { cleanup-saved-temps } } */
5138
5139=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c'
5140--- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c 2010-05-24 18:36:31 +0000
5141+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c 2011-05-03 15:14:56 +0000
5142@@ -16,5 +16,5 @@
5143 vst2_lane_s8 (arg0_int8_t, arg1_int8x8x2_t, 1);
5144 }
5145
5146-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5147+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5148 /* { dg-final { cleanup-saved-temps } } */
5149
5150=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c'
5151--- old/gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c 2010-05-24 18:36:31 +0000
5152+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c 2011-05-03 15:14:56 +0000
5153@@ -16,5 +16,5 @@
5154 vst2_lane_u16 (arg0_uint16_t, arg1_uint16x4x2_t, 1);
5155 }
5156
5157-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5158+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5159 /* { dg-final { cleanup-saved-temps } } */
5160
5161=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c'
5162--- old/gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c 2010-05-24 18:36:31 +0000
5163+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c 2011-05-03 15:14:56 +0000
5164@@ -16,5 +16,5 @@
5165 vst2_lane_u32 (arg0_uint32_t, arg1_uint32x2x2_t, 1);
5166 }
5167
5168-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5169+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5170 /* { dg-final { cleanup-saved-temps } } */
5171
5172=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c'
5173--- old/gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c 2010-05-24 18:36:31 +0000
5174+++ new/gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c 2011-05-03 15:14:56 +0000
5175@@ -16,5 +16,5 @@
5176 vst2_lane_u8 (arg0_uint8_t, arg1_uint8x8x2_t, 1);
5177 }
5178
5179-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5180+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5181 /* { dg-final { cleanup-saved-temps } } */
5182
5183=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2f32.c'
5184--- old/gcc/testsuite/gcc.target/arm/neon/vst2f32.c 2010-05-24 18:36:31 +0000
5185+++ new/gcc/testsuite/gcc.target/arm/neon/vst2f32.c 2011-05-03 15:14:56 +0000
5186@@ -16,5 +16,5 @@
5187 vst2_f32 (arg0_float32_t, arg1_float32x2x2_t);
5188 }
5189
5190-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5191+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5192 /* { dg-final { cleanup-saved-temps } } */
5193
5194=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2p16.c'
5195--- old/gcc/testsuite/gcc.target/arm/neon/vst2p16.c 2010-05-24 18:36:31 +0000
5196+++ new/gcc/testsuite/gcc.target/arm/neon/vst2p16.c 2011-05-03 15:14:56 +0000
5197@@ -16,5 +16,5 @@
5198 vst2_p16 (arg0_poly16_t, arg1_poly16x4x2_t);
5199 }
5200
5201-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5202+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5203 /* { dg-final { cleanup-saved-temps } } */
5204
5205=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2p8.c'
5206--- old/gcc/testsuite/gcc.target/arm/neon/vst2p8.c 2010-05-24 18:36:31 +0000
5207+++ new/gcc/testsuite/gcc.target/arm/neon/vst2p8.c 2011-05-03 15:14:56 +0000
5208@@ -16,5 +16,5 @@
5209 vst2_p8 (arg0_poly8_t, arg1_poly8x8x2_t);
5210 }
5211
5212-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5213+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5214 /* { dg-final { cleanup-saved-temps } } */
5215
5216=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s16.c'
5217--- old/gcc/testsuite/gcc.target/arm/neon/vst2s16.c 2010-05-24 18:36:31 +0000
5218+++ new/gcc/testsuite/gcc.target/arm/neon/vst2s16.c 2011-05-03 15:14:56 +0000
5219@@ -16,5 +16,5 @@
5220 vst2_s16 (arg0_int16_t, arg1_int16x4x2_t);
5221 }
5222
5223-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5224+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5225 /* { dg-final { cleanup-saved-temps } } */
5226
5227=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s32.c'
5228--- old/gcc/testsuite/gcc.target/arm/neon/vst2s32.c 2010-05-24 18:36:31 +0000
5229+++ new/gcc/testsuite/gcc.target/arm/neon/vst2s32.c 2011-05-03 15:14:56 +0000
5230@@ -16,5 +16,5 @@
5231 vst2_s32 (arg0_int32_t, arg1_int32x2x2_t);
5232 }
5233
5234-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5235+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5236 /* { dg-final { cleanup-saved-temps } } */
5237
5238=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s64.c'
5239--- old/gcc/testsuite/gcc.target/arm/neon/vst2s64.c 2010-05-24 18:36:31 +0000
5240+++ new/gcc/testsuite/gcc.target/arm/neon/vst2s64.c 2011-05-03 15:14:56 +0000
5241@@ -16,5 +16,5 @@
5242 vst2_s64 (arg0_int64_t, arg1_int64x1x2_t);
5243 }
5244
5245-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5246+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5247 /* { dg-final { cleanup-saved-temps } } */
5248
5249=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s8.c'
5250--- old/gcc/testsuite/gcc.target/arm/neon/vst2s8.c 2010-05-24 18:36:31 +0000
5251+++ new/gcc/testsuite/gcc.target/arm/neon/vst2s8.c 2011-05-03 15:14:56 +0000
5252@@ -16,5 +16,5 @@
5253 vst2_s8 (arg0_int8_t, arg1_int8x8x2_t);
5254 }
5255
5256-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5257+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5258 /* { dg-final { cleanup-saved-temps } } */
5259
5260=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u16.c'
5261--- old/gcc/testsuite/gcc.target/arm/neon/vst2u16.c 2010-05-24 18:36:31 +0000
5262+++ new/gcc/testsuite/gcc.target/arm/neon/vst2u16.c 2011-05-03 15:14:56 +0000
5263@@ -16,5 +16,5 @@
5264 vst2_u16 (arg0_uint16_t, arg1_uint16x4x2_t);
5265 }
5266
5267-/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5268+/* { dg-final { scan-assembler "vst2\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5269 /* { dg-final { cleanup-saved-temps } } */
5270
5271=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u32.c'
5272--- old/gcc/testsuite/gcc.target/arm/neon/vst2u32.c 2010-05-24 18:36:31 +0000
5273+++ new/gcc/testsuite/gcc.target/arm/neon/vst2u32.c 2011-05-03 15:14:56 +0000
5274@@ -16,5 +16,5 @@
5275 vst2_u32 (arg0_uint32_t, arg1_uint32x2x2_t);
5276 }
5277
5278-/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5279+/* { dg-final { scan-assembler "vst2\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5280 /* { dg-final { cleanup-saved-temps } } */
5281
5282=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u64.c'
5283--- old/gcc/testsuite/gcc.target/arm/neon/vst2u64.c 2010-05-24 18:36:31 +0000
5284+++ new/gcc/testsuite/gcc.target/arm/neon/vst2u64.c 2011-05-03 15:14:56 +0000
5285@@ -16,5 +16,5 @@
5286 vst2_u64 (arg0_uint64_t, arg1_uint64x1x2_t);
5287 }
5288
5289-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5290+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5291 /* { dg-final { cleanup-saved-temps } } */
5292
5293=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u8.c'
5294--- old/gcc/testsuite/gcc.target/arm/neon/vst2u8.c 2010-05-24 18:36:31 +0000
5295+++ new/gcc/testsuite/gcc.target/arm/neon/vst2u8.c 2011-05-03 15:14:56 +0000
5296@@ -16,5 +16,5 @@
5297 vst2_u8 (arg0_uint8_t, arg1_uint8x8x2_t);
5298 }
5299
5300-/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5301+/* { dg-final { scan-assembler "vst2\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5302 /* { dg-final { cleanup-saved-temps } } */
5303
5304=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c'
5305--- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c 2010-05-24 18:36:31 +0000
5306+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c 2011-05-03 15:14:56 +0000
5307@@ -16,5 +16,5 @@
5308 vst3q_lane_f32 (arg0_float32_t, arg1_float32x4x3_t, 1);
5309 }
5310
5311-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5312+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5313 /* { dg-final { cleanup-saved-temps } } */
5314
5315=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c'
5316--- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c 2010-05-24 18:36:31 +0000
5317+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c 2011-05-03 15:14:56 +0000
5318@@ -16,5 +16,5 @@
5319 vst3q_lane_p16 (arg0_poly16_t, arg1_poly16x8x3_t, 1);
5320 }
5321
5322-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5323+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5324 /* { dg-final { cleanup-saved-temps } } */
5325
5326=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c'
5327--- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c 2010-05-24 18:36:31 +0000
5328+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c 2011-05-03 15:14:56 +0000
5329@@ -16,5 +16,5 @@
5330 vst3q_lane_s16 (arg0_int16_t, arg1_int16x8x3_t, 1);
5331 }
5332
5333-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5334+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5335 /* { dg-final { cleanup-saved-temps } } */
5336
5337=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c'
5338--- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c 2010-05-24 18:36:31 +0000
5339+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c 2011-05-03 15:14:56 +0000
5340@@ -16,5 +16,5 @@
5341 vst3q_lane_s32 (arg0_int32_t, arg1_int32x4x3_t, 1);
5342 }
5343
5344-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5345+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5346 /* { dg-final { cleanup-saved-temps } } */
5347
5348=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c'
5349--- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c 2010-05-24 18:36:31 +0000
5350+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c 2011-05-03 15:14:56 +0000
5351@@ -16,5 +16,5 @@
5352 vst3q_lane_u16 (arg0_uint16_t, arg1_uint16x8x3_t, 1);
5353 }
5354
5355-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5356+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5357 /* { dg-final { cleanup-saved-temps } } */
5358
5359=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c'
5360--- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c 2010-05-24 18:36:31 +0000
5361+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c 2011-05-03 15:14:56 +0000
5362@@ -16,5 +16,5 @@
5363 vst3q_lane_u32 (arg0_uint32_t, arg1_uint32x4x3_t, 1);
5364 }
5365
5366-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5367+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5368 /* { dg-final { cleanup-saved-temps } } */
5369
5370=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c'
5371--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c 2010-05-24 18:36:31 +0000
5372+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c 2011-05-03 15:14:56 +0000
5373@@ -16,6 +16,6 @@
5374 vst3q_f32 (arg0_float32_t, arg1_float32x4x3_t);
5375 }
5376
5377-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5378-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5379+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5380+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5381 /* { dg-final { cleanup-saved-temps } } */
5382
5383=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c'
5384--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c 2010-05-24 18:36:31 +0000
5385+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c 2011-05-03 15:14:56 +0000
5386@@ -16,6 +16,6 @@
5387 vst3q_p16 (arg0_poly16_t, arg1_poly16x8x3_t);
5388 }
5389
5390-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5391-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5392+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5393+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5394 /* { dg-final { cleanup-saved-temps } } */
5395
5396=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c'
5397--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c 2010-05-24 18:36:31 +0000
5398+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c 2011-05-03 15:14:56 +0000
5399@@ -16,6 +16,6 @@
5400 vst3q_p8 (arg0_poly8_t, arg1_poly8x16x3_t);
5401 }
5402
5403-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5404-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5405+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5406+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5407 /* { dg-final { cleanup-saved-temps } } */
5408
5409=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c'
5410--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c 2010-05-24 18:36:31 +0000
5411+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c 2011-05-03 15:14:56 +0000
5412@@ -16,6 +16,6 @@
5413 vst3q_s16 (arg0_int16_t, arg1_int16x8x3_t);
5414 }
5415
5416-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5417-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5418+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5419+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5420 /* { dg-final { cleanup-saved-temps } } */
5421
5422=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c'
5423--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c 2010-05-24 18:36:31 +0000
5424+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c 2011-05-03 15:14:56 +0000
5425@@ -16,6 +16,6 @@
5426 vst3q_s32 (arg0_int32_t, arg1_int32x4x3_t);
5427 }
5428
5429-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5430-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5431+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5432+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5433 /* { dg-final { cleanup-saved-temps } } */
5434
5435=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c'
5436--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c 2010-05-24 18:36:31 +0000
5437+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c 2011-05-03 15:14:56 +0000
5438@@ -16,6 +16,6 @@
5439 vst3q_s8 (arg0_int8_t, arg1_int8x16x3_t);
5440 }
5441
5442-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5443-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5444+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5445+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5446 /* { dg-final { cleanup-saved-temps } } */
5447
5448=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c'
5449--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c 2010-05-24 18:36:31 +0000
5450+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c 2011-05-03 15:14:56 +0000
5451@@ -16,6 +16,6 @@
5452 vst3q_u16 (arg0_uint16_t, arg1_uint16x8x3_t);
5453 }
5454
5455-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5456-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5457+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5458+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5459 /* { dg-final { cleanup-saved-temps } } */
5460
5461=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c'
5462--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c 2010-05-24 18:36:31 +0000
5463+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c 2011-05-03 15:14:56 +0000
5464@@ -16,6 +16,6 @@
5465 vst3q_u32 (arg0_uint32_t, arg1_uint32x4x3_t);
5466 }
5467
5468-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5469-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5470+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5471+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5472 /* { dg-final { cleanup-saved-temps } } */
5473
5474=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c'
5475--- old/gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c 2010-05-24 18:36:31 +0000
5476+++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c 2011-05-03 15:14:56 +0000
5477@@ -16,6 +16,6 @@
5478 vst3q_u8 (arg0_uint8_t, arg1_uint8x16x3_t);
5479 }
5480
5481-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5482-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5483+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5484+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5485 /* { dg-final { cleanup-saved-temps } } */
5486
5487=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c'
5488--- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c 2010-05-24 18:36:31 +0000
5489+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c 2011-05-03 15:14:56 +0000
5490@@ -16,5 +16,5 @@
5491 vst3_lane_f32 (arg0_float32_t, arg1_float32x2x3_t, 1);
5492 }
5493
5494-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5495+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5496 /* { dg-final { cleanup-saved-temps } } */
5497
5498=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c'
5499--- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c 2010-05-24 18:36:31 +0000
5500+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c 2011-05-03 15:14:56 +0000
5501@@ -16,5 +16,5 @@
5502 vst3_lane_p16 (arg0_poly16_t, arg1_poly16x4x3_t, 1);
5503 }
5504
5505-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5506+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5507 /* { dg-final { cleanup-saved-temps } } */
5508
5509=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c'
5510--- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c 2010-05-24 18:36:31 +0000
5511+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c 2011-05-03 15:14:56 +0000
5512@@ -16,5 +16,5 @@
5513 vst3_lane_p8 (arg0_poly8_t, arg1_poly8x8x3_t, 1);
5514 }
5515
5516-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5517+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5518 /* { dg-final { cleanup-saved-temps } } */
5519
5520=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c'
5521--- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c 2010-05-24 18:36:31 +0000
5522+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c 2011-05-03 15:14:56 +0000
5523@@ -16,5 +16,5 @@
5524 vst3_lane_s16 (arg0_int16_t, arg1_int16x4x3_t, 1);
5525 }
5526
5527-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5528+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5529 /* { dg-final { cleanup-saved-temps } } */
5530
5531=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c'
5532--- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c 2010-05-24 18:36:31 +0000
5533+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c 2011-05-03 15:14:56 +0000
5534@@ -16,5 +16,5 @@
5535 vst3_lane_s32 (arg0_int32_t, arg1_int32x2x3_t, 1);
5536 }
5537
5538-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5539+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5540 /* { dg-final { cleanup-saved-temps } } */
5541
5542=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c'
5543--- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c 2010-05-24 18:36:31 +0000
5544+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c 2011-05-03 15:14:56 +0000
5545@@ -16,5 +16,5 @@
5546 vst3_lane_s8 (arg0_int8_t, arg1_int8x8x3_t, 1);
5547 }
5548
5549-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5550+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5551 /* { dg-final { cleanup-saved-temps } } */
5552
5553=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c'
5554--- old/gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c 2010-05-24 18:36:31 +0000
5555+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c 2011-05-03 15:14:56 +0000
5556@@ -16,5 +16,5 @@
5557 vst3_lane_u16 (arg0_uint16_t, arg1_uint16x4x3_t, 1);
5558 }
5559
5560-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5561+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5562 /* { dg-final { cleanup-saved-temps } } */
5563
5564=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c'
5565--- old/gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c 2010-05-24 18:36:31 +0000
5566+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c 2011-05-03 15:14:56 +0000
5567@@ -16,5 +16,5 @@
5568 vst3_lane_u32 (arg0_uint32_t, arg1_uint32x2x3_t, 1);
5569 }
5570
5571-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5572+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5573 /* { dg-final { cleanup-saved-temps } } */
5574
5575=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c'
5576--- old/gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c 2010-05-24 18:36:31 +0000
5577+++ new/gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c 2011-05-03 15:14:56 +0000
5578@@ -16,5 +16,5 @@
5579 vst3_lane_u8 (arg0_uint8_t, arg1_uint8x8x3_t, 1);
5580 }
5581
5582-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5583+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5584 /* { dg-final { cleanup-saved-temps } } */
5585
5586=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3f32.c'
5587--- old/gcc/testsuite/gcc.target/arm/neon/vst3f32.c 2010-05-24 18:36:31 +0000
5588+++ new/gcc/testsuite/gcc.target/arm/neon/vst3f32.c 2011-05-03 15:14:56 +0000
5589@@ -16,5 +16,5 @@
5590 vst3_f32 (arg0_float32_t, arg1_float32x2x3_t);
5591 }
5592
5593-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5594+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5595 /* { dg-final { cleanup-saved-temps } } */
5596
5597=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3p16.c'
5598--- old/gcc/testsuite/gcc.target/arm/neon/vst3p16.c 2010-05-24 18:36:31 +0000
5599+++ new/gcc/testsuite/gcc.target/arm/neon/vst3p16.c 2011-05-03 15:14:56 +0000
5600@@ -16,5 +16,5 @@
5601 vst3_p16 (arg0_poly16_t, arg1_poly16x4x3_t);
5602 }
5603
5604-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5605+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5606 /* { dg-final { cleanup-saved-temps } } */
5607
5608=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3p8.c'
5609--- old/gcc/testsuite/gcc.target/arm/neon/vst3p8.c 2010-05-24 18:36:31 +0000
5610+++ new/gcc/testsuite/gcc.target/arm/neon/vst3p8.c 2011-05-03 15:14:56 +0000
5611@@ -16,5 +16,5 @@
5612 vst3_p8 (arg0_poly8_t, arg1_poly8x8x3_t);
5613 }
5614
5615-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5616+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5617 /* { dg-final { cleanup-saved-temps } } */
5618
5619=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s16.c'
5620--- old/gcc/testsuite/gcc.target/arm/neon/vst3s16.c 2010-05-24 18:36:31 +0000
5621+++ new/gcc/testsuite/gcc.target/arm/neon/vst3s16.c 2011-05-03 15:14:56 +0000
5622@@ -16,5 +16,5 @@
5623 vst3_s16 (arg0_int16_t, arg1_int16x4x3_t);
5624 }
5625
5626-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5627+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5628 /* { dg-final { cleanup-saved-temps } } */
5629
5630=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s32.c'
5631--- old/gcc/testsuite/gcc.target/arm/neon/vst3s32.c 2010-05-24 18:36:31 +0000
5632+++ new/gcc/testsuite/gcc.target/arm/neon/vst3s32.c 2011-05-03 15:14:56 +0000
5633@@ -16,5 +16,5 @@
5634 vst3_s32 (arg0_int32_t, arg1_int32x2x3_t);
5635 }
5636
5637-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5638+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5639 /* { dg-final { cleanup-saved-temps } } */
5640
5641=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s64.c'
5642--- old/gcc/testsuite/gcc.target/arm/neon/vst3s64.c 2010-05-24 18:36:31 +0000
5643+++ new/gcc/testsuite/gcc.target/arm/neon/vst3s64.c 2011-05-03 15:14:56 +0000
5644@@ -16,5 +16,5 @@
5645 vst3_s64 (arg0_int64_t, arg1_int64x1x3_t);
5646 }
5647
5648-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5649+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5650 /* { dg-final { cleanup-saved-temps } } */
5651
5652=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s8.c'
5653--- old/gcc/testsuite/gcc.target/arm/neon/vst3s8.c 2010-05-24 18:36:31 +0000
5654+++ new/gcc/testsuite/gcc.target/arm/neon/vst3s8.c 2011-05-03 15:14:56 +0000
5655@@ -16,5 +16,5 @@
5656 vst3_s8 (arg0_int8_t, arg1_int8x8x3_t);
5657 }
5658
5659-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5660+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5661 /* { dg-final { cleanup-saved-temps } } */
5662
5663=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u16.c'
5664--- old/gcc/testsuite/gcc.target/arm/neon/vst3u16.c 2010-05-24 18:36:31 +0000
5665+++ new/gcc/testsuite/gcc.target/arm/neon/vst3u16.c 2011-05-03 15:14:56 +0000
5666@@ -16,5 +16,5 @@
5667 vst3_u16 (arg0_uint16_t, arg1_uint16x4x3_t);
5668 }
5669
5670-/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5671+/* { dg-final { scan-assembler "vst3\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5672 /* { dg-final { cleanup-saved-temps } } */
5673
5674=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u32.c'
5675--- old/gcc/testsuite/gcc.target/arm/neon/vst3u32.c 2010-05-24 18:36:31 +0000
5676+++ new/gcc/testsuite/gcc.target/arm/neon/vst3u32.c 2011-05-03 15:14:56 +0000
5677@@ -16,5 +16,5 @@
5678 vst3_u32 (arg0_uint32_t, arg1_uint32x2x3_t);
5679 }
5680
5681-/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5682+/* { dg-final { scan-assembler "vst3\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5683 /* { dg-final { cleanup-saved-temps } } */
5684
5685=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u64.c'
5686--- old/gcc/testsuite/gcc.target/arm/neon/vst3u64.c 2010-05-24 18:36:31 +0000
5687+++ new/gcc/testsuite/gcc.target/arm/neon/vst3u64.c 2011-05-03 15:14:56 +0000
5688@@ -16,5 +16,5 @@
5689 vst3_u64 (arg0_uint64_t, arg1_uint64x1x3_t);
5690 }
5691
5692-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5693+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5694 /* { dg-final { cleanup-saved-temps } } */
5695
5696=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u8.c'
5697--- old/gcc/testsuite/gcc.target/arm/neon/vst3u8.c 2010-05-24 18:36:31 +0000
5698+++ new/gcc/testsuite/gcc.target/arm/neon/vst3u8.c 2011-05-03 15:14:56 +0000
5699@@ -16,5 +16,5 @@
5700 vst3_u8 (arg0_uint8_t, arg1_uint8x8x3_t);
5701 }
5702
5703-/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5704+/* { dg-final { scan-assembler "vst3\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5705 /* { dg-final { cleanup-saved-temps } } */
5706
5707=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c'
5708--- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c 2010-05-24 18:36:31 +0000
5709+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c 2011-05-03 15:14:56 +0000
5710@@ -16,5 +16,5 @@
5711 vst4q_lane_f32 (arg0_float32_t, arg1_float32x4x4_t, 1);
5712 }
5713
5714-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5715+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5716 /* { dg-final { cleanup-saved-temps } } */
5717
5718=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c'
5719--- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c 2010-05-24 18:36:31 +0000
5720+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c 2011-05-03 15:14:56 +0000
5721@@ -16,5 +16,5 @@
5722 vst4q_lane_p16 (arg0_poly16_t, arg1_poly16x8x4_t, 1);
5723 }
5724
5725-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5726+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5727 /* { dg-final { cleanup-saved-temps } } */
5728
5729=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c'
5730--- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c 2010-05-24 18:36:31 +0000
5731+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c 2011-05-03 15:14:56 +0000
5732@@ -16,5 +16,5 @@
5733 vst4q_lane_s16 (arg0_int16_t, arg1_int16x8x4_t, 1);
5734 }
5735
5736-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5737+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5738 /* { dg-final { cleanup-saved-temps } } */
5739
5740=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c'
5741--- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c 2010-05-24 18:36:31 +0000
5742+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c 2011-05-03 15:14:56 +0000
5743@@ -16,5 +16,5 @@
5744 vst4q_lane_s32 (arg0_int32_t, arg1_int32x4x4_t, 1);
5745 }
5746
5747-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5748+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5749 /* { dg-final { cleanup-saved-temps } } */
5750
5751=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c'
5752--- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c 2010-05-24 18:36:31 +0000
5753+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c 2011-05-03 15:14:56 +0000
5754@@ -16,5 +16,5 @@
5755 vst4q_lane_u16 (arg0_uint16_t, arg1_uint16x8x4_t, 1);
5756 }
5757
5758-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5759+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5760 /* { dg-final { cleanup-saved-temps } } */
5761
5762=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c'
5763--- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c 2010-05-24 18:36:31 +0000
5764+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c 2011-05-03 15:14:56 +0000
5765@@ -16,5 +16,5 @@
5766 vst4q_lane_u32 (arg0_uint32_t, arg1_uint32x4x4_t, 1);
5767 }
5768
5769-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5770+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5771 /* { dg-final { cleanup-saved-temps } } */
5772
5773=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c'
5774--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c 2010-05-24 18:36:31 +0000
5775+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c 2011-05-03 15:14:56 +0000
5776@@ -16,6 +16,6 @@
5777 vst4q_f32 (arg0_float32_t, arg1_float32x4x4_t);
5778 }
5779
5780-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5781-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5782+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5783+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5784 /* { dg-final { cleanup-saved-temps } } */
5785
5786=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c'
5787--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c 2010-05-24 18:36:31 +0000
5788+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c 2011-05-03 15:14:56 +0000
5789@@ -16,6 +16,6 @@
5790 vst4q_p16 (arg0_poly16_t, arg1_poly16x8x4_t);
5791 }
5792
5793-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5794-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5795+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5796+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5797 /* { dg-final { cleanup-saved-temps } } */
5798
5799=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c'
5800--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c 2010-05-24 18:36:31 +0000
5801+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c 2011-05-03 15:14:56 +0000
5802@@ -16,6 +16,6 @@
5803 vst4q_p8 (arg0_poly8_t, arg1_poly8x16x4_t);
5804 }
5805
5806-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5807-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5808+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5809+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5810 /* { dg-final { cleanup-saved-temps } } */
5811
5812=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c'
5813--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c 2010-05-24 18:36:31 +0000
5814+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c 2011-05-03 15:14:56 +0000
5815@@ -16,6 +16,6 @@
5816 vst4q_s16 (arg0_int16_t, arg1_int16x8x4_t);
5817 }
5818
5819-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5820-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5821+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5822+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5823 /* { dg-final { cleanup-saved-temps } } */
5824
5825=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c'
5826--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c 2010-05-24 18:36:31 +0000
5827+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c 2011-05-03 15:14:56 +0000
5828@@ -16,6 +16,6 @@
5829 vst4q_s32 (arg0_int32_t, arg1_int32x4x4_t);
5830 }
5831
5832-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5833-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5834+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5835+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5836 /* { dg-final { cleanup-saved-temps } } */
5837
5838=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c'
5839--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c 2010-05-24 18:36:31 +0000
5840+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c 2011-05-03 15:14:56 +0000
5841@@ -16,6 +16,6 @@
5842 vst4q_s8 (arg0_int8_t, arg1_int8x16x4_t);
5843 }
5844
5845-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5846-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5847+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5848+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5849 /* { dg-final { cleanup-saved-temps } } */
5850
5851=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c'
5852--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c 2010-05-24 18:36:31 +0000
5853+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c 2011-05-03 15:14:56 +0000
5854@@ -16,6 +16,6 @@
5855 vst4q_u16 (arg0_uint16_t, arg1_uint16x8x4_t);
5856 }
5857
5858-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5859-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5860+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5861+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5862 /* { dg-final { cleanup-saved-temps } } */
5863
5864=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c'
5865--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c 2010-05-24 18:36:31 +0000
5866+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c 2011-05-03 15:14:56 +0000
5867@@ -16,6 +16,6 @@
5868 vst4q_u32 (arg0_uint32_t, arg1_uint32x4x4_t);
5869 }
5870
5871-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5872-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5873+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5874+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5875 /* { dg-final { cleanup-saved-temps } } */
5876
5877=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c'
5878--- old/gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c 2010-05-24 18:36:31 +0000
5879+++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c 2011-05-03 15:14:56 +0000
5880@@ -16,6 +16,6 @@
5881 vst4q_u8 (arg0_uint8_t, arg1_uint8x16x4_t);
5882 }
5883
5884-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5885-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5886+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5887+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5888 /* { dg-final { cleanup-saved-temps } } */
5889
5890=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c'
5891--- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c 2010-05-24 18:36:31 +0000
5892+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c 2011-05-03 15:14:56 +0000
5893@@ -16,5 +16,5 @@
5894 vst4_lane_f32 (arg0_float32_t, arg1_float32x2x4_t, 1);
5895 }
5896
5897-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5898+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5899 /* { dg-final { cleanup-saved-temps } } */
5900
5901=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c'
5902--- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c 2010-05-24 18:36:31 +0000
5903+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c 2011-05-03 15:14:56 +0000
5904@@ -16,5 +16,5 @@
5905 vst4_lane_p16 (arg0_poly16_t, arg1_poly16x4x4_t, 1);
5906 }
5907
5908-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5909+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5910 /* { dg-final { cleanup-saved-temps } } */
5911
5912=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c'
5913--- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c 2010-05-24 18:36:31 +0000
5914+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c 2011-05-03 15:14:56 +0000
5915@@ -16,5 +16,5 @@
5916 vst4_lane_p8 (arg0_poly8_t, arg1_poly8x8x4_t, 1);
5917 }
5918
5919-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5920+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5921 /* { dg-final { cleanup-saved-temps } } */
5922
5923=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c'
5924--- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c 2010-05-24 18:36:31 +0000
5925+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c 2011-05-03 15:14:56 +0000
5926@@ -16,5 +16,5 @@
5927 vst4_lane_s16 (arg0_int16_t, arg1_int16x4x4_t, 1);
5928 }
5929
5930-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5931+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5932 /* { dg-final { cleanup-saved-temps } } */
5933
5934=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c'
5935--- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c 2010-05-24 18:36:31 +0000
5936+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c 2011-05-03 15:14:56 +0000
5937@@ -16,5 +16,5 @@
5938 vst4_lane_s32 (arg0_int32_t, arg1_int32x2x4_t, 1);
5939 }
5940
5941-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5942+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5943 /* { dg-final { cleanup-saved-temps } } */
5944
5945=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c'
5946--- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c 2010-05-24 18:36:31 +0000
5947+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c 2011-05-03 15:14:56 +0000
5948@@ -16,5 +16,5 @@
5949 vst4_lane_s8 (arg0_int8_t, arg1_int8x8x4_t, 1);
5950 }
5951
5952-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5953+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5954 /* { dg-final { cleanup-saved-temps } } */
5955
5956=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c'
5957--- old/gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c 2010-05-24 18:36:31 +0000
5958+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c 2011-05-03 15:14:56 +0000
5959@@ -16,5 +16,5 @@
5960 vst4_lane_u16 (arg0_uint16_t, arg1_uint16x4x4_t, 1);
5961 }
5962
5963-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5964+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5965 /* { dg-final { cleanup-saved-temps } } */
5966
5967=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c'
5968--- old/gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c 2010-05-24 18:36:31 +0000
5969+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c 2011-05-03 15:14:56 +0000
5970@@ -16,5 +16,5 @@
5971 vst4_lane_u32 (arg0_uint32_t, arg1_uint32x2x4_t, 1);
5972 }
5973
5974-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5975+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5976 /* { dg-final { cleanup-saved-temps } } */
5977
5978=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c'
5979--- old/gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c 2010-05-24 18:36:31 +0000
5980+++ new/gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c 2011-05-03 15:14:56 +0000
5981@@ -16,5 +16,5 @@
5982 vst4_lane_u8 (arg0_uint8_t, arg1_uint8x8x4_t, 1);
5983 }
5984
5985-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5986+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+\\\[\[0-9\]+\\\]-\[dD\]\[0-9\]+\\\[\[0-9\]+\\\])|(\[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\], \[dD\]\[0-9\]+\\\[\[0-9\]+\\\]))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5987 /* { dg-final { cleanup-saved-temps } } */
5988
5989=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4f32.c'
5990--- old/gcc/testsuite/gcc.target/arm/neon/vst4f32.c 2010-05-24 18:36:31 +0000
5991+++ new/gcc/testsuite/gcc.target/arm/neon/vst4f32.c 2011-05-03 15:14:56 +0000
5992@@ -16,5 +16,5 @@
5993 vst4_f32 (arg0_float32_t, arg1_float32x2x4_t);
5994 }
5995
5996-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5997+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
5998 /* { dg-final { cleanup-saved-temps } } */
5999
6000=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4p16.c'
6001--- old/gcc/testsuite/gcc.target/arm/neon/vst4p16.c 2010-05-24 18:36:31 +0000
6002+++ new/gcc/testsuite/gcc.target/arm/neon/vst4p16.c 2011-05-03 15:14:56 +0000
6003@@ -16,5 +16,5 @@
6004 vst4_p16 (arg0_poly16_t, arg1_poly16x4x4_t);
6005 }
6006
6007-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6008+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6009 /* { dg-final { cleanup-saved-temps } } */
6010
6011=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4p8.c'
6012--- old/gcc/testsuite/gcc.target/arm/neon/vst4p8.c 2010-05-24 18:36:31 +0000
6013+++ new/gcc/testsuite/gcc.target/arm/neon/vst4p8.c 2011-05-03 15:14:56 +0000
6014@@ -16,5 +16,5 @@
6015 vst4_p8 (arg0_poly8_t, arg1_poly8x8x4_t);
6016 }
6017
6018-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6019+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6020 /* { dg-final { cleanup-saved-temps } } */
6021
6022=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s16.c'
6023--- old/gcc/testsuite/gcc.target/arm/neon/vst4s16.c 2010-05-24 18:36:31 +0000
6024+++ new/gcc/testsuite/gcc.target/arm/neon/vst4s16.c 2011-05-03 15:14:56 +0000
6025@@ -16,5 +16,5 @@
6026 vst4_s16 (arg0_int16_t, arg1_int16x4x4_t);
6027 }
6028
6029-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6030+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6031 /* { dg-final { cleanup-saved-temps } } */
6032
6033=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s32.c'
6034--- old/gcc/testsuite/gcc.target/arm/neon/vst4s32.c 2010-05-24 18:36:31 +0000
6035+++ new/gcc/testsuite/gcc.target/arm/neon/vst4s32.c 2011-05-03 15:14:56 +0000
6036@@ -16,5 +16,5 @@
6037 vst4_s32 (arg0_int32_t, arg1_int32x2x4_t);
6038 }
6039
6040-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6041+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6042 /* { dg-final { cleanup-saved-temps } } */
6043
6044=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s64.c'
6045--- old/gcc/testsuite/gcc.target/arm/neon/vst4s64.c 2010-05-24 18:36:31 +0000
6046+++ new/gcc/testsuite/gcc.target/arm/neon/vst4s64.c 2011-05-03 15:14:56 +0000
6047@@ -16,5 +16,5 @@
6048 vst4_s64 (arg0_int64_t, arg1_int64x1x4_t);
6049 }
6050
6051-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6052+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6053 /* { dg-final { cleanup-saved-temps } } */
6054
6055=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s8.c'
6056--- old/gcc/testsuite/gcc.target/arm/neon/vst4s8.c 2010-05-24 18:36:31 +0000
6057+++ new/gcc/testsuite/gcc.target/arm/neon/vst4s8.c 2011-05-03 15:14:56 +0000
6058@@ -16,5 +16,5 @@
6059 vst4_s8 (arg0_int8_t, arg1_int8x8x4_t);
6060 }
6061
6062-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6063+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6064 /* { dg-final { cleanup-saved-temps } } */
6065
6066=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u16.c'
6067--- old/gcc/testsuite/gcc.target/arm/neon/vst4u16.c 2010-05-24 18:36:31 +0000
6068+++ new/gcc/testsuite/gcc.target/arm/neon/vst4u16.c 2011-05-03 15:14:56 +0000
6069@@ -16,5 +16,5 @@
6070 vst4_u16 (arg0_uint16_t, arg1_uint16x4x4_t);
6071 }
6072
6073-/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6074+/* { dg-final { scan-assembler "vst4\.16\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6075 /* { dg-final { cleanup-saved-temps } } */
6076
6077=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u32.c'
6078--- old/gcc/testsuite/gcc.target/arm/neon/vst4u32.c 2010-05-24 18:36:31 +0000
6079+++ new/gcc/testsuite/gcc.target/arm/neon/vst4u32.c 2011-05-03 15:14:56 +0000
6080@@ -16,5 +16,5 @@
6081 vst4_u32 (arg0_uint32_t, arg1_uint32x2x4_t);
6082 }
6083
6084-/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6085+/* { dg-final { scan-assembler "vst4\.32\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6086 /* { dg-final { cleanup-saved-temps } } */
6087
6088=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u64.c'
6089--- old/gcc/testsuite/gcc.target/arm/neon/vst4u64.c 2010-05-24 18:36:31 +0000
6090+++ new/gcc/testsuite/gcc.target/arm/neon/vst4u64.c 2011-05-03 15:14:56 +0000
6091@@ -16,5 +16,5 @@
6092 vst4_u64 (arg0_uint64_t, arg1_uint64x1x4_t);
6093 }
6094
6095-/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6096+/* { dg-final { scan-assembler "vst1\.64\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6097 /* { dg-final { cleanup-saved-temps } } */
6098
6099=== modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u8.c'
6100--- old/gcc/testsuite/gcc.target/arm/neon/vst4u8.c 2010-05-24 18:36:31 +0000
6101+++ new/gcc/testsuite/gcc.target/arm/neon/vst4u8.c 2011-05-03 15:14:56 +0000
6102@@ -16,5 +16,5 @@
6103 vst4_u8 (arg0_uint8_t, arg1_uint8x8x4_t);
6104 }
6105
6106-/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6107+/* { dg-final { scan-assembler "vst4\.8\[ \]+\\\{((\[dD\]\[0-9\]+-\[dD\]\[0-9\]+)|(\[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+, \[dD\]\[0-9\]+))\\\}, \\\[\[rR\]\[0-9\]+\(:\[0-9\]+\)?\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */
6108 /* { dg-final { cleanup-saved-temps } } */
6109
6110=== added file 'gcc/testsuite/gcc.target/arm/pr46329.c'
6111--- old/gcc/testsuite/gcc.target/arm/pr46329.c 1970-01-01 00:00:00 +0000
6112+++ new/gcc/testsuite/gcc.target/arm/pr46329.c 2011-05-03 15:18:07 +0000
6113@@ -0,0 +1,9 @@
6114+/* { dg-options "-O2" } */
6115+/* { dg-add-options arm_neon } */
6116+
6117+int __attribute__ ((vector_size (32))) x;
6118+void
6119+foo (void)
6120+{
6121+ x <<= x;
6122+}
6123
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106743.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106743.patch
new file mode 100644
index 0000000000..aba2a497e7
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106743.patch
@@ -0,0 +1,25 @@
12011-04-26 Andrew Stubbs <ams@codesourcery.com>
2
3 Backport from FSF:
4
5 2011-04-05 Tom de Vries <tom@codesourcery.com>
6
7 PR target/43920
8 gcc/
9 * config/arm/arm.h (BRANCH_COST): Set to 1 for Thumb-2 when optimizing
10 for size.
11
12=== modified file 'gcc/config/arm/arm.h'
13--- old/gcc/config/arm/arm.h 2011-05-03 15:17:25 +0000
14+++ new/gcc/config/arm/arm.h 2011-04-26 14:42:21 +0000
15@@ -2018,7 +2018,8 @@
16 /* Try to generate sequences that don't involve branches, we can then use
17 conditional instructions */
18 #define BRANCH_COST(speed_p, predictable_p) \
19- (TARGET_32BIT ? 4 : (optimize > 0 ? 2 : 0))
20+ (TARGET_32BIT ? (TARGET_THUMB2 && !speed_p ? 1 : 4) \
21+ : (optimize > 0 ? 2 : 0))
22
23 /* Position Independent Code. */
24 /* We decide which register to use based on the compilation options and
25
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106744.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106744.patch
new file mode 100644
index 0000000000..004f0131cf
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106744.patch
@@ -0,0 +1,21 @@
12011-05-06 Richard Sandiford <richard.sandiford@linaro.org>
2
3 gcc/
4 From Sergey Grechanik <mouseentity@ispras.ru>, approved for mainline
5
6 * config/arm/arm.c (coproc_secondary_reload_class): Return NO_REGS
7 for constant vectors.
8
9=== modified file 'gcc/config/arm/arm.c'
10--- old/gcc/config/arm/arm.c 2011-05-03 15:18:07 +0000
11+++ new/gcc/config/arm/arm.c 2011-05-06 11:33:02 +0000
12@@ -9193,7 +9193,7 @@
13 /* The neon move patterns handle all legitimate vector and struct
14 addresses. */
15 if (TARGET_NEON
16- && MEM_P (x)
17+ && (MEM_P (x) || GET_CODE (x) == CONST_VECTOR)
18 && (GET_MODE_CLASS (mode) == MODE_VECTOR_INT
19 || GET_MODE_CLASS (mode) == MODE_VECTOR_FLOAT
20 || VALID_NEON_STRUCT_MODE (mode)))
21