diff options
| author | Khem Raj <raj.khem@gmail.com> | 2011-09-29 22:12:52 +0000 |
|---|---|---|
| committer | Koen Kooi <koen@dominion.thruhere.net> | 2011-10-04 13:48:57 +0200 |
| commit | b9b5306e551f26d76e9dc5fa6f10c2c095fe6e0f (patch) | |
| tree | 3908112a2010485903e16f9f7fec5d0fec2a37fa /meta-oe/recipes-devtools/gcc/gcc-4.6/linaro | |
| parent | 9f2e55480dc94e90ac09ca468cf2f0dacb54ae2d (diff) | |
| download | meta-openembedded-b9b5306e551f26d76e9dc5fa6f10c2c095fe6e0f.tar.gz | |
gcc-4.6: Bring in latest linaro patches
Adjust existing patches for latest FSF gcc-4_6-branch
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe/recipes-devtools/gcc/gcc-4.6/linaro')
25 files changed, 10073 insertions, 1784 deletions
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 index 84f6f64989..f53b26a888 100644 --- 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 | |||
| @@ -17,8 +17,10 @@ | |||
| 17 | for STORE_FLAG_VALUE==-1 case. | 17 | for STORE_FLAG_VALUE==-1 case. |
| 18 | 18 | ||
| 19 | === modified file 'gcc/combine.c' | 19 | === modified file 'gcc/combine.c' |
| 20 | --- old/gcc/combine.c 2011-02-15 19:46:26 +0000 | 20 | Index: gcc-4_6-branch/gcc/combine.c |
| 21 | +++ new/gcc/combine.c 2011-04-26 17:03:58 +0000 | 21 | =================================================================== |
| 22 | --- gcc-4_6-branch.orig/gcc/combine.c 2011-09-16 19:58:21.000000000 -0700 | ||
| 23 | +++ gcc-4_6-branch/gcc/combine.c 2011-09-16 20:05:36.626650681 -0700 | ||
| 22 | @@ -391,8 +391,8 @@ | 24 | @@ -391,8 +391,8 @@ |
| 23 | static void undo_all (void); | 25 | static void undo_all (void); |
| 24 | static void undo_commit (void); | 26 | static void undo_commit (void); |
| @@ -30,7 +32,7 @@ | |||
| 30 | static rtx simplify_if_then_else (rtx); | 32 | static rtx simplify_if_then_else (rtx); |
| 31 | static rtx simplify_set (rtx); | 33 | static rtx simplify_set (rtx); |
| 32 | static rtx simplify_logical (rtx); | 34 | static rtx simplify_logical (rtx); |
| 33 | @@ -3086,12 +3086,12 @@ | 35 | @@ -3112,12 +3112,12 @@ |
| 34 | if (i1) | 36 | if (i1) |
| 35 | { | 37 | { |
| 36 | subst_low_luid = DF_INSN_LUID (i1); | 38 | subst_low_luid = DF_INSN_LUID (i1); |
| @@ -45,7 +47,7 @@ | |||
| 45 | } | 47 | } |
| 46 | } | 48 | } |
| 47 | 49 | ||
| 48 | @@ -3103,7 +3103,7 @@ | 50 | @@ -3129,7 +3129,7 @@ |
| 49 | self-referential RTL when we will be substituting I1SRC for I1DEST | 51 | self-referential RTL when we will be substituting I1SRC for I1DEST |
| 50 | later. Likewise if I0 feeds into I2, either directly or indirectly | 52 | later. Likewise if I0 feeds into I2, either directly or indirectly |
| 51 | through I1, and I0DEST is in I0SRC. */ | 53 | through I1, and I0DEST is in I0SRC. */ |
| @@ -54,7 +56,7 @@ | |||
| 54 | (i1_feeds_i2_n && i1dest_in_i1src) | 56 | (i1_feeds_i2_n && i1dest_in_i1src) |
| 55 | || ((i0_feeds_i2_n || (i0_feeds_i1_n && i1_feeds_i2_n)) | 57 | || ((i0_feeds_i2_n || (i0_feeds_i1_n && i1_feeds_i2_n)) |
| 56 | && i0dest_in_i0src)); | 58 | && i0dest_in_i0src)); |
| 57 | @@ -3142,7 +3142,7 @@ | 59 | @@ -3168,7 +3168,7 @@ |
| 58 | copy of I1SRC each time we substitute it, in order to avoid creating | 60 | 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 | 61 | self-referential RTL when we will be substituting I0SRC for I0DEST |
| 60 | later. */ | 62 | later. */ |
| @@ -63,7 +65,7 @@ | |||
| 63 | i0_feeds_i1_n && i0dest_in_i0src); | 65 | i0_feeds_i1_n && i0dest_in_i0src); |
| 64 | substed_i1 = 1; | 66 | substed_i1 = 1; |
| 65 | 67 | ||
| 66 | @@ -3172,7 +3172,7 @@ | 68 | @@ -3198,7 +3198,7 @@ |
| 67 | 69 | ||
| 68 | n_occurrences = 0; | 70 | n_occurrences = 0; |
| 69 | subst_low_luid = DF_INSN_LUID (i0); | 71 | subst_low_luid = DF_INSN_LUID (i0); |
| @@ -72,7 +74,7 @@ | |||
| 72 | substed_i0 = 1; | 74 | substed_i0 = 1; |
| 73 | } | 75 | } |
| 74 | 76 | ||
| 75 | @@ -3234,7 +3234,7 @@ | 77 | @@ -3260,7 +3260,7 @@ |
| 76 | { | 78 | { |
| 77 | rtx t = i1pat; | 79 | rtx t = i1pat; |
| 78 | if (i0_feeds_i1_n) | 80 | if (i0_feeds_i1_n) |
| @@ -81,7 +83,7 @@ | |||
| 81 | 83 | ||
| 82 | XVECEXP (newpat, 0, --total_sets) = t; | 84 | XVECEXP (newpat, 0, --total_sets) = t; |
| 83 | } | 85 | } |
| 84 | @@ -3242,10 +3242,10 @@ | 86 | @@ -3268,10 +3268,10 @@ |
| 85 | { | 87 | { |
| 86 | rtx t = i2pat; | 88 | rtx t = i2pat; |
| 87 | if (i1_feeds_i2_n) | 89 | if (i1_feeds_i2_n) |
| @@ -94,7 +96,7 @@ | |||
| 94 | 96 | ||
| 95 | XVECEXP (newpat, 0, --total_sets) = t; | 97 | XVECEXP (newpat, 0, --total_sets) = t; |
| 96 | } | 98 | } |
| 97 | @@ -4914,11 +4914,13 @@ | 99 | @@ -4943,11 +4943,13 @@ |
| 98 | 100 | ||
| 99 | IN_DEST is nonzero if we are processing the SET_DEST of a SET. | 101 | IN_DEST is nonzero if we are processing the SET_DEST of a SET. |
| 100 | 102 | ||
| @@ -109,7 +111,7 @@ | |||
| 109 | { | 111 | { |
| 110 | enum rtx_code code = GET_CODE (x); | 112 | enum rtx_code code = GET_CODE (x); |
| 111 | enum machine_mode op0_mode = VOIDmode; | 113 | enum machine_mode op0_mode = VOIDmode; |
| 112 | @@ -4979,7 +4981,7 @@ | 114 | @@ -5008,7 +5010,7 @@ |
| 113 | && GET_CODE (XVECEXP (x, 0, 0)) == SET | 115 | && GET_CODE (XVECEXP (x, 0, 0)) == SET |
| 114 | && GET_CODE (SET_SRC (XVECEXP (x, 0, 0))) == ASM_OPERANDS) | 116 | && GET_CODE (SET_SRC (XVECEXP (x, 0, 0))) == ASM_OPERANDS) |
| 115 | { | 117 | { |
| @@ -118,7 +120,7 @@ | |||
| 118 | 120 | ||
| 119 | /* If this substitution failed, this whole thing fails. */ | 121 | /* If this substitution failed, this whole thing fails. */ |
| 120 | if (GET_CODE (new_rtx) == CLOBBER | 122 | if (GET_CODE (new_rtx) == CLOBBER |
| 121 | @@ -4996,7 +4998,7 @@ | 123 | @@ -5025,7 +5027,7 @@ |
| 122 | && GET_CODE (dest) != CC0 | 124 | && GET_CODE (dest) != CC0 |
| 123 | && GET_CODE (dest) != PC) | 125 | && GET_CODE (dest) != PC) |
| 124 | { | 126 | { |
| @@ -127,7 +129,7 @@ | |||
| 127 | 129 | ||
| 128 | /* If this substitution failed, this whole thing fails. */ | 130 | /* If this substitution failed, this whole thing fails. */ |
| 129 | if (GET_CODE (new_rtx) == CLOBBER | 131 | if (GET_CODE (new_rtx) == CLOBBER |
| 130 | @@ -5042,8 +5044,8 @@ | 132 | @@ -5071,8 +5073,8 @@ |
| 131 | } | 133 | } |
| 132 | else | 134 | else |
| 133 | { | 135 | { |
| @@ -138,7 +140,7 @@ | |||
| 138 | 140 | ||
| 139 | /* If this substitution failed, this whole thing | 141 | /* If this substitution failed, this whole thing |
| 140 | fails. */ | 142 | fails. */ |
| 141 | @@ -5120,7 +5122,9 @@ | 143 | @@ -5149,7 +5151,9 @@ |
| 142 | && (code == SUBREG || code == STRICT_LOW_PART | 144 | && (code == SUBREG || code == STRICT_LOW_PART |
| 143 | || code == ZERO_EXTRACT)) | 145 | || code == ZERO_EXTRACT)) |
| 144 | || code == SET) | 146 | || code == SET) |
| @@ -149,7 +151,7 @@ | |||
| 149 | 151 | ||
| 150 | /* If we found that we will have to reject this combination, | 152 | /* If we found that we will have to reject this combination, |
| 151 | indicate that by returning the CLOBBER ourselves, rather than | 153 | indicate that by returning the CLOBBER ourselves, rather than |
| 152 | @@ -5177,7 +5181,7 @@ | 154 | @@ -5206,7 +5210,7 @@ |
| 153 | /* If X is sufficiently simple, don't bother trying to do anything | 155 | /* If X is sufficiently simple, don't bother trying to do anything |
| 154 | with it. */ | 156 | with it. */ |
| 155 | if (code != CONST_INT && code != REG && code != CLOBBER) | 157 | if (code != CONST_INT && code != REG && code != CLOBBER) |
| @@ -158,7 +160,7 @@ | |||
| 158 | 160 | ||
| 159 | if (GET_CODE (x) == code) | 161 | if (GET_CODE (x) == code) |
| 160 | break; | 162 | break; |
| 161 | @@ -5197,10 +5201,12 @@ | 163 | @@ -5226,10 +5230,12 @@ |
| 162 | expression. | 164 | expression. |
| 163 | 165 | ||
| 164 | OP0_MODE is the original mode of XEXP (x, 0). IN_DEST is nonzero | 166 | OP0_MODE is the original mode of XEXP (x, 0). IN_DEST is nonzero |
| @@ -173,7 +175,7 @@ | |||
| 173 | { | 175 | { |
| 174 | enum rtx_code code = GET_CODE (x); | 176 | enum rtx_code code = GET_CODE (x); |
| 175 | enum machine_mode mode = GET_MODE (x); | 177 | enum machine_mode mode = GET_MODE (x); |
| 176 | @@ -5255,8 +5261,8 @@ | 178 | @@ -5284,8 +5290,8 @@ |
| 177 | false arms to store-flag values. Be careful to use copy_rtx | 179 | 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 | 180 | here since true_rtx or false_rtx might share RTL with x as a |
| 179 | result of the if_then_else_cond call above. */ | 181 | result of the if_then_else_cond call above. */ |
| @@ -184,16 +186,16 @@ | |||
| 184 | 186 | ||
| 185 | /* If true_rtx and false_rtx are not general_operands, an if_then_else | 187 | /* If true_rtx and false_rtx are not general_operands, an if_then_else |
| 186 | is unlikely to be simpler. */ | 188 | is unlikely to be simpler. */ |
| 187 | @@ -5600,7 +5606,7 @@ | 189 | @@ -5629,7 +5635,7 @@ |
| 188 | { | 190 | { |
| 189 | /* Try to simplify the expression further. */ | 191 | /* Try to simplify the expression further. */ |
| 190 | rtx tor = simplify_gen_binary (IOR, mode, XEXP (x, 0), XEXP (x, 1)); | 192 | rtx tor = simplify_gen_binary (IOR, mode, XEXP (x, 0), XEXP (x, 1)); |
| 191 | - temp = combine_simplify_rtx (tor, mode, in_dest); | 193 | - temp = combine_simplify_rtx (tor, VOIDmode, in_dest); |
| 192 | + temp = combine_simplify_rtx (tor, mode, in_dest, 0); | 194 | + temp = combine_simplify_rtx (tor, VOIDmode, in_dest, 0); |
| 193 | 195 | ||
| 194 | /* If we could, great. If not, do not go ahead with the IOR | 196 | /* If we could, great. If not, do not go ahead with the IOR |
| 195 | replacement, since PLUS appears in many special purpose | 197 | replacement, since PLUS appears in many special purpose |
| 196 | @@ -5693,7 +5699,16 @@ | 198 | @@ -5722,7 +5728,16 @@ |
| 197 | ZERO_EXTRACT is indeed appropriate, it will be placed back by | 199 | ZERO_EXTRACT is indeed appropriate, it will be placed back by |
| 198 | the call to make_compound_operation in the SET case. */ | 200 | the call to make_compound_operation in the SET case. */ |
| 199 | 201 | ||
| @@ -211,7 +213,7 @@ | |||
| 211 | && new_code == NE && GET_MODE_CLASS (mode) == MODE_INT | 213 | && new_code == NE && GET_MODE_CLASS (mode) == MODE_INT |
| 212 | && op1 == const0_rtx | 214 | && op1 == const0_rtx |
| 213 | && mode == GET_MODE (op0) | 215 | && mode == GET_MODE (op0) |
| 214 | @@ -5739,7 +5754,10 @@ | 216 | @@ -5768,7 +5783,10 @@ |
| 215 | 217 | ||
| 216 | /* If STORE_FLAG_VALUE is -1, we have cases similar to | 218 | /* If STORE_FLAG_VALUE is -1, we have cases similar to |
| 217 | those above. */ | 219 | those above. */ |
| @@ -223,7 +225,7 @@ | |||
| 223 | && new_code == NE && GET_MODE_CLASS (mode) == MODE_INT | 225 | && new_code == NE && GET_MODE_CLASS (mode) == MODE_INT |
| 224 | && op1 == const0_rtx | 226 | && op1 == const0_rtx |
| 225 | && (num_sign_bit_copies (op0, mode) | 227 | && (num_sign_bit_copies (op0, mode) |
| 226 | @@ -5937,11 +5955,11 @@ | 228 | @@ -5966,11 +5984,11 @@ |
| 227 | if (reg_mentioned_p (from, true_rtx)) | 229 | if (reg_mentioned_p (from, true_rtx)) |
| 228 | true_rtx = subst (known_cond (copy_rtx (true_rtx), true_code, | 230 | true_rtx = subst (known_cond (copy_rtx (true_rtx), true_code, |
| 229 | from, true_val), | 231 | from, true_val), |
| @@ -237,7 +239,7 @@ | |||
| 237 | 239 | ||
| 238 | SUBST (XEXP (x, 1), swapped ? false_rtx : true_rtx); | 240 | SUBST (XEXP (x, 1), swapped ? false_rtx : true_rtx); |
| 239 | SUBST (XEXP (x, 2), swapped ? true_rtx : false_rtx); | 241 | SUBST (XEXP (x, 2), swapped ? true_rtx : false_rtx); |
| 240 | @@ -6158,11 +6176,11 @@ | 242 | @@ -6187,11 +6205,11 @@ |
| 241 | { | 243 | { |
| 242 | temp = subst (simplify_gen_relational (true_code, m, VOIDmode, | 244 | temp = subst (simplify_gen_relational (true_code, m, VOIDmode, |
| 243 | cond_op0, cond_op1), | 245 | cond_op0, cond_op1), |
| @@ -251,4 +253,3 @@ | |||
| 251 | temp = simplify_gen_binary (op, m, gen_lowpart (m, z), temp); | 253 | temp = simplify_gen_binary (op, m, gen_lowpart (m, z), temp); |
| 252 | 254 | ||
| 253 | if (extend_op != UNKNOWN) | 255 | 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 index d14f06c3ff..395c08cab7 100644 --- 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 | |||
| @@ -118,9 +118,11 @@ | |||
| 118 | (neon_vld3<mode>, neon_vld4<mode>): Update accordingly. | 118 | (neon_vld3<mode>, neon_vld4<mode>): Update accordingly. |
| 119 | 119 | ||
| 120 | === modified file 'gcc/calls.c' | 120 | === modified file 'gcc/calls.c' |
| 121 | --- old/gcc/calls.c 2011-03-03 21:56:58 +0000 | 121 | Index: gcc-4_6-branch/gcc/calls.c |
| 122 | +++ new/gcc/calls.c 2011-05-03 15:17:25 +0000 | 122 | =================================================================== |
| 123 | @@ -684,7 +684,7 @@ | 123 | --- gcc-4_6-branch.orig/gcc/calls.c 2011-06-24 08:33:49.000000000 -0700 |
| 124 | +++ gcc-4_6-branch/gcc/calls.c 2011-09-16 20:16:00.217564705 -0700 | ||
| 125 | @@ -686,7 +686,7 @@ | ||
| 124 | /* If the value is a non-legitimate constant, force it into a | 126 | /* If the value is a non-legitimate constant, force it into a |
| 125 | pseudo now. TLS symbols sometimes need a call to resolve. */ | 127 | pseudo now. TLS symbols sometimes need a call to resolve. */ |
| 126 | if (CONSTANT_P (args[i].value) | 128 | if (CONSTANT_P (args[i].value) |
| @@ -129,7 +131,7 @@ | |||
| 129 | args[i].value = force_reg (args[i].mode, args[i].value); | 131 | args[i].value = force_reg (args[i].mode, args[i].value); |
| 130 | 132 | ||
| 131 | /* If we are to promote the function arg to a wider mode, | 133 | /* If we are to promote the function arg to a wider mode, |
| 132 | @@ -3447,7 +3447,8 @@ | 134 | @@ -3449,7 +3449,8 @@ |
| 133 | 135 | ||
| 134 | /* Make sure it is a reasonable operand for a move or push insn. */ | 136 | /* Make sure it is a reasonable operand for a move or push insn. */ |
| 135 | if (!REG_P (addr) && !MEM_P (addr) | 137 | if (!REG_P (addr) && !MEM_P (addr) |
| @@ -139,7 +141,7 @@ | |||
| 139 | addr = force_operand (addr, NULL_RTX); | 141 | addr = force_operand (addr, NULL_RTX); |
| 140 | 142 | ||
| 141 | argvec[count].value = addr; | 143 | argvec[count].value = addr; |
| 142 | @@ -3488,7 +3489,7 @@ | 144 | @@ -3490,7 +3491,7 @@ |
| 143 | 145 | ||
| 144 | /* Make sure it is a reasonable operand for a move or push insn. */ | 146 | /* Make sure it is a reasonable operand for a move or push insn. */ |
| 145 | if (!REG_P (val) && !MEM_P (val) | 147 | if (!REG_P (val) && !MEM_P (val) |
| @@ -148,10 +150,10 @@ | |||
| 148 | val = force_operand (val, NULL_RTX); | 150 | val = force_operand (val, NULL_RTX); |
| 149 | 151 | ||
| 150 | if (pass_by_reference (&args_so_far, mode, NULL_TREE, 1)) | 152 | if (pass_by_reference (&args_so_far, mode, NULL_TREE, 1)) |
| 151 | 153 | Index: gcc-4_6-branch/gcc/config/arm/arm-protos.h | |
| 152 | === modified file 'gcc/config/arm/arm-protos.h' | 154 | =================================================================== |
| 153 | --- old/gcc/config/arm/arm-protos.h 2011-01-29 03:20:57 +0000 | 155 | --- gcc-4_6-branch.orig/gcc/config/arm/arm-protos.h 2011-06-24 08:33:37.000000000 -0700 |
| 154 | +++ new/gcc/config/arm/arm-protos.h 2011-05-03 15:17:25 +0000 | 156 | +++ gcc-4_6-branch/gcc/config/arm/arm-protos.h 2011-09-16 20:16:00.217564705 -0700 |
| 155 | @@ -81,7 +81,6 @@ | 157 | @@ -81,7 +81,6 @@ |
| 156 | extern enum reg_class coproc_secondary_reload_class (enum machine_mode, rtx, | 158 | extern enum reg_class coproc_secondary_reload_class (enum machine_mode, rtx, |
| 157 | bool); | 159 | bool); |
| @@ -160,10 +162,10 @@ | |||
| 160 | 162 | ||
| 161 | extern int cirrus_memory_offset (rtx); | 163 | extern int cirrus_memory_offset (rtx); |
| 162 | extern int arm_coproc_mem_operand (rtx, bool); | 164 | extern int arm_coproc_mem_operand (rtx, bool); |
| 163 | 165 | Index: gcc-4_6-branch/gcc/config/arm/arm.c | |
| 164 | === modified file 'gcc/config/arm/arm.c' | 166 | =================================================================== |
| 165 | --- old/gcc/config/arm/arm.c 2011-04-28 11:46:58 +0000 | 167 | --- gcc-4_6-branch.orig/gcc/config/arm/arm.c 2011-09-16 20:14:34.000000000 -0700 |
| 166 | +++ new/gcc/config/arm/arm.c 2011-05-03 15:18:07 +0000 | 168 | +++ gcc-4_6-branch/gcc/config/arm/arm.c 2011-09-16 20:16:00.237564275 -0700 |
| 167 | @@ -143,6 +143,8 @@ | 169 | @@ -143,6 +143,8 @@ |
| 168 | static void arm_output_mi_thunk (FILE *, tree, HOST_WIDE_INT, HOST_WIDE_INT, | 170 | static void arm_output_mi_thunk (FILE *, tree, HOST_WIDE_INT, HOST_WIDE_INT, |
| 169 | tree); | 171 | tree); |
| @@ -608,10 +610,12 @@ | |||
| 608 | NEON_ARG_STOP); | 610 | NEON_ARG_STOP); |
| 609 | } | 611 | } |
| 610 | 612 | ||
| 611 | @@ -22267,6 +22402,20 @@ | 613 | @@ -22265,6 +22400,20 @@ |
| 612 | return false; | 614 | return true; |
| 613 | } | ||
| 614 | 615 | ||
| 616 | return false; | ||
| 617 | +} | ||
| 618 | + | ||
| 615 | +/* Implements target hook array_mode_supported_p. */ | 619 | +/* Implements target hook array_mode_supported_p. */ |
| 616 | + | 620 | + |
| 617 | +static bool | 621 | +static bool |
| @@ -624,16 +628,14 @@ | |||
| 624 | + return true; | 628 | + return true; |
| 625 | + | 629 | + |
| 626 | + return false; | 630 | + return false; |
| 627 | +} | 631 | } |
| 628 | + | 632 | |
| 629 | /* Use the option -mvectorize-with-neon-quad to override the use of doubleword | 633 | /* Use the option -mvectorize-with-neon-quad to override the use of doubleword |
| 630 | registers when autovectorizing for Neon, at least until multiple vector | 634 | Index: gcc-4_6-branch/gcc/config/arm/arm.h |
| 631 | widths are supported properly by the middle-end. */ | 635 | =================================================================== |
| 632 | 636 | --- gcc-4_6-branch.orig/gcc/config/arm/arm.h 2011-09-16 20:14:33.000000000 -0700 | |
| 633 | === modified file 'gcc/config/arm/arm.h' | 637 | +++ gcc-4_6-branch/gcc/config/arm/arm.h 2011-09-16 20:16:00.237564275 -0700 |
| 634 | --- old/gcc/config/arm/arm.h 2011-02-21 14:04:51 +0000 | 638 | @@ -1777,27 +1777,6 @@ |
| 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 | 639 | #define TARGET_DEFAULT_WORD_RELOCATIONS 0 |
| 638 | #endif | 640 | #endif |
| 639 | 641 | ||
| @@ -661,10 +663,10 @@ | |||
| 661 | #ifndef SUBTARGET_NAME_ENCODING_LENGTHS | 663 | #ifndef SUBTARGET_NAME_ENCODING_LENGTHS |
| 662 | #define SUBTARGET_NAME_ENCODING_LENGTHS | 664 | #define SUBTARGET_NAME_ENCODING_LENGTHS |
| 663 | #endif | 665 | #endif |
| 664 | 666 | Index: gcc-4_6-branch/gcc/config/arm/iterators.md | |
| 665 | === modified file 'gcc/config/arm/iterators.md' | 667 | =================================================================== |
| 666 | --- old/gcc/config/arm/iterators.md 2010-09-21 13:11:03 +0000 | 668 | --- gcc-4_6-branch.orig/gcc/config/arm/iterators.md 2011-06-24 08:33:37.000000000 -0700 |
| 667 | +++ new/gcc/config/arm/iterators.md 2011-05-03 15:14:56 +0000 | 669 | +++ gcc-4_6-branch/gcc/config/arm/iterators.md 2011-09-16 20:16:00.237564275 -0700 |
| 668 | @@ -194,24 +194,22 @@ | 670 | @@ -194,24 +194,22 @@ |
| 669 | 671 | ||
| 670 | ;; Mode of pair of elements for each vector mode, to define transfer | 672 | ;; Mode of pair of elements for each vector mode, to define transfer |
| @@ -698,10 +700,10 @@ | |||
| 698 | (V2SI "V4SI") (V4SI "V4SI") | 700 | (V2SI "V4SI") (V4SI "V4SI") |
| 699 | (V2SF "V4SF") (V4SF "V4SF") | 701 | (V2SF "V4SF") (V4SF "V4SF") |
| 700 | (DI "OI") (V2DI "OI")]) | 702 | (DI "OI") (V2DI "OI")]) |
| 701 | 703 | Index: gcc-4_6-branch/gcc/config/arm/neon-testgen.ml | |
| 702 | === modified file 'gcc/config/arm/neon-testgen.ml' | 704 | =================================================================== |
| 703 | --- old/gcc/config/arm/neon-testgen.ml 2010-05-24 18:36:31 +0000 | 705 | --- gcc-4_6-branch.orig/gcc/config/arm/neon-testgen.ml 2011-06-24 08:33:37.000000000 -0700 |
| 704 | +++ new/gcc/config/arm/neon-testgen.ml 2011-05-03 15:14:56 +0000 | 706 | +++ gcc-4_6-branch/gcc/config/arm/neon-testgen.ml 2011-09-16 20:16:00.237564275 -0700 |
| 705 | @@ -177,7 +177,7 @@ | 707 | @@ -177,7 +177,7 @@ |
| 706 | let alt2 = commas (fun x -> x) (n_things n elt_regexp) "" in | 708 | let alt2 = commas (fun x -> x) (n_things n elt_regexp) "" in |
| 707 | "\\\\\\{((" ^ alt1 ^ ")|(" ^ alt2 ^ "))\\\\\\}" | 709 | "\\\\\\{((" ^ alt1 ^ ")|(" ^ alt2 ^ "))\\\\\\}" |
| @@ -711,11 +713,11 @@ | |||
| 711 | | Element_of_dreg -> (analyze_shape_elt Dreg) ^ "\\\\\\[\\[0-9\\]+\\\\\\]" | 713 | | Element_of_dreg -> (analyze_shape_elt Dreg) ^ "\\\\\\[\\[0-9\\]+\\\\\\]" |
| 712 | | Element_of_qreg -> (analyze_shape_elt Qreg) ^ "\\\\\\[\\[0-9\\]+\\\\\\]" | 714 | | Element_of_qreg -> (analyze_shape_elt Qreg) ^ "\\\\\\[\\[0-9\\]+\\\\\\]" |
| 713 | | All_elements_of_dreg -> (analyze_shape_elt Dreg) ^ "\\\\\\[\\\\\\]" | 715 | | All_elements_of_dreg -> (analyze_shape_elt Dreg) ^ "\\\\\\[\\\\\\]" |
| 714 | 716 | Index: gcc-4_6-branch/gcc/config/arm/neon.md | |
| 715 | === modified file 'gcc/config/arm/neon.md' | 717 | =================================================================== |
| 716 | --- old/gcc/config/arm/neon.md 2011-01-03 20:52:22 +0000 | 718 | --- gcc-4_6-branch.orig/gcc/config/arm/neon.md 2011-07-19 21:50:44.000000000 -0700 |
| 717 | +++ new/gcc/config/arm/neon.md 2011-05-03 15:14:56 +0000 | 719 | +++ gcc-4_6-branch/gcc/config/arm/neon.md 2011-09-16 20:16:00.247564269 -0700 |
| 718 | @@ -4247,16 +4247,16 @@ | 720 | @@ -4250,16 +4250,16 @@ |
| 719 | 721 | ||
| 720 | (define_insn "neon_vld1<mode>" | 722 | (define_insn "neon_vld1<mode>" |
| 721 | [(set (match_operand:VDQX 0 "s_register_operand" "=w") | 723 | [(set (match_operand:VDQX 0 "s_register_operand" "=w") |
| @@ -735,7 +737,7 @@ | |||
| 735 | (match_operand:VDX 2 "s_register_operand" "0") | 737 | (match_operand:VDX 2 "s_register_operand" "0") |
| 736 | (match_operand:SI 3 "immediate_operand" "i")] | 738 | (match_operand:SI 3 "immediate_operand" "i")] |
| 737 | UNSPEC_VLD1_LANE))] | 739 | UNSPEC_VLD1_LANE))] |
| 738 | @@ -4267,9 +4267,9 @@ | 740 | @@ -4270,9 +4270,9 @@ |
| 739 | if (lane < 0 || lane >= max) | 741 | if (lane < 0 || lane >= max) |
| 740 | error ("lane out of range"); | 742 | error ("lane out of range"); |
| 741 | if (max == 1) | 743 | if (max == 1) |
| @@ -747,7 +749,7 @@ | |||
| 747 | } | 749 | } |
| 748 | [(set (attr "neon_type") | 750 | [(set (attr "neon_type") |
| 749 | (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 2)) | 751 | (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 2)) |
| 750 | @@ -4279,7 +4279,7 @@ | 752 | @@ -4282,7 +4282,7 @@ |
| 751 | 753 | ||
| 752 | (define_insn "neon_vld1_lane<mode>" | 754 | (define_insn "neon_vld1_lane<mode>" |
| 753 | [(set (match_operand:VQX 0 "s_register_operand" "=w") | 755 | [(set (match_operand:VQX 0 "s_register_operand" "=w") |
| @@ -756,7 +758,7 @@ | |||
| 756 | (match_operand:VQX 2 "s_register_operand" "0") | 758 | (match_operand:VQX 2 "s_register_operand" "0") |
| 757 | (match_operand:SI 3 "immediate_operand" "i")] | 759 | (match_operand:SI 3 "immediate_operand" "i")] |
| 758 | UNSPEC_VLD1_LANE))] | 760 | UNSPEC_VLD1_LANE))] |
| 759 | @@ -4298,9 +4298,9 @@ | 761 | @@ -4301,9 +4301,9 @@ |
| 760 | } | 762 | } |
| 761 | operands[0] = gen_rtx_REG (<V_HALF>mode, regno); | 763 | operands[0] = gen_rtx_REG (<V_HALF>mode, regno); |
| 762 | if (max == 2) | 764 | if (max == 2) |
| @@ -768,7 +770,7 @@ | |||
| 768 | } | 770 | } |
| 769 | [(set (attr "neon_type") | 771 | [(set (attr "neon_type") |
| 770 | (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 2)) | 772 | (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 2)) |
| 771 | @@ -4310,14 +4310,14 @@ | 773 | @@ -4313,14 +4313,14 @@ |
| 772 | 774 | ||
| 773 | (define_insn "neon_vld1_dup<mode>" | 775 | (define_insn "neon_vld1_dup<mode>" |
| 774 | [(set (match_operand:VDX 0 "s_register_operand" "=w") | 776 | [(set (match_operand:VDX 0 "s_register_operand" "=w") |
| @@ -786,7 +788,7 @@ | |||
| 786 | } | 788 | } |
| 787 | [(set (attr "neon_type") | 789 | [(set (attr "neon_type") |
| 788 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) | 790 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) |
| 789 | @@ -4327,14 +4327,14 @@ | 791 | @@ -4330,14 +4330,14 @@ |
| 790 | 792 | ||
| 791 | (define_insn "neon_vld1_dup<mode>" | 793 | (define_insn "neon_vld1_dup<mode>" |
| 792 | [(set (match_operand:VQX 0 "s_register_operand" "=w") | 794 | [(set (match_operand:VQX 0 "s_register_operand" "=w") |
| @@ -804,7 +806,7 @@ | |||
| 804 | } | 806 | } |
| 805 | [(set (attr "neon_type") | 807 | [(set (attr "neon_type") |
| 806 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) | 808 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) |
| 807 | @@ -4343,15 +4343,15 @@ | 809 | @@ -4346,15 +4346,15 @@ |
| 808 | ) | 810 | ) |
| 809 | 811 | ||
| 810 | (define_insn "neon_vst1<mode>" | 812 | (define_insn "neon_vst1<mode>" |
| @@ -823,7 +825,7 @@ | |||
| 823 | (vec_select:<V_elem> | 825 | (vec_select:<V_elem> |
| 824 | (match_operand:VDX 1 "s_register_operand" "w") | 826 | (match_operand:VDX 1 "s_register_operand" "w") |
| 825 | (parallel [(match_operand:SI 2 "neon_lane_number" "i")])))] | 827 | (parallel [(match_operand:SI 2 "neon_lane_number" "i")])))] |
| 826 | @@ -4362,9 +4362,9 @@ | 828 | @@ -4365,9 +4365,9 @@ |
| 827 | if (lane < 0 || lane >= max) | 829 | if (lane < 0 || lane >= max) |
| 828 | error ("lane out of range"); | 830 | error ("lane out of range"); |
| 829 | if (max == 1) | 831 | if (max == 1) |
| @@ -835,7 +837,7 @@ | |||
| 835 | } | 837 | } |
| 836 | [(set (attr "neon_type") | 838 | [(set (attr "neon_type") |
| 837 | (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 1)) | 839 | (if_then_else (eq (const_string "<V_mode_nunits>") (const_int 1)) |
| 838 | @@ -4372,7 +4372,7 @@ | 840 | @@ -4375,7 +4375,7 @@ |
| 839 | (const_string "neon_vst1_vst2_lane")))]) | 841 | (const_string "neon_vst1_vst2_lane")))]) |
| 840 | 842 | ||
| 841 | (define_insn "neon_vst1_lane<mode>" | 843 | (define_insn "neon_vst1_lane<mode>" |
| @@ -844,7 +846,7 @@ | |||
| 844 | (vec_select:<V_elem> | 846 | (vec_select:<V_elem> |
| 845 | (match_operand:VQX 1 "s_register_operand" "w") | 847 | (match_operand:VQX 1 "s_register_operand" "w") |
| 846 | (parallel [(match_operand:SI 2 "neon_lane_number" "i")])))] | 848 | (parallel [(match_operand:SI 2 "neon_lane_number" "i")])))] |
| 847 | @@ -4391,24 +4391,24 @@ | 849 | @@ -4394,24 +4394,24 @@ |
| 848 | } | 850 | } |
| 849 | operands[1] = gen_rtx_REG (<V_HALF>mode, regno); | 851 | operands[1] = gen_rtx_REG (<V_HALF>mode, regno); |
| 850 | if (max == 2) | 852 | if (max == 2) |
| @@ -874,7 +876,7 @@ | |||
| 874 | } | 876 | } |
| 875 | [(set (attr "neon_type") | 877 | [(set (attr "neon_type") |
| 876 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) | 878 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) |
| 877 | @@ -4418,16 +4418,16 @@ | 879 | @@ -4421,16 +4421,16 @@ |
| 878 | 880 | ||
| 879 | (define_insn "neon_vld2<mode>" | 881 | (define_insn "neon_vld2<mode>" |
| 880 | [(set (match_operand:OI 0 "s_register_operand" "=w") | 882 | [(set (match_operand:OI 0 "s_register_operand" "=w") |
| @@ -894,7 +896,7 @@ | |||
| 894 | (match_operand:TI 2 "s_register_operand" "0") | 896 | (match_operand:TI 2 "s_register_operand" "0") |
| 895 | (match_operand:SI 3 "immediate_operand" "i") | 897 | (match_operand:SI 3 "immediate_operand" "i") |
| 896 | (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 898 | (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 897 | @@ -4444,7 +4444,7 @@ | 899 | @@ -4447,7 +4447,7 @@ |
| 898 | ops[1] = gen_rtx_REG (DImode, regno + 2); | 900 | ops[1] = gen_rtx_REG (DImode, regno + 2); |
| 899 | ops[2] = operands[1]; | 901 | ops[2] = operands[1]; |
| 900 | ops[3] = operands[3]; | 902 | ops[3] = operands[3]; |
| @@ -903,7 +905,7 @@ | |||
| 903 | return ""; | 905 | return ""; |
| 904 | } | 906 | } |
| 905 | [(set_attr "neon_type" "neon_vld1_vld2_lane")] | 907 | [(set_attr "neon_type" "neon_vld1_vld2_lane")] |
| 906 | @@ -4452,7 +4452,7 @@ | 908 | @@ -4455,7 +4455,7 @@ |
| 907 | 909 | ||
| 908 | (define_insn "neon_vld2_lane<mode>" | 910 | (define_insn "neon_vld2_lane<mode>" |
| 909 | [(set (match_operand:OI 0 "s_register_operand" "=w") | 911 | [(set (match_operand:OI 0 "s_register_operand" "=w") |
| @@ -912,7 +914,7 @@ | |||
| 912 | (match_operand:OI 2 "s_register_operand" "0") | 914 | (match_operand:OI 2 "s_register_operand" "0") |
| 913 | (match_operand:SI 3 "immediate_operand" "i") | 915 | (match_operand:SI 3 "immediate_operand" "i") |
| 914 | (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 916 | (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 915 | @@ -4474,7 +4474,7 @@ | 917 | @@ -4477,7 +4477,7 @@ |
| 916 | ops[1] = gen_rtx_REG (DImode, regno + 4); | 918 | ops[1] = gen_rtx_REG (DImode, regno + 4); |
| 917 | ops[2] = operands[1]; | 919 | ops[2] = operands[1]; |
| 918 | ops[3] = GEN_INT (lane); | 920 | ops[3] = GEN_INT (lane); |
| @@ -921,7 +923,7 @@ | |||
| 921 | return ""; | 923 | return ""; |
| 922 | } | 924 | } |
| 923 | [(set_attr "neon_type" "neon_vld1_vld2_lane")] | 925 | [(set_attr "neon_type" "neon_vld1_vld2_lane")] |
| 924 | @@ -4482,15 +4482,15 @@ | 926 | @@ -4485,15 +4485,15 @@ |
| 925 | 927 | ||
| 926 | (define_insn "neon_vld2_dup<mode>" | 928 | (define_insn "neon_vld2_dup<mode>" |
| 927 | [(set (match_operand:TI 0 "s_register_operand" "=w") | 929 | [(set (match_operand:TI 0 "s_register_operand" "=w") |
| @@ -940,7 +942,7 @@ | |||
| 940 | } | 942 | } |
| 941 | [(set (attr "neon_type") | 943 | [(set (attr "neon_type") |
| 942 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) | 944 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) |
| 943 | @@ -4499,16 +4499,16 @@ | 945 | @@ -4502,16 +4502,16 @@ |
| 944 | ) | 946 | ) |
| 945 | 947 | ||
| 946 | (define_insn "neon_vst2<mode>" | 948 | (define_insn "neon_vst2<mode>" |
| @@ -960,7 +962,7 @@ | |||
| 960 | } | 962 | } |
| 961 | [(set (attr "neon_type") | 963 | [(set (attr "neon_type") |
| 962 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) | 964 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) |
| 963 | @@ -4517,17 +4517,17 @@ | 965 | @@ -4520,17 +4520,17 @@ |
| 964 | ) | 966 | ) |
| 965 | 967 | ||
| 966 | (define_insn "neon_vst2<mode>" | 968 | (define_insn "neon_vst2<mode>" |
| @@ -981,7 +983,7 @@ | |||
| 981 | (unspec:<V_two_elem> | 983 | (unspec:<V_two_elem> |
| 982 | [(match_operand:TI 1 "s_register_operand" "w") | 984 | [(match_operand:TI 1 "s_register_operand" "w") |
| 983 | (match_operand:SI 2 "immediate_operand" "i") | 985 | (match_operand:SI 2 "immediate_operand" "i") |
| 984 | @@ -4545,14 +4545,14 @@ | 986 | @@ -4548,14 +4548,14 @@ |
| 985 | ops[1] = gen_rtx_REG (DImode, regno); | 987 | ops[1] = gen_rtx_REG (DImode, regno); |
| 986 | ops[2] = gen_rtx_REG (DImode, regno + 2); | 988 | ops[2] = gen_rtx_REG (DImode, regno + 2); |
| 987 | ops[3] = operands[2]; | 989 | ops[3] = operands[2]; |
| @@ -998,7 +1000,7 @@ | |||
| 998 | (unspec:<V_two_elem> | 1000 | (unspec:<V_two_elem> |
| 999 | [(match_operand:OI 1 "s_register_operand" "w") | 1001 | [(match_operand:OI 1 "s_register_operand" "w") |
| 1000 | (match_operand:SI 2 "immediate_operand" "i") | 1002 | (match_operand:SI 2 "immediate_operand" "i") |
| 1001 | @@ -4575,7 +4575,7 @@ | 1003 | @@ -4578,7 +4578,7 @@ |
| 1002 | ops[1] = gen_rtx_REG (DImode, regno); | 1004 | ops[1] = gen_rtx_REG (DImode, regno); |
| 1003 | ops[2] = gen_rtx_REG (DImode, regno + 4); | 1005 | ops[2] = gen_rtx_REG (DImode, regno + 4); |
| 1004 | ops[3] = GEN_INT (lane); | 1006 | ops[3] = GEN_INT (lane); |
| @@ -1007,7 +1009,7 @@ | |||
| 1007 | return ""; | 1009 | return ""; |
| 1008 | } | 1010 | } |
| 1009 | [(set_attr "neon_type" "neon_vst1_vst2_lane")] | 1011 | [(set_attr "neon_type" "neon_vst1_vst2_lane")] |
| 1010 | @@ -4583,15 +4583,15 @@ | 1012 | @@ -4586,15 +4586,15 @@ |
| 1011 | 1013 | ||
| 1012 | (define_insn "neon_vld3<mode>" | 1014 | (define_insn "neon_vld3<mode>" |
| 1013 | [(set (match_operand:EI 0 "s_register_operand" "=w") | 1015 | [(set (match_operand:EI 0 "s_register_operand" "=w") |
| @@ -1026,7 +1028,7 @@ | |||
| 1026 | } | 1028 | } |
| 1027 | [(set (attr "neon_type") | 1029 | [(set (attr "neon_type") |
| 1028 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) | 1030 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) |
| 1029 | @@ -4600,27 +4600,25 @@ | 1031 | @@ -4603,27 +4603,25 @@ |
| 1030 | ) | 1032 | ) |
| 1031 | 1033 | ||
| 1032 | (define_expand "neon_vld3<mode>" | 1034 | (define_expand "neon_vld3<mode>" |
| @@ -1064,7 +1066,7 @@ | |||
| 1064 | "TARGET_NEON" | 1066 | "TARGET_NEON" |
| 1065 | { | 1067 | { |
| 1066 | int regno = REGNO (operands[0]); | 1068 | int regno = REGNO (operands[0]); |
| 1067 | @@ -4628,8 +4626,8 @@ | 1069 | @@ -4631,8 +4629,8 @@ |
| 1068 | ops[0] = gen_rtx_REG (DImode, regno); | 1070 | ops[0] = gen_rtx_REG (DImode, regno); |
| 1069 | ops[1] = gen_rtx_REG (DImode, regno + 4); | 1071 | ops[1] = gen_rtx_REG (DImode, regno + 4); |
| 1070 | ops[2] = gen_rtx_REG (DImode, regno + 8); | 1072 | ops[2] = gen_rtx_REG (DImode, regno + 8); |
| @@ -1075,7 +1077,7 @@ | |||
| 1075 | return ""; | 1077 | return ""; |
| 1076 | } | 1078 | } |
| 1077 | [(set_attr "neon_type" "neon_vld3_vld4")] | 1079 | [(set_attr "neon_type" "neon_vld3_vld4")] |
| 1078 | @@ -4637,13 +4635,10 @@ | 1080 | @@ -4640,13 +4638,10 @@ |
| 1079 | 1081 | ||
| 1080 | (define_insn "neon_vld3qb<mode>" | 1082 | (define_insn "neon_vld3qb<mode>" |
| 1081 | [(set (match_operand:CI 0 "s_register_operand" "=w") | 1083 | [(set (match_operand:CI 0 "s_register_operand" "=w") |
| @@ -1092,7 +1094,7 @@ | |||
| 1092 | "TARGET_NEON" | 1094 | "TARGET_NEON" |
| 1093 | { | 1095 | { |
| 1094 | int regno = REGNO (operands[0]); | 1096 | int regno = REGNO (operands[0]); |
| 1095 | @@ -4651,8 +4646,8 @@ | 1097 | @@ -4654,8 +4649,8 @@ |
| 1096 | ops[0] = gen_rtx_REG (DImode, regno + 2); | 1098 | ops[0] = gen_rtx_REG (DImode, regno + 2); |
| 1097 | ops[1] = gen_rtx_REG (DImode, regno + 6); | 1099 | ops[1] = gen_rtx_REG (DImode, regno + 6); |
| 1098 | ops[2] = gen_rtx_REG (DImode, regno + 10); | 1100 | ops[2] = gen_rtx_REG (DImode, regno + 10); |
| @@ -1103,7 +1105,7 @@ | |||
| 1103 | return ""; | 1105 | return ""; |
| 1104 | } | 1106 | } |
| 1105 | [(set_attr "neon_type" "neon_vld3_vld4")] | 1107 | [(set_attr "neon_type" "neon_vld3_vld4")] |
| 1106 | @@ -4660,7 +4655,7 @@ | 1108 | @@ -4663,7 +4658,7 @@ |
| 1107 | 1109 | ||
| 1108 | (define_insn "neon_vld3_lane<mode>" | 1110 | (define_insn "neon_vld3_lane<mode>" |
| 1109 | [(set (match_operand:EI 0 "s_register_operand" "=w") | 1111 | [(set (match_operand:EI 0 "s_register_operand" "=w") |
| @@ -1112,7 +1114,7 @@ | |||
| 1112 | (match_operand:EI 2 "s_register_operand" "0") | 1114 | (match_operand:EI 2 "s_register_operand" "0") |
| 1113 | (match_operand:SI 3 "immediate_operand" "i") | 1115 | (match_operand:SI 3 "immediate_operand" "i") |
| 1114 | (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 1116 | (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 1115 | @@ -4678,7 +4673,7 @@ | 1117 | @@ -4681,7 +4676,7 @@ |
| 1116 | ops[2] = gen_rtx_REG (DImode, regno + 4); | 1118 | ops[2] = gen_rtx_REG (DImode, regno + 4); |
| 1117 | ops[3] = operands[1]; | 1119 | ops[3] = operands[1]; |
| 1118 | ops[4] = operands[3]; | 1120 | ops[4] = operands[3]; |
| @@ -1121,7 +1123,7 @@ | |||
| 1121 | ops); | 1123 | ops); |
| 1122 | return ""; | 1124 | return ""; |
| 1123 | } | 1125 | } |
| 1124 | @@ -4687,7 +4682,7 @@ | 1126 | @@ -4690,7 +4685,7 @@ |
| 1125 | 1127 | ||
| 1126 | (define_insn "neon_vld3_lane<mode>" | 1128 | (define_insn "neon_vld3_lane<mode>" |
| 1127 | [(set (match_operand:CI 0 "s_register_operand" "=w") | 1129 | [(set (match_operand:CI 0 "s_register_operand" "=w") |
| @@ -1130,7 +1132,7 @@ | |||
| 1130 | (match_operand:CI 2 "s_register_operand" "0") | 1132 | (match_operand:CI 2 "s_register_operand" "0") |
| 1131 | (match_operand:SI 3 "immediate_operand" "i") | 1133 | (match_operand:SI 3 "immediate_operand" "i") |
| 1132 | (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 1134 | (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 1133 | @@ -4710,7 +4705,7 @@ | 1135 | @@ -4713,7 +4708,7 @@ |
| 1134 | ops[2] = gen_rtx_REG (DImode, regno + 8); | 1136 | ops[2] = gen_rtx_REG (DImode, regno + 8); |
| 1135 | ops[3] = operands[1]; | 1137 | ops[3] = operands[1]; |
| 1136 | ops[4] = GEN_INT (lane); | 1138 | ops[4] = GEN_INT (lane); |
| @@ -1139,7 +1141,7 @@ | |||
| 1139 | ops); | 1141 | ops); |
| 1140 | return ""; | 1142 | return ""; |
| 1141 | } | 1143 | } |
| 1142 | @@ -4719,7 +4714,7 @@ | 1144 | @@ -4722,7 +4717,7 @@ |
| 1143 | 1145 | ||
| 1144 | (define_insn "neon_vld3_dup<mode>" | 1146 | (define_insn "neon_vld3_dup<mode>" |
| 1145 | [(set (match_operand:EI 0 "s_register_operand" "=w") | 1147 | [(set (match_operand:EI 0 "s_register_operand" "=w") |
| @@ -1148,7 +1150,7 @@ | |||
| 1148 | (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 1150 | (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 1149 | UNSPEC_VLD3_DUP))] | 1151 | UNSPEC_VLD3_DUP))] |
| 1150 | "TARGET_NEON" | 1152 | "TARGET_NEON" |
| 1151 | @@ -4732,11 +4727,11 @@ | 1153 | @@ -4735,11 +4730,11 @@ |
| 1152 | ops[1] = gen_rtx_REG (DImode, regno + 2); | 1154 | ops[1] = gen_rtx_REG (DImode, regno + 2); |
| 1153 | ops[2] = gen_rtx_REG (DImode, regno + 4); | 1155 | ops[2] = gen_rtx_REG (DImode, regno + 4); |
| 1154 | ops[3] = operands[1]; | 1156 | ops[3] = operands[1]; |
| @@ -1162,7 +1164,7 @@ | |||
| 1162 | } | 1164 | } |
| 1163 | [(set (attr "neon_type") | 1165 | [(set (attr "neon_type") |
| 1164 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) | 1166 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) |
| 1165 | @@ -4744,16 +4739,16 @@ | 1167 | @@ -4747,16 +4742,16 @@ |
| 1166 | (const_string "neon_vld1_1_2_regs")))]) | 1168 | (const_string "neon_vld1_1_2_regs")))]) |
| 1167 | 1169 | ||
| 1168 | (define_insn "neon_vst3<mode>" | 1170 | (define_insn "neon_vst3<mode>" |
| @@ -1182,7 +1184,7 @@ | |||
| 1182 | } | 1184 | } |
| 1183 | [(set (attr "neon_type") | 1185 | [(set (attr "neon_type") |
| 1184 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) | 1186 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) |
| 1185 | @@ -4761,62 +4756,60 @@ | 1187 | @@ -4764,62 +4759,60 @@ |
| 1186 | (const_string "neon_vst2_4_regs_vst3_vst4")))]) | 1188 | (const_string "neon_vst2_4_regs_vst3_vst4")))]) |
| 1187 | 1189 | ||
| 1188 | (define_expand "neon_vst3<mode>" | 1190 | (define_expand "neon_vst3<mode>" |
| @@ -1264,7 +1266,7 @@ | |||
| 1264 | (unspec:<V_three_elem> | 1266 | (unspec:<V_three_elem> |
| 1265 | [(match_operand:EI 1 "s_register_operand" "w") | 1267 | [(match_operand:EI 1 "s_register_operand" "w") |
| 1266 | (match_operand:SI 2 "immediate_operand" "i") | 1268 | (match_operand:SI 2 "immediate_operand" "i") |
| 1267 | @@ -4835,7 +4828,7 @@ | 1269 | @@ -4838,7 +4831,7 @@ |
| 1268 | ops[2] = gen_rtx_REG (DImode, regno + 2); | 1270 | ops[2] = gen_rtx_REG (DImode, regno + 2); |
| 1269 | ops[3] = gen_rtx_REG (DImode, regno + 4); | 1271 | ops[3] = gen_rtx_REG (DImode, regno + 4); |
| 1270 | ops[4] = operands[2]; | 1272 | ops[4] = operands[2]; |
| @@ -1273,7 +1275,7 @@ | |||
| 1273 | ops); | 1275 | ops); |
| 1274 | return ""; | 1276 | return ""; |
| 1275 | } | 1277 | } |
| 1276 | @@ -4843,7 +4836,7 @@ | 1278 | @@ -4846,7 +4839,7 @@ |
| 1277 | ) | 1279 | ) |
| 1278 | 1280 | ||
| 1279 | (define_insn "neon_vst3_lane<mode>" | 1281 | (define_insn "neon_vst3_lane<mode>" |
| @@ -1282,7 +1284,7 @@ | |||
| 1282 | (unspec:<V_three_elem> | 1284 | (unspec:<V_three_elem> |
| 1283 | [(match_operand:CI 1 "s_register_operand" "w") | 1285 | [(match_operand:CI 1 "s_register_operand" "w") |
| 1284 | (match_operand:SI 2 "immediate_operand" "i") | 1286 | (match_operand:SI 2 "immediate_operand" "i") |
| 1285 | @@ -4867,7 +4860,7 @@ | 1287 | @@ -4870,7 +4863,7 @@ |
| 1286 | ops[2] = gen_rtx_REG (DImode, regno + 4); | 1288 | ops[2] = gen_rtx_REG (DImode, regno + 4); |
| 1287 | ops[3] = gen_rtx_REG (DImode, regno + 8); | 1289 | ops[3] = gen_rtx_REG (DImode, regno + 8); |
| 1288 | ops[4] = GEN_INT (lane); | 1290 | ops[4] = GEN_INT (lane); |
| @@ -1291,7 +1293,7 @@ | |||
| 1291 | ops); | 1293 | ops); |
| 1292 | return ""; | 1294 | return ""; |
| 1293 | } | 1295 | } |
| 1294 | @@ -4875,15 +4868,15 @@ | 1296 | @@ -4878,15 +4871,15 @@ |
| 1295 | 1297 | ||
| 1296 | (define_insn "neon_vld4<mode>" | 1298 | (define_insn "neon_vld4<mode>" |
| 1297 | [(set (match_operand:OI 0 "s_register_operand" "=w") | 1299 | [(set (match_operand:OI 0 "s_register_operand" "=w") |
| @@ -1310,7 +1312,7 @@ | |||
| 1310 | } | 1312 | } |
| 1311 | [(set (attr "neon_type") | 1313 | [(set (attr "neon_type") |
| 1312 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) | 1314 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) |
| 1313 | @@ -4892,27 +4885,25 @@ | 1315 | @@ -4895,27 +4888,25 @@ |
| 1314 | ) | 1316 | ) |
| 1315 | 1317 | ||
| 1316 | (define_expand "neon_vld4<mode>" | 1318 | (define_expand "neon_vld4<mode>" |
| @@ -1348,7 +1350,7 @@ | |||
| 1348 | "TARGET_NEON" | 1350 | "TARGET_NEON" |
| 1349 | { | 1351 | { |
| 1350 | int regno = REGNO (operands[0]); | 1352 | int regno = REGNO (operands[0]); |
| 1351 | @@ -4921,8 +4912,8 @@ | 1353 | @@ -4924,8 +4915,8 @@ |
| 1352 | ops[1] = gen_rtx_REG (DImode, regno + 4); | 1354 | ops[1] = gen_rtx_REG (DImode, regno + 4); |
| 1353 | ops[2] = gen_rtx_REG (DImode, regno + 8); | 1355 | ops[2] = gen_rtx_REG (DImode, regno + 8); |
| 1354 | ops[3] = gen_rtx_REG (DImode, regno + 12); | 1356 | ops[3] = gen_rtx_REG (DImode, regno + 12); |
| @@ -1359,7 +1361,7 @@ | |||
| 1359 | return ""; | 1361 | return ""; |
| 1360 | } | 1362 | } |
| 1361 | [(set_attr "neon_type" "neon_vld3_vld4")] | 1363 | [(set_attr "neon_type" "neon_vld3_vld4")] |
| 1362 | @@ -4930,13 +4921,10 @@ | 1364 | @@ -4933,13 +4924,10 @@ |
| 1363 | 1365 | ||
| 1364 | (define_insn "neon_vld4qb<mode>" | 1366 | (define_insn "neon_vld4qb<mode>" |
| 1365 | [(set (match_operand:XI 0 "s_register_operand" "=w") | 1367 | [(set (match_operand:XI 0 "s_register_operand" "=w") |
| @@ -1376,7 +1378,7 @@ | |||
| 1376 | "TARGET_NEON" | 1378 | "TARGET_NEON" |
| 1377 | { | 1379 | { |
| 1378 | int regno = REGNO (operands[0]); | 1380 | int regno = REGNO (operands[0]); |
| 1379 | @@ -4945,8 +4933,8 @@ | 1381 | @@ -4948,8 +4936,8 @@ |
| 1380 | ops[1] = gen_rtx_REG (DImode, regno + 6); | 1382 | ops[1] = gen_rtx_REG (DImode, regno + 6); |
| 1381 | ops[2] = gen_rtx_REG (DImode, regno + 10); | 1383 | ops[2] = gen_rtx_REG (DImode, regno + 10); |
| 1382 | ops[3] = gen_rtx_REG (DImode, regno + 14); | 1384 | ops[3] = gen_rtx_REG (DImode, regno + 14); |
| @@ -1387,7 +1389,7 @@ | |||
| 1387 | return ""; | 1389 | return ""; |
| 1388 | } | 1390 | } |
| 1389 | [(set_attr "neon_type" "neon_vld3_vld4")] | 1391 | [(set_attr "neon_type" "neon_vld3_vld4")] |
| 1390 | @@ -4954,7 +4942,7 @@ | 1392 | @@ -4957,7 +4945,7 @@ |
| 1391 | 1393 | ||
| 1392 | (define_insn "neon_vld4_lane<mode>" | 1394 | (define_insn "neon_vld4_lane<mode>" |
| 1393 | [(set (match_operand:OI 0 "s_register_operand" "=w") | 1395 | [(set (match_operand:OI 0 "s_register_operand" "=w") |
| @@ -1396,7 +1398,7 @@ | |||
| 1396 | (match_operand:OI 2 "s_register_operand" "0") | 1398 | (match_operand:OI 2 "s_register_operand" "0") |
| 1397 | (match_operand:SI 3 "immediate_operand" "i") | 1399 | (match_operand:SI 3 "immediate_operand" "i") |
| 1398 | (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 1400 | (unspec:VD [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 1399 | @@ -4973,7 +4961,7 @@ | 1401 | @@ -4976,7 +4964,7 @@ |
| 1400 | ops[3] = gen_rtx_REG (DImode, regno + 6); | 1402 | ops[3] = gen_rtx_REG (DImode, regno + 6); |
| 1401 | ops[4] = operands[1]; | 1403 | ops[4] = operands[1]; |
| 1402 | ops[5] = operands[3]; | 1404 | ops[5] = operands[3]; |
| @@ -1405,7 +1407,7 @@ | |||
| 1405 | ops); | 1407 | ops); |
| 1406 | return ""; | 1408 | return ""; |
| 1407 | } | 1409 | } |
| 1408 | @@ -4982,7 +4970,7 @@ | 1410 | @@ -4985,7 +4973,7 @@ |
| 1409 | 1411 | ||
| 1410 | (define_insn "neon_vld4_lane<mode>" | 1412 | (define_insn "neon_vld4_lane<mode>" |
| 1411 | [(set (match_operand:XI 0 "s_register_operand" "=w") | 1413 | [(set (match_operand:XI 0 "s_register_operand" "=w") |
| @@ -1414,7 +1416,7 @@ | |||
| 1414 | (match_operand:XI 2 "s_register_operand" "0") | 1416 | (match_operand:XI 2 "s_register_operand" "0") |
| 1415 | (match_operand:SI 3 "immediate_operand" "i") | 1417 | (match_operand:SI 3 "immediate_operand" "i") |
| 1416 | (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 1418 | (unspec:VMQ [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 1417 | @@ -5006,7 +4994,7 @@ | 1419 | @@ -5009,7 +4997,7 @@ |
| 1418 | ops[3] = gen_rtx_REG (DImode, regno + 12); | 1420 | ops[3] = gen_rtx_REG (DImode, regno + 12); |
| 1419 | ops[4] = operands[1]; | 1421 | ops[4] = operands[1]; |
| 1420 | ops[5] = GEN_INT (lane); | 1422 | ops[5] = GEN_INT (lane); |
| @@ -1423,7 +1425,7 @@ | |||
| 1423 | ops); | 1425 | ops); |
| 1424 | return ""; | 1426 | return ""; |
| 1425 | } | 1427 | } |
| 1426 | @@ -5015,7 +5003,7 @@ | 1428 | @@ -5018,7 +5006,7 @@ |
| 1427 | 1429 | ||
| 1428 | (define_insn "neon_vld4_dup<mode>" | 1430 | (define_insn "neon_vld4_dup<mode>" |
| 1429 | [(set (match_operand:OI 0 "s_register_operand" "=w") | 1431 | [(set (match_operand:OI 0 "s_register_operand" "=w") |
| @@ -1432,7 +1434,7 @@ | |||
| 1432 | (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] | 1434 | (unspec:VDX [(const_int 0)] UNSPEC_VSTRUCTDUMMY)] |
| 1433 | UNSPEC_VLD4_DUP))] | 1435 | UNSPEC_VLD4_DUP))] |
| 1434 | "TARGET_NEON" | 1436 | "TARGET_NEON" |
| 1435 | @@ -5029,12 +5017,12 @@ | 1437 | @@ -5032,12 +5020,12 @@ |
| 1436 | ops[2] = gen_rtx_REG (DImode, regno + 4); | 1438 | ops[2] = gen_rtx_REG (DImode, regno + 4); |
| 1437 | ops[3] = gen_rtx_REG (DImode, regno + 6); | 1439 | ops[3] = gen_rtx_REG (DImode, regno + 6); |
| 1438 | ops[4] = operands[1]; | 1440 | ops[4] = operands[1]; |
| @@ -1447,7 +1449,7 @@ | |||
| 1447 | } | 1449 | } |
| 1448 | [(set (attr "neon_type") | 1450 | [(set (attr "neon_type") |
| 1449 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) | 1451 | (if_then_else (gt (const_string "<V_mode_nunits>") (const_string "1")) |
| 1450 | @@ -5043,16 +5031,16 @@ | 1452 | @@ -5046,16 +5034,16 @@ |
| 1451 | ) | 1453 | ) |
| 1452 | 1454 | ||
| 1453 | (define_insn "neon_vst4<mode>" | 1455 | (define_insn "neon_vst4<mode>" |
| @@ -1467,7 +1469,7 @@ | |||
| 1467 | } | 1469 | } |
| 1468 | [(set (attr "neon_type") | 1470 | [(set (attr "neon_type") |
| 1469 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) | 1471 | (if_then_else (eq (const_string "<V_sz_elem>") (const_string "64")) |
| 1470 | @@ -5061,64 +5049,62 @@ | 1472 | @@ -5064,64 +5052,62 @@ |
| 1471 | ) | 1473 | ) |
| 1472 | 1474 | ||
| 1473 | (define_expand "neon_vst4<mode>" | 1475 | (define_expand "neon_vst4<mode>" |
| @@ -1551,7 +1553,7 @@ | |||
| 1551 | (unspec:<V_four_elem> | 1553 | (unspec:<V_four_elem> |
| 1552 | [(match_operand:OI 1 "s_register_operand" "w") | 1554 | [(match_operand:OI 1 "s_register_operand" "w") |
| 1553 | (match_operand:SI 2 "immediate_operand" "i") | 1555 | (match_operand:SI 2 "immediate_operand" "i") |
| 1554 | @@ -5138,7 +5124,7 @@ | 1556 | @@ -5141,7 +5127,7 @@ |
| 1555 | ops[3] = gen_rtx_REG (DImode, regno + 4); | 1557 | ops[3] = gen_rtx_REG (DImode, regno + 4); |
| 1556 | ops[4] = gen_rtx_REG (DImode, regno + 6); | 1558 | ops[4] = gen_rtx_REG (DImode, regno + 6); |
| 1557 | ops[5] = operands[2]; | 1559 | ops[5] = operands[2]; |
| @@ -1560,7 +1562,7 @@ | |||
| 1560 | ops); | 1562 | ops); |
| 1561 | return ""; | 1563 | return ""; |
| 1562 | } | 1564 | } |
| 1563 | @@ -5146,7 +5132,7 @@ | 1565 | @@ -5149,7 +5135,7 @@ |
| 1564 | ) | 1566 | ) |
| 1565 | 1567 | ||
| 1566 | (define_insn "neon_vst4_lane<mode>" | 1568 | (define_insn "neon_vst4_lane<mode>" |
| @@ -1569,7 +1571,7 @@ | |||
| 1569 | (unspec:<V_four_elem> | 1571 | (unspec:<V_four_elem> |
| 1570 | [(match_operand:XI 1 "s_register_operand" "w") | 1572 | [(match_operand:XI 1 "s_register_operand" "w") |
| 1571 | (match_operand:SI 2 "immediate_operand" "i") | 1573 | (match_operand:SI 2 "immediate_operand" "i") |
| 1572 | @@ -5171,7 +5157,7 @@ | 1574 | @@ -5174,7 +5160,7 @@ |
| 1573 | ops[3] = gen_rtx_REG (DImode, regno + 8); | 1575 | ops[3] = gen_rtx_REG (DImode, regno + 8); |
| 1574 | ops[4] = gen_rtx_REG (DImode, regno + 12); | 1576 | ops[4] = gen_rtx_REG (DImode, regno + 12); |
| 1575 | ops[5] = GEN_INT (lane); | 1577 | ops[5] = GEN_INT (lane); |
| @@ -1578,22 +1580,23 @@ | |||
| 1578 | ops); | 1580 | ops); |
| 1579 | return ""; | 1581 | return ""; |
| 1580 | } | 1582 | } |
| 1581 | 1583 | Index: gcc-4_6-branch/gcc/config/arm/predicates.md | |
| 1582 | === modified file 'gcc/config/arm/predicates.md' | 1584 | =================================================================== |
| 1583 | --- old/gcc/config/arm/predicates.md 2011-04-07 10:52:12 +0000 | 1585 | --- gcc-4_6-branch.orig/gcc/config/arm/predicates.md 2011-09-16 19:58:21.000000000 -0700 |
| 1584 | +++ new/gcc/config/arm/predicates.md 2011-05-03 15:14:56 +0000 | 1586 | +++ gcc-4_6-branch/gcc/config/arm/predicates.md 2011-09-16 20:19:03.967834108 -0700 |
| 1585 | @@ -683,3 +683,7 @@ | 1587 | @@ -686,3 +686,8 @@ |
| 1586 | } | 1588 | |
| 1587 | return true; | 1589 | (define_special_predicate "add_operator" |
| 1588 | }) | 1590 | (match_code "plus")) |
| 1589 | + | 1591 | + |
| 1590 | +(define_special_predicate "neon_struct_operand" | 1592 | +(define_special_predicate "neon_struct_operand" |
| 1591 | + (and (match_code "mem") | 1593 | + (and (match_code "mem") |
| 1592 | + (match_test "TARGET_32BIT && neon_vector_mem_operand (op, 2)"))) | 1594 | + (match_test "TARGET_32BIT && neon_vector_mem_operand (op, 2)"))) |
| 1593 | 1595 | + | |
| 1594 | === modified file 'gcc/doc/tm.texi' | 1596 | Index: gcc-4_6-branch/gcc/doc/tm.texi |
| 1595 | --- old/gcc/doc/tm.texi 2011-01-22 19:35:10 +0000 | 1597 | =================================================================== |
| 1596 | +++ new/gcc/doc/tm.texi 2011-05-03 15:17:25 +0000 | 1598 | --- gcc-4_6-branch.orig/gcc/doc/tm.texi 2011-06-24 08:13:00.000000000 -0700 |
| 1599 | +++ gcc-4_6-branch/gcc/doc/tm.texi 2011-09-16 20:16:00.257564628 -0700 | ||
| 1597 | @@ -2533,7 +2533,7 @@ | 1600 | @@ -2533,7 +2533,7 @@ |
| 1598 | register, so @code{TARGET_PREFERRED_RELOAD_CLASS} returns @code{NO_REGS} when | 1601 | 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 | 1602 | @var{x} is a floating-point constant. If the constant can't be loaded |
| @@ -1670,10 +1673,10 @@ | |||
| 1670 | 1673 | ||
| 1671 | @deftypefn {Target Hook} rtx TARGET_DELEGITIMIZE_ADDRESS (rtx @var{x}) | 1674 | @deftypefn {Target Hook} rtx TARGET_DELEGITIMIZE_ADDRESS (rtx @var{x}) |
| 1672 | This hook is used to undo the possibly obfuscating effects of the | 1675 | This hook is used to undo the possibly obfuscating effects of the |
| 1673 | 1676 | Index: gcc-4_6-branch/gcc/doc/tm.texi.in | |
| 1674 | === modified file 'gcc/doc/tm.texi.in' | 1677 | =================================================================== |
| 1675 | --- old/gcc/doc/tm.texi.in 2011-01-22 19:35:10 +0000 | 1678 | --- gcc-4_6-branch.orig/gcc/doc/tm.texi.in 2011-06-24 08:13:00.000000000 -0700 |
| 1676 | +++ new/gcc/doc/tm.texi.in 2011-05-03 15:17:25 +0000 | 1679 | +++ gcc-4_6-branch/gcc/doc/tm.texi.in 2011-09-16 20:16:00.257564628 -0700 |
| 1677 | @@ -2521,7 +2521,7 @@ | 1680 | @@ -2521,7 +2521,7 @@ |
| 1678 | register, so @code{TARGET_PREFERRED_RELOAD_CLASS} returns @code{NO_REGS} when | 1681 | 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 | 1682 | @var{x} is a floating-point constant. If the constant can't be loaded |
| @@ -1724,10 +1727,10 @@ | |||
| 1724 | 1727 | ||
| 1725 | @hook TARGET_DELEGITIMIZE_ADDRESS | 1728 | @hook TARGET_DELEGITIMIZE_ADDRESS |
| 1726 | This hook is used to undo the possibly obfuscating effects of the | 1729 | This hook is used to undo the possibly obfuscating effects of the |
| 1727 | 1730 | Index: gcc-4_6-branch/gcc/expr.c | |
| 1728 | === modified file 'gcc/expr.c' | 1731 | =================================================================== |
| 1729 | --- old/gcc/expr.c 2011-04-05 16:18:11 +0000 | 1732 | --- gcc-4_6-branch.orig/gcc/expr.c 2011-09-16 20:14:32.000000000 -0700 |
| 1730 | +++ new/gcc/expr.c 2011-05-03 15:17:25 +0000 | 1733 | +++ gcc-4_6-branch/gcc/expr.c 2011-09-16 20:16:00.267564792 -0700 |
| 1731 | @@ -1497,7 +1497,7 @@ | 1734 | @@ -1497,7 +1497,7 @@ |
| 1732 | if (nregs == 0) | 1735 | if (nregs == 0) |
| 1733 | return; | 1736 | return; |
| @@ -1782,7 +1785,7 @@ | |||
| 1782 | x = validize_mem (force_const_mem (mode, x)); | 1785 | x = validize_mem (force_const_mem (mode, x)); |
| 1783 | 1786 | ||
| 1784 | /* If X is a hard register in a non-integer mode, copy it into a pseudo; | 1787 | /* If X is a hard register in a non-integer mode, copy it into a pseudo; |
| 1785 | @@ -9066,7 +9066,7 @@ | 1788 | @@ -9108,7 +9108,7 @@ |
| 1786 | constant and we don't need a memory reference. */ | 1789 | constant and we don't need a memory reference. */ |
| 1787 | if (CONSTANT_P (op0) | 1790 | if (CONSTANT_P (op0) |
| 1788 | && mode2 != BLKmode | 1791 | && mode2 != BLKmode |
| @@ -1791,10 +1794,10 @@ | |||
| 1791 | && !must_force_mem) | 1794 | && !must_force_mem) |
| 1792 | op0 = force_reg (mode2, op0); | 1795 | op0 = force_reg (mode2, op0); |
| 1793 | 1796 | ||
| 1794 | 1797 | Index: gcc-4_6-branch/gcc/hooks.c | |
| 1795 | === modified file 'gcc/hooks.c' | 1798 | =================================================================== |
| 1796 | --- old/gcc/hooks.c 2010-11-25 13:16:03 +0000 | 1799 | --- gcc-4_6-branch.orig/gcc/hooks.c 2011-06-24 08:33:48.000000000 -0700 |
| 1797 | +++ new/gcc/hooks.c 2011-05-03 15:16:01 +0000 | 1800 | +++ gcc-4_6-branch/gcc/hooks.c 2011-09-16 20:16:00.267564792 -0700 |
| 1798 | @@ -101,6 +101,15 @@ | 1801 | @@ -101,6 +101,15 @@ |
| 1799 | return true; | 1802 | return true; |
| 1800 | } | 1803 | } |
| @@ -1811,10 +1814,10 @@ | |||
| 1811 | /* Generic hook that takes (FILE *, const char *) and does nothing. */ | 1814 | /* Generic hook that takes (FILE *, const char *) and does nothing. */ |
| 1812 | void | 1815 | void |
| 1813 | hook_void_FILEptr_constcharptr (FILE *a ATTRIBUTE_UNUSED, const char *b ATTRIBUTE_UNUSED) | 1816 | hook_void_FILEptr_constcharptr (FILE *a ATTRIBUTE_UNUSED, const char *b ATTRIBUTE_UNUSED) |
| 1814 | 1817 | Index: gcc-4_6-branch/gcc/hooks.h | |
| 1815 | === modified file 'gcc/hooks.h' | 1818 | =================================================================== |
| 1816 | --- old/gcc/hooks.h 2010-11-25 13:16:03 +0000 | 1819 | --- gcc-4_6-branch.orig/gcc/hooks.h 2011-06-24 08:33:48.000000000 -0700 |
| 1817 | +++ new/gcc/hooks.h 2011-05-03 15:16:01 +0000 | 1820 | +++ gcc-4_6-branch/gcc/hooks.h 2011-09-16 20:16:00.267564792 -0700 |
| 1818 | @@ -34,6 +34,8 @@ | 1821 | @@ -34,6 +34,8 @@ |
| 1819 | extern bool hook_bool_mode_true (enum machine_mode); | 1822 | extern bool hook_bool_mode_true (enum machine_mode); |
| 1820 | extern bool hook_bool_mode_const_rtx_false (enum machine_mode, const_rtx); | 1823 | extern bool hook_bool_mode_const_rtx_false (enum machine_mode, const_rtx); |
| @@ -1824,10 +1827,10 @@ | |||
| 1824 | extern bool hook_bool_tree_false (tree); | 1827 | extern bool hook_bool_tree_false (tree); |
| 1825 | extern bool hook_bool_const_tree_false (const_tree); | 1828 | extern bool hook_bool_const_tree_false (const_tree); |
| 1826 | extern bool hook_bool_tree_true (tree); | 1829 | extern bool hook_bool_tree_true (tree); |
| 1827 | 1830 | Index: gcc-4_6-branch/gcc/recog.c | |
| 1828 | === modified file 'gcc/recog.c' | 1831 | =================================================================== |
| 1829 | --- old/gcc/recog.c 2010-11-30 16:36:19 +0000 | 1832 | --- gcc-4_6-branch.orig/gcc/recog.c 2011-06-24 08:33:49.000000000 -0700 |
| 1830 | +++ new/gcc/recog.c 2011-05-03 15:17:25 +0000 | 1833 | +++ gcc-4_6-branch/gcc/recog.c 2011-09-16 20:16:00.277564886 -0700 |
| 1831 | @@ -930,7 +930,9 @@ | 1834 | @@ -930,7 +930,9 @@ |
| 1832 | return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode | 1835 | return ((GET_MODE (op) == VOIDmode || GET_MODE (op) == mode |
| 1833 | || mode == VOIDmode) | 1836 | || mode == VOIDmode) |
| @@ -1850,10 +1853,10 @@ | |||
| 1850 | } | 1853 | } |
| 1851 | 1854 | ||
| 1852 | /* Returns 1 if OP is an operand that is a CONST_INT. */ | 1855 | /* Returns 1 if OP is an operand that is a CONST_INT. */ |
| 1853 | 1856 | Index: gcc-4_6-branch/gcc/reload.c | |
| 1854 | === modified file 'gcc/reload.c' | 1857 | =================================================================== |
| 1855 | --- old/gcc/reload.c 2011-02-02 16:52:21 +0000 | 1858 | --- gcc-4_6-branch.orig/gcc/reload.c 2011-06-24 08:33:49.000000000 -0700 |
| 1856 | +++ new/gcc/reload.c 2011-05-03 15:17:25 +0000 | 1859 | +++ gcc-4_6-branch/gcc/reload.c 2011-09-16 20:16:00.277564886 -0700 |
| 1857 | @@ -4721,7 +4721,8 @@ | 1860 | @@ -4721,7 +4721,8 @@ |
| 1858 | simplify_gen_subreg (GET_MODE (x), reg_equiv_constant[regno], | 1861 | simplify_gen_subreg (GET_MODE (x), reg_equiv_constant[regno], |
| 1859 | GET_MODE (SUBREG_REG (x)), SUBREG_BYTE (x)); | 1862 | GET_MODE (SUBREG_REG (x)), SUBREG_BYTE (x)); |
| @@ -1882,10 +1885,10 @@ | |||
| 1882 | || targetm.preferred_reload_class (XEXP (x, 1), rclass) | 1885 | || targetm.preferred_reload_class (XEXP (x, 1), rclass) |
| 1883 | == NO_REGS)) | 1886 | == NO_REGS)) |
| 1884 | { | 1887 | { |
| 1885 | 1888 | Index: gcc-4_6-branch/gcc/reload1.c | |
| 1886 | === modified file 'gcc/reload1.c' | 1889 | =================================================================== |
| 1887 | --- old/gcc/reload1.c 2011-01-23 21:11:24 +0000 | 1890 | --- gcc-4_6-branch.orig/gcc/reload1.c 2011-06-24 08:33:49.000000000 -0700 |
| 1888 | +++ new/gcc/reload1.c 2011-05-03 15:17:25 +0000 | 1891 | +++ gcc-4_6-branch/gcc/reload1.c 2011-09-16 20:16:00.277564886 -0700 |
| 1889 | @@ -4155,6 +4155,9 @@ | 1892 | @@ -4155,6 +4155,9 @@ |
| 1890 | } | 1893 | } |
| 1891 | else if (function_invariant_p (x)) | 1894 | else if (function_invariant_p (x)) |
| @@ -1911,10 +1914,10 @@ | |||
| 1911 | if (! reg_equiv_memory_loc[i]) | 1914 | if (! reg_equiv_memory_loc[i]) |
| 1912 | reg_equiv_init[i] = NULL_RTX; | 1915 | reg_equiv_init[i] = NULL_RTX; |
| 1913 | } | 1916 | } |
| 1914 | 1917 | Index: gcc-4_6-branch/gcc/stor-layout.c | |
| 1915 | === modified file 'gcc/stor-layout.c' | 1918 | =================================================================== |
| 1916 | --- old/gcc/stor-layout.c 2011-03-10 22:37:22 +0000 | 1919 | --- gcc-4_6-branch.orig/gcc/stor-layout.c 2011-06-24 08:33:49.000000000 -0700 |
| 1917 | +++ new/gcc/stor-layout.c 2011-05-03 15:16:01 +0000 | 1920 | +++ gcc-4_6-branch/gcc/stor-layout.c 2011-09-16 20:16:00.287564867 -0700 |
| 1918 | @@ -546,6 +546,34 @@ | 1921 | @@ -546,6 +546,34 @@ |
| 1919 | return MIN (BIGGEST_ALIGNMENT, MAX (1, mode_base_align[mode]*BITS_PER_UNIT)); | 1922 | return MIN (BIGGEST_ALIGNMENT, MAX (1, mode_base_align[mode]*BITS_PER_UNIT)); |
| 1920 | } | 1923 | } |
| @@ -1967,10 +1970,10 @@ | |||
| 1967 | if (TYPE_MODE (type) != BLKmode | 1970 | if (TYPE_MODE (type) != BLKmode |
| 1968 | && STRICT_ALIGNMENT && TYPE_ALIGN (type) < BIGGEST_ALIGNMENT | 1971 | && STRICT_ALIGNMENT && TYPE_ALIGN (type) < BIGGEST_ALIGNMENT |
| 1969 | && TYPE_ALIGN (type) < GET_MODE_ALIGNMENT (TYPE_MODE (type))) | 1972 | && TYPE_ALIGN (type) < GET_MODE_ALIGNMENT (TYPE_MODE (type))) |
| 1970 | 1973 | Index: gcc-4_6-branch/gcc/target.def | |
| 1971 | === modified file 'gcc/target.def' | 1974 | =================================================================== |
| 1972 | --- old/gcc/target.def 2011-01-22 19:35:10 +0000 | 1975 | --- gcc-4_6-branch.orig/gcc/target.def 2011-06-24 08:33:48.000000000 -0700 |
| 1973 | +++ new/gcc/target.def 2011-05-03 15:17:25 +0000 | 1976 | +++ gcc-4_6-branch/gcc/target.def 2011-09-16 20:16:00.287564867 -0700 |
| 1974 | @@ -1344,6 +1344,13 @@ | 1977 | @@ -1344,6 +1344,13 @@ |
| 1975 | unsigned, (unsigned nunroll, struct loop *loop), | 1978 | unsigned, (unsigned nunroll, struct loop *loop), |
| 1976 | NULL) | 1979 | NULL) |
| @@ -2024,10 +2027,10 @@ | |||
| 2024 | /* Compute cost of moving data from a register of class FROM to one of | 2027 | /* Compute cost of moving data from a register of class FROM to one of |
| 2025 | TO, using MODE. */ | 2028 | TO, using MODE. */ |
| 2026 | DEFHOOK | 2029 | DEFHOOK |
| 2027 | 2030 | Index: gcc-4_6-branch/gcc/targhooks.c | |
| 2028 | === modified file 'gcc/targhooks.c' | 2031 | =================================================================== |
| 2029 | --- old/gcc/targhooks.c 2011-01-14 15:02:20 +0000 | 2032 | --- gcc-4_6-branch.orig/gcc/targhooks.c 2011-06-24 08:33:48.000000000 -0700 |
| 2030 | +++ new/gcc/targhooks.c 2011-05-03 15:17:25 +0000 | 2033 | +++ gcc-4_6-branch/gcc/targhooks.c 2011-09-16 20:16:00.287564867 -0700 |
| 2031 | @@ -1519,4 +1519,15 @@ | 2034 | @@ -1519,4 +1519,15 @@ |
| 2032 | { OPT_LEVELS_NONE, 0, NULL, 0 } | 2035 | { OPT_LEVELS_NONE, 0, NULL, 0 } |
| 2033 | }; | 2036 | }; |
| @@ -2044,19 +2047,19 @@ | |||
| 2044 | +} | 2047 | +} |
| 2045 | + | 2048 | + |
| 2046 | #include "gt-targhooks.h" | 2049 | #include "gt-targhooks.h" |
| 2047 | 2050 | Index: gcc-4_6-branch/gcc/targhooks.h | |
| 2048 | === modified file 'gcc/targhooks.h' | 2051 | =================================================================== |
| 2049 | --- old/gcc/targhooks.h 2011-01-14 15:02:20 +0000 | 2052 | --- gcc-4_6-branch.orig/gcc/targhooks.h 2011-06-24 08:33:48.000000000 -0700 |
| 2050 | +++ new/gcc/targhooks.h 2011-05-03 15:17:25 +0000 | 2053 | +++ gcc-4_6-branch/gcc/targhooks.h 2011-09-16 20:16:00.287564867 -0700 |
| 2051 | @@ -183,3 +183,4 @@ | 2054 | @@ -183,3 +183,4 @@ |
| 2052 | 2055 | ||
| 2053 | extern void *default_get_pch_validity (size_t *); | 2056 | extern void *default_get_pch_validity (size_t *); |
| 2054 | extern const char *default_pch_valid_p (const void *, size_t); | 2057 | extern const char *default_pch_valid_p (const void *, size_t); |
| 2055 | +extern bool default_legitimate_constant_p (enum machine_mode, rtx); | 2058 | +extern bool default_legitimate_constant_p (enum machine_mode, rtx); |
| 2056 | 2059 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon-vld3-1.c | |
| 2057 | === added file 'gcc/testsuite/gcc.target/arm/neon-vld3-1.c' | 2060 | =================================================================== |
| 2058 | --- old/gcc/testsuite/gcc.target/arm/neon-vld3-1.c 1970-01-01 00:00:00 +0000 | 2061 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 |
| 2059 | +++ new/gcc/testsuite/gcc.target/arm/neon-vld3-1.c 2011-05-03 15:14:56 +0000 | 2062 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon-vld3-1.c 2011-09-16 20:16:00.287564867 -0700 |
| 2060 | @@ -0,0 +1,27 @@ | 2063 | @@ -0,0 +1,27 @@ |
| 2061 | +/* { dg-do run } */ | 2064 | +/* { dg-do run } */ |
| 2062 | +/* { dg-require-effective-target arm_neon_hw } */ | 2065 | +/* { dg-require-effective-target arm_neon_hw } */ |
| @@ -2085,10 +2088,10 @@ | |||
| 2085 | + foo (buffer); | 2088 | + foo (buffer); |
| 2086 | + return buffer[0] != 3; | 2089 | + return buffer[0] != 3; |
| 2087 | +} | 2090 | +} |
| 2088 | 2091 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon-vst3-1.c | |
| 2089 | === added file 'gcc/testsuite/gcc.target/arm/neon-vst3-1.c' | 2092 | =================================================================== |
| 2090 | --- old/gcc/testsuite/gcc.target/arm/neon-vst3-1.c 1970-01-01 00:00:00 +0000 | 2093 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 |
| 2091 | +++ new/gcc/testsuite/gcc.target/arm/neon-vst3-1.c 2011-05-03 15:14:56 +0000 | 2094 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon-vst3-1.c 2011-09-16 20:16:00.287564867 -0700 |
| 2092 | @@ -0,0 +1,25 @@ | 2095 | @@ -0,0 +1,25 @@ |
| 2093 | +/* { dg-do run } */ | 2096 | +/* { dg-do run } */ |
| 2094 | +/* { dg-require-effective-target arm_neon_hw } */ | 2097 | +/* { dg-require-effective-target arm_neon_hw } */ |
| @@ -2115,10 +2118,10 @@ | |||
| 2115 | + foo (buffer); | 2118 | + foo (buffer); |
| 2116 | + return buffer[35] != 1; | 2119 | + return buffer[35] != 1; |
| 2117 | +} | 2120 | +} |
| 2118 | 2121 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c | |
| 2119 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c' | 2122 | =================================================================== |
| 2120 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c 2010-05-24 18:36:31 +0000 | 2123 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2121 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c 2011-05-03 15:14:56 +0000 | 2124 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupf32.c 2011-09-16 20:16:00.297564810 -0700 |
| 2122 | @@ -15,5 +15,5 @@ | 2125 | @@ -15,5 +15,5 @@ |
| 2123 | out_float32x4_t = vld1q_dup_f32 (0); | 2126 | out_float32x4_t = vld1q_dup_f32 (0); |
| 2124 | } | 2127 | } |
| @@ -2126,10 +2129,10 @@ | |||
| 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" } } */ | 2129 | -/* { 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" } } */ | 2130 | +/* { 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 } } */ | 2131 | /* { dg-final { cleanup-saved-temps } } */ |
| 2129 | 2132 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c | |
| 2130 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c' | 2133 | =================================================================== |
| 2131 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c 2010-05-24 18:36:31 +0000 | 2134 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2132 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c 2011-05-03 15:14:56 +0000 | 2135 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp16.c 2011-09-16 20:16:00.297564810 -0700 |
| 2133 | @@ -15,5 +15,5 @@ | 2136 | @@ -15,5 +15,5 @@ |
| 2134 | out_poly16x8_t = vld1q_dup_p16 (0); | 2137 | out_poly16x8_t = vld1q_dup_p16 (0); |
| 2135 | } | 2138 | } |
| @@ -2137,10 +2140,10 @@ | |||
| 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" } } */ | 2140 | -/* { 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" } } */ | 2141 | +/* { 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 } } */ | 2142 | /* { dg-final { cleanup-saved-temps } } */ |
| 2140 | 2143 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c | |
| 2141 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c' | 2144 | =================================================================== |
| 2142 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c 2010-05-24 18:36:31 +0000 | 2145 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2143 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c 2011-05-03 15:14:56 +0000 | 2146 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupp8.c 2011-09-16 20:16:00.297564810 -0700 |
| 2144 | @@ -15,5 +15,5 @@ | 2147 | @@ -15,5 +15,5 @@ |
| 2145 | out_poly8x16_t = vld1q_dup_p8 (0); | 2148 | out_poly8x16_t = vld1q_dup_p8 (0); |
| 2146 | } | 2149 | } |
| @@ -2148,10 +2151,10 @@ | |||
| 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" } } */ | 2151 | -/* { 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" } } */ | 2152 | +/* { 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 } } */ | 2153 | /* { dg-final { cleanup-saved-temps } } */ |
| 2151 | 2154 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c | |
| 2152 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c' | 2155 | =================================================================== |
| 2153 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c 2010-05-24 18:36:31 +0000 | 2156 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2154 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c 2011-05-03 15:14:56 +0000 | 2157 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups16.c 2011-09-16 20:16:00.297564810 -0700 |
| 2155 | @@ -15,5 +15,5 @@ | 2158 | @@ -15,5 +15,5 @@ |
| 2156 | out_int16x8_t = vld1q_dup_s16 (0); | 2159 | out_int16x8_t = vld1q_dup_s16 (0); |
| 2157 | } | 2160 | } |
| @@ -2159,10 +2162,10 @@ | |||
| 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" } } */ | 2162 | -/* { 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" } } */ | 2163 | +/* { 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 } } */ | 2164 | /* { dg-final { cleanup-saved-temps } } */ |
| 2162 | 2165 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c | |
| 2163 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c' | 2166 | =================================================================== |
| 2164 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c 2010-05-24 18:36:31 +0000 | 2167 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2165 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c 2011-05-03 15:14:56 +0000 | 2168 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups32.c 2011-09-16 20:16:00.297564810 -0700 |
| 2166 | @@ -15,5 +15,5 @@ | 2169 | @@ -15,5 +15,5 @@ |
| 2167 | out_int32x4_t = vld1q_dup_s32 (0); | 2170 | out_int32x4_t = vld1q_dup_s32 (0); |
| 2168 | } | 2171 | } |
| @@ -2170,10 +2173,10 @@ | |||
| 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" } } */ | 2173 | -/* { 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" } } */ | 2174 | +/* { 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 } } */ | 2175 | /* { dg-final { cleanup-saved-temps } } */ |
| 2173 | 2176 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c | |
| 2174 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c' | 2177 | =================================================================== |
| 2175 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c 2010-05-24 18:36:31 +0000 | 2178 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2176 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c 2011-05-03 15:14:56 +0000 | 2179 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups64.c 2011-09-16 20:16:00.347564808 -0700 |
| 2177 | @@ -15,5 +15,5 @@ | 2180 | @@ -15,5 +15,5 @@ |
| 2178 | out_int64x2_t = vld1q_dup_s64 (0); | 2181 | out_int64x2_t = vld1q_dup_s64 (0); |
| 2179 | } | 2182 | } |
| @@ -2181,10 +2184,10 @@ | |||
| 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" } } */ | 2184 | -/* { 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" } } */ | 2185 | +/* { 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 } } */ | 2186 | /* { dg-final { cleanup-saved-temps } } */ |
| 2184 | 2187 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c | |
| 2185 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c' | 2188 | =================================================================== |
| 2186 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c 2010-05-24 18:36:31 +0000 | 2189 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2187 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c 2011-05-03 15:14:56 +0000 | 2190 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dups8.c 2011-09-16 20:16:00.347564808 -0700 |
| 2188 | @@ -15,5 +15,5 @@ | 2191 | @@ -15,5 +15,5 @@ |
| 2189 | out_int8x16_t = vld1q_dup_s8 (0); | 2192 | out_int8x16_t = vld1q_dup_s8 (0); |
| 2190 | } | 2193 | } |
| @@ -2192,10 +2195,10 @@ | |||
| 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" } } */ | 2195 | -/* { 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" } } */ | 2196 | +/* { 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 } } */ | 2197 | /* { dg-final { cleanup-saved-temps } } */ |
| 2195 | 2198 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c | |
| 2196 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c' | 2199 | =================================================================== |
| 2197 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c 2010-05-24 18:36:31 +0000 | 2200 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2198 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c 2011-05-03 15:14:56 +0000 | 2201 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu16.c 2011-09-16 20:16:00.347564808 -0700 |
| 2199 | @@ -15,5 +15,5 @@ | 2202 | @@ -15,5 +15,5 @@ |
| 2200 | out_uint16x8_t = vld1q_dup_u16 (0); | 2203 | out_uint16x8_t = vld1q_dup_u16 (0); |
| 2201 | } | 2204 | } |
| @@ -2203,10 +2206,10 @@ | |||
| 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" } } */ | 2206 | -/* { 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" } } */ | 2207 | +/* { 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 } } */ | 2208 | /* { dg-final { cleanup-saved-temps } } */ |
| 2206 | 2209 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c | |
| 2207 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c' | 2210 | =================================================================== |
| 2208 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c 2010-05-24 18:36:31 +0000 | 2211 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2209 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c 2011-05-03 15:14:56 +0000 | 2212 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu32.c 2011-09-16 20:16:00.347564808 -0700 |
| 2210 | @@ -15,5 +15,5 @@ | 2213 | @@ -15,5 +15,5 @@ |
| 2211 | out_uint32x4_t = vld1q_dup_u32 (0); | 2214 | out_uint32x4_t = vld1q_dup_u32 (0); |
| 2212 | } | 2215 | } |
| @@ -2214,10 +2217,10 @@ | |||
| 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" } } */ | 2217 | -/* { 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" } } */ | 2218 | +/* { 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 } } */ | 2219 | /* { dg-final { cleanup-saved-temps } } */ |
| 2217 | 2220 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c | |
| 2218 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c' | 2221 | =================================================================== |
| 2219 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c 2010-05-24 18:36:31 +0000 | 2222 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2220 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c 2011-05-03 15:14:56 +0000 | 2223 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu64.c 2011-09-16 20:16:00.347564808 -0700 |
| 2221 | @@ -15,5 +15,5 @@ | 2224 | @@ -15,5 +15,5 @@ |
| 2222 | out_uint64x2_t = vld1q_dup_u64 (0); | 2225 | out_uint64x2_t = vld1q_dup_u64 (0); |
| 2223 | } | 2226 | } |
| @@ -2225,10 +2228,10 @@ | |||
| 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" } } */ | 2228 | -/* { 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" } } */ | 2229 | +/* { 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 } } */ | 2230 | /* { dg-final { cleanup-saved-temps } } */ |
| 2228 | 2231 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c | |
| 2229 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c' | 2232 | =================================================================== |
| 2230 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c 2010-05-24 18:36:31 +0000 | 2233 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2231 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c 2011-05-03 15:14:56 +0000 | 2234 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_dupu8.c 2011-09-16 20:16:00.347564808 -0700 |
| 2232 | @@ -15,5 +15,5 @@ | 2235 | @@ -15,5 +15,5 @@ |
| 2233 | out_uint8x16_t = vld1q_dup_u8 (0); | 2236 | out_uint8x16_t = vld1q_dup_u8 (0); |
| 2234 | } | 2237 | } |
| @@ -2236,10 +2239,10 @@ | |||
| 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" } } */ | 2239 | -/* { 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" } } */ | 2240 | +/* { 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 } } */ | 2241 | /* { dg-final { cleanup-saved-temps } } */ |
| 2239 | 2242 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c | |
| 2240 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c' | 2243 | =================================================================== |
| 2241 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c 2010-05-24 18:36:31 +0000 | 2244 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2242 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c 2011-05-03 15:14:56 +0000 | 2245 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanef32.c 2011-09-16 20:16:00.347564808 -0700 |
| 2243 | @@ -16,5 +16,5 @@ | 2246 | @@ -16,5 +16,5 @@ |
| 2244 | out_float32x4_t = vld1q_lane_f32 (0, arg1_float32x4_t, 1); | 2247 | out_float32x4_t = vld1q_lane_f32 (0, arg1_float32x4_t, 1); |
| 2245 | } | 2248 | } |
| @@ -2247,10 +2250,10 @@ | |||
| 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" } } */ | 2250 | -/* { 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" } } */ | 2251 | +/* { 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 } } */ | 2252 | /* { dg-final { cleanup-saved-temps } } */ |
| 2250 | 2253 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c | |
| 2251 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c' | 2254 | =================================================================== |
| 2252 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c 2010-05-24 18:36:31 +0000 | 2255 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2253 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c 2011-05-03 15:14:56 +0000 | 2256 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep16.c 2011-09-16 20:16:00.347564808 -0700 |
| 2254 | @@ -16,5 +16,5 @@ | 2257 | @@ -16,5 +16,5 @@ |
| 2255 | out_poly16x8_t = vld1q_lane_p16 (0, arg1_poly16x8_t, 1); | 2258 | out_poly16x8_t = vld1q_lane_p16 (0, arg1_poly16x8_t, 1); |
| 2256 | } | 2259 | } |
| @@ -2258,10 +2261,10 @@ | |||
| 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" } } */ | 2261 | -/* { 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" } } */ | 2262 | +/* { 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 } } */ | 2263 | /* { dg-final { cleanup-saved-temps } } */ |
| 2261 | 2264 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c | |
| 2262 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c' | 2265 | =================================================================== |
| 2263 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c 2010-05-24 18:36:31 +0000 | 2266 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2264 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c 2011-05-03 15:14:56 +0000 | 2267 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanep8.c 2011-09-16 20:16:00.347564808 -0700 |
| 2265 | @@ -16,5 +16,5 @@ | 2268 | @@ -16,5 +16,5 @@ |
| 2266 | out_poly8x16_t = vld1q_lane_p8 (0, arg1_poly8x16_t, 1); | 2269 | out_poly8x16_t = vld1q_lane_p8 (0, arg1_poly8x16_t, 1); |
| 2267 | } | 2270 | } |
| @@ -2269,10 +2272,10 @@ | |||
| 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" } } */ | 2272 | -/* { 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" } } */ | 2273 | +/* { 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 } } */ | 2274 | /* { dg-final { cleanup-saved-temps } } */ |
| 2272 | 2275 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c | |
| 2273 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c' | 2276 | =================================================================== |
| 2274 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c 2010-05-24 18:36:31 +0000 | 2277 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2275 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c 2011-05-03 15:14:56 +0000 | 2278 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes16.c 2011-09-16 20:16:00.347564808 -0700 |
| 2276 | @@ -16,5 +16,5 @@ | 2279 | @@ -16,5 +16,5 @@ |
| 2277 | out_int16x8_t = vld1q_lane_s16 (0, arg1_int16x8_t, 1); | 2280 | out_int16x8_t = vld1q_lane_s16 (0, arg1_int16x8_t, 1); |
| 2278 | } | 2281 | } |
| @@ -2280,10 +2283,10 @@ | |||
| 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" } } */ | 2283 | -/* { 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" } } */ | 2284 | +/* { 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 } } */ | 2285 | /* { dg-final { cleanup-saved-temps } } */ |
| 2283 | 2286 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c | |
| 2284 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c' | 2287 | =================================================================== |
| 2285 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c 2010-05-24 18:36:31 +0000 | 2288 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2286 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c 2011-05-03 15:14:56 +0000 | 2289 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes32.c 2011-09-16 20:16:00.347564808 -0700 |
| 2287 | @@ -16,5 +16,5 @@ | 2290 | @@ -16,5 +16,5 @@ |
| 2288 | out_int32x4_t = vld1q_lane_s32 (0, arg1_int32x4_t, 1); | 2291 | out_int32x4_t = vld1q_lane_s32 (0, arg1_int32x4_t, 1); |
| 2289 | } | 2292 | } |
| @@ -2291,10 +2294,10 @@ | |||
| 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" } } */ | 2294 | -/* { 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" } } */ | 2295 | +/* { 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 } } */ | 2296 | /* { dg-final { cleanup-saved-temps } } */ |
| 2294 | 2297 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c | |
| 2295 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c' | 2298 | =================================================================== |
| 2296 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c 2010-05-24 18:36:31 +0000 | 2299 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2297 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c 2011-05-03 15:14:56 +0000 | 2300 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes64.c 2011-09-16 20:16:00.347564808 -0700 |
| 2298 | @@ -16,5 +16,5 @@ | 2301 | @@ -16,5 +16,5 @@ |
| 2299 | out_int64x2_t = vld1q_lane_s64 (0, arg1_int64x2_t, 1); | 2302 | out_int64x2_t = vld1q_lane_s64 (0, arg1_int64x2_t, 1); |
| 2300 | } | 2303 | } |
| @@ -2302,10 +2305,10 @@ | |||
| 2302 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2305 | -/* { 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" } } */ | 2306 | +/* { 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 } } */ | 2307 | /* { dg-final { cleanup-saved-temps } } */ |
| 2305 | 2308 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c | |
| 2306 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c' | 2309 | =================================================================== |
| 2307 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c 2010-05-24 18:36:31 +0000 | 2310 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2308 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c 2011-05-03 15:14:56 +0000 | 2311 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_lanes8.c 2011-09-16 20:16:00.347564808 -0700 |
| 2309 | @@ -16,5 +16,5 @@ | 2312 | @@ -16,5 +16,5 @@ |
| 2310 | out_int8x16_t = vld1q_lane_s8 (0, arg1_int8x16_t, 1); | 2313 | out_int8x16_t = vld1q_lane_s8 (0, arg1_int8x16_t, 1); |
| 2311 | } | 2314 | } |
| @@ -2313,10 +2316,10 @@ | |||
| 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" } } */ | 2316 | -/* { 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" } } */ | 2317 | +/* { 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 } } */ | 2318 | /* { dg-final { cleanup-saved-temps } } */ |
| 2316 | 2319 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c | |
| 2317 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c' | 2320 | =================================================================== |
| 2318 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c 2010-05-24 18:36:31 +0000 | 2321 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2319 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c 2011-05-03 15:14:56 +0000 | 2322 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu16.c 2011-09-16 20:16:00.347564808 -0700 |
| 2320 | @@ -16,5 +16,5 @@ | 2323 | @@ -16,5 +16,5 @@ |
| 2321 | out_uint16x8_t = vld1q_lane_u16 (0, arg1_uint16x8_t, 1); | 2324 | out_uint16x8_t = vld1q_lane_u16 (0, arg1_uint16x8_t, 1); |
| 2322 | } | 2325 | } |
| @@ -2324,10 +2327,10 @@ | |||
| 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" } } */ | 2327 | -/* { 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" } } */ | 2328 | +/* { 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 } } */ | 2329 | /* { dg-final { cleanup-saved-temps } } */ |
| 2327 | 2330 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c | |
| 2328 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c' | 2331 | =================================================================== |
| 2329 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c 2010-05-24 18:36:31 +0000 | 2332 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2330 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c 2011-05-03 15:14:56 +0000 | 2333 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu32.c 2011-09-16 20:16:00.347564808 -0700 |
| 2331 | @@ -16,5 +16,5 @@ | 2334 | @@ -16,5 +16,5 @@ |
| 2332 | out_uint32x4_t = vld1q_lane_u32 (0, arg1_uint32x4_t, 1); | 2335 | out_uint32x4_t = vld1q_lane_u32 (0, arg1_uint32x4_t, 1); |
| 2333 | } | 2336 | } |
| @@ -2335,10 +2338,10 @@ | |||
| 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" } } */ | 2338 | -/* { 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" } } */ | 2339 | +/* { 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 } } */ | 2340 | /* { dg-final { cleanup-saved-temps } } */ |
| 2338 | 2341 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c | |
| 2339 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c' | 2342 | =================================================================== |
| 2340 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c 2010-05-24 18:36:31 +0000 | 2343 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2341 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c 2011-05-03 15:14:56 +0000 | 2344 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu64.c 2011-09-16 20:16:00.347564808 -0700 |
| 2342 | @@ -16,5 +16,5 @@ | 2345 | @@ -16,5 +16,5 @@ |
| 2343 | out_uint64x2_t = vld1q_lane_u64 (0, arg1_uint64x2_t, 1); | 2346 | out_uint64x2_t = vld1q_lane_u64 (0, arg1_uint64x2_t, 1); |
| 2344 | } | 2347 | } |
| @@ -2346,10 +2349,10 @@ | |||
| 2346 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2349 | -/* { 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" } } */ | 2350 | +/* { 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 } } */ | 2351 | /* { dg-final { cleanup-saved-temps } } */ |
| 2349 | 2352 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c | |
| 2350 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c' | 2353 | =================================================================== |
| 2351 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c 2010-05-24 18:36:31 +0000 | 2354 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2352 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c 2011-05-03 15:14:56 +0000 | 2355 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Q_laneu8.c 2011-09-16 20:16:00.347564808 -0700 |
| 2353 | @@ -16,5 +16,5 @@ | 2356 | @@ -16,5 +16,5 @@ |
| 2354 | out_uint8x16_t = vld1q_lane_u8 (0, arg1_uint8x16_t, 1); | 2357 | out_uint8x16_t = vld1q_lane_u8 (0, arg1_uint8x16_t, 1); |
| 2355 | } | 2358 | } |
| @@ -2357,10 +2360,10 @@ | |||
| 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" } } */ | 2360 | -/* { 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" } } */ | 2361 | +/* { 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 } } */ | 2362 | /* { dg-final { cleanup-saved-temps } } */ |
| 2360 | 2363 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c | |
| 2361 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c' | 2364 | =================================================================== |
| 2362 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c 2010-05-24 18:36:31 +0000 | 2365 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2363 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c 2011-05-03 15:14:56 +0000 | 2366 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qf32.c 2011-09-16 20:16:00.357564842 -0700 |
| 2364 | @@ -15,5 +15,5 @@ | 2367 | @@ -15,5 +15,5 @@ |
| 2365 | out_float32x4_t = vld1q_f32 (0); | 2368 | out_float32x4_t = vld1q_f32 (0); |
| 2366 | } | 2369 | } |
| @@ -2368,10 +2371,10 @@ | |||
| 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" } } */ | 2371 | -/* { 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" } } */ | 2372 | +/* { 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 } } */ | 2373 | /* { dg-final { cleanup-saved-temps } } */ |
| 2371 | 2374 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c | |
| 2372 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c' | 2375 | =================================================================== |
| 2373 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c 2010-05-24 18:36:31 +0000 | 2376 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2374 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c 2011-05-03 15:14:56 +0000 | 2377 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qp16.c 2011-09-16 20:16:00.357564842 -0700 |
| 2375 | @@ -15,5 +15,5 @@ | 2378 | @@ -15,5 +15,5 @@ |
| 2376 | out_poly16x8_t = vld1q_p16 (0); | 2379 | out_poly16x8_t = vld1q_p16 (0); |
| 2377 | } | 2380 | } |
| @@ -2379,10 +2382,10 @@ | |||
| 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" } } */ | 2382 | -/* { 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" } } */ | 2383 | +/* { 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 } } */ | 2384 | /* { dg-final { cleanup-saved-temps } } */ |
| 2382 | 2385 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c | |
| 2383 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c' | 2386 | =================================================================== |
| 2384 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c 2010-05-24 18:36:31 +0000 | 2387 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2385 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c 2011-05-03 15:14:56 +0000 | 2388 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qp8.c 2011-09-16 20:16:00.357564842 -0700 |
| 2386 | @@ -15,5 +15,5 @@ | 2389 | @@ -15,5 +15,5 @@ |
| 2387 | out_poly8x16_t = vld1q_p8 (0); | 2390 | out_poly8x16_t = vld1q_p8 (0); |
| 2388 | } | 2391 | } |
| @@ -2390,10 +2393,10 @@ | |||
| 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" } } */ | 2393 | -/* { 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" } } */ | 2394 | +/* { 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 } } */ | 2395 | /* { dg-final { cleanup-saved-temps } } */ |
| 2393 | 2396 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c | |
| 2394 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c' | 2397 | =================================================================== |
| 2395 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c 2010-05-24 18:36:31 +0000 | 2398 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2396 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c 2011-05-03 15:14:56 +0000 | 2399 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs16.c 2011-09-16 20:16:00.357564842 -0700 |
| 2397 | @@ -15,5 +15,5 @@ | 2400 | @@ -15,5 +15,5 @@ |
| 2398 | out_int16x8_t = vld1q_s16 (0); | 2401 | out_int16x8_t = vld1q_s16 (0); |
| 2399 | } | 2402 | } |
| @@ -2401,10 +2404,10 @@ | |||
| 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" } } */ | 2404 | -/* { 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" } } */ | 2405 | +/* { 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 } } */ | 2406 | /* { dg-final { cleanup-saved-temps } } */ |
| 2404 | 2407 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c | |
| 2405 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c' | 2408 | =================================================================== |
| 2406 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c 2010-05-24 18:36:31 +0000 | 2409 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2407 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c 2011-05-03 15:14:56 +0000 | 2410 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs32.c 2011-09-16 20:16:00.357564842 -0700 |
| 2408 | @@ -15,5 +15,5 @@ | 2411 | @@ -15,5 +15,5 @@ |
| 2409 | out_int32x4_t = vld1q_s32 (0); | 2412 | out_int32x4_t = vld1q_s32 (0); |
| 2410 | } | 2413 | } |
| @@ -2412,10 +2415,10 @@ | |||
| 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" } } */ | 2415 | -/* { 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" } } */ | 2416 | +/* { 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 } } */ | 2417 | /* { dg-final { cleanup-saved-temps } } */ |
| 2415 | 2418 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c | |
| 2416 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c' | 2419 | =================================================================== |
| 2417 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c 2010-05-24 18:36:31 +0000 | 2420 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2418 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c 2011-05-03 15:14:56 +0000 | 2421 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs64.c 2011-09-16 20:16:00.357564842 -0700 |
| 2419 | @@ -15,5 +15,5 @@ | 2422 | @@ -15,5 +15,5 @@ |
| 2420 | out_int64x2_t = vld1q_s64 (0); | 2423 | out_int64x2_t = vld1q_s64 (0); |
| 2421 | } | 2424 | } |
| @@ -2423,10 +2426,10 @@ | |||
| 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" } } */ | 2426 | -/* { 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" } } */ | 2427 | +/* { 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 } } */ | 2428 | /* { dg-final { cleanup-saved-temps } } */ |
| 2426 | 2429 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c | |
| 2427 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c' | 2430 | =================================================================== |
| 2428 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c 2010-05-24 18:36:31 +0000 | 2431 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2429 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c 2011-05-03 15:14:56 +0000 | 2432 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qs8.c 2011-09-16 20:16:00.357564842 -0700 |
| 2430 | @@ -15,5 +15,5 @@ | 2433 | @@ -15,5 +15,5 @@ |
| 2431 | out_int8x16_t = vld1q_s8 (0); | 2434 | out_int8x16_t = vld1q_s8 (0); |
| 2432 | } | 2435 | } |
| @@ -2434,10 +2437,10 @@ | |||
| 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" } } */ | 2437 | -/* { 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" } } */ | 2438 | +/* { 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 } } */ | 2439 | /* { dg-final { cleanup-saved-temps } } */ |
| 2437 | 2440 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c | |
| 2438 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c' | 2441 | =================================================================== |
| 2439 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c 2010-05-24 18:36:31 +0000 | 2442 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2440 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c 2011-05-03 15:14:56 +0000 | 2443 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu16.c 2011-09-16 20:16:00.357564842 -0700 |
| 2441 | @@ -15,5 +15,5 @@ | 2444 | @@ -15,5 +15,5 @@ |
| 2442 | out_uint16x8_t = vld1q_u16 (0); | 2445 | out_uint16x8_t = vld1q_u16 (0); |
| 2443 | } | 2446 | } |
| @@ -2445,10 +2448,10 @@ | |||
| 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" } } */ | 2448 | -/* { 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" } } */ | 2449 | +/* { 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 } } */ | 2450 | /* { dg-final { cleanup-saved-temps } } */ |
| 2448 | 2451 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c | |
| 2449 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c' | 2452 | =================================================================== |
| 2450 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c 2010-05-24 18:36:31 +0000 | 2453 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2451 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c 2011-05-03 15:14:56 +0000 | 2454 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu32.c 2011-09-16 20:16:00.357564842 -0700 |
| 2452 | @@ -15,5 +15,5 @@ | 2455 | @@ -15,5 +15,5 @@ |
| 2453 | out_uint32x4_t = vld1q_u32 (0); | 2456 | out_uint32x4_t = vld1q_u32 (0); |
| 2454 | } | 2457 | } |
| @@ -2456,10 +2459,10 @@ | |||
| 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" } } */ | 2459 | -/* { 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" } } */ | 2460 | +/* { 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 } } */ | 2461 | /* { dg-final { cleanup-saved-temps } } */ |
| 2459 | 2462 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c | |
| 2460 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c' | 2463 | =================================================================== |
| 2461 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c 2010-05-24 18:36:31 +0000 | 2464 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2462 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c 2011-05-03 15:14:56 +0000 | 2465 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu64.c 2011-09-16 20:16:00.357564842 -0700 |
| 2463 | @@ -15,5 +15,5 @@ | 2466 | @@ -15,5 +15,5 @@ |
| 2464 | out_uint64x2_t = vld1q_u64 (0); | 2467 | out_uint64x2_t = vld1q_u64 (0); |
| 2465 | } | 2468 | } |
| @@ -2467,10 +2470,10 @@ | |||
| 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" } } */ | 2470 | -/* { 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" } } */ | 2471 | +/* { 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 } } */ | 2472 | /* { dg-final { cleanup-saved-temps } } */ |
| 2470 | 2473 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c | |
| 2471 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c' | 2474 | =================================================================== |
| 2472 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c 2010-05-24 18:36:31 +0000 | 2475 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2473 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c 2011-05-03 15:14:56 +0000 | 2476 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1Qu8.c 2011-09-16 20:16:00.357564842 -0700 |
| 2474 | @@ -15,5 +15,5 @@ | 2477 | @@ -15,5 +15,5 @@ |
| 2475 | out_uint8x16_t = vld1q_u8 (0); | 2478 | out_uint8x16_t = vld1q_u8 (0); |
| 2476 | } | 2479 | } |
| @@ -2478,10 +2481,10 @@ | |||
| 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" } } */ | 2481 | -/* { 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" } } */ | 2482 | +/* { 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 } } */ | 2483 | /* { dg-final { cleanup-saved-temps } } */ |
| 2481 | 2484 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c | |
| 2482 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c' | 2485 | =================================================================== |
| 2483 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c 2010-05-24 18:36:31 +0000 | 2486 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2484 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c 2011-05-03 15:14:56 +0000 | 2487 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupf32.c 2011-09-16 20:16:00.357564842 -0700 |
| 2485 | @@ -15,5 +15,5 @@ | 2488 | @@ -15,5 +15,5 @@ |
| 2486 | out_float32x2_t = vld1_dup_f32 (0); | 2489 | out_float32x2_t = vld1_dup_f32 (0); |
| 2487 | } | 2490 | } |
| @@ -2489,10 +2492,10 @@ | |||
| 2489 | -/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2492 | -/* { 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" } } */ | 2493 | +/* { 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 } } */ | 2494 | /* { dg-final { cleanup-saved-temps } } */ |
| 2492 | 2495 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c | |
| 2493 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c' | 2496 | =================================================================== |
| 2494 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c 2010-05-24 18:36:31 +0000 | 2497 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2495 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c 2011-05-03 15:14:56 +0000 | 2498 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupp16.c 2011-09-16 20:16:00.357564842 -0700 |
| 2496 | @@ -15,5 +15,5 @@ | 2499 | @@ -15,5 +15,5 @@ |
| 2497 | out_poly16x4_t = vld1_dup_p16 (0); | 2500 | out_poly16x4_t = vld1_dup_p16 (0); |
| 2498 | } | 2501 | } |
| @@ -2500,10 +2503,10 @@ | |||
| 2500 | -/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2503 | -/* { 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" } } */ | 2504 | +/* { 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 } } */ | 2505 | /* { dg-final { cleanup-saved-temps } } */ |
| 2503 | 2506 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c | |
| 2504 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c' | 2507 | =================================================================== |
| 2505 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c 2010-05-24 18:36:31 +0000 | 2508 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2506 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c 2011-05-03 15:14:56 +0000 | 2509 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupp8.c 2011-09-16 20:16:00.357564842 -0700 |
| 2507 | @@ -15,5 +15,5 @@ | 2510 | @@ -15,5 +15,5 @@ |
| 2508 | out_poly8x8_t = vld1_dup_p8 (0); | 2511 | out_poly8x8_t = vld1_dup_p8 (0); |
| 2509 | } | 2512 | } |
| @@ -2511,10 +2514,10 @@ | |||
| 2511 | -/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2514 | -/* { 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" } } */ | 2515 | +/* { 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 } } */ | 2516 | /* { dg-final { cleanup-saved-temps } } */ |
| 2514 | 2517 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c | |
| 2515 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c' | 2518 | =================================================================== |
| 2516 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c 2010-05-24 18:36:31 +0000 | 2519 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2517 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c 2011-05-03 15:14:56 +0000 | 2520 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups16.c 2011-09-16 20:16:00.357564842 -0700 |
| 2518 | @@ -15,5 +15,5 @@ | 2521 | @@ -15,5 +15,5 @@ |
| 2519 | out_int16x4_t = vld1_dup_s16 (0); | 2522 | out_int16x4_t = vld1_dup_s16 (0); |
| 2520 | } | 2523 | } |
| @@ -2522,10 +2525,10 @@ | |||
| 2522 | -/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2525 | -/* { 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" } } */ | 2526 | +/* { 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 } } */ | 2527 | /* { dg-final { cleanup-saved-temps } } */ |
| 2525 | 2528 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c | |
| 2526 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c' | 2529 | =================================================================== |
| 2527 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c 2010-05-24 18:36:31 +0000 | 2530 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2528 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c 2011-05-03 15:14:56 +0000 | 2531 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups32.c 2011-09-16 20:16:00.357564842 -0700 |
| 2529 | @@ -15,5 +15,5 @@ | 2532 | @@ -15,5 +15,5 @@ |
| 2530 | out_int32x2_t = vld1_dup_s32 (0); | 2533 | out_int32x2_t = vld1_dup_s32 (0); |
| 2531 | } | 2534 | } |
| @@ -2533,10 +2536,10 @@ | |||
| 2533 | -/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2536 | -/* { 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" } } */ | 2537 | +/* { 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 } } */ | 2538 | /* { dg-final { cleanup-saved-temps } } */ |
| 2536 | 2539 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c | |
| 2537 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c' | 2540 | =================================================================== |
| 2538 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c 2010-05-24 18:36:31 +0000 | 2541 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2539 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c 2011-05-03 15:14:56 +0000 | 2542 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups64.c 2011-09-16 20:16:00.357564842 -0700 |
| 2540 | @@ -15,5 +15,5 @@ | 2543 | @@ -15,5 +15,5 @@ |
| 2541 | out_int64x1_t = vld1_dup_s64 (0); | 2544 | out_int64x1_t = vld1_dup_s64 (0); |
| 2542 | } | 2545 | } |
| @@ -2544,10 +2547,10 @@ | |||
| 2544 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2547 | -/* { 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" } } */ | 2548 | +/* { 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 } } */ | 2549 | /* { dg-final { cleanup-saved-temps } } */ |
| 2547 | 2550 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c | |
| 2548 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c' | 2551 | =================================================================== |
| 2549 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c 2010-05-24 18:36:31 +0000 | 2552 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2550 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c 2011-05-03 15:14:56 +0000 | 2553 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dups8.c 2011-09-16 20:16:00.357564842 -0700 |
| 2551 | @@ -15,5 +15,5 @@ | 2554 | @@ -15,5 +15,5 @@ |
| 2552 | out_int8x8_t = vld1_dup_s8 (0); | 2555 | out_int8x8_t = vld1_dup_s8 (0); |
| 2553 | } | 2556 | } |
| @@ -2555,10 +2558,10 @@ | |||
| 2555 | -/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2558 | -/* { 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" } } */ | 2559 | +/* { 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 } } */ | 2560 | /* { dg-final { cleanup-saved-temps } } */ |
| 2558 | 2561 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c | |
| 2559 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c' | 2562 | =================================================================== |
| 2560 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c 2010-05-24 18:36:31 +0000 | 2563 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2561 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c 2011-05-03 15:14:56 +0000 | 2564 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu16.c 2011-09-16 20:16:00.357564842 -0700 |
| 2562 | @@ -15,5 +15,5 @@ | 2565 | @@ -15,5 +15,5 @@ |
| 2563 | out_uint16x4_t = vld1_dup_u16 (0); | 2566 | out_uint16x4_t = vld1_dup_u16 (0); |
| 2564 | } | 2567 | } |
| @@ -2566,10 +2569,10 @@ | |||
| 2566 | -/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2569 | -/* { 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" } } */ | 2570 | +/* { 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 } } */ | 2571 | /* { dg-final { cleanup-saved-temps } } */ |
| 2569 | 2572 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c | |
| 2570 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c' | 2573 | =================================================================== |
| 2571 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c 2010-05-24 18:36:31 +0000 | 2574 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2572 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c 2011-05-03 15:14:56 +0000 | 2575 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu32.c 2011-09-16 20:16:00.357564842 -0700 |
| 2573 | @@ -15,5 +15,5 @@ | 2576 | @@ -15,5 +15,5 @@ |
| 2574 | out_uint32x2_t = vld1_dup_u32 (0); | 2577 | out_uint32x2_t = vld1_dup_u32 (0); |
| 2575 | } | 2578 | } |
| @@ -2577,10 +2580,10 @@ | |||
| 2577 | -/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2580 | -/* { 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" } } */ | 2581 | +/* { 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 } } */ | 2582 | /* { dg-final { cleanup-saved-temps } } */ |
| 2580 | 2583 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c | |
| 2581 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c' | 2584 | =================================================================== |
| 2582 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c 2010-05-24 18:36:31 +0000 | 2585 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2583 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c 2011-05-03 15:14:56 +0000 | 2586 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu64.c 2011-09-16 20:16:00.367564848 -0700 |
| 2584 | @@ -15,5 +15,5 @@ | 2587 | @@ -15,5 +15,5 @@ |
| 2585 | out_uint64x1_t = vld1_dup_u64 (0); | 2588 | out_uint64x1_t = vld1_dup_u64 (0); |
| 2586 | } | 2589 | } |
| @@ -2588,10 +2591,10 @@ | |||
| 2588 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2591 | -/* { 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" } } */ | 2592 | +/* { 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 } } */ | 2593 | /* { dg-final { cleanup-saved-temps } } */ |
| 2591 | 2594 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c | |
| 2592 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c' | 2595 | =================================================================== |
| 2593 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c 2010-05-24 18:36:31 +0000 | 2596 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2594 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c 2011-05-03 15:14:56 +0000 | 2597 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_dupu8.c 2011-09-16 20:16:00.367564848 -0700 |
| 2595 | @@ -15,5 +15,5 @@ | 2598 | @@ -15,5 +15,5 @@ |
| 2596 | out_uint8x8_t = vld1_dup_u8 (0); | 2599 | out_uint8x8_t = vld1_dup_u8 (0); |
| 2597 | } | 2600 | } |
| @@ -2599,10 +2602,10 @@ | |||
| 2599 | -/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\[\\\]\\\})|(\[dD\]\[0-9\]+\\\[\\\])), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2602 | -/* { 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" } } */ | 2603 | +/* { 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 } } */ | 2604 | /* { dg-final { cleanup-saved-temps } } */ |
| 2602 | 2605 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c | |
| 2603 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c' | 2606 | =================================================================== |
| 2604 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c 2010-05-24 18:36:31 +0000 | 2607 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2605 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c 2011-05-03 15:14:56 +0000 | 2608 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanef32.c 2011-09-16 20:16:00.367564848 -0700 |
| 2606 | @@ -16,5 +16,5 @@ | 2609 | @@ -16,5 +16,5 @@ |
| 2607 | out_float32x2_t = vld1_lane_f32 (0, arg1_float32x2_t, 1); | 2610 | out_float32x2_t = vld1_lane_f32 (0, arg1_float32x2_t, 1); |
| 2608 | } | 2611 | } |
| @@ -2610,10 +2613,10 @@ | |||
| 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" } } */ | 2613 | -/* { 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" } } */ | 2614 | +/* { 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 } } */ | 2615 | /* { dg-final { cleanup-saved-temps } } */ |
| 2613 | 2616 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c | |
| 2614 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c' | 2617 | =================================================================== |
| 2615 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c 2010-05-24 18:36:31 +0000 | 2618 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2616 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c 2011-05-03 15:14:56 +0000 | 2619 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanep16.c 2011-09-16 20:16:00.367564848 -0700 |
| 2617 | @@ -16,5 +16,5 @@ | 2620 | @@ -16,5 +16,5 @@ |
| 2618 | out_poly16x4_t = vld1_lane_p16 (0, arg1_poly16x4_t, 1); | 2621 | out_poly16x4_t = vld1_lane_p16 (0, arg1_poly16x4_t, 1); |
| 2619 | } | 2622 | } |
| @@ -2621,10 +2624,10 @@ | |||
| 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" } } */ | 2624 | -/* { 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" } } */ | 2625 | +/* { 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 } } */ | 2626 | /* { dg-final { cleanup-saved-temps } } */ |
| 2624 | 2627 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c | |
| 2625 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c' | 2628 | =================================================================== |
| 2626 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c 2010-05-24 18:36:31 +0000 | 2629 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2627 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c 2011-05-03 15:14:56 +0000 | 2630 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanep8.c 2011-09-16 20:16:00.367564848 -0700 |
| 2628 | @@ -16,5 +16,5 @@ | 2631 | @@ -16,5 +16,5 @@ |
| 2629 | out_poly8x8_t = vld1_lane_p8 (0, arg1_poly8x8_t, 1); | 2632 | out_poly8x8_t = vld1_lane_p8 (0, arg1_poly8x8_t, 1); |
| 2630 | } | 2633 | } |
| @@ -2632,10 +2635,10 @@ | |||
| 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" } } */ | 2635 | -/* { 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" } } */ | 2636 | +/* { 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 } } */ | 2637 | /* { dg-final { cleanup-saved-temps } } */ |
| 2635 | 2638 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c | |
| 2636 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c' | 2639 | =================================================================== |
| 2637 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c 2010-05-24 18:36:31 +0000 | 2640 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2638 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c 2011-05-03 15:14:56 +0000 | 2641 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes16.c 2011-09-16 20:16:00.367564848 -0700 |
| 2639 | @@ -16,5 +16,5 @@ | 2642 | @@ -16,5 +16,5 @@ |
| 2640 | out_int16x4_t = vld1_lane_s16 (0, arg1_int16x4_t, 1); | 2643 | out_int16x4_t = vld1_lane_s16 (0, arg1_int16x4_t, 1); |
| 2641 | } | 2644 | } |
| @@ -2643,10 +2646,10 @@ | |||
| 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" } } */ | 2646 | -/* { 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" } } */ | 2647 | +/* { 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 } } */ | 2648 | /* { dg-final { cleanup-saved-temps } } */ |
| 2646 | 2649 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c | |
| 2647 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c' | 2650 | =================================================================== |
| 2648 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c 2010-05-24 18:36:31 +0000 | 2651 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2649 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c 2011-05-03 15:14:56 +0000 | 2652 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes32.c 2011-09-16 20:16:00.367564848 -0700 |
| 2650 | @@ -16,5 +16,5 @@ | 2653 | @@ -16,5 +16,5 @@ |
| 2651 | out_int32x2_t = vld1_lane_s32 (0, arg1_int32x2_t, 1); | 2654 | out_int32x2_t = vld1_lane_s32 (0, arg1_int32x2_t, 1); |
| 2652 | } | 2655 | } |
| @@ -2654,10 +2657,10 @@ | |||
| 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" } } */ | 2657 | -/* { 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" } } */ | 2658 | +/* { 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 } } */ | 2659 | /* { dg-final { cleanup-saved-temps } } */ |
| 2657 | 2660 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c | |
| 2658 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c' | 2661 | =================================================================== |
| 2659 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c 2010-05-24 18:36:31 +0000 | 2662 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2660 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c 2011-05-03 15:14:56 +0000 | 2663 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes64.c 2011-09-16 20:16:00.367564848 -0700 |
| 2661 | @@ -16,5 +16,5 @@ | 2664 | @@ -16,5 +16,5 @@ |
| 2662 | out_int64x1_t = vld1_lane_s64 (0, arg1_int64x1_t, 0); | 2665 | out_int64x1_t = vld1_lane_s64 (0, arg1_int64x1_t, 0); |
| 2663 | } | 2666 | } |
| @@ -2665,10 +2668,10 @@ | |||
| 2665 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2668 | -/* { 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" } } */ | 2669 | +/* { 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 } } */ | 2670 | /* { dg-final { cleanup-saved-temps } } */ |
| 2668 | 2671 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c | |
| 2669 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c' | 2672 | =================================================================== |
| 2670 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c 2010-05-24 18:36:31 +0000 | 2673 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2671 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c 2011-05-03 15:14:56 +0000 | 2674 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_lanes8.c 2011-09-16 20:16:00.367564848 -0700 |
| 2672 | @@ -16,5 +16,5 @@ | 2675 | @@ -16,5 +16,5 @@ |
| 2673 | out_int8x8_t = vld1_lane_s8 (0, arg1_int8x8_t, 1); | 2676 | out_int8x8_t = vld1_lane_s8 (0, arg1_int8x8_t, 1); |
| 2674 | } | 2677 | } |
| @@ -2676,10 +2679,10 @@ | |||
| 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" } } */ | 2679 | -/* { 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" } } */ | 2680 | +/* { 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 } } */ | 2681 | /* { dg-final { cleanup-saved-temps } } */ |
| 2679 | 2682 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c | |
| 2680 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c' | 2683 | =================================================================== |
| 2681 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c 2010-05-24 18:36:31 +0000 | 2684 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2682 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c 2011-05-03 15:14:56 +0000 | 2685 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu16.c 2011-09-16 20:16:00.367564848 -0700 |
| 2683 | @@ -16,5 +16,5 @@ | 2686 | @@ -16,5 +16,5 @@ |
| 2684 | out_uint16x4_t = vld1_lane_u16 (0, arg1_uint16x4_t, 1); | 2687 | out_uint16x4_t = vld1_lane_u16 (0, arg1_uint16x4_t, 1); |
| 2685 | } | 2688 | } |
| @@ -2687,10 +2690,10 @@ | |||
| 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" } } */ | 2690 | -/* { 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" } } */ | 2691 | +/* { 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 } } */ | 2692 | /* { dg-final { cleanup-saved-temps } } */ |
| 2690 | 2693 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c | |
| 2691 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c' | 2694 | =================================================================== |
| 2692 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c 2010-05-24 18:36:31 +0000 | 2695 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2693 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c 2011-05-03 15:14:56 +0000 | 2696 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu32.c 2011-09-16 20:16:00.367564848 -0700 |
| 2694 | @@ -16,5 +16,5 @@ | 2697 | @@ -16,5 +16,5 @@ |
| 2695 | out_uint32x2_t = vld1_lane_u32 (0, arg1_uint32x2_t, 1); | 2698 | out_uint32x2_t = vld1_lane_u32 (0, arg1_uint32x2_t, 1); |
| 2696 | } | 2699 | } |
| @@ -2698,10 +2701,10 @@ | |||
| 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" } } */ | 2701 | -/* { 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" } } */ | 2702 | +/* { 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 } } */ | 2703 | /* { dg-final { cleanup-saved-temps } } */ |
| 2701 | 2704 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c | |
| 2702 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c' | 2705 | =================================================================== |
| 2703 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c 2010-05-24 18:36:31 +0000 | 2706 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2704 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c 2011-05-03 15:14:56 +0000 | 2707 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu64.c 2011-09-16 20:16:00.367564848 -0700 |
| 2705 | @@ -16,5 +16,5 @@ | 2708 | @@ -16,5 +16,5 @@ |
| 2706 | out_uint64x1_t = vld1_lane_u64 (0, arg1_uint64x1_t, 0); | 2709 | out_uint64x1_t = vld1_lane_u64 (0, arg1_uint64x1_t, 0); |
| 2707 | } | 2710 | } |
| @@ -2709,10 +2712,10 @@ | |||
| 2709 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2712 | -/* { 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" } } */ | 2713 | +/* { 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 } } */ | 2714 | /* { dg-final { cleanup-saved-temps } } */ |
| 2712 | 2715 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c | |
| 2713 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c' | 2716 | =================================================================== |
| 2714 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c 2010-05-24 18:36:31 +0000 | 2717 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2715 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c 2011-05-03 15:14:56 +0000 | 2718 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1_laneu8.c 2011-09-16 20:16:00.367564848 -0700 |
| 2716 | @@ -16,5 +16,5 @@ | 2719 | @@ -16,5 +16,5 @@ |
| 2717 | out_uint8x8_t = vld1_lane_u8 (0, arg1_uint8x8_t, 1); | 2720 | out_uint8x8_t = vld1_lane_u8 (0, arg1_uint8x8_t, 1); |
| 2718 | } | 2721 | } |
| @@ -2720,10 +2723,10 @@ | |||
| 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" } } */ | 2723 | -/* { 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" } } */ | 2724 | +/* { 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 } } */ | 2725 | /* { dg-final { cleanup-saved-temps } } */ |
| 2723 | 2726 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1f32.c | |
| 2724 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1f32.c' | 2727 | =================================================================== |
| 2725 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1f32.c 2010-05-24 18:36:31 +0000 | 2728 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2726 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1f32.c 2011-05-03 15:14:56 +0000 | 2729 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1f32.c 2011-09-16 20:16:00.367564848 -0700 |
| 2727 | @@ -15,5 +15,5 @@ | 2730 | @@ -15,5 +15,5 @@ |
| 2728 | out_float32x2_t = vld1_f32 (0); | 2731 | out_float32x2_t = vld1_f32 (0); |
| 2729 | } | 2732 | } |
| @@ -2731,10 +2734,10 @@ | |||
| 2731 | -/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2734 | -/* { 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" } } */ | 2735 | +/* { 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 } } */ | 2736 | /* { dg-final { cleanup-saved-temps } } */ |
| 2734 | 2737 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1p16.c | |
| 2735 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1p16.c' | 2738 | =================================================================== |
| 2736 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1p16.c 2010-05-24 18:36:31 +0000 | 2739 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2737 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1p16.c 2011-05-03 15:14:56 +0000 | 2740 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1p16.c 2011-09-16 20:16:00.377564842 -0700 |
| 2738 | @@ -15,5 +15,5 @@ | 2741 | @@ -15,5 +15,5 @@ |
| 2739 | out_poly16x4_t = vld1_p16 (0); | 2742 | out_poly16x4_t = vld1_p16 (0); |
| 2740 | } | 2743 | } |
| @@ -2742,10 +2745,10 @@ | |||
| 2742 | -/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2745 | -/* { 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" } } */ | 2746 | +/* { 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 } } */ | 2747 | /* { dg-final { cleanup-saved-temps } } */ |
| 2745 | 2748 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1p8.c | |
| 2746 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1p8.c' | 2749 | =================================================================== |
| 2747 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1p8.c 2010-05-24 18:36:31 +0000 | 2750 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2748 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1p8.c 2011-05-03 15:14:56 +0000 | 2751 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1p8.c 2011-09-16 20:16:00.377564842 -0700 |
| 2749 | @@ -15,5 +15,5 @@ | 2752 | @@ -15,5 +15,5 @@ |
| 2750 | out_poly8x8_t = vld1_p8 (0); | 2753 | out_poly8x8_t = vld1_p8 (0); |
| 2751 | } | 2754 | } |
| @@ -2753,10 +2756,10 @@ | |||
| 2753 | -/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2756 | -/* { 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" } } */ | 2757 | +/* { 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 } } */ | 2758 | /* { dg-final { cleanup-saved-temps } } */ |
| 2756 | 2759 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s16.c | |
| 2757 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s16.c' | 2760 | =================================================================== |
| 2758 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1s16.c 2010-05-24 18:36:31 +0000 | 2761 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2759 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1s16.c 2011-05-03 15:14:56 +0000 | 2762 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s16.c 2011-09-16 20:16:00.377564842 -0700 |
| 2760 | @@ -15,5 +15,5 @@ | 2763 | @@ -15,5 +15,5 @@ |
| 2761 | out_int16x4_t = vld1_s16 (0); | 2764 | out_int16x4_t = vld1_s16 (0); |
| 2762 | } | 2765 | } |
| @@ -2764,10 +2767,10 @@ | |||
| 2764 | -/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2767 | -/* { 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" } } */ | 2768 | +/* { 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 } } */ | 2769 | /* { dg-final { cleanup-saved-temps } } */ |
| 2767 | 2770 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s32.c | |
| 2768 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s32.c' | 2771 | =================================================================== |
| 2769 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1s32.c 2010-05-24 18:36:31 +0000 | 2772 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2770 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1s32.c 2011-05-03 15:14:56 +0000 | 2773 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s32.c 2011-09-16 20:16:00.377564842 -0700 |
| 2771 | @@ -15,5 +15,5 @@ | 2774 | @@ -15,5 +15,5 @@ |
| 2772 | out_int32x2_t = vld1_s32 (0); | 2775 | out_int32x2_t = vld1_s32 (0); |
| 2773 | } | 2776 | } |
| @@ -2775,10 +2778,10 @@ | |||
| 2775 | -/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2778 | -/* { 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" } } */ | 2779 | +/* { 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 } } */ | 2780 | /* { dg-final { cleanup-saved-temps } } */ |
| 2778 | 2781 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s64.c | |
| 2779 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s64.c' | 2782 | =================================================================== |
| 2780 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1s64.c 2010-05-24 18:36:31 +0000 | 2783 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2781 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1s64.c 2011-05-03 15:14:56 +0000 | 2784 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s64.c 2011-09-16 20:16:00.377564842 -0700 |
| 2782 | @@ -15,5 +15,5 @@ | 2785 | @@ -15,5 +15,5 @@ |
| 2783 | out_int64x1_t = vld1_s64 (0); | 2786 | out_int64x1_t = vld1_s64 (0); |
| 2784 | } | 2787 | } |
| @@ -2786,10 +2789,10 @@ | |||
| 2786 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2789 | -/* { 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" } } */ | 2790 | +/* { 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 } } */ | 2791 | /* { dg-final { cleanup-saved-temps } } */ |
| 2789 | 2792 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s8.c | |
| 2790 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1s8.c' | 2793 | =================================================================== |
| 2791 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1s8.c 2010-05-24 18:36:31 +0000 | 2794 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2792 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1s8.c 2011-05-03 15:14:56 +0000 | 2795 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1s8.c 2011-09-16 20:16:00.377564842 -0700 |
| 2793 | @@ -15,5 +15,5 @@ | 2796 | @@ -15,5 +15,5 @@ |
| 2794 | out_int8x8_t = vld1_s8 (0); | 2797 | out_int8x8_t = vld1_s8 (0); |
| 2795 | } | 2798 | } |
| @@ -2797,10 +2800,10 @@ | |||
| 2797 | -/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2800 | -/* { 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" } } */ | 2801 | +/* { 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 } } */ | 2802 | /* { dg-final { cleanup-saved-temps } } */ |
| 2800 | 2803 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u16.c | |
| 2801 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u16.c' | 2804 | =================================================================== |
| 2802 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1u16.c 2010-05-24 18:36:31 +0000 | 2805 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2803 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1u16.c 2011-05-03 15:14:56 +0000 | 2806 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u16.c 2011-09-16 20:16:00.377564842 -0700 |
| 2804 | @@ -15,5 +15,5 @@ | 2807 | @@ -15,5 +15,5 @@ |
| 2805 | out_uint16x4_t = vld1_u16 (0); | 2808 | out_uint16x4_t = vld1_u16 (0); |
| 2806 | } | 2809 | } |
| @@ -2808,10 +2811,10 @@ | |||
| 2808 | -/* { dg-final { scan-assembler "vld1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2811 | -/* { 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" } } */ | 2812 | +/* { 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 } } */ | 2813 | /* { dg-final { cleanup-saved-temps } } */ |
| 2811 | 2814 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u32.c | |
| 2812 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u32.c' | 2815 | =================================================================== |
| 2813 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1u32.c 2010-05-24 18:36:31 +0000 | 2816 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2814 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1u32.c 2011-05-03 15:14:56 +0000 | 2817 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u32.c 2011-09-16 20:16:00.377564842 -0700 |
| 2815 | @@ -15,5 +15,5 @@ | 2818 | @@ -15,5 +15,5 @@ |
| 2816 | out_uint32x2_t = vld1_u32 (0); | 2819 | out_uint32x2_t = vld1_u32 (0); |
| 2817 | } | 2820 | } |
| @@ -2819,10 +2822,10 @@ | |||
| 2819 | -/* { dg-final { scan-assembler "vld1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2822 | -/* { 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" } } */ | 2823 | +/* { 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 } } */ | 2824 | /* { dg-final { cleanup-saved-temps } } */ |
| 2822 | 2825 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u64.c | |
| 2823 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u64.c' | 2826 | =================================================================== |
| 2824 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1u64.c 2010-05-24 18:36:31 +0000 | 2827 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 2825 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1u64.c 2011-05-03 15:14:56 +0000 | 2828 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u64.c 2011-09-16 20:16:00.377564842 -0700 |
| 2826 | @@ -15,5 +15,5 @@ | 2829 | @@ -15,5 +15,5 @@ |
| 2827 | out_uint64x1_t = vld1_u64 (0); | 2830 | out_uint64x1_t = vld1_u64 (0); |
| 2828 | } | 2831 | } |
| @@ -2830,10 +2833,10 @@ | |||
| 2830 | -/* { dg-final { scan-assembler "vld1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2833 | -/* { 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" } } */ | 2834 | +/* { 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 } } */ | 2835 | /* { dg-final { cleanup-saved-temps } } */ |
| 2833 | 2836 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u8.c | |
| 2834 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld1u8.c' | 2837 | =================================================================== |
| 2835 | --- old/gcc/testsuite/gcc.target/arm/neon/vld1u8.c 2010-05-24 18:36:31 +0000 | 2838 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld1u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2836 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld1u8.c 2011-05-03 15:14:56 +0000 | 2839 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld1u8.c 2011-09-16 20:16:00.387564830 -0700 |
| 2837 | @@ -15,5 +15,5 @@ | 2840 | @@ -15,5 +15,5 @@ |
| 2838 | out_uint8x8_t = vld1_u8 (0); | 2841 | out_uint8x8_t = vld1_u8 (0); |
| 2839 | } | 2842 | } |
| @@ -2841,10 +2844,10 @@ | |||
| 2841 | -/* { dg-final { scan-assembler "vld1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 2844 | -/* { 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" } } */ | 2845 | +/* { 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 } } */ | 2846 | /* { dg-final { cleanup-saved-temps } } */ |
| 2844 | 2847 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c | |
| 2845 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c' | 2848 | =================================================================== |
| 2846 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c 2010-05-24 18:36:31 +0000 | 2849 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2847 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c 2011-05-03 15:14:56 +0000 | 2850 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanef32.c 2011-09-16 20:16:00.387564830 -0700 |
| 2848 | @@ -16,5 +16,5 @@ | 2851 | @@ -16,5 +16,5 @@ |
| 2849 | out_float32x4x2_t = vld2q_lane_f32 (0, arg1_float32x4x2_t, 1); | 2852 | out_float32x4x2_t = vld2q_lane_f32 (0, arg1_float32x4x2_t, 1); |
| 2850 | } | 2853 | } |
| @@ -2852,10 +2855,10 @@ | |||
| 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" } } */ | 2855 | -/* { 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" } } */ | 2856 | +/* { 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 } } */ | 2857 | /* { dg-final { cleanup-saved-temps } } */ |
| 2855 | 2858 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c | |
| 2856 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c' | 2859 | =================================================================== |
| 2857 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c 2010-05-24 18:36:31 +0000 | 2860 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2858 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c 2011-05-03 15:14:56 +0000 | 2861 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanep16.c 2011-09-16 20:16:00.387564830 -0700 |
| 2859 | @@ -16,5 +16,5 @@ | 2862 | @@ -16,5 +16,5 @@ |
| 2860 | out_poly16x8x2_t = vld2q_lane_p16 (0, arg1_poly16x8x2_t, 1); | 2863 | out_poly16x8x2_t = vld2q_lane_p16 (0, arg1_poly16x8x2_t, 1); |
| 2861 | } | 2864 | } |
| @@ -2863,10 +2866,10 @@ | |||
| 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" } } */ | 2866 | -/* { 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" } } */ | 2867 | +/* { 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 } } */ | 2868 | /* { dg-final { cleanup-saved-temps } } */ |
| 2866 | 2869 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c | |
| 2867 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c' | 2870 | =================================================================== |
| 2868 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c 2010-05-24 18:36:31 +0000 | 2871 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2869 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c 2011-05-03 15:14:56 +0000 | 2872 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes16.c 2011-09-16 20:16:00.387564830 -0700 |
| 2870 | @@ -16,5 +16,5 @@ | 2873 | @@ -16,5 +16,5 @@ |
| 2871 | out_int16x8x2_t = vld2q_lane_s16 (0, arg1_int16x8x2_t, 1); | 2874 | out_int16x8x2_t = vld2q_lane_s16 (0, arg1_int16x8x2_t, 1); |
| 2872 | } | 2875 | } |
| @@ -2874,10 +2877,10 @@ | |||
| 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" } } */ | 2877 | -/* { 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" } } */ | 2878 | +/* { 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 } } */ | 2879 | /* { dg-final { cleanup-saved-temps } } */ |
| 2877 | 2880 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c | |
| 2878 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c' | 2881 | =================================================================== |
| 2879 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c 2010-05-24 18:36:31 +0000 | 2882 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2880 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c 2011-05-03 15:14:56 +0000 | 2883 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_lanes32.c 2011-09-16 20:16:00.387564830 -0700 |
| 2881 | @@ -16,5 +16,5 @@ | 2884 | @@ -16,5 +16,5 @@ |
| 2882 | out_int32x4x2_t = vld2q_lane_s32 (0, arg1_int32x4x2_t, 1); | 2885 | out_int32x4x2_t = vld2q_lane_s32 (0, arg1_int32x4x2_t, 1); |
| 2883 | } | 2886 | } |
| @@ -2885,10 +2888,10 @@ | |||
| 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" } } */ | 2888 | -/* { 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" } } */ | 2889 | +/* { 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 } } */ | 2890 | /* { dg-final { cleanup-saved-temps } } */ |
| 2888 | 2891 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c | |
| 2889 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c' | 2892 | =================================================================== |
| 2890 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c 2010-05-24 18:36:31 +0000 | 2893 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2891 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c 2011-05-03 15:14:56 +0000 | 2894 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu16.c 2011-09-16 20:16:00.397564843 -0700 |
| 2892 | @@ -16,5 +16,5 @@ | 2895 | @@ -16,5 +16,5 @@ |
| 2893 | out_uint16x8x2_t = vld2q_lane_u16 (0, arg1_uint16x8x2_t, 1); | 2896 | out_uint16x8x2_t = vld2q_lane_u16 (0, arg1_uint16x8x2_t, 1); |
| 2894 | } | 2897 | } |
| @@ -2896,10 +2899,10 @@ | |||
| 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" } } */ | 2899 | -/* { 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" } } */ | 2900 | +/* { 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 } } */ | 2901 | /* { dg-final { cleanup-saved-temps } } */ |
| 2899 | 2902 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c | |
| 2900 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c' | 2903 | =================================================================== |
| 2901 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c 2010-05-24 18:36:31 +0000 | 2904 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2902 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c 2011-05-03 15:14:56 +0000 | 2905 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Q_laneu32.c 2011-09-16 20:16:00.397564843 -0700 |
| 2903 | @@ -16,5 +16,5 @@ | 2906 | @@ -16,5 +16,5 @@ |
| 2904 | out_uint32x4x2_t = vld2q_lane_u32 (0, arg1_uint32x4x2_t, 1); | 2907 | out_uint32x4x2_t = vld2q_lane_u32 (0, arg1_uint32x4x2_t, 1); |
| 2905 | } | 2908 | } |
| @@ -2907,10 +2910,10 @@ | |||
| 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" } } */ | 2910 | -/* { 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" } } */ | 2911 | +/* { 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 } } */ | 2912 | /* { dg-final { cleanup-saved-temps } } */ |
| 2910 | 2913 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c | |
| 2911 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c' | 2914 | =================================================================== |
| 2912 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c 2010-05-24 18:36:31 +0000 | 2915 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2913 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c 2011-05-03 15:14:56 +0000 | 2916 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qf32.c 2011-09-16 20:16:00.397564843 -0700 |
| 2914 | @@ -15,6 +15,6 @@ | 2917 | @@ -15,6 +15,6 @@ |
| 2915 | out_float32x4x2_t = vld2q_f32 (0); | 2918 | out_float32x4x2_t = vld2q_f32 (0); |
| 2916 | } | 2919 | } |
| @@ -2920,10 +2923,10 @@ | |||
| 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" } } */ | 2923 | +/* { 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" } } */ | 2924 | +/* { 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 } } */ | 2925 | /* { dg-final { cleanup-saved-temps } } */ |
| 2923 | 2926 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c | |
| 2924 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c' | 2927 | =================================================================== |
| 2925 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c 2010-05-24 18:36:31 +0000 | 2928 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2926 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c 2011-05-03 15:14:56 +0000 | 2929 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qp16.c 2011-09-16 20:16:00.397564843 -0700 |
| 2927 | @@ -15,6 +15,6 @@ | 2930 | @@ -15,6 +15,6 @@ |
| 2928 | out_poly16x8x2_t = vld2q_p16 (0); | 2931 | out_poly16x8x2_t = vld2q_p16 (0); |
| 2929 | } | 2932 | } |
| @@ -2933,10 +2936,10 @@ | |||
| 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" } } */ | 2936 | +/* { 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" } } */ | 2937 | +/* { 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 } } */ | 2938 | /* { dg-final { cleanup-saved-temps } } */ |
| 2936 | 2939 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c | |
| 2937 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c' | 2940 | =================================================================== |
| 2938 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c 2010-05-24 18:36:31 +0000 | 2941 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2939 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c 2011-05-03 15:14:56 +0000 | 2942 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qp8.c 2011-09-16 20:16:00.397564843 -0700 |
| 2940 | @@ -15,6 +15,6 @@ | 2943 | @@ -15,6 +15,6 @@ |
| 2941 | out_poly8x16x2_t = vld2q_p8 (0); | 2944 | out_poly8x16x2_t = vld2q_p8 (0); |
| 2942 | } | 2945 | } |
| @@ -2946,10 +2949,10 @@ | |||
| 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" } } */ | 2949 | +/* { 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" } } */ | 2950 | +/* { 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 } } */ | 2951 | /* { dg-final { cleanup-saved-temps } } */ |
| 2949 | 2952 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c | |
| 2950 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c' | 2953 | =================================================================== |
| 2951 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c 2010-05-24 18:36:31 +0000 | 2954 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2952 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c 2011-05-03 15:14:56 +0000 | 2955 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qs16.c 2011-09-16 20:16:00.397564843 -0700 |
| 2953 | @@ -15,6 +15,6 @@ | 2956 | @@ -15,6 +15,6 @@ |
| 2954 | out_int16x8x2_t = vld2q_s16 (0); | 2957 | out_int16x8x2_t = vld2q_s16 (0); |
| 2955 | } | 2958 | } |
| @@ -2959,10 +2962,10 @@ | |||
| 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" } } */ | 2962 | +/* { 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" } } */ | 2963 | +/* { 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 } } */ | 2964 | /* { dg-final { cleanup-saved-temps } } */ |
| 2962 | 2965 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c | |
| 2963 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c' | 2966 | =================================================================== |
| 2964 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c 2010-05-24 18:36:31 +0000 | 2967 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 2965 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c 2011-05-03 15:14:56 +0000 | 2968 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qs32.c 2011-09-16 20:16:00.397564843 -0700 |
| 2966 | @@ -15,6 +15,6 @@ | 2969 | @@ -15,6 +15,6 @@ |
| 2967 | out_int32x4x2_t = vld2q_s32 (0); | 2970 | out_int32x4x2_t = vld2q_s32 (0); |
| 2968 | } | 2971 | } |
| @@ -2972,10 +2975,10 @@ | |||
| 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" } } */ | 2975 | +/* { 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" } } */ | 2976 | +/* { 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 } } */ | 2977 | /* { dg-final { cleanup-saved-temps } } */ |
| 2975 | 2978 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c | |
| 2976 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c' | 2979 | =================================================================== |
| 2977 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c 2010-05-24 18:36:31 +0000 | 2980 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 2978 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c 2011-05-03 15:14:56 +0000 | 2981 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qs8.c 2011-09-16 20:16:00.397564843 -0700 |
| 2979 | @@ -15,6 +15,6 @@ | 2982 | @@ -15,6 +15,6 @@ |
| 2980 | out_int8x16x2_t = vld2q_s8 (0); | 2983 | out_int8x16x2_t = vld2q_s8 (0); |
| 2981 | } | 2984 | } |
| @@ -2985,10 +2988,10 @@ | |||
| 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" } } */ | 2988 | +/* { 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" } } */ | 2989 | +/* { 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 } } */ | 2990 | /* { dg-final { cleanup-saved-temps } } */ |
| 2988 | 2991 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c | |
| 2989 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c' | 2992 | =================================================================== |
| 2990 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c 2010-05-24 18:36:31 +0000 | 2993 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 2991 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c 2011-05-03 15:14:56 +0000 | 2994 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qu16.c 2011-09-16 20:16:00.397564843 -0700 |
| 2992 | @@ -15,6 +15,6 @@ | 2995 | @@ -15,6 +15,6 @@ |
| 2993 | out_uint16x8x2_t = vld2q_u16 (0); | 2996 | out_uint16x8x2_t = vld2q_u16 (0); |
| 2994 | } | 2997 | } |
| @@ -2998,10 +3001,10 @@ | |||
| 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" } } */ | 3001 | +/* { 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" } } */ | 3002 | +/* { 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 } } */ | 3003 | /* { dg-final { cleanup-saved-temps } } */ |
| 3001 | 3004 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c | |
| 3002 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c' | 3005 | =================================================================== |
| 3003 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c 2010-05-24 18:36:31 +0000 | 3006 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3004 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c 2011-05-03 15:14:56 +0000 | 3007 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qu32.c 2011-09-16 20:16:00.407564879 -0700 |
| 3005 | @@ -15,6 +15,6 @@ | 3008 | @@ -15,6 +15,6 @@ |
| 3006 | out_uint32x4x2_t = vld2q_u32 (0); | 3009 | out_uint32x4x2_t = vld2q_u32 (0); |
| 3007 | } | 3010 | } |
| @@ -3011,10 +3014,10 @@ | |||
| 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" } } */ | 3014 | +/* { 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" } } */ | 3015 | +/* { 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 } } */ | 3016 | /* { dg-final { cleanup-saved-temps } } */ |
| 3014 | 3017 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c | |
| 3015 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c' | 3018 | =================================================================== |
| 3016 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c 2010-05-24 18:36:31 +0000 | 3019 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3017 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c 2011-05-03 15:14:56 +0000 | 3020 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2Qu8.c 2011-09-16 20:16:00.407564879 -0700 |
| 3018 | @@ -15,6 +15,6 @@ | 3021 | @@ -15,6 +15,6 @@ |
| 3019 | out_uint8x16x2_t = vld2q_u8 (0); | 3022 | out_uint8x16x2_t = vld2q_u8 (0); |
| 3020 | } | 3023 | } |
| @@ -3024,10 +3027,10 @@ | |||
| 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" } } */ | 3027 | +/* { 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" } } */ | 3028 | +/* { 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 } } */ | 3029 | /* { dg-final { cleanup-saved-temps } } */ |
| 3027 | 3030 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c | |
| 3028 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c' | 3031 | =================================================================== |
| 3029 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c 2010-05-24 18:36:31 +0000 | 3032 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3030 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c 2011-05-03 15:14:56 +0000 | 3033 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupf32.c 2011-09-16 20:16:00.407564879 -0700 |
| 3031 | @@ -15,5 +15,5 @@ | 3034 | @@ -15,5 +15,5 @@ |
| 3032 | out_float32x2x2_t = vld2_dup_f32 (0); | 3035 | out_float32x2x2_t = vld2_dup_f32 (0); |
| 3033 | } | 3036 | } |
| @@ -3035,10 +3038,10 @@ | |||
| 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" } } */ | 3038 | -/* { 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" } } */ | 3039 | +/* { 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 } } */ | 3040 | /* { dg-final { cleanup-saved-temps } } */ |
| 3038 | 3041 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c | |
| 3039 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c' | 3042 | =================================================================== |
| 3040 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c 2010-05-24 18:36:31 +0000 | 3043 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3041 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c 2011-05-03 15:14:56 +0000 | 3044 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupp16.c 2011-09-16 20:16:00.407564879 -0700 |
| 3042 | @@ -15,5 +15,5 @@ | 3045 | @@ -15,5 +15,5 @@ |
| 3043 | out_poly16x4x2_t = vld2_dup_p16 (0); | 3046 | out_poly16x4x2_t = vld2_dup_p16 (0); |
| 3044 | } | 3047 | } |
| @@ -3046,10 +3049,10 @@ | |||
| 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" } } */ | 3049 | -/* { 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" } } */ | 3050 | +/* { 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 } } */ | 3051 | /* { dg-final { cleanup-saved-temps } } */ |
| 3049 | 3052 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c | |
| 3050 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c' | 3053 | =================================================================== |
| 3051 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c 2010-05-24 18:36:31 +0000 | 3054 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3052 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c 2011-05-03 15:14:56 +0000 | 3055 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupp8.c 2011-09-16 20:16:00.407564879 -0700 |
| 3053 | @@ -15,5 +15,5 @@ | 3056 | @@ -15,5 +15,5 @@ |
| 3054 | out_poly8x8x2_t = vld2_dup_p8 (0); | 3057 | out_poly8x8x2_t = vld2_dup_p8 (0); |
| 3055 | } | 3058 | } |
| @@ -3057,10 +3060,10 @@ | |||
| 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" } } */ | 3060 | -/* { 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" } } */ | 3061 | +/* { 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 } } */ | 3062 | /* { dg-final { cleanup-saved-temps } } */ |
| 3060 | 3063 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c | |
| 3061 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c' | 3064 | =================================================================== |
| 3062 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c 2010-05-24 18:36:31 +0000 | 3065 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3063 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c 2011-05-03 15:14:56 +0000 | 3066 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups16.c 2011-09-16 20:16:00.407564879 -0700 |
| 3064 | @@ -15,5 +15,5 @@ | 3067 | @@ -15,5 +15,5 @@ |
| 3065 | out_int16x4x2_t = vld2_dup_s16 (0); | 3068 | out_int16x4x2_t = vld2_dup_s16 (0); |
| 3066 | } | 3069 | } |
| @@ -3068,10 +3071,10 @@ | |||
| 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" } } */ | 3071 | -/* { 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" } } */ | 3072 | +/* { 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 } } */ | 3073 | /* { dg-final { cleanup-saved-temps } } */ |
| 3071 | 3074 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c | |
| 3072 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c' | 3075 | =================================================================== |
| 3073 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c 2010-05-24 18:36:31 +0000 | 3076 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3074 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c 2011-05-03 15:14:56 +0000 | 3077 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups32.c 2011-09-16 20:16:00.407564879 -0700 |
| 3075 | @@ -15,5 +15,5 @@ | 3078 | @@ -15,5 +15,5 @@ |
| 3076 | out_int32x2x2_t = vld2_dup_s32 (0); | 3079 | out_int32x2x2_t = vld2_dup_s32 (0); |
| 3077 | } | 3080 | } |
| @@ -3079,10 +3082,10 @@ | |||
| 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" } } */ | 3082 | -/* { 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" } } */ | 3083 | +/* { 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 } } */ | 3084 | /* { dg-final { cleanup-saved-temps } } */ |
| 3082 | 3085 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c | |
| 3083 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c' | 3086 | =================================================================== |
| 3084 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c 2010-05-24 18:36:31 +0000 | 3087 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3085 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c 2011-05-03 15:14:56 +0000 | 3088 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups64.c 2011-09-16 20:16:00.407564879 -0700 |
| 3086 | @@ -15,5 +15,5 @@ | 3089 | @@ -15,5 +15,5 @@ |
| 3087 | out_int64x1x2_t = vld2_dup_s64 (0); | 3090 | out_int64x1x2_t = vld2_dup_s64 (0); |
| 3088 | } | 3091 | } |
| @@ -3090,10 +3093,10 @@ | |||
| 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" } } */ | 3093 | -/* { 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" } } */ | 3094 | +/* { 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 } } */ | 3095 | /* { dg-final { cleanup-saved-temps } } */ |
| 3093 | 3096 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c | |
| 3094 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c' | 3097 | =================================================================== |
| 3095 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c 2010-05-24 18:36:31 +0000 | 3098 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3096 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c 2011-05-03 15:14:56 +0000 | 3099 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dups8.c 2011-09-16 20:16:00.417564906 -0700 |
| 3097 | @@ -15,5 +15,5 @@ | 3100 | @@ -15,5 +15,5 @@ |
| 3098 | out_int8x8x2_t = vld2_dup_s8 (0); | 3101 | out_int8x8x2_t = vld2_dup_s8 (0); |
| 3099 | } | 3102 | } |
| @@ -3101,10 +3104,10 @@ | |||
| 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" } } */ | 3104 | -/* { 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" } } */ | 3105 | +/* { 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 } } */ | 3106 | /* { dg-final { cleanup-saved-temps } } */ |
| 3104 | 3107 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c | |
| 3105 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c' | 3108 | =================================================================== |
| 3106 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c 2010-05-24 18:36:31 +0000 | 3109 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3107 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c 2011-05-03 15:14:56 +0000 | 3110 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu16.c 2011-09-16 20:16:00.417564906 -0700 |
| 3108 | @@ -15,5 +15,5 @@ | 3111 | @@ -15,5 +15,5 @@ |
| 3109 | out_uint16x4x2_t = vld2_dup_u16 (0); | 3112 | out_uint16x4x2_t = vld2_dup_u16 (0); |
| 3110 | } | 3113 | } |
| @@ -3112,10 +3115,10 @@ | |||
| 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" } } */ | 3115 | -/* { 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" } } */ | 3116 | +/* { 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 } } */ | 3117 | /* { dg-final { cleanup-saved-temps } } */ |
| 3115 | 3118 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c | |
| 3116 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c' | 3119 | =================================================================== |
| 3117 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c 2010-05-24 18:36:31 +0000 | 3120 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3118 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c 2011-05-03 15:14:56 +0000 | 3121 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu32.c 2011-09-16 20:16:00.417564906 -0700 |
| 3119 | @@ -15,5 +15,5 @@ | 3122 | @@ -15,5 +15,5 @@ |
| 3120 | out_uint32x2x2_t = vld2_dup_u32 (0); | 3123 | out_uint32x2x2_t = vld2_dup_u32 (0); |
| 3121 | } | 3124 | } |
| @@ -3123,10 +3126,10 @@ | |||
| 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" } } */ | 3126 | -/* { 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" } } */ | 3127 | +/* { 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 } } */ | 3128 | /* { dg-final { cleanup-saved-temps } } */ |
| 3126 | 3129 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c | |
| 3127 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c' | 3130 | =================================================================== |
| 3128 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c 2010-05-24 18:36:31 +0000 | 3131 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3129 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c 2011-05-03 15:14:56 +0000 | 3132 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu64.c 2011-09-16 20:16:00.417564906 -0700 |
| 3130 | @@ -15,5 +15,5 @@ | 3133 | @@ -15,5 +15,5 @@ |
| 3131 | out_uint64x1x2_t = vld2_dup_u64 (0); | 3134 | out_uint64x1x2_t = vld2_dup_u64 (0); |
| 3132 | } | 3135 | } |
| @@ -3134,10 +3137,10 @@ | |||
| 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" } } */ | 3137 | -/* { 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" } } */ | 3138 | +/* { 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 } } */ | 3139 | /* { dg-final { cleanup-saved-temps } } */ |
| 3137 | 3140 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c | |
| 3138 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c' | 3141 | =================================================================== |
| 3139 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c 2010-05-24 18:36:31 +0000 | 3142 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3140 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c 2011-05-03 15:14:56 +0000 | 3143 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_dupu8.c 2011-09-16 20:16:00.417564906 -0700 |
| 3141 | @@ -15,5 +15,5 @@ | 3144 | @@ -15,5 +15,5 @@ |
| 3142 | out_uint8x8x2_t = vld2_dup_u8 (0); | 3145 | out_uint8x8x2_t = vld2_dup_u8 (0); |
| 3143 | } | 3146 | } |
| @@ -3145,10 +3148,10 @@ | |||
| 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" } } */ | 3148 | -/* { 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" } } */ | 3149 | +/* { 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 } } */ | 3150 | /* { dg-final { cleanup-saved-temps } } */ |
| 3148 | 3151 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c | |
| 3149 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c' | 3152 | =================================================================== |
| 3150 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c 2010-05-24 18:36:31 +0000 | 3153 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3151 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c 2011-05-03 15:14:56 +0000 | 3154 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanef32.c 2011-09-16 20:16:00.417564906 -0700 |
| 3152 | @@ -16,5 +16,5 @@ | 3155 | @@ -16,5 +16,5 @@ |
| 3153 | out_float32x2x2_t = vld2_lane_f32 (0, arg1_float32x2x2_t, 1); | 3156 | out_float32x2x2_t = vld2_lane_f32 (0, arg1_float32x2x2_t, 1); |
| 3154 | } | 3157 | } |
| @@ -3156,10 +3159,10 @@ | |||
| 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" } } */ | 3159 | -/* { 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" } } */ | 3160 | +/* { 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 } } */ | 3161 | /* { dg-final { cleanup-saved-temps } } */ |
| 3159 | 3162 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c | |
| 3160 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c' | 3163 | =================================================================== |
| 3161 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c 2010-05-24 18:36:31 +0000 | 3164 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3162 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c 2011-05-03 15:14:56 +0000 | 3165 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanep16.c 2011-09-16 20:16:00.417564906 -0700 |
| 3163 | @@ -16,5 +16,5 @@ | 3166 | @@ -16,5 +16,5 @@ |
| 3164 | out_poly16x4x2_t = vld2_lane_p16 (0, arg1_poly16x4x2_t, 1); | 3167 | out_poly16x4x2_t = vld2_lane_p16 (0, arg1_poly16x4x2_t, 1); |
| 3165 | } | 3168 | } |
| @@ -3167,10 +3170,10 @@ | |||
| 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" } } */ | 3170 | -/* { 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" } } */ | 3171 | +/* { 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 } } */ | 3172 | /* { dg-final { cleanup-saved-temps } } */ |
| 3170 | 3173 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c | |
| 3171 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c' | 3174 | =================================================================== |
| 3172 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c 2010-05-24 18:36:31 +0000 | 3175 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3173 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c 2011-05-03 15:14:56 +0000 | 3176 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanep8.c 2011-09-16 20:16:00.417564906 -0700 |
| 3174 | @@ -16,5 +16,5 @@ | 3177 | @@ -16,5 +16,5 @@ |
| 3175 | out_poly8x8x2_t = vld2_lane_p8 (0, arg1_poly8x8x2_t, 1); | 3178 | out_poly8x8x2_t = vld2_lane_p8 (0, arg1_poly8x8x2_t, 1); |
| 3176 | } | 3179 | } |
| @@ -3178,10 +3181,10 @@ | |||
| 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" } } */ | 3181 | -/* { 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" } } */ | 3182 | +/* { 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 } } */ | 3183 | /* { dg-final { cleanup-saved-temps } } */ |
| 3181 | 3184 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c | |
| 3182 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c' | 3185 | =================================================================== |
| 3183 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c 2010-05-24 18:36:31 +0000 | 3186 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3184 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c 2011-05-03 15:14:56 +0000 | 3187 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanes16.c 2011-09-16 20:16:00.417564906 -0700 |
| 3185 | @@ -16,5 +16,5 @@ | 3188 | @@ -16,5 +16,5 @@ |
| 3186 | out_int16x4x2_t = vld2_lane_s16 (0, arg1_int16x4x2_t, 1); | 3189 | out_int16x4x2_t = vld2_lane_s16 (0, arg1_int16x4x2_t, 1); |
| 3187 | } | 3190 | } |
| @@ -3189,10 +3192,10 @@ | |||
| 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" } } */ | 3192 | -/* { 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" } } */ | 3193 | +/* { 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 } } */ | 3194 | /* { dg-final { cleanup-saved-temps } } */ |
| 3192 | 3195 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c | |
| 3193 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c' | 3196 | =================================================================== |
| 3194 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c 2010-05-24 18:36:31 +0000 | 3197 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3195 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c 2011-05-03 15:14:56 +0000 | 3198 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanes32.c 2011-09-16 20:16:00.417564906 -0700 |
| 3196 | @@ -16,5 +16,5 @@ | 3199 | @@ -16,5 +16,5 @@ |
| 3197 | out_int32x2x2_t = vld2_lane_s32 (0, arg1_int32x2x2_t, 1); | 3200 | out_int32x2x2_t = vld2_lane_s32 (0, arg1_int32x2x2_t, 1); |
| 3198 | } | 3201 | } |
| @@ -3200,10 +3203,10 @@ | |||
| 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" } } */ | 3203 | -/* { 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" } } */ | 3204 | +/* { 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 } } */ | 3205 | /* { dg-final { cleanup-saved-temps } } */ |
| 3203 | 3206 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c | |
| 3204 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c' | 3207 | =================================================================== |
| 3205 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c 2010-05-24 18:36:31 +0000 | 3208 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3206 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c 2011-05-03 15:14:56 +0000 | 3209 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_lanes8.c 2011-09-16 20:16:00.417564906 -0700 |
| 3207 | @@ -16,5 +16,5 @@ | 3210 | @@ -16,5 +16,5 @@ |
| 3208 | out_int8x8x2_t = vld2_lane_s8 (0, arg1_int8x8x2_t, 1); | 3211 | out_int8x8x2_t = vld2_lane_s8 (0, arg1_int8x8x2_t, 1); |
| 3209 | } | 3212 | } |
| @@ -3211,10 +3214,10 @@ | |||
| 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" } } */ | 3214 | -/* { 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" } } */ | 3215 | +/* { 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 } } */ | 3216 | /* { dg-final { cleanup-saved-temps } } */ |
| 3214 | 3217 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c | |
| 3215 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c' | 3218 | =================================================================== |
| 3216 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c 2010-05-24 18:36:31 +0000 | 3219 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3217 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c 2011-05-03 15:14:56 +0000 | 3220 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_laneu16.c 2011-09-16 20:16:00.417564906 -0700 |
| 3218 | @@ -16,5 +16,5 @@ | 3221 | @@ -16,5 +16,5 @@ |
| 3219 | out_uint16x4x2_t = vld2_lane_u16 (0, arg1_uint16x4x2_t, 1); | 3222 | out_uint16x4x2_t = vld2_lane_u16 (0, arg1_uint16x4x2_t, 1); |
| 3220 | } | 3223 | } |
| @@ -3222,10 +3225,10 @@ | |||
| 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" } } */ | 3225 | -/* { 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" } } */ | 3226 | +/* { 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 } } */ | 3227 | /* { dg-final { cleanup-saved-temps } } */ |
| 3225 | 3228 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c | |
| 3226 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c' | 3229 | =================================================================== |
| 3227 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c 2010-05-24 18:36:31 +0000 | 3230 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3228 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c 2011-05-03 15:14:56 +0000 | 3231 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_laneu32.c 2011-09-16 20:16:00.417564906 -0700 |
| 3229 | @@ -16,5 +16,5 @@ | 3232 | @@ -16,5 +16,5 @@ |
| 3230 | out_uint32x2x2_t = vld2_lane_u32 (0, arg1_uint32x2x2_t, 1); | 3233 | out_uint32x2x2_t = vld2_lane_u32 (0, arg1_uint32x2x2_t, 1); |
| 3231 | } | 3234 | } |
| @@ -3233,10 +3236,10 @@ | |||
| 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" } } */ | 3236 | -/* { 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" } } */ | 3237 | +/* { 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 } } */ | 3238 | /* { dg-final { cleanup-saved-temps } } */ |
| 3236 | 3239 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c | |
| 3237 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c' | 3240 | =================================================================== |
| 3238 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c 2010-05-24 18:36:31 +0000 | 3241 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3239 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c 2011-05-03 15:14:56 +0000 | 3242 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2_laneu8.c 2011-09-16 20:16:00.417564906 -0700 |
| 3240 | @@ -16,5 +16,5 @@ | 3243 | @@ -16,5 +16,5 @@ |
| 3241 | out_uint8x8x2_t = vld2_lane_u8 (0, arg1_uint8x8x2_t, 1); | 3244 | out_uint8x8x2_t = vld2_lane_u8 (0, arg1_uint8x8x2_t, 1); |
| 3242 | } | 3245 | } |
| @@ -3244,10 +3247,10 @@ | |||
| 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" } } */ | 3247 | -/* { 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" } } */ | 3248 | +/* { 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 } } */ | 3249 | /* { dg-final { cleanup-saved-temps } } */ |
| 3247 | 3250 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2f32.c | |
| 3248 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2f32.c' | 3251 | =================================================================== |
| 3249 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2f32.c 2010-05-24 18:36:31 +0000 | 3252 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3250 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2f32.c 2011-05-03 15:14:56 +0000 | 3253 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2f32.c 2011-09-16 20:16:00.427564921 -0700 |
| 3251 | @@ -15,5 +15,5 @@ | 3254 | @@ -15,5 +15,5 @@ |
| 3252 | out_float32x2x2_t = vld2_f32 (0); | 3255 | out_float32x2x2_t = vld2_f32 (0); |
| 3253 | } | 3256 | } |
| @@ -3255,10 +3258,10 @@ | |||
| 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" } } */ | 3258 | -/* { 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" } } */ | 3259 | +/* { 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 } } */ | 3260 | /* { dg-final { cleanup-saved-temps } } */ |
| 3258 | 3261 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2p16.c | |
| 3259 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2p16.c' | 3262 | =================================================================== |
| 3260 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2p16.c 2010-05-24 18:36:31 +0000 | 3263 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3261 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2p16.c 2011-05-03 15:14:56 +0000 | 3264 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2p16.c 2011-09-16 20:16:00.427564921 -0700 |
| 3262 | @@ -15,5 +15,5 @@ | 3265 | @@ -15,5 +15,5 @@ |
| 3263 | out_poly16x4x2_t = vld2_p16 (0); | 3266 | out_poly16x4x2_t = vld2_p16 (0); |
| 3264 | } | 3267 | } |
| @@ -3266,10 +3269,10 @@ | |||
| 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" } } */ | 3269 | -/* { 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" } } */ | 3270 | +/* { 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 } } */ | 3271 | /* { dg-final { cleanup-saved-temps } } */ |
| 3269 | 3272 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2p8.c | |
| 3270 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2p8.c' | 3273 | =================================================================== |
| 3271 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2p8.c 2010-05-24 18:36:31 +0000 | 3274 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3272 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2p8.c 2011-05-03 15:14:56 +0000 | 3275 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2p8.c 2011-09-16 20:16:00.427564921 -0700 |
| 3273 | @@ -15,5 +15,5 @@ | 3276 | @@ -15,5 +15,5 @@ |
| 3274 | out_poly8x8x2_t = vld2_p8 (0); | 3277 | out_poly8x8x2_t = vld2_p8 (0); |
| 3275 | } | 3278 | } |
| @@ -3277,10 +3280,10 @@ | |||
| 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" } } */ | 3280 | -/* { 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" } } */ | 3281 | +/* { 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 } } */ | 3282 | /* { dg-final { cleanup-saved-temps } } */ |
| 3280 | 3283 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s16.c | |
| 3281 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s16.c' | 3284 | =================================================================== |
| 3282 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2s16.c 2010-05-24 18:36:31 +0000 | 3285 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3283 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2s16.c 2011-05-03 15:14:56 +0000 | 3286 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s16.c 2011-09-16 20:16:00.427564921 -0700 |
| 3284 | @@ -15,5 +15,5 @@ | 3287 | @@ -15,5 +15,5 @@ |
| 3285 | out_int16x4x2_t = vld2_s16 (0); | 3288 | out_int16x4x2_t = vld2_s16 (0); |
| 3286 | } | 3289 | } |
| @@ -3288,10 +3291,10 @@ | |||
| 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" } } */ | 3291 | -/* { 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" } } */ | 3292 | +/* { 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 } } */ | 3293 | /* { dg-final { cleanup-saved-temps } } */ |
| 3291 | 3294 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s32.c | |
| 3292 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s32.c' | 3295 | =================================================================== |
| 3293 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2s32.c 2010-05-24 18:36:31 +0000 | 3296 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3294 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2s32.c 2011-05-03 15:14:56 +0000 | 3297 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s32.c 2011-09-16 20:16:00.427564921 -0700 |
| 3295 | @@ -15,5 +15,5 @@ | 3298 | @@ -15,5 +15,5 @@ |
| 3296 | out_int32x2x2_t = vld2_s32 (0); | 3299 | out_int32x2x2_t = vld2_s32 (0); |
| 3297 | } | 3300 | } |
| @@ -3299,10 +3302,10 @@ | |||
| 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" } } */ | 3302 | -/* { 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" } } */ | 3303 | +/* { 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 } } */ | 3304 | /* { dg-final { cleanup-saved-temps } } */ |
| 3302 | 3305 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s64.c | |
| 3303 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s64.c' | 3306 | =================================================================== |
| 3304 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2s64.c 2010-05-24 18:36:31 +0000 | 3307 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3305 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2s64.c 2011-05-03 15:14:56 +0000 | 3308 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s64.c 2011-09-16 20:16:00.427564921 -0700 |
| 3306 | @@ -15,5 +15,5 @@ | 3309 | @@ -15,5 +15,5 @@ |
| 3307 | out_int64x1x2_t = vld2_s64 (0); | 3310 | out_int64x1x2_t = vld2_s64 (0); |
| 3308 | } | 3311 | } |
| @@ -3310,10 +3313,10 @@ | |||
| 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" } } */ | 3313 | -/* { 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" } } */ | 3314 | +/* { 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 } } */ | 3315 | /* { dg-final { cleanup-saved-temps } } */ |
| 3313 | 3316 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s8.c | |
| 3314 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2s8.c' | 3317 | =================================================================== |
| 3315 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2s8.c 2010-05-24 18:36:31 +0000 | 3318 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3316 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2s8.c 2011-05-03 15:14:56 +0000 | 3319 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2s8.c 2011-09-16 20:16:00.437564924 -0700 |
| 3317 | @@ -15,5 +15,5 @@ | 3320 | @@ -15,5 +15,5 @@ |
| 3318 | out_int8x8x2_t = vld2_s8 (0); | 3321 | out_int8x8x2_t = vld2_s8 (0); |
| 3319 | } | 3322 | } |
| @@ -3321,10 +3324,10 @@ | |||
| 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" } } */ | 3324 | -/* { 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" } } */ | 3325 | +/* { 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 } } */ | 3326 | /* { dg-final { cleanup-saved-temps } } */ |
| 3324 | 3327 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u16.c | |
| 3325 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u16.c' | 3328 | =================================================================== |
| 3326 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2u16.c 2010-05-24 18:36:31 +0000 | 3329 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3327 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2u16.c 2011-05-03 15:14:56 +0000 | 3330 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u16.c 2011-09-16 20:16:00.437564924 -0700 |
| 3328 | @@ -15,5 +15,5 @@ | 3331 | @@ -15,5 +15,5 @@ |
| 3329 | out_uint16x4x2_t = vld2_u16 (0); | 3332 | out_uint16x4x2_t = vld2_u16 (0); |
| 3330 | } | 3333 | } |
| @@ -3332,10 +3335,10 @@ | |||
| 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" } } */ | 3335 | -/* { 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" } } */ | 3336 | +/* { 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 } } */ | 3337 | /* { dg-final { cleanup-saved-temps } } */ |
| 3335 | 3338 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u32.c | |
| 3336 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u32.c' | 3339 | =================================================================== |
| 3337 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2u32.c 2010-05-24 18:36:31 +0000 | 3340 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3338 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2u32.c 2011-05-03 15:14:56 +0000 | 3341 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u32.c 2011-09-16 20:16:00.437564924 -0700 |
| 3339 | @@ -15,5 +15,5 @@ | 3342 | @@ -15,5 +15,5 @@ |
| 3340 | out_uint32x2x2_t = vld2_u32 (0); | 3343 | out_uint32x2x2_t = vld2_u32 (0); |
| 3341 | } | 3344 | } |
| @@ -3343,10 +3346,10 @@ | |||
| 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" } } */ | 3346 | -/* { 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" } } */ | 3347 | +/* { 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 } } */ | 3348 | /* { dg-final { cleanup-saved-temps } } */ |
| 3346 | 3349 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u64.c | |
| 3347 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u64.c' | 3350 | =================================================================== |
| 3348 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2u64.c 2010-05-24 18:36:31 +0000 | 3351 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3349 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2u64.c 2011-05-03 15:14:56 +0000 | 3352 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u64.c 2011-09-16 20:16:00.437564924 -0700 |
| 3350 | @@ -15,5 +15,5 @@ | 3353 | @@ -15,5 +15,5 @@ |
| 3351 | out_uint64x1x2_t = vld2_u64 (0); | 3354 | out_uint64x1x2_t = vld2_u64 (0); |
| 3352 | } | 3355 | } |
| @@ -3354,10 +3357,10 @@ | |||
| 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" } } */ | 3357 | -/* { 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" } } */ | 3358 | +/* { 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 } } */ | 3359 | /* { dg-final { cleanup-saved-temps } } */ |
| 3357 | 3360 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u8.c | |
| 3358 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld2u8.c' | 3361 | =================================================================== |
| 3359 | --- old/gcc/testsuite/gcc.target/arm/neon/vld2u8.c 2010-05-24 18:36:31 +0000 | 3362 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld2u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3360 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld2u8.c 2011-05-03 15:14:56 +0000 | 3363 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld2u8.c 2011-09-16 20:16:00.437564924 -0700 |
| 3361 | @@ -15,5 +15,5 @@ | 3364 | @@ -15,5 +15,5 @@ |
| 3362 | out_uint8x8x2_t = vld2_u8 (0); | 3365 | out_uint8x8x2_t = vld2_u8 (0); |
| 3363 | } | 3366 | } |
| @@ -3365,10 +3368,10 @@ | |||
| 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" } } */ | 3368 | -/* { 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" } } */ | 3369 | +/* { 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 } } */ | 3370 | /* { dg-final { cleanup-saved-temps } } */ |
| 3368 | 3371 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c | |
| 3369 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c' | 3372 | =================================================================== |
| 3370 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c 2010-05-24 18:36:31 +0000 | 3373 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3371 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c 2011-05-03 15:14:56 +0000 | 3374 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanef32.c 2011-09-16 20:16:00.437564924 -0700 |
| 3372 | @@ -16,5 +16,5 @@ | 3375 | @@ -16,5 +16,5 @@ |
| 3373 | out_float32x4x3_t = vld3q_lane_f32 (0, arg1_float32x4x3_t, 1); | 3376 | out_float32x4x3_t = vld3q_lane_f32 (0, arg1_float32x4x3_t, 1); |
| 3374 | } | 3377 | } |
| @@ -3376,10 +3379,10 @@ | |||
| 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" } } */ | 3379 | -/* { 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" } } */ | 3380 | +/* { 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 } } */ | 3381 | /* { dg-final { cleanup-saved-temps } } */ |
| 3379 | 3382 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c | |
| 3380 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c' | 3383 | =================================================================== |
| 3381 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c 2010-05-24 18:36:31 +0000 | 3384 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3382 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c 2011-05-03 15:14:56 +0000 | 3385 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanep16.c 2011-09-16 20:16:00.437564924 -0700 |
| 3383 | @@ -16,5 +16,5 @@ | 3386 | @@ -16,5 +16,5 @@ |
| 3384 | out_poly16x8x3_t = vld3q_lane_p16 (0, arg1_poly16x8x3_t, 1); | 3387 | out_poly16x8x3_t = vld3q_lane_p16 (0, arg1_poly16x8x3_t, 1); |
| 3385 | } | 3388 | } |
| @@ -3387,10 +3390,10 @@ | |||
| 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" } } */ | 3390 | -/* { 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" } } */ | 3391 | +/* { 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 } } */ | 3392 | /* { dg-final { cleanup-saved-temps } } */ |
| 3390 | 3393 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c | |
| 3391 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c' | 3394 | =================================================================== |
| 3392 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c 2010-05-24 18:36:31 +0000 | 3395 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3393 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c 2011-05-03 15:14:56 +0000 | 3396 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes16.c 2011-09-16 20:16:00.447564932 -0700 |
| 3394 | @@ -16,5 +16,5 @@ | 3397 | @@ -16,5 +16,5 @@ |
| 3395 | out_int16x8x3_t = vld3q_lane_s16 (0, arg1_int16x8x3_t, 1); | 3398 | out_int16x8x3_t = vld3q_lane_s16 (0, arg1_int16x8x3_t, 1); |
| 3396 | } | 3399 | } |
| @@ -3398,10 +3401,10 @@ | |||
| 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" } } */ | 3401 | -/* { 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" } } */ | 3402 | +/* { 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 } } */ | 3403 | /* { dg-final { cleanup-saved-temps } } */ |
| 3401 | 3404 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c | |
| 3402 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c' | 3405 | =================================================================== |
| 3403 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c 2010-05-24 18:36:31 +0000 | 3406 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3404 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c 2011-05-03 15:14:56 +0000 | 3407 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_lanes32.c 2011-09-16 20:16:00.447564932 -0700 |
| 3405 | @@ -16,5 +16,5 @@ | 3408 | @@ -16,5 +16,5 @@ |
| 3406 | out_int32x4x3_t = vld3q_lane_s32 (0, arg1_int32x4x3_t, 1); | 3409 | out_int32x4x3_t = vld3q_lane_s32 (0, arg1_int32x4x3_t, 1); |
| 3407 | } | 3410 | } |
| @@ -3409,10 +3412,10 @@ | |||
| 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" } } */ | 3412 | -/* { 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" } } */ | 3413 | +/* { 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 } } */ | 3414 | /* { dg-final { cleanup-saved-temps } } */ |
| 3412 | 3415 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c | |
| 3413 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c' | 3416 | =================================================================== |
| 3414 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c 2010-05-24 18:36:31 +0000 | 3417 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3415 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c 2011-05-03 15:14:56 +0000 | 3418 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu16.c 2011-09-16 20:16:00.447564932 -0700 |
| 3416 | @@ -16,5 +16,5 @@ | 3419 | @@ -16,5 +16,5 @@ |
| 3417 | out_uint16x8x3_t = vld3q_lane_u16 (0, arg1_uint16x8x3_t, 1); | 3420 | out_uint16x8x3_t = vld3q_lane_u16 (0, arg1_uint16x8x3_t, 1); |
| 3418 | } | 3421 | } |
| @@ -3420,10 +3423,10 @@ | |||
| 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" } } */ | 3423 | -/* { 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" } } */ | 3424 | +/* { 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 } } */ | 3425 | /* { dg-final { cleanup-saved-temps } } */ |
| 3423 | 3426 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c | |
| 3424 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c' | 3427 | =================================================================== |
| 3425 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c 2010-05-24 18:36:31 +0000 | 3428 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3426 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c 2011-05-03 15:14:56 +0000 | 3429 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Q_laneu32.c 2011-09-16 20:16:00.447564932 -0700 |
| 3427 | @@ -16,5 +16,5 @@ | 3430 | @@ -16,5 +16,5 @@ |
| 3428 | out_uint32x4x3_t = vld3q_lane_u32 (0, arg1_uint32x4x3_t, 1); | 3431 | out_uint32x4x3_t = vld3q_lane_u32 (0, arg1_uint32x4x3_t, 1); |
| 3429 | } | 3432 | } |
| @@ -3431,10 +3434,10 @@ | |||
| 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" } } */ | 3434 | -/* { 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" } } */ | 3435 | +/* { 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 } } */ | 3436 | /* { dg-final { cleanup-saved-temps } } */ |
| 3434 | 3437 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c | |
| 3435 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c' | 3438 | =================================================================== |
| 3436 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c 2010-05-24 18:36:31 +0000 | 3439 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3437 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c 2011-05-03 15:14:56 +0000 | 3440 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qf32.c 2011-09-16 20:16:00.447564932 -0700 |
| 3438 | @@ -15,6 +15,6 @@ | 3441 | @@ -15,6 +15,6 @@ |
| 3439 | out_float32x4x3_t = vld3q_f32 (0); | 3442 | out_float32x4x3_t = vld3q_f32 (0); |
| 3440 | } | 3443 | } |
| @@ -3444,10 +3447,10 @@ | |||
| 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" } } */ | 3447 | +/* { 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" } } */ | 3448 | +/* { 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 } } */ | 3449 | /* { dg-final { cleanup-saved-temps } } */ |
| 3447 | 3450 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c | |
| 3448 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c' | 3451 | =================================================================== |
| 3449 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c 2010-05-24 18:36:31 +0000 | 3452 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3450 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c 2011-05-03 15:14:56 +0000 | 3453 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qp16.c 2011-09-16 20:16:00.447564932 -0700 |
| 3451 | @@ -15,6 +15,6 @@ | 3454 | @@ -15,6 +15,6 @@ |
| 3452 | out_poly16x8x3_t = vld3q_p16 (0); | 3455 | out_poly16x8x3_t = vld3q_p16 (0); |
| 3453 | } | 3456 | } |
| @@ -3457,10 +3460,10 @@ | |||
| 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" } } */ | 3460 | +/* { 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" } } */ | 3461 | +/* { 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 } } */ | 3462 | /* { dg-final { cleanup-saved-temps } } */ |
| 3460 | 3463 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c | |
| 3461 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c' | 3464 | =================================================================== |
| 3462 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c 2010-05-24 18:36:31 +0000 | 3465 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3463 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c 2011-05-03 15:14:56 +0000 | 3466 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qp8.c 2011-09-16 20:16:00.447564932 -0700 |
| 3464 | @@ -15,6 +15,6 @@ | 3467 | @@ -15,6 +15,6 @@ |
| 3465 | out_poly8x16x3_t = vld3q_p8 (0); | 3468 | out_poly8x16x3_t = vld3q_p8 (0); |
| 3466 | } | 3469 | } |
| @@ -3470,10 +3473,10 @@ | |||
| 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" } } */ | 3473 | +/* { 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" } } */ | 3474 | +/* { 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 } } */ | 3475 | /* { dg-final { cleanup-saved-temps } } */ |
| 3473 | 3476 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c | |
| 3474 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c' | 3477 | =================================================================== |
| 3475 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c 2010-05-24 18:36:31 +0000 | 3478 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3476 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c 2011-05-03 15:14:56 +0000 | 3479 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qs16.c 2011-09-16 20:16:00.447564932 -0700 |
| 3477 | @@ -15,6 +15,6 @@ | 3480 | @@ -15,6 +15,6 @@ |
| 3478 | out_int16x8x3_t = vld3q_s16 (0); | 3481 | out_int16x8x3_t = vld3q_s16 (0); |
| 3479 | } | 3482 | } |
| @@ -3483,10 +3486,10 @@ | |||
| 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" } } */ | 3486 | +/* { 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" } } */ | 3487 | +/* { 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 } } */ | 3488 | /* { dg-final { cleanup-saved-temps } } */ |
| 3486 | 3489 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c | |
| 3487 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c' | 3490 | =================================================================== |
| 3488 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c 2010-05-24 18:36:31 +0000 | 3491 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3489 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c 2011-05-03 15:14:56 +0000 | 3492 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qs32.c 2011-09-16 20:16:00.447564932 -0700 |
| 3490 | @@ -15,6 +15,6 @@ | 3493 | @@ -15,6 +15,6 @@ |
| 3491 | out_int32x4x3_t = vld3q_s32 (0); | 3494 | out_int32x4x3_t = vld3q_s32 (0); |
| 3492 | } | 3495 | } |
| @@ -3496,10 +3499,10 @@ | |||
| 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" } } */ | 3499 | +/* { 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" } } */ | 3500 | +/* { 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 } } */ | 3501 | /* { dg-final { cleanup-saved-temps } } */ |
| 3499 | 3502 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c | |
| 3500 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c' | 3503 | =================================================================== |
| 3501 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c 2010-05-24 18:36:31 +0000 | 3504 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3502 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c 2011-05-03 15:14:56 +0000 | 3505 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qs8.c 2011-09-16 20:16:00.447564932 -0700 |
| 3503 | @@ -15,6 +15,6 @@ | 3506 | @@ -15,6 +15,6 @@ |
| 3504 | out_int8x16x3_t = vld3q_s8 (0); | 3507 | out_int8x16x3_t = vld3q_s8 (0); |
| 3505 | } | 3508 | } |
| @@ -3509,10 +3512,10 @@ | |||
| 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" } } */ | 3512 | +/* { 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" } } */ | 3513 | +/* { 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 } } */ | 3514 | /* { dg-final { cleanup-saved-temps } } */ |
| 3512 | 3515 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c | |
| 3513 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c' | 3516 | =================================================================== |
| 3514 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c 2010-05-24 18:36:31 +0000 | 3517 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3515 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c 2011-05-03 15:14:56 +0000 | 3518 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qu16.c 2011-09-16 20:16:00.447564932 -0700 |
| 3516 | @@ -15,6 +15,6 @@ | 3519 | @@ -15,6 +15,6 @@ |
| 3517 | out_uint16x8x3_t = vld3q_u16 (0); | 3520 | out_uint16x8x3_t = vld3q_u16 (0); |
| 3518 | } | 3521 | } |
| @@ -3522,10 +3525,10 @@ | |||
| 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" } } */ | 3525 | +/* { 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" } } */ | 3526 | +/* { 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 } } */ | 3527 | /* { dg-final { cleanup-saved-temps } } */ |
| 3525 | 3528 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c | |
| 3526 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c' | 3529 | =================================================================== |
| 3527 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c 2010-05-24 18:36:31 +0000 | 3530 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3528 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c 2011-05-03 15:14:56 +0000 | 3531 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qu32.c 2011-09-16 20:16:00.447564932 -0700 |
| 3529 | @@ -15,6 +15,6 @@ | 3532 | @@ -15,6 +15,6 @@ |
| 3530 | out_uint32x4x3_t = vld3q_u32 (0); | 3533 | out_uint32x4x3_t = vld3q_u32 (0); |
| 3531 | } | 3534 | } |
| @@ -3535,10 +3538,10 @@ | |||
| 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" } } */ | 3538 | +/* { 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" } } */ | 3539 | +/* { 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 } } */ | 3540 | /* { dg-final { cleanup-saved-temps } } */ |
| 3538 | 3541 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c | |
| 3539 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c' | 3542 | =================================================================== |
| 3540 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c 2010-05-24 18:36:31 +0000 | 3543 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3541 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c 2011-05-03 15:14:56 +0000 | 3544 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3Qu8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3542 | @@ -15,6 +15,6 @@ | 3545 | @@ -15,6 +15,6 @@ |
| 3543 | out_uint8x16x3_t = vld3q_u8 (0); | 3546 | out_uint8x16x3_t = vld3q_u8 (0); |
| 3544 | } | 3547 | } |
| @@ -3548,10 +3551,10 @@ | |||
| 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" } } */ | 3551 | +/* { 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" } } */ | 3552 | +/* { 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 } } */ | 3553 | /* { dg-final { cleanup-saved-temps } } */ |
| 3551 | 3554 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c | |
| 3552 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c' | 3555 | =================================================================== |
| 3553 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c 2010-05-24 18:36:31 +0000 | 3556 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3554 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c 2011-05-03 15:14:56 +0000 | 3557 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupf32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3555 | @@ -15,5 +15,5 @@ | 3558 | @@ -15,5 +15,5 @@ |
| 3556 | out_float32x2x3_t = vld3_dup_f32 (0); | 3559 | out_float32x2x3_t = vld3_dup_f32 (0); |
| 3557 | } | 3560 | } |
| @@ -3559,10 +3562,10 @@ | |||
| 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" } } */ | 3562 | -/* { 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" } } */ | 3563 | +/* { 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 } } */ | 3564 | /* { dg-final { cleanup-saved-temps } } */ |
| 3562 | 3565 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c | |
| 3563 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c' | 3566 | =================================================================== |
| 3564 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c 2010-05-24 18:36:31 +0000 | 3567 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3565 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c 2011-05-03 15:14:56 +0000 | 3568 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupp16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3566 | @@ -15,5 +15,5 @@ | 3569 | @@ -15,5 +15,5 @@ |
| 3567 | out_poly16x4x3_t = vld3_dup_p16 (0); | 3570 | out_poly16x4x3_t = vld3_dup_p16 (0); |
| 3568 | } | 3571 | } |
| @@ -3570,10 +3573,10 @@ | |||
| 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" } } */ | 3573 | -/* { 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" } } */ | 3574 | +/* { 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 } } */ | 3575 | /* { dg-final { cleanup-saved-temps } } */ |
| 3573 | 3576 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c | |
| 3574 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c' | 3577 | =================================================================== |
| 3575 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c 2010-05-24 18:36:31 +0000 | 3578 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3576 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c 2011-05-03 15:14:56 +0000 | 3579 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupp8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3577 | @@ -15,5 +15,5 @@ | 3580 | @@ -15,5 +15,5 @@ |
| 3578 | out_poly8x8x3_t = vld3_dup_p8 (0); | 3581 | out_poly8x8x3_t = vld3_dup_p8 (0); |
| 3579 | } | 3582 | } |
| @@ -3581,10 +3584,10 @@ | |||
| 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" } } */ | 3584 | -/* { 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" } } */ | 3585 | +/* { 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 } } */ | 3586 | /* { dg-final { cleanup-saved-temps } } */ |
| 3584 | 3587 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c | |
| 3585 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c' | 3588 | =================================================================== |
| 3586 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c 2010-05-24 18:36:31 +0000 | 3589 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3587 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c 2011-05-03 15:14:56 +0000 | 3590 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3588 | @@ -15,5 +15,5 @@ | 3591 | @@ -15,5 +15,5 @@ |
| 3589 | out_int16x4x3_t = vld3_dup_s16 (0); | 3592 | out_int16x4x3_t = vld3_dup_s16 (0); |
| 3590 | } | 3593 | } |
| @@ -3592,10 +3595,10 @@ | |||
| 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" } } */ | 3595 | -/* { 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" } } */ | 3596 | +/* { 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 } } */ | 3597 | /* { dg-final { cleanup-saved-temps } } */ |
| 3595 | 3598 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c | |
| 3596 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c' | 3599 | =================================================================== |
| 3597 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c 2010-05-24 18:36:31 +0000 | 3600 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3598 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c 2011-05-03 15:14:56 +0000 | 3601 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3599 | @@ -15,5 +15,5 @@ | 3602 | @@ -15,5 +15,5 @@ |
| 3600 | out_int32x2x3_t = vld3_dup_s32 (0); | 3603 | out_int32x2x3_t = vld3_dup_s32 (0); |
| 3601 | } | 3604 | } |
| @@ -3603,10 +3606,10 @@ | |||
| 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" } } */ | 3606 | -/* { 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" } } */ | 3607 | +/* { 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 } } */ | 3608 | /* { dg-final { cleanup-saved-temps } } */ |
| 3606 | 3609 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c | |
| 3607 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c' | 3610 | =================================================================== |
| 3608 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c 2010-05-24 18:36:31 +0000 | 3611 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3609 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c 2011-05-03 15:14:56 +0000 | 3612 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups64.c 2011-09-16 20:16:00.457564944 -0700 |
| 3610 | @@ -15,5 +15,5 @@ | 3613 | @@ -15,5 +15,5 @@ |
| 3611 | out_int64x1x3_t = vld3_dup_s64 (0); | 3614 | out_int64x1x3_t = vld3_dup_s64 (0); |
| 3612 | } | 3615 | } |
| @@ -3614,10 +3617,10 @@ | |||
| 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" } } */ | 3617 | -/* { 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" } } */ | 3618 | +/* { 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 } } */ | 3619 | /* { dg-final { cleanup-saved-temps } } */ |
| 3617 | 3620 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c | |
| 3618 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c' | 3621 | =================================================================== |
| 3619 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c 2010-05-24 18:36:31 +0000 | 3622 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3620 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c 2011-05-03 15:14:56 +0000 | 3623 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dups8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3621 | @@ -15,5 +15,5 @@ | 3624 | @@ -15,5 +15,5 @@ |
| 3622 | out_int8x8x3_t = vld3_dup_s8 (0); | 3625 | out_int8x8x3_t = vld3_dup_s8 (0); |
| 3623 | } | 3626 | } |
| @@ -3625,10 +3628,10 @@ | |||
| 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" } } */ | 3628 | -/* { 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" } } */ | 3629 | +/* { 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 } } */ | 3630 | /* { dg-final { cleanup-saved-temps } } */ |
| 3628 | 3631 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c | |
| 3629 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c' | 3632 | =================================================================== |
| 3630 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c 2010-05-24 18:36:31 +0000 | 3633 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3631 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c 2011-05-03 15:14:56 +0000 | 3634 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3632 | @@ -15,5 +15,5 @@ | 3635 | @@ -15,5 +15,5 @@ |
| 3633 | out_uint16x4x3_t = vld3_dup_u16 (0); | 3636 | out_uint16x4x3_t = vld3_dup_u16 (0); |
| 3634 | } | 3637 | } |
| @@ -3636,10 +3639,10 @@ | |||
| 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" } } */ | 3639 | -/* { 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" } } */ | 3640 | +/* { 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 } } */ | 3641 | /* { dg-final { cleanup-saved-temps } } */ |
| 3639 | 3642 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c | |
| 3640 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c' | 3643 | =================================================================== |
| 3641 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c 2010-05-24 18:36:31 +0000 | 3644 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3642 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c 2011-05-03 15:14:56 +0000 | 3645 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3643 | @@ -15,5 +15,5 @@ | 3646 | @@ -15,5 +15,5 @@ |
| 3644 | out_uint32x2x3_t = vld3_dup_u32 (0); | 3647 | out_uint32x2x3_t = vld3_dup_u32 (0); |
| 3645 | } | 3648 | } |
| @@ -3647,10 +3650,10 @@ | |||
| 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" } } */ | 3650 | -/* { 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" } } */ | 3651 | +/* { 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 } } */ | 3652 | /* { dg-final { cleanup-saved-temps } } */ |
| 3650 | 3653 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c | |
| 3651 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c' | 3654 | =================================================================== |
| 3652 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c 2010-05-24 18:36:31 +0000 | 3655 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3653 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c 2011-05-03 15:14:56 +0000 | 3656 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu64.c 2011-09-16 20:16:00.457564944 -0700 |
| 3654 | @@ -15,5 +15,5 @@ | 3657 | @@ -15,5 +15,5 @@ |
| 3655 | out_uint64x1x3_t = vld3_dup_u64 (0); | 3658 | out_uint64x1x3_t = vld3_dup_u64 (0); |
| 3656 | } | 3659 | } |
| @@ -3658,10 +3661,10 @@ | |||
| 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" } } */ | 3661 | -/* { 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" } } */ | 3662 | +/* { 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 } } */ | 3663 | /* { dg-final { cleanup-saved-temps } } */ |
| 3661 | 3664 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c | |
| 3662 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c' | 3665 | =================================================================== |
| 3663 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c 2010-05-24 18:36:31 +0000 | 3666 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3664 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c 2011-05-03 15:14:56 +0000 | 3667 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_dupu8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3665 | @@ -15,5 +15,5 @@ | 3668 | @@ -15,5 +15,5 @@ |
| 3666 | out_uint8x8x3_t = vld3_dup_u8 (0); | 3669 | out_uint8x8x3_t = vld3_dup_u8 (0); |
| 3667 | } | 3670 | } |
| @@ -3669,10 +3672,10 @@ | |||
| 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" } } */ | 3672 | -/* { 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" } } */ | 3673 | +/* { 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 } } */ | 3674 | /* { dg-final { cleanup-saved-temps } } */ |
| 3672 | 3675 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c | |
| 3673 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c' | 3676 | =================================================================== |
| 3674 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c 2010-05-24 18:36:31 +0000 | 3677 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3675 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c 2011-05-03 15:14:56 +0000 | 3678 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanef32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3676 | @@ -16,5 +16,5 @@ | 3679 | @@ -16,5 +16,5 @@ |
| 3677 | out_float32x2x3_t = vld3_lane_f32 (0, arg1_float32x2x3_t, 1); | 3680 | out_float32x2x3_t = vld3_lane_f32 (0, arg1_float32x2x3_t, 1); |
| 3678 | } | 3681 | } |
| @@ -3680,10 +3683,10 @@ | |||
| 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" } } */ | 3683 | -/* { 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" } } */ | 3684 | +/* { 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 } } */ | 3685 | /* { dg-final { cleanup-saved-temps } } */ |
| 3683 | 3686 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c | |
| 3684 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c' | 3687 | =================================================================== |
| 3685 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c 2010-05-24 18:36:31 +0000 | 3688 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3686 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c 2011-05-03 15:14:56 +0000 | 3689 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanep16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3687 | @@ -16,5 +16,5 @@ | 3690 | @@ -16,5 +16,5 @@ |
| 3688 | out_poly16x4x3_t = vld3_lane_p16 (0, arg1_poly16x4x3_t, 1); | 3691 | out_poly16x4x3_t = vld3_lane_p16 (0, arg1_poly16x4x3_t, 1); |
| 3689 | } | 3692 | } |
| @@ -3691,10 +3694,10 @@ | |||
| 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" } } */ | 3694 | -/* { 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" } } */ | 3695 | +/* { 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 } } */ | 3696 | /* { dg-final { cleanup-saved-temps } } */ |
| 3694 | 3697 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c | |
| 3695 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c' | 3698 | =================================================================== |
| 3696 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c 2010-05-24 18:36:31 +0000 | 3699 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3697 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c 2011-05-03 15:14:56 +0000 | 3700 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanep8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3698 | @@ -16,5 +16,5 @@ | 3701 | @@ -16,5 +16,5 @@ |
| 3699 | out_poly8x8x3_t = vld3_lane_p8 (0, arg1_poly8x8x3_t, 1); | 3702 | out_poly8x8x3_t = vld3_lane_p8 (0, arg1_poly8x8x3_t, 1); |
| 3700 | } | 3703 | } |
| @@ -3702,10 +3705,10 @@ | |||
| 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" } } */ | 3705 | -/* { 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" } } */ | 3706 | +/* { 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 } } */ | 3707 | /* { dg-final { cleanup-saved-temps } } */ |
| 3705 | 3708 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c | |
| 3706 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c' | 3709 | =================================================================== |
| 3707 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c 2010-05-24 18:36:31 +0000 | 3710 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3708 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c 2011-05-03 15:14:56 +0000 | 3711 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanes16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3709 | @@ -16,5 +16,5 @@ | 3712 | @@ -16,5 +16,5 @@ |
| 3710 | out_int16x4x3_t = vld3_lane_s16 (0, arg1_int16x4x3_t, 1); | 3713 | out_int16x4x3_t = vld3_lane_s16 (0, arg1_int16x4x3_t, 1); |
| 3711 | } | 3714 | } |
| @@ -3713,10 +3716,10 @@ | |||
| 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" } } */ | 3716 | -/* { 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" } } */ | 3717 | +/* { 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 } } */ | 3718 | /* { dg-final { cleanup-saved-temps } } */ |
| 3716 | 3719 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c | |
| 3717 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c' | 3720 | =================================================================== |
| 3718 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c 2010-05-24 18:36:31 +0000 | 3721 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3719 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c 2011-05-03 15:14:56 +0000 | 3722 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanes32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3720 | @@ -16,5 +16,5 @@ | 3723 | @@ -16,5 +16,5 @@ |
| 3721 | out_int32x2x3_t = vld3_lane_s32 (0, arg1_int32x2x3_t, 1); | 3724 | out_int32x2x3_t = vld3_lane_s32 (0, arg1_int32x2x3_t, 1); |
| 3722 | } | 3725 | } |
| @@ -3724,10 +3727,10 @@ | |||
| 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" } } */ | 3727 | -/* { 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" } } */ | 3728 | +/* { 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 } } */ | 3729 | /* { dg-final { cleanup-saved-temps } } */ |
| 3727 | 3730 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c | |
| 3728 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c' | 3731 | =================================================================== |
| 3729 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c 2010-05-24 18:36:31 +0000 | 3732 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3730 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c 2011-05-03 15:14:56 +0000 | 3733 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_lanes8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3731 | @@ -16,5 +16,5 @@ | 3734 | @@ -16,5 +16,5 @@ |
| 3732 | out_int8x8x3_t = vld3_lane_s8 (0, arg1_int8x8x3_t, 1); | 3735 | out_int8x8x3_t = vld3_lane_s8 (0, arg1_int8x8x3_t, 1); |
| 3733 | } | 3736 | } |
| @@ -3735,10 +3738,10 @@ | |||
| 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" } } */ | 3738 | -/* { 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" } } */ | 3739 | +/* { 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 } } */ | 3740 | /* { dg-final { cleanup-saved-temps } } */ |
| 3738 | 3741 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c | |
| 3739 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c' | 3742 | =================================================================== |
| 3740 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c 2010-05-24 18:36:31 +0000 | 3743 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3741 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c 2011-05-03 15:14:56 +0000 | 3744 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_laneu16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3742 | @@ -16,5 +16,5 @@ | 3745 | @@ -16,5 +16,5 @@ |
| 3743 | out_uint16x4x3_t = vld3_lane_u16 (0, arg1_uint16x4x3_t, 1); | 3746 | out_uint16x4x3_t = vld3_lane_u16 (0, arg1_uint16x4x3_t, 1); |
| 3744 | } | 3747 | } |
| @@ -3746,10 +3749,10 @@ | |||
| 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" } } */ | 3749 | -/* { 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" } } */ | 3750 | +/* { 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 } } */ | 3751 | /* { dg-final { cleanup-saved-temps } } */ |
| 3749 | 3752 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c | |
| 3750 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c' | 3753 | =================================================================== |
| 3751 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c 2010-05-24 18:36:31 +0000 | 3754 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3752 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c 2011-05-03 15:14:56 +0000 | 3755 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_laneu32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3753 | @@ -16,5 +16,5 @@ | 3756 | @@ -16,5 +16,5 @@ |
| 3754 | out_uint32x2x3_t = vld3_lane_u32 (0, arg1_uint32x2x3_t, 1); | 3757 | out_uint32x2x3_t = vld3_lane_u32 (0, arg1_uint32x2x3_t, 1); |
| 3755 | } | 3758 | } |
| @@ -3757,10 +3760,10 @@ | |||
| 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" } } */ | 3760 | -/* { 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" } } */ | 3761 | +/* { 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 } } */ | 3762 | /* { dg-final { cleanup-saved-temps } } */ |
| 3760 | 3763 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c | |
| 3761 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c' | 3764 | =================================================================== |
| 3762 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c 2010-05-24 18:36:31 +0000 | 3765 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3763 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c 2011-05-03 15:14:56 +0000 | 3766 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3_laneu8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3764 | @@ -16,5 +16,5 @@ | 3767 | @@ -16,5 +16,5 @@ |
| 3765 | out_uint8x8x3_t = vld3_lane_u8 (0, arg1_uint8x8x3_t, 1); | 3768 | out_uint8x8x3_t = vld3_lane_u8 (0, arg1_uint8x8x3_t, 1); |
| 3766 | } | 3769 | } |
| @@ -3768,10 +3771,10 @@ | |||
| 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" } } */ | 3771 | -/* { 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" } } */ | 3772 | +/* { 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 } } */ | 3773 | /* { dg-final { cleanup-saved-temps } } */ |
| 3771 | 3774 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3f32.c | |
| 3772 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3f32.c' | 3775 | =================================================================== |
| 3773 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3f32.c 2010-05-24 18:36:31 +0000 | 3776 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3774 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3f32.c 2011-05-03 15:14:56 +0000 | 3777 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3f32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3775 | @@ -15,5 +15,5 @@ | 3778 | @@ -15,5 +15,5 @@ |
| 3776 | out_float32x2x3_t = vld3_f32 (0); | 3779 | out_float32x2x3_t = vld3_f32 (0); |
| 3777 | } | 3780 | } |
| @@ -3779,10 +3782,10 @@ | |||
| 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" } } */ | 3782 | -/* { 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" } } */ | 3783 | +/* { 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 } } */ | 3784 | /* { dg-final { cleanup-saved-temps } } */ |
| 3782 | 3785 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3p16.c | |
| 3783 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3p16.c' | 3786 | =================================================================== |
| 3784 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3p16.c 2010-05-24 18:36:31 +0000 | 3787 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3785 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3p16.c 2011-05-03 15:14:56 +0000 | 3788 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3p16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3786 | @@ -15,5 +15,5 @@ | 3789 | @@ -15,5 +15,5 @@ |
| 3787 | out_poly16x4x3_t = vld3_p16 (0); | 3790 | out_poly16x4x3_t = vld3_p16 (0); |
| 3788 | } | 3791 | } |
| @@ -3790,10 +3793,10 @@ | |||
| 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" } } */ | 3793 | -/* { 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" } } */ | 3794 | +/* { 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 } } */ | 3795 | /* { dg-final { cleanup-saved-temps } } */ |
| 3793 | 3796 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3p8.c | |
| 3794 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3p8.c' | 3797 | =================================================================== |
| 3795 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3p8.c 2010-05-24 18:36:31 +0000 | 3798 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3796 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3p8.c 2011-05-03 15:14:56 +0000 | 3799 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3p8.c 2011-09-16 20:16:00.457564944 -0700 |
| 3797 | @@ -15,5 +15,5 @@ | 3800 | @@ -15,5 +15,5 @@ |
| 3798 | out_poly8x8x3_t = vld3_p8 (0); | 3801 | out_poly8x8x3_t = vld3_p8 (0); |
| 3799 | } | 3802 | } |
| @@ -3801,10 +3804,10 @@ | |||
| 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" } } */ | 3804 | -/* { 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" } } */ | 3805 | +/* { 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 } } */ | 3806 | /* { dg-final { cleanup-saved-temps } } */ |
| 3804 | 3807 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s16.c | |
| 3805 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s16.c' | 3808 | =================================================================== |
| 3806 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3s16.c 2010-05-24 18:36:31 +0000 | 3809 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3807 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3s16.c 2011-05-03 15:14:56 +0000 | 3810 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s16.c 2011-09-16 20:16:00.457564944 -0700 |
| 3808 | @@ -15,5 +15,5 @@ | 3811 | @@ -15,5 +15,5 @@ |
| 3809 | out_int16x4x3_t = vld3_s16 (0); | 3812 | out_int16x4x3_t = vld3_s16 (0); |
| 3810 | } | 3813 | } |
| @@ -3812,10 +3815,10 @@ | |||
| 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" } } */ | 3815 | -/* { 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" } } */ | 3816 | +/* { 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 } } */ | 3817 | /* { dg-final { cleanup-saved-temps } } */ |
| 3815 | 3818 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s32.c | |
| 3816 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s32.c' | 3819 | =================================================================== |
| 3817 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3s32.c 2010-05-24 18:36:31 +0000 | 3820 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3818 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3s32.c 2011-05-03 15:14:56 +0000 | 3821 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s32.c 2011-09-16 20:16:00.457564944 -0700 |
| 3819 | @@ -15,5 +15,5 @@ | 3822 | @@ -15,5 +15,5 @@ |
| 3820 | out_int32x2x3_t = vld3_s32 (0); | 3823 | out_int32x2x3_t = vld3_s32 (0); |
| 3821 | } | 3824 | } |
| @@ -3823,10 +3826,10 @@ | |||
| 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" } } */ | 3826 | -/* { 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" } } */ | 3827 | +/* { 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 } } */ | 3828 | /* { dg-final { cleanup-saved-temps } } */ |
| 3826 | 3829 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s64.c | |
| 3827 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s64.c' | 3830 | =================================================================== |
| 3828 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3s64.c 2010-05-24 18:36:31 +0000 | 3831 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3829 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3s64.c 2011-05-03 15:14:56 +0000 | 3832 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s64.c 2011-09-16 20:16:00.457564944 -0700 |
| 3830 | @@ -15,5 +15,5 @@ | 3833 | @@ -15,5 +15,5 @@ |
| 3831 | out_int64x1x3_t = vld3_s64 (0); | 3834 | out_int64x1x3_t = vld3_s64 (0); |
| 3832 | } | 3835 | } |
| @@ -3834,10 +3837,10 @@ | |||
| 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" } } */ | 3837 | -/* { 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" } } */ | 3838 | +/* { 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 } } */ | 3839 | /* { dg-final { cleanup-saved-temps } } */ |
| 3837 | 3840 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s8.c | |
| 3838 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3s8.c' | 3841 | =================================================================== |
| 3839 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3s8.c 2010-05-24 18:36:31 +0000 | 3842 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3840 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3s8.c 2011-05-03 15:14:56 +0000 | 3843 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3s8.c 2011-09-16 20:16:00.467564964 -0700 |
| 3841 | @@ -15,5 +15,5 @@ | 3844 | @@ -15,5 +15,5 @@ |
| 3842 | out_int8x8x3_t = vld3_s8 (0); | 3845 | out_int8x8x3_t = vld3_s8 (0); |
| 3843 | } | 3846 | } |
| @@ -3845,10 +3848,10 @@ | |||
| 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" } } */ | 3848 | -/* { 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" } } */ | 3849 | +/* { 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 } } */ | 3850 | /* { dg-final { cleanup-saved-temps } } */ |
| 3848 | 3851 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u16.c | |
| 3849 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u16.c' | 3852 | =================================================================== |
| 3850 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3u16.c 2010-05-24 18:36:31 +0000 | 3853 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3851 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3u16.c 2011-05-03 15:14:56 +0000 | 3854 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u16.c 2011-09-16 20:16:00.467564964 -0700 |
| 3852 | @@ -15,5 +15,5 @@ | 3855 | @@ -15,5 +15,5 @@ |
| 3853 | out_uint16x4x3_t = vld3_u16 (0); | 3856 | out_uint16x4x3_t = vld3_u16 (0); |
| 3854 | } | 3857 | } |
| @@ -3856,10 +3859,10 @@ | |||
| 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" } } */ | 3859 | -/* { 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" } } */ | 3860 | +/* { 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 } } */ | 3861 | /* { dg-final { cleanup-saved-temps } } */ |
| 3859 | 3862 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u32.c | |
| 3860 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u32.c' | 3863 | =================================================================== |
| 3861 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3u32.c 2010-05-24 18:36:31 +0000 | 3864 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3862 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3u32.c 2011-05-03 15:14:56 +0000 | 3865 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u32.c 2011-09-16 20:16:00.467564964 -0700 |
| 3863 | @@ -15,5 +15,5 @@ | 3866 | @@ -15,5 +15,5 @@ |
| 3864 | out_uint32x2x3_t = vld3_u32 (0); | 3867 | out_uint32x2x3_t = vld3_u32 (0); |
| 3865 | } | 3868 | } |
| @@ -3867,10 +3870,10 @@ | |||
| 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" } } */ | 3870 | -/* { 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" } } */ | 3871 | +/* { 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 } } */ | 3872 | /* { dg-final { cleanup-saved-temps } } */ |
| 3870 | 3873 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u64.c | |
| 3871 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u64.c' | 3874 | =================================================================== |
| 3872 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3u64.c 2010-05-24 18:36:31 +0000 | 3875 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 3873 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3u64.c 2011-05-03 15:14:56 +0000 | 3876 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u64.c 2011-09-16 20:16:00.467564964 -0700 |
| 3874 | @@ -15,5 +15,5 @@ | 3877 | @@ -15,5 +15,5 @@ |
| 3875 | out_uint64x1x3_t = vld3_u64 (0); | 3878 | out_uint64x1x3_t = vld3_u64 (0); |
| 3876 | } | 3879 | } |
| @@ -3878,10 +3881,10 @@ | |||
| 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" } } */ | 3881 | -/* { 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" } } */ | 3882 | +/* { 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 } } */ | 3883 | /* { dg-final { cleanup-saved-temps } } */ |
| 3881 | 3884 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u8.c | |
| 3882 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld3u8.c' | 3885 | =================================================================== |
| 3883 | --- old/gcc/testsuite/gcc.target/arm/neon/vld3u8.c 2010-05-24 18:36:31 +0000 | 3886 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld3u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3884 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld3u8.c 2011-05-03 15:14:56 +0000 | 3887 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld3u8.c 2011-09-16 20:16:00.467564964 -0700 |
| 3885 | @@ -15,5 +15,5 @@ | 3888 | @@ -15,5 +15,5 @@ |
| 3886 | out_uint8x8x3_t = vld3_u8 (0); | 3889 | out_uint8x8x3_t = vld3_u8 (0); |
| 3887 | } | 3890 | } |
| @@ -3889,10 +3892,10 @@ | |||
| 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" } } */ | 3892 | -/* { 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" } } */ | 3893 | +/* { 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 } } */ | 3894 | /* { dg-final { cleanup-saved-temps } } */ |
| 3892 | 3895 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c | |
| 3893 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c' | 3896 | =================================================================== |
| 3894 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c 2010-05-24 18:36:31 +0000 | 3897 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3895 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c 2011-05-03 15:14:56 +0000 | 3898 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanef32.c 2011-09-16 20:16:00.467564964 -0700 |
| 3896 | @@ -16,5 +16,5 @@ | 3899 | @@ -16,5 +16,5 @@ |
| 3897 | out_float32x4x4_t = vld4q_lane_f32 (0, arg1_float32x4x4_t, 1); | 3900 | out_float32x4x4_t = vld4q_lane_f32 (0, arg1_float32x4x4_t, 1); |
| 3898 | } | 3901 | } |
| @@ -3900,10 +3903,10 @@ | |||
| 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" } } */ | 3903 | -/* { 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" } } */ | 3904 | +/* { 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 } } */ | 3905 | /* { dg-final { cleanup-saved-temps } } */ |
| 3903 | 3906 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c | |
| 3904 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c' | 3907 | =================================================================== |
| 3905 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c 2010-05-24 18:36:31 +0000 | 3908 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3906 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c 2011-05-03 15:14:56 +0000 | 3909 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanep16.c 2011-09-16 20:16:00.467564964 -0700 |
| 3907 | @@ -16,5 +16,5 @@ | 3910 | @@ -16,5 +16,5 @@ |
| 3908 | out_poly16x8x4_t = vld4q_lane_p16 (0, arg1_poly16x8x4_t, 1); | 3911 | out_poly16x8x4_t = vld4q_lane_p16 (0, arg1_poly16x8x4_t, 1); |
| 3909 | } | 3912 | } |
| @@ -3911,10 +3914,10 @@ | |||
| 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" } } */ | 3914 | -/* { 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" } } */ | 3915 | +/* { 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 } } */ | 3916 | /* { dg-final { cleanup-saved-temps } } */ |
| 3914 | 3917 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c | |
| 3915 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c' | 3918 | =================================================================== |
| 3916 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c 2010-05-24 18:36:31 +0000 | 3919 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3917 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c 2011-05-03 15:14:56 +0000 | 3920 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes16.c 2011-09-16 20:16:00.467564964 -0700 |
| 3918 | @@ -16,5 +16,5 @@ | 3921 | @@ -16,5 +16,5 @@ |
| 3919 | out_int16x8x4_t = vld4q_lane_s16 (0, arg1_int16x8x4_t, 1); | 3922 | out_int16x8x4_t = vld4q_lane_s16 (0, arg1_int16x8x4_t, 1); |
| 3920 | } | 3923 | } |
| @@ -3922,10 +3925,10 @@ | |||
| 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" } } */ | 3925 | -/* { 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" } } */ | 3926 | +/* { 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 } } */ | 3927 | /* { dg-final { cleanup-saved-temps } } */ |
| 3925 | 3928 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c | |
| 3926 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c' | 3929 | =================================================================== |
| 3927 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c 2010-05-24 18:36:31 +0000 | 3930 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3928 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c 2011-05-03 15:14:56 +0000 | 3931 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_lanes32.c 2011-09-16 20:16:00.467564964 -0700 |
| 3929 | @@ -16,5 +16,5 @@ | 3932 | @@ -16,5 +16,5 @@ |
| 3930 | out_int32x4x4_t = vld4q_lane_s32 (0, arg1_int32x4x4_t, 1); | 3933 | out_int32x4x4_t = vld4q_lane_s32 (0, arg1_int32x4x4_t, 1); |
| 3931 | } | 3934 | } |
| @@ -3933,10 +3936,10 @@ | |||
| 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" } } */ | 3936 | -/* { 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" } } */ | 3937 | +/* { 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 } } */ | 3938 | /* { dg-final { cleanup-saved-temps } } */ |
| 3936 | 3939 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c | |
| 3937 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c' | 3940 | =================================================================== |
| 3938 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c 2010-05-24 18:36:31 +0000 | 3941 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3939 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c 2011-05-03 15:14:56 +0000 | 3942 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu16.c 2011-09-16 20:16:00.467564964 -0700 |
| 3940 | @@ -16,5 +16,5 @@ | 3943 | @@ -16,5 +16,5 @@ |
| 3941 | out_uint16x8x4_t = vld4q_lane_u16 (0, arg1_uint16x8x4_t, 1); | 3944 | out_uint16x8x4_t = vld4q_lane_u16 (0, arg1_uint16x8x4_t, 1); |
| 3942 | } | 3945 | } |
| @@ -3944,10 +3947,10 @@ | |||
| 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" } } */ | 3947 | -/* { 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" } } */ | 3948 | +/* { 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 } } */ | 3949 | /* { dg-final { cleanup-saved-temps } } */ |
| 3947 | 3950 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c | |
| 3948 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c' | 3951 | =================================================================== |
| 3949 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c 2010-05-24 18:36:31 +0000 | 3952 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3950 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c 2011-05-03 15:14:56 +0000 | 3953 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Q_laneu32.c 2011-09-16 20:16:00.467564964 -0700 |
| 3951 | @@ -16,5 +16,5 @@ | 3954 | @@ -16,5 +16,5 @@ |
| 3952 | out_uint32x4x4_t = vld4q_lane_u32 (0, arg1_uint32x4x4_t, 1); | 3955 | out_uint32x4x4_t = vld4q_lane_u32 (0, arg1_uint32x4x4_t, 1); |
| 3953 | } | 3956 | } |
| @@ -3955,10 +3958,10 @@ | |||
| 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" } } */ | 3958 | -/* { 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" } } */ | 3959 | +/* { 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 } } */ | 3960 | /* { dg-final { cleanup-saved-temps } } */ |
| 3958 | 3961 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c | |
| 3959 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c' | 3962 | =================================================================== |
| 3960 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c 2010-05-24 18:36:31 +0000 | 3963 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 3961 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c 2011-05-03 15:14:56 +0000 | 3964 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qf32.c 2011-09-16 20:16:00.467564964 -0700 |
| 3962 | @@ -15,6 +15,6 @@ | 3965 | @@ -15,6 +15,6 @@ |
| 3963 | out_float32x4x4_t = vld4q_f32 (0); | 3966 | out_float32x4x4_t = vld4q_f32 (0); |
| 3964 | } | 3967 | } |
| @@ -3968,10 +3971,10 @@ | |||
| 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" } } */ | 3971 | +/* { 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" } } */ | 3972 | +/* { 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 } } */ | 3973 | /* { dg-final { cleanup-saved-temps } } */ |
| 3971 | 3974 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c | |
| 3972 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c' | 3975 | =================================================================== |
| 3973 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c 2010-05-24 18:36:31 +0000 | 3976 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 3974 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c 2011-05-03 15:14:56 +0000 | 3977 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qp16.c 2011-09-16 20:16:00.467564964 -0700 |
| 3975 | @@ -15,6 +15,6 @@ | 3978 | @@ -15,6 +15,6 @@ |
| 3976 | out_poly16x8x4_t = vld4q_p16 (0); | 3979 | out_poly16x8x4_t = vld4q_p16 (0); |
| 3977 | } | 3980 | } |
| @@ -3981,10 +3984,10 @@ | |||
| 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" } } */ | 3984 | +/* { 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" } } */ | 3985 | +/* { 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 } } */ | 3986 | /* { dg-final { cleanup-saved-temps } } */ |
| 3984 | 3987 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c | |
| 3985 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c' | 3988 | =================================================================== |
| 3986 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c 2010-05-24 18:36:31 +0000 | 3989 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 3987 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c 2011-05-03 15:14:56 +0000 | 3990 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qp8.c 2011-09-16 20:16:00.467564964 -0700 |
| 3988 | @@ -15,6 +15,6 @@ | 3991 | @@ -15,6 +15,6 @@ |
| 3989 | out_poly8x16x4_t = vld4q_p8 (0); | 3992 | out_poly8x16x4_t = vld4q_p8 (0); |
| 3990 | } | 3993 | } |
| @@ -3994,10 +3997,10 @@ | |||
| 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" } } */ | 3997 | +/* { 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" } } */ | 3998 | +/* { 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 } } */ | 3999 | /* { dg-final { cleanup-saved-temps } } */ |
| 3997 | 4000 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c | |
| 3998 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c' | 4001 | =================================================================== |
| 3999 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c 2010-05-24 18:36:31 +0000 | 4002 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4000 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c 2011-05-03 15:14:56 +0000 | 4003 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qs16.c 2011-09-16 20:16:00.477564991 -0700 |
| 4001 | @@ -15,6 +15,6 @@ | 4004 | @@ -15,6 +15,6 @@ |
| 4002 | out_int16x8x4_t = vld4q_s16 (0); | 4005 | out_int16x8x4_t = vld4q_s16 (0); |
| 4003 | } | 4006 | } |
| @@ -4007,10 +4010,10 @@ | |||
| 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" } } */ | 4010 | +/* { 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" } } */ | 4011 | +/* { 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 } } */ | 4012 | /* { dg-final { cleanup-saved-temps } } */ |
| 4010 | 4013 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c | |
| 4011 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c' | 4014 | =================================================================== |
| 4012 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c 2010-05-24 18:36:31 +0000 | 4015 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4013 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c 2011-05-03 15:14:56 +0000 | 4016 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qs32.c 2011-09-16 20:16:00.477564991 -0700 |
| 4014 | @@ -15,6 +15,6 @@ | 4017 | @@ -15,6 +15,6 @@ |
| 4015 | out_int32x4x4_t = vld4q_s32 (0); | 4018 | out_int32x4x4_t = vld4q_s32 (0); |
| 4016 | } | 4019 | } |
| @@ -4020,10 +4023,10 @@ | |||
| 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" } } */ | 4023 | +/* { 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" } } */ | 4024 | +/* { 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 } } */ | 4025 | /* { dg-final { cleanup-saved-temps } } */ |
| 4023 | 4026 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c | |
| 4024 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c' | 4027 | =================================================================== |
| 4025 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c 2010-05-24 18:36:31 +0000 | 4028 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4026 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c 2011-05-03 15:14:56 +0000 | 4029 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qs8.c 2011-09-16 20:16:00.477564991 -0700 |
| 4027 | @@ -15,6 +15,6 @@ | 4030 | @@ -15,6 +15,6 @@ |
| 4028 | out_int8x16x4_t = vld4q_s8 (0); | 4031 | out_int8x16x4_t = vld4q_s8 (0); |
| 4029 | } | 4032 | } |
| @@ -4033,10 +4036,10 @@ | |||
| 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" } } */ | 4036 | +/* { 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" } } */ | 4037 | +/* { 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 } } */ | 4038 | /* { dg-final { cleanup-saved-temps } } */ |
| 4036 | 4039 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c | |
| 4037 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c' | 4040 | =================================================================== |
| 4038 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c 2010-05-24 18:36:31 +0000 | 4041 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4039 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c 2011-05-03 15:14:56 +0000 | 4042 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qu16.c 2011-09-16 20:16:00.477564991 -0700 |
| 4040 | @@ -15,6 +15,6 @@ | 4043 | @@ -15,6 +15,6 @@ |
| 4041 | out_uint16x8x4_t = vld4q_u16 (0); | 4044 | out_uint16x8x4_t = vld4q_u16 (0); |
| 4042 | } | 4045 | } |
| @@ -4046,10 +4049,10 @@ | |||
| 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" } } */ | 4049 | +/* { 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" } } */ | 4050 | +/* { 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 } } */ | 4051 | /* { dg-final { cleanup-saved-temps } } */ |
| 4049 | 4052 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c | |
| 4050 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c' | 4053 | =================================================================== |
| 4051 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c 2010-05-24 18:36:31 +0000 | 4054 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4052 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c 2011-05-03 15:14:56 +0000 | 4055 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qu32.c 2011-09-16 20:16:00.477564991 -0700 |
| 4053 | @@ -15,6 +15,6 @@ | 4056 | @@ -15,6 +15,6 @@ |
| 4054 | out_uint32x4x4_t = vld4q_u32 (0); | 4057 | out_uint32x4x4_t = vld4q_u32 (0); |
| 4055 | } | 4058 | } |
| @@ -4059,10 +4062,10 @@ | |||
| 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" } } */ | 4062 | +/* { 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" } } */ | 4063 | +/* { 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 } } */ | 4064 | /* { dg-final { cleanup-saved-temps } } */ |
| 4062 | 4065 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c | |
| 4063 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c' | 4066 | =================================================================== |
| 4064 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c 2010-05-24 18:36:31 +0000 | 4067 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4065 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c 2011-05-03 15:14:56 +0000 | 4068 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4Qu8.c 2011-09-16 20:16:00.477564991 -0700 |
| 4066 | @@ -15,6 +15,6 @@ | 4069 | @@ -15,6 +15,6 @@ |
| 4067 | out_uint8x16x4_t = vld4q_u8 (0); | 4070 | out_uint8x16x4_t = vld4q_u8 (0); |
| 4068 | } | 4071 | } |
| @@ -4072,10 +4075,10 @@ | |||
| 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" } } */ | 4075 | +/* { 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" } } */ | 4076 | +/* { 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 } } */ | 4077 | /* { dg-final { cleanup-saved-temps } } */ |
| 4075 | 4078 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c | |
| 4076 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c' | 4079 | =================================================================== |
| 4077 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c 2010-05-24 18:36:31 +0000 | 4080 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4078 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c 2011-05-03 15:14:56 +0000 | 4081 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupf32.c 2011-09-16 20:16:00.477564991 -0700 |
| 4079 | @@ -15,5 +15,5 @@ | 4082 | @@ -15,5 +15,5 @@ |
| 4080 | out_float32x2x4_t = vld4_dup_f32 (0); | 4083 | out_float32x2x4_t = vld4_dup_f32 (0); |
| 4081 | } | 4084 | } |
| @@ -4083,10 +4086,10 @@ | |||
| 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" } } */ | 4086 | -/* { 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" } } */ | 4087 | +/* { 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 } } */ | 4088 | /* { dg-final { cleanup-saved-temps } } */ |
| 4086 | 4089 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c | |
| 4087 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c' | 4090 | =================================================================== |
| 4088 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c 2010-05-24 18:36:31 +0000 | 4091 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4089 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c 2011-05-03 15:14:56 +0000 | 4092 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupp16.c 2011-09-16 20:16:00.477564991 -0700 |
| 4090 | @@ -15,5 +15,5 @@ | 4093 | @@ -15,5 +15,5 @@ |
| 4091 | out_poly16x4x4_t = vld4_dup_p16 (0); | 4094 | out_poly16x4x4_t = vld4_dup_p16 (0); |
| 4092 | } | 4095 | } |
| @@ -4094,10 +4097,10 @@ | |||
| 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" } } */ | 4097 | -/* { 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" } } */ | 4098 | +/* { 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 } } */ | 4099 | /* { dg-final { cleanup-saved-temps } } */ |
| 4097 | 4100 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c | |
| 4098 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c' | 4101 | =================================================================== |
| 4099 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c 2010-05-24 18:36:31 +0000 | 4102 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4100 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c 2011-05-03 15:14:56 +0000 | 4103 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupp8.c 2011-09-16 20:16:00.477564991 -0700 |
| 4101 | @@ -15,5 +15,5 @@ | 4104 | @@ -15,5 +15,5 @@ |
| 4102 | out_poly8x8x4_t = vld4_dup_p8 (0); | 4105 | out_poly8x8x4_t = vld4_dup_p8 (0); |
| 4103 | } | 4106 | } |
| @@ -4105,10 +4108,10 @@ | |||
| 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" } } */ | 4108 | -/* { 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" } } */ | 4109 | +/* { 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 } } */ | 4110 | /* { dg-final { cleanup-saved-temps } } */ |
| 4108 | 4111 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c | |
| 4109 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c' | 4112 | =================================================================== |
| 4110 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c 2010-05-24 18:36:31 +0000 | 4113 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4111 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c 2011-05-03 15:14:56 +0000 | 4114 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups16.c 2011-09-16 20:16:00.477564991 -0700 |
| 4112 | @@ -15,5 +15,5 @@ | 4115 | @@ -15,5 +15,5 @@ |
| 4113 | out_int16x4x4_t = vld4_dup_s16 (0); | 4116 | out_int16x4x4_t = vld4_dup_s16 (0); |
| 4114 | } | 4117 | } |
| @@ -4116,10 +4119,10 @@ | |||
| 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" } } */ | 4119 | -/* { 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" } } */ | 4120 | +/* { 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 } } */ | 4121 | /* { dg-final { cleanup-saved-temps } } */ |
| 4119 | 4122 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c | |
| 4120 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c' | 4123 | =================================================================== |
| 4121 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c 2010-05-24 18:36:31 +0000 | 4124 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4122 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c 2011-05-03 15:14:56 +0000 | 4125 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups32.c 2011-09-16 20:16:00.477564991 -0700 |
| 4123 | @@ -15,5 +15,5 @@ | 4126 | @@ -15,5 +15,5 @@ |
| 4124 | out_int32x2x4_t = vld4_dup_s32 (0); | 4127 | out_int32x2x4_t = vld4_dup_s32 (0); |
| 4125 | } | 4128 | } |
| @@ -4127,10 +4130,10 @@ | |||
| 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" } } */ | 4130 | -/* { 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" } } */ | 4131 | +/* { 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 } } */ | 4132 | /* { dg-final { cleanup-saved-temps } } */ |
| 4130 | 4133 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c | |
| 4131 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c' | 4134 | =================================================================== |
| 4132 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c 2010-05-24 18:36:31 +0000 | 4135 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4133 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c 2011-05-03 15:14:56 +0000 | 4136 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups64.c 2011-09-16 20:16:00.487565006 -0700 |
| 4134 | @@ -15,5 +15,5 @@ | 4137 | @@ -15,5 +15,5 @@ |
| 4135 | out_int64x1x4_t = vld4_dup_s64 (0); | 4138 | out_int64x1x4_t = vld4_dup_s64 (0); |
| 4136 | } | 4139 | } |
| @@ -4138,10 +4141,10 @@ | |||
| 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" } } */ | 4141 | -/* { 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" } } */ | 4142 | +/* { 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 } } */ | 4143 | /* { dg-final { cleanup-saved-temps } } */ |
| 4141 | 4144 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c | |
| 4142 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c' | 4145 | =================================================================== |
| 4143 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c 2010-05-24 18:36:31 +0000 | 4146 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4144 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c 2011-05-03 15:14:56 +0000 | 4147 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dups8.c 2011-09-16 20:16:00.487565006 -0700 |
| 4145 | @@ -15,5 +15,5 @@ | 4148 | @@ -15,5 +15,5 @@ |
| 4146 | out_int8x8x4_t = vld4_dup_s8 (0); | 4149 | out_int8x8x4_t = vld4_dup_s8 (0); |
| 4147 | } | 4150 | } |
| @@ -4149,10 +4152,10 @@ | |||
| 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" } } */ | 4152 | -/* { 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" } } */ | 4153 | +/* { 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 } } */ | 4154 | /* { dg-final { cleanup-saved-temps } } */ |
| 4152 | 4155 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c | |
| 4153 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c' | 4156 | =================================================================== |
| 4154 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c 2010-05-24 18:36:31 +0000 | 4157 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4155 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c 2011-05-03 15:14:56 +0000 | 4158 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu16.c 2011-09-16 20:16:00.487565006 -0700 |
| 4156 | @@ -15,5 +15,5 @@ | 4159 | @@ -15,5 +15,5 @@ |
| 4157 | out_uint16x4x4_t = vld4_dup_u16 (0); | 4160 | out_uint16x4x4_t = vld4_dup_u16 (0); |
| 4158 | } | 4161 | } |
| @@ -4160,10 +4163,10 @@ | |||
| 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" } } */ | 4163 | -/* { 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" } } */ | 4164 | +/* { 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 } } */ | 4165 | /* { dg-final { cleanup-saved-temps } } */ |
| 4163 | 4166 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c | |
| 4164 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c' | 4167 | =================================================================== |
| 4165 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c 2010-05-24 18:36:31 +0000 | 4168 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4166 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c 2011-05-03 15:14:56 +0000 | 4169 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu32.c 2011-09-16 20:16:00.487565006 -0700 |
| 4167 | @@ -15,5 +15,5 @@ | 4170 | @@ -15,5 +15,5 @@ |
| 4168 | out_uint32x2x4_t = vld4_dup_u32 (0); | 4171 | out_uint32x2x4_t = vld4_dup_u32 (0); |
| 4169 | } | 4172 | } |
| @@ -4171,10 +4174,10 @@ | |||
| 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" } } */ | 4174 | -/* { 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" } } */ | 4175 | +/* { 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 } } */ | 4176 | /* { dg-final { cleanup-saved-temps } } */ |
| 4174 | 4177 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c | |
| 4175 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c' | 4178 | =================================================================== |
| 4176 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c 2010-05-24 18:36:31 +0000 | 4179 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4177 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c 2011-05-03 15:14:56 +0000 | 4180 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu64.c 2011-09-16 20:16:00.487565006 -0700 |
| 4178 | @@ -15,5 +15,5 @@ | 4181 | @@ -15,5 +15,5 @@ |
| 4179 | out_uint64x1x4_t = vld4_dup_u64 (0); | 4182 | out_uint64x1x4_t = vld4_dup_u64 (0); |
| 4180 | } | 4183 | } |
| @@ -4182,10 +4185,10 @@ | |||
| 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" } } */ | 4185 | -/* { 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" } } */ | 4186 | +/* { 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 } } */ | 4187 | /* { dg-final { cleanup-saved-temps } } */ |
| 4185 | 4188 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c | |
| 4186 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c' | 4189 | =================================================================== |
| 4187 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c 2010-05-24 18:36:31 +0000 | 4190 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4188 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c 2011-05-03 15:14:56 +0000 | 4191 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_dupu8.c 2011-09-16 20:16:00.487565006 -0700 |
| 4189 | @@ -15,5 +15,5 @@ | 4192 | @@ -15,5 +15,5 @@ |
| 4190 | out_uint8x8x4_t = vld4_dup_u8 (0); | 4193 | out_uint8x8x4_t = vld4_dup_u8 (0); |
| 4191 | } | 4194 | } |
| @@ -4193,10 +4196,10 @@ | |||
| 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" } } */ | 4196 | -/* { 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" } } */ | 4197 | +/* { 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 } } */ | 4198 | /* { dg-final { cleanup-saved-temps } } */ |
| 4196 | 4199 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c | |
| 4197 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c' | 4200 | =================================================================== |
| 4198 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c 2010-05-24 18:36:31 +0000 | 4201 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4199 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c 2011-05-03 15:14:56 +0000 | 4202 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanef32.c 2011-09-16 20:16:00.487565006 -0700 |
| 4200 | @@ -16,5 +16,5 @@ | 4203 | @@ -16,5 +16,5 @@ |
| 4201 | out_float32x2x4_t = vld4_lane_f32 (0, arg1_float32x2x4_t, 1); | 4204 | out_float32x2x4_t = vld4_lane_f32 (0, arg1_float32x2x4_t, 1); |
| 4202 | } | 4205 | } |
| @@ -4204,10 +4207,10 @@ | |||
| 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" } } */ | 4207 | -/* { 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" } } */ | 4208 | +/* { 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 } } */ | 4209 | /* { dg-final { cleanup-saved-temps } } */ |
| 4207 | 4210 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c | |
| 4208 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c' | 4211 | =================================================================== |
| 4209 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c 2010-05-24 18:36:31 +0000 | 4212 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4210 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c 2011-05-03 15:14:56 +0000 | 4213 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanep16.c 2011-09-16 20:16:00.487565006 -0700 |
| 4211 | @@ -16,5 +16,5 @@ | 4214 | @@ -16,5 +16,5 @@ |
| 4212 | out_poly16x4x4_t = vld4_lane_p16 (0, arg1_poly16x4x4_t, 1); | 4215 | out_poly16x4x4_t = vld4_lane_p16 (0, arg1_poly16x4x4_t, 1); |
| 4213 | } | 4216 | } |
| @@ -4215,10 +4218,10 @@ | |||
| 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" } } */ | 4218 | -/* { 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" } } */ | 4219 | +/* { 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 } } */ | 4220 | /* { dg-final { cleanup-saved-temps } } */ |
| 4218 | 4221 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c | |
| 4219 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c' | 4222 | =================================================================== |
| 4220 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c 2010-05-24 18:36:31 +0000 | 4223 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4221 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c 2011-05-03 15:14:56 +0000 | 4224 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanep8.c 2011-09-16 20:16:00.487565006 -0700 |
| 4222 | @@ -16,5 +16,5 @@ | 4225 | @@ -16,5 +16,5 @@ |
| 4223 | out_poly8x8x4_t = vld4_lane_p8 (0, arg1_poly8x8x4_t, 1); | 4226 | out_poly8x8x4_t = vld4_lane_p8 (0, arg1_poly8x8x4_t, 1); |
| 4224 | } | 4227 | } |
| @@ -4226,10 +4229,10 @@ | |||
| 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" } } */ | 4229 | -/* { 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" } } */ | 4230 | +/* { 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 } } */ | 4231 | /* { dg-final { cleanup-saved-temps } } */ |
| 4229 | 4232 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c | |
| 4230 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c' | 4233 | =================================================================== |
| 4231 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c 2010-05-24 18:36:31 +0000 | 4234 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4232 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c 2011-05-03 15:14:56 +0000 | 4235 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanes16.c 2011-09-16 20:16:00.497565009 -0700 |
| 4233 | @@ -16,5 +16,5 @@ | 4236 | @@ -16,5 +16,5 @@ |
| 4234 | out_int16x4x4_t = vld4_lane_s16 (0, arg1_int16x4x4_t, 1); | 4237 | out_int16x4x4_t = vld4_lane_s16 (0, arg1_int16x4x4_t, 1); |
| 4235 | } | 4238 | } |
| @@ -4237,10 +4240,10 @@ | |||
| 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" } } */ | 4240 | -/* { 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" } } */ | 4241 | +/* { 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 } } */ | 4242 | /* { dg-final { cleanup-saved-temps } } */ |
| 4240 | 4243 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c | |
| 4241 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c' | 4244 | =================================================================== |
| 4242 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c 2010-05-24 18:36:31 +0000 | 4245 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4243 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c 2011-05-03 15:14:56 +0000 | 4246 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanes32.c 2011-09-16 20:16:00.497565009 -0700 |
| 4244 | @@ -16,5 +16,5 @@ | 4247 | @@ -16,5 +16,5 @@ |
| 4245 | out_int32x2x4_t = vld4_lane_s32 (0, arg1_int32x2x4_t, 1); | 4248 | out_int32x2x4_t = vld4_lane_s32 (0, arg1_int32x2x4_t, 1); |
| 4246 | } | 4249 | } |
| @@ -4248,10 +4251,10 @@ | |||
| 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" } } */ | 4251 | -/* { 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" } } */ | 4252 | +/* { 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 } } */ | 4253 | /* { dg-final { cleanup-saved-temps } } */ |
| 4251 | 4254 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c | |
| 4252 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c' | 4255 | =================================================================== |
| 4253 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c 2010-05-24 18:36:31 +0000 | 4256 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4254 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c 2011-05-03 15:14:56 +0000 | 4257 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_lanes8.c 2011-09-16 20:16:00.497565009 -0700 |
| 4255 | @@ -16,5 +16,5 @@ | 4258 | @@ -16,5 +16,5 @@ |
| 4256 | out_int8x8x4_t = vld4_lane_s8 (0, arg1_int8x8x4_t, 1); | 4259 | out_int8x8x4_t = vld4_lane_s8 (0, arg1_int8x8x4_t, 1); |
| 4257 | } | 4260 | } |
| @@ -4259,10 +4262,10 @@ | |||
| 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" } } */ | 4262 | -/* { 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" } } */ | 4263 | +/* { 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 } } */ | 4264 | /* { dg-final { cleanup-saved-temps } } */ |
| 4262 | 4265 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c | |
| 4263 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c' | 4266 | =================================================================== |
| 4264 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c 2010-05-24 18:36:31 +0000 | 4267 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4265 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c 2011-05-03 15:14:56 +0000 | 4268 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_laneu16.c 2011-09-16 20:16:00.497565009 -0700 |
| 4266 | @@ -16,5 +16,5 @@ | 4269 | @@ -16,5 +16,5 @@ |
| 4267 | out_uint16x4x4_t = vld4_lane_u16 (0, arg1_uint16x4x4_t, 1); | 4270 | out_uint16x4x4_t = vld4_lane_u16 (0, arg1_uint16x4x4_t, 1); |
| 4268 | } | 4271 | } |
| @@ -4270,10 +4273,10 @@ | |||
| 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" } } */ | 4273 | -/* { 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" } } */ | 4274 | +/* { 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 } } */ | 4275 | /* { dg-final { cleanup-saved-temps } } */ |
| 4273 | 4276 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c | |
| 4274 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c' | 4277 | =================================================================== |
| 4275 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c 2010-05-24 18:36:31 +0000 | 4278 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4276 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c 2011-05-03 15:14:56 +0000 | 4279 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_laneu32.c 2011-09-16 20:16:00.497565009 -0700 |
| 4277 | @@ -16,5 +16,5 @@ | 4280 | @@ -16,5 +16,5 @@ |
| 4278 | out_uint32x2x4_t = vld4_lane_u32 (0, arg1_uint32x2x4_t, 1); | 4281 | out_uint32x2x4_t = vld4_lane_u32 (0, arg1_uint32x2x4_t, 1); |
| 4279 | } | 4282 | } |
| @@ -4281,10 +4284,10 @@ | |||
| 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" } } */ | 4284 | -/* { 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" } } */ | 4285 | +/* { 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 } } */ | 4286 | /* { dg-final { cleanup-saved-temps } } */ |
| 4284 | 4287 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c | |
| 4285 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c' | 4288 | =================================================================== |
| 4286 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c 2010-05-24 18:36:31 +0000 | 4289 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4287 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c 2011-05-03 15:14:56 +0000 | 4290 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4_laneu8.c 2011-09-16 20:16:00.497565009 -0700 |
| 4288 | @@ -16,5 +16,5 @@ | 4291 | @@ -16,5 +16,5 @@ |
| 4289 | out_uint8x8x4_t = vld4_lane_u8 (0, arg1_uint8x8x4_t, 1); | 4292 | out_uint8x8x4_t = vld4_lane_u8 (0, arg1_uint8x8x4_t, 1); |
| 4290 | } | 4293 | } |
| @@ -4292,10 +4295,10 @@ | |||
| 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" } } */ | 4295 | -/* { 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" } } */ | 4296 | +/* { 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 } } */ | 4297 | /* { dg-final { cleanup-saved-temps } } */ |
| 4295 | 4298 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4f32.c | |
| 4296 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4f32.c' | 4299 | =================================================================== |
| 4297 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4f32.c 2010-05-24 18:36:31 +0000 | 4300 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4298 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4f32.c 2011-05-03 15:14:56 +0000 | 4301 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4f32.c 2011-09-16 20:16:00.497565009 -0700 |
| 4299 | @@ -15,5 +15,5 @@ | 4302 | @@ -15,5 +15,5 @@ |
| 4300 | out_float32x2x4_t = vld4_f32 (0); | 4303 | out_float32x2x4_t = vld4_f32 (0); |
| 4301 | } | 4304 | } |
| @@ -4303,10 +4306,10 @@ | |||
| 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" } } */ | 4306 | -/* { 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" } } */ | 4307 | +/* { 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 } } */ | 4308 | /* { dg-final { cleanup-saved-temps } } */ |
| 4306 | 4309 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4p16.c | |
| 4307 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4p16.c' | 4310 | =================================================================== |
| 4308 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4p16.c 2010-05-24 18:36:31 +0000 | 4311 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4309 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4p16.c 2011-05-03 15:14:56 +0000 | 4312 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4p16.c 2011-09-16 20:16:00.497565009 -0700 |
| 4310 | @@ -15,5 +15,5 @@ | 4313 | @@ -15,5 +15,5 @@ |
| 4311 | out_poly16x4x4_t = vld4_p16 (0); | 4314 | out_poly16x4x4_t = vld4_p16 (0); |
| 4312 | } | 4315 | } |
| @@ -4314,10 +4317,10 @@ | |||
| 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" } } */ | 4317 | -/* { 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" } } */ | 4318 | +/* { 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 } } */ | 4319 | /* { dg-final { cleanup-saved-temps } } */ |
| 4317 | 4320 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4p8.c | |
| 4318 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4p8.c' | 4321 | =================================================================== |
| 4319 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4p8.c 2010-05-24 18:36:31 +0000 | 4322 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4320 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4p8.c 2011-05-03 15:14:56 +0000 | 4323 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4p8.c 2011-09-16 20:16:00.497565009 -0700 |
| 4321 | @@ -15,5 +15,5 @@ | 4324 | @@ -15,5 +15,5 @@ |
| 4322 | out_poly8x8x4_t = vld4_p8 (0); | 4325 | out_poly8x8x4_t = vld4_p8 (0); |
| 4323 | } | 4326 | } |
| @@ -4325,10 +4328,10 @@ | |||
| 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" } } */ | 4328 | -/* { 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" } } */ | 4329 | +/* { 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 } } */ | 4330 | /* { dg-final { cleanup-saved-temps } } */ |
| 4328 | 4331 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s16.c | |
| 4329 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s16.c' | 4332 | =================================================================== |
| 4330 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4s16.c 2010-05-24 18:36:31 +0000 | 4333 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4331 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4s16.c 2011-05-03 15:14:56 +0000 | 4334 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s16.c 2011-09-16 20:16:00.497565009 -0700 |
| 4332 | @@ -15,5 +15,5 @@ | 4335 | @@ -15,5 +15,5 @@ |
| 4333 | out_int16x4x4_t = vld4_s16 (0); | 4336 | out_int16x4x4_t = vld4_s16 (0); |
| 4334 | } | 4337 | } |
| @@ -4336,10 +4339,10 @@ | |||
| 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" } } */ | 4339 | -/* { 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" } } */ | 4340 | +/* { 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 } } */ | 4341 | /* { dg-final { cleanup-saved-temps } } */ |
| 4339 | 4342 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s32.c | |
| 4340 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s32.c' | 4343 | =================================================================== |
| 4341 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4s32.c 2010-05-24 18:36:31 +0000 | 4344 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4342 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4s32.c 2011-05-03 15:14:56 +0000 | 4345 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s32.c 2011-09-16 20:16:00.497565009 -0700 |
| 4343 | @@ -15,5 +15,5 @@ | 4346 | @@ -15,5 +15,5 @@ |
| 4344 | out_int32x2x4_t = vld4_s32 (0); | 4347 | out_int32x2x4_t = vld4_s32 (0); |
| 4345 | } | 4348 | } |
| @@ -4347,10 +4350,10 @@ | |||
| 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" } } */ | 4350 | -/* { 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" } } */ | 4351 | +/* { 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 } } */ | 4352 | /* { dg-final { cleanup-saved-temps } } */ |
| 4350 | 4353 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s64.c | |
| 4351 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s64.c' | 4354 | =================================================================== |
| 4352 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4s64.c 2010-05-24 18:36:31 +0000 | 4355 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4353 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4s64.c 2011-05-03 15:14:56 +0000 | 4356 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s64.c 2011-09-16 20:16:00.497565009 -0700 |
| 4354 | @@ -15,5 +15,5 @@ | 4357 | @@ -15,5 +15,5 @@ |
| 4355 | out_int64x1x4_t = vld4_s64 (0); | 4358 | out_int64x1x4_t = vld4_s64 (0); |
| 4356 | } | 4359 | } |
| @@ -4358,10 +4361,10 @@ | |||
| 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" } } */ | 4361 | -/* { 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" } } */ | 4362 | +/* { 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 } } */ | 4363 | /* { dg-final { cleanup-saved-temps } } */ |
| 4361 | 4364 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s8.c | |
| 4362 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4s8.c' | 4365 | =================================================================== |
| 4363 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4s8.c 2010-05-24 18:36:31 +0000 | 4366 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4364 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4s8.c 2011-05-03 15:14:56 +0000 | 4367 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4s8.c 2011-09-16 20:16:00.497565009 -0700 |
| 4365 | @@ -15,5 +15,5 @@ | 4368 | @@ -15,5 +15,5 @@ |
| 4366 | out_int8x8x4_t = vld4_s8 (0); | 4369 | out_int8x8x4_t = vld4_s8 (0); |
| 4367 | } | 4370 | } |
| @@ -4369,10 +4372,10 @@ | |||
| 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" } } */ | 4372 | -/* { 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" } } */ | 4373 | +/* { 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 } } */ | 4374 | /* { dg-final { cleanup-saved-temps } } */ |
| 4372 | 4375 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u16.c | |
| 4373 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u16.c' | 4376 | =================================================================== |
| 4374 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4u16.c 2010-05-24 18:36:31 +0000 | 4377 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4375 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4u16.c 2011-05-03 15:14:56 +0000 | 4378 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u16.c 2011-09-16 20:16:00.497565009 -0700 |
| 4376 | @@ -15,5 +15,5 @@ | 4379 | @@ -15,5 +15,5 @@ |
| 4377 | out_uint16x4x4_t = vld4_u16 (0); | 4380 | out_uint16x4x4_t = vld4_u16 (0); |
| 4378 | } | 4381 | } |
| @@ -4380,10 +4383,10 @@ | |||
| 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" } } */ | 4383 | -/* { 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" } } */ | 4384 | +/* { 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 } } */ | 4385 | /* { dg-final { cleanup-saved-temps } } */ |
| 4383 | 4386 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u32.c | |
| 4384 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u32.c' | 4387 | =================================================================== |
| 4385 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4u32.c 2010-05-24 18:36:31 +0000 | 4388 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4386 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4u32.c 2011-05-03 15:14:56 +0000 | 4389 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u32.c 2011-09-16 20:16:00.507565013 -0700 |
| 4387 | @@ -15,5 +15,5 @@ | 4390 | @@ -15,5 +15,5 @@ |
| 4388 | out_uint32x2x4_t = vld4_u32 (0); | 4391 | out_uint32x2x4_t = vld4_u32 (0); |
| 4389 | } | 4392 | } |
| @@ -4391,10 +4394,10 @@ | |||
| 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" } } */ | 4394 | -/* { 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" } } */ | 4395 | +/* { 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 } } */ | 4396 | /* { dg-final { cleanup-saved-temps } } */ |
| 4394 | 4397 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u64.c | |
| 4395 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u64.c' | 4398 | =================================================================== |
| 4396 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4u64.c 2010-05-24 18:36:31 +0000 | 4399 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4397 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4u64.c 2011-05-03 15:14:56 +0000 | 4400 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u64.c 2011-09-16 20:16:00.507565013 -0700 |
| 4398 | @@ -15,5 +15,5 @@ | 4401 | @@ -15,5 +15,5 @@ |
| 4399 | out_uint64x1x4_t = vld4_u64 (0); | 4402 | out_uint64x1x4_t = vld4_u64 (0); |
| 4400 | } | 4403 | } |
| @@ -4402,10 +4405,10 @@ | |||
| 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" } } */ | 4405 | -/* { 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" } } */ | 4406 | +/* { 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 } } */ | 4407 | /* { dg-final { cleanup-saved-temps } } */ |
| 4405 | 4408 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u8.c | |
| 4406 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vld4u8.c' | 4409 | =================================================================== |
| 4407 | --- old/gcc/testsuite/gcc.target/arm/neon/vld4u8.c 2010-05-24 18:36:31 +0000 | 4410 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vld4u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4408 | +++ new/gcc/testsuite/gcc.target/arm/neon/vld4u8.c 2011-05-03 15:14:56 +0000 | 4411 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vld4u8.c 2011-09-16 20:16:00.507565013 -0700 |
| 4409 | @@ -15,5 +15,5 @@ | 4412 | @@ -15,5 +15,5 @@ |
| 4410 | out_uint8x8x4_t = vld4_u8 (0); | 4413 | out_uint8x8x4_t = vld4_u8 (0); |
| 4411 | } | 4414 | } |
| @@ -4413,10 +4416,10 @@ | |||
| 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" } } */ | 4416 | -/* { 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" } } */ | 4417 | +/* { 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 } } */ | 4418 | /* { dg-final { cleanup-saved-temps } } */ |
| 4416 | 4419 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c | |
| 4417 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c' | 4420 | =================================================================== |
| 4418 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c 2010-05-24 18:36:31 +0000 | 4421 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4419 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c 2011-05-03 15:14:56 +0000 | 4422 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanef32.c 2011-09-16 20:16:00.507565013 -0700 |
| 4420 | @@ -16,5 +16,5 @@ | 4423 | @@ -16,5 +16,5 @@ |
| 4421 | vst1q_lane_f32 (arg0_float32_t, arg1_float32x4_t, 1); | 4424 | vst1q_lane_f32 (arg0_float32_t, arg1_float32x4_t, 1); |
| 4422 | } | 4425 | } |
| @@ -4424,10 +4427,10 @@ | |||
| 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" } } */ | 4427 | -/* { 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" } } */ | 4428 | +/* { 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 } } */ | 4429 | /* { dg-final { cleanup-saved-temps } } */ |
| 4427 | 4430 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c | |
| 4428 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c' | 4431 | =================================================================== |
| 4429 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c 2010-05-24 18:36:31 +0000 | 4432 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4430 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c 2011-05-03 15:14:56 +0000 | 4433 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep16.c 2011-09-16 20:16:00.507565013 -0700 |
| 4431 | @@ -16,5 +16,5 @@ | 4434 | @@ -16,5 +16,5 @@ |
| 4432 | vst1q_lane_p16 (arg0_poly16_t, arg1_poly16x8_t, 1); | 4435 | vst1q_lane_p16 (arg0_poly16_t, arg1_poly16x8_t, 1); |
| 4433 | } | 4436 | } |
| @@ -4435,10 +4438,10 @@ | |||
| 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" } } */ | 4438 | -/* { 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" } } */ | 4439 | +/* { 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 } } */ | 4440 | /* { dg-final { cleanup-saved-temps } } */ |
| 4438 | 4441 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c | |
| 4439 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c' | 4442 | =================================================================== |
| 4440 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c 2010-05-24 18:36:31 +0000 | 4443 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4441 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c 2011-05-03 15:14:56 +0000 | 4444 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanep8.c 2011-09-16 20:16:00.507565013 -0700 |
| 4442 | @@ -16,5 +16,5 @@ | 4445 | @@ -16,5 +16,5 @@ |
| 4443 | vst1q_lane_p8 (arg0_poly8_t, arg1_poly8x16_t, 1); | 4446 | vst1q_lane_p8 (arg0_poly8_t, arg1_poly8x16_t, 1); |
| 4444 | } | 4447 | } |
| @@ -4446,10 +4449,10 @@ | |||
| 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" } } */ | 4449 | -/* { 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" } } */ | 4450 | +/* { 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 } } */ | 4451 | /* { dg-final { cleanup-saved-temps } } */ |
| 4449 | 4452 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c | |
| 4450 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c' | 4453 | =================================================================== |
| 4451 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c 2010-05-24 18:36:31 +0000 | 4454 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4452 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c 2011-05-03 15:14:56 +0000 | 4455 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes16.c 2011-09-16 20:16:00.507565013 -0700 |
| 4453 | @@ -16,5 +16,5 @@ | 4456 | @@ -16,5 +16,5 @@ |
| 4454 | vst1q_lane_s16 (arg0_int16_t, arg1_int16x8_t, 1); | 4457 | vst1q_lane_s16 (arg0_int16_t, arg1_int16x8_t, 1); |
| 4455 | } | 4458 | } |
| @@ -4457,10 +4460,10 @@ | |||
| 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" } } */ | 4460 | -/* { 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" } } */ | 4461 | +/* { 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 } } */ | 4462 | /* { dg-final { cleanup-saved-temps } } */ |
| 4460 | 4463 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c | |
| 4461 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c' | 4464 | =================================================================== |
| 4462 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c 2010-05-24 18:36:31 +0000 | 4465 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4463 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c 2011-05-03 15:14:56 +0000 | 4466 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes32.c 2011-09-16 20:16:00.507565013 -0700 |
| 4464 | @@ -16,5 +16,5 @@ | 4467 | @@ -16,5 +16,5 @@ |
| 4465 | vst1q_lane_s32 (arg0_int32_t, arg1_int32x4_t, 1); | 4468 | vst1q_lane_s32 (arg0_int32_t, arg1_int32x4_t, 1); |
| 4466 | } | 4469 | } |
| @@ -4468,10 +4471,10 @@ | |||
| 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" } } */ | 4471 | -/* { 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" } } */ | 4472 | +/* { 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 } } */ | 4473 | /* { dg-final { cleanup-saved-temps } } */ |
| 4471 | 4474 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c | |
| 4472 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c' | 4475 | =================================================================== |
| 4473 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c 2010-05-24 18:36:31 +0000 | 4476 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4474 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c 2011-05-03 15:14:56 +0000 | 4477 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes64.c 2011-09-16 20:16:00.507565013 -0700 |
| 4475 | @@ -16,5 +16,5 @@ | 4478 | @@ -16,5 +16,5 @@ |
| 4476 | vst1q_lane_s64 (arg0_int64_t, arg1_int64x2_t, 1); | 4479 | vst1q_lane_s64 (arg0_int64_t, arg1_int64x2_t, 1); |
| 4477 | } | 4480 | } |
| @@ -4479,10 +4482,10 @@ | |||
| 4479 | -/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4482 | -/* { 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" } } */ | 4483 | +/* { 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 } } */ | 4484 | /* { dg-final { cleanup-saved-temps } } */ |
| 4482 | 4485 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c | |
| 4483 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c' | 4486 | =================================================================== |
| 4484 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c 2010-05-24 18:36:31 +0000 | 4487 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4485 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c 2011-05-03 15:14:56 +0000 | 4488 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_lanes8.c 2011-09-16 20:16:00.507565013 -0700 |
| 4486 | @@ -16,5 +16,5 @@ | 4489 | @@ -16,5 +16,5 @@ |
| 4487 | vst1q_lane_s8 (arg0_int8_t, arg1_int8x16_t, 1); | 4490 | vst1q_lane_s8 (arg0_int8_t, arg1_int8x16_t, 1); |
| 4488 | } | 4491 | } |
| @@ -4490,10 +4493,10 @@ | |||
| 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" } } */ | 4493 | -/* { 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" } } */ | 4494 | +/* { 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 } } */ | 4495 | /* { dg-final { cleanup-saved-temps } } */ |
| 4493 | 4496 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c | |
| 4494 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c' | 4497 | =================================================================== |
| 4495 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c 2010-05-24 18:36:31 +0000 | 4498 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4496 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c 2011-05-03 15:14:56 +0000 | 4499 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu16.c 2011-09-16 20:16:00.507565013 -0700 |
| 4497 | @@ -16,5 +16,5 @@ | 4500 | @@ -16,5 +16,5 @@ |
| 4498 | vst1q_lane_u16 (arg0_uint16_t, arg1_uint16x8_t, 1); | 4501 | vst1q_lane_u16 (arg0_uint16_t, arg1_uint16x8_t, 1); |
| 4499 | } | 4502 | } |
| @@ -4501,10 +4504,10 @@ | |||
| 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" } } */ | 4504 | -/* { 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" } } */ | 4505 | +/* { 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 } } */ | 4506 | /* { dg-final { cleanup-saved-temps } } */ |
| 4504 | 4507 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c | |
| 4505 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c' | 4508 | =================================================================== |
| 4506 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c 2010-05-24 18:36:31 +0000 | 4509 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4507 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c 2011-05-03 15:14:56 +0000 | 4510 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu32.c 2011-09-16 20:16:00.507565013 -0700 |
| 4508 | @@ -16,5 +16,5 @@ | 4511 | @@ -16,5 +16,5 @@ |
| 4509 | vst1q_lane_u32 (arg0_uint32_t, arg1_uint32x4_t, 1); | 4512 | vst1q_lane_u32 (arg0_uint32_t, arg1_uint32x4_t, 1); |
| 4510 | } | 4513 | } |
| @@ -4512,10 +4515,10 @@ | |||
| 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" } } */ | 4515 | -/* { 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" } } */ | 4516 | +/* { 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 } } */ | 4517 | /* { dg-final { cleanup-saved-temps } } */ |
| 4515 | 4518 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c | |
| 4516 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c' | 4519 | =================================================================== |
| 4517 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c 2010-05-24 18:36:31 +0000 | 4520 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4518 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c 2011-05-03 15:14:56 +0000 | 4521 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu64.c 2011-09-16 20:16:00.507565013 -0700 |
| 4519 | @@ -16,5 +16,5 @@ | 4522 | @@ -16,5 +16,5 @@ |
| 4520 | vst1q_lane_u64 (arg0_uint64_t, arg1_uint64x2_t, 1); | 4523 | vst1q_lane_u64 (arg0_uint64_t, arg1_uint64x2_t, 1); |
| 4521 | } | 4524 | } |
| @@ -4523,10 +4526,10 @@ | |||
| 4523 | -/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4526 | -/* { 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" } } */ | 4527 | +/* { 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 } } */ | 4528 | /* { dg-final { cleanup-saved-temps } } */ |
| 4526 | 4529 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c | |
| 4527 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c' | 4530 | =================================================================== |
| 4528 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c 2010-05-24 18:36:31 +0000 | 4531 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4529 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c 2011-05-03 15:14:56 +0000 | 4532 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Q_laneu8.c 2011-09-16 20:16:00.507565013 -0700 |
| 4530 | @@ -16,5 +16,5 @@ | 4533 | @@ -16,5 +16,5 @@ |
| 4531 | vst1q_lane_u8 (arg0_uint8_t, arg1_uint8x16_t, 1); | 4534 | vst1q_lane_u8 (arg0_uint8_t, arg1_uint8x16_t, 1); |
| 4532 | } | 4535 | } |
| @@ -4534,10 +4537,10 @@ | |||
| 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" } } */ | 4537 | -/* { 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" } } */ | 4538 | +/* { 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 } } */ | 4539 | /* { dg-final { cleanup-saved-temps } } */ |
| 4537 | 4540 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c | |
| 4538 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c' | 4541 | =================================================================== |
| 4539 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c 2010-05-24 18:36:31 +0000 | 4542 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4540 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c 2011-05-03 15:14:56 +0000 | 4543 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qf32.c 2011-09-16 20:16:00.507565013 -0700 |
| 4541 | @@ -16,5 +16,5 @@ | 4544 | @@ -16,5 +16,5 @@ |
| 4542 | vst1q_f32 (arg0_float32_t, arg1_float32x4_t); | 4545 | vst1q_f32 (arg0_float32_t, arg1_float32x4_t); |
| 4543 | } | 4546 | } |
| @@ -4545,10 +4548,10 @@ | |||
| 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" } } */ | 4548 | -/* { 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" } } */ | 4549 | +/* { 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 } } */ | 4550 | /* { dg-final { cleanup-saved-temps } } */ |
| 4548 | 4551 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c | |
| 4549 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c' | 4552 | =================================================================== |
| 4550 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c 2010-05-24 18:36:31 +0000 | 4553 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4551 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c 2011-05-03 15:14:56 +0000 | 4554 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qp16.c 2011-09-16 20:16:00.507565013 -0700 |
| 4552 | @@ -16,5 +16,5 @@ | 4555 | @@ -16,5 +16,5 @@ |
| 4553 | vst1q_p16 (arg0_poly16_t, arg1_poly16x8_t); | 4556 | vst1q_p16 (arg0_poly16_t, arg1_poly16x8_t); |
| 4554 | } | 4557 | } |
| @@ -4556,10 +4559,10 @@ | |||
| 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" } } */ | 4559 | -/* { 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" } } */ | 4560 | +/* { 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 } } */ | 4561 | /* { dg-final { cleanup-saved-temps } } */ |
| 4559 | 4562 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c | |
| 4560 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c' | 4563 | =================================================================== |
| 4561 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c 2010-05-24 18:36:31 +0000 | 4564 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4562 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c 2011-05-03 15:14:56 +0000 | 4565 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qp8.c 2011-09-16 20:16:00.507565013 -0700 |
| 4563 | @@ -16,5 +16,5 @@ | 4566 | @@ -16,5 +16,5 @@ |
| 4564 | vst1q_p8 (arg0_poly8_t, arg1_poly8x16_t); | 4567 | vst1q_p8 (arg0_poly8_t, arg1_poly8x16_t); |
| 4565 | } | 4568 | } |
| @@ -4567,10 +4570,10 @@ | |||
| 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" } } */ | 4570 | -/* { 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" } } */ | 4571 | +/* { 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 } } */ | 4572 | /* { dg-final { cleanup-saved-temps } } */ |
| 4570 | 4573 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c | |
| 4571 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c' | 4574 | =================================================================== |
| 4572 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c 2010-05-24 18:36:31 +0000 | 4575 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4573 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c 2011-05-03 15:14:56 +0000 | 4576 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs16.c 2011-09-16 20:16:00.507565013 -0700 |
| 4574 | @@ -16,5 +16,5 @@ | 4577 | @@ -16,5 +16,5 @@ |
| 4575 | vst1q_s16 (arg0_int16_t, arg1_int16x8_t); | 4578 | vst1q_s16 (arg0_int16_t, arg1_int16x8_t); |
| 4576 | } | 4579 | } |
| @@ -4578,10 +4581,10 @@ | |||
| 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" } } */ | 4581 | -/* { 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" } } */ | 4582 | +/* { 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 } } */ | 4583 | /* { dg-final { cleanup-saved-temps } } */ |
| 4581 | 4584 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c | |
| 4582 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c' | 4585 | =================================================================== |
| 4583 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c 2010-05-24 18:36:31 +0000 | 4586 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4584 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c 2011-05-03 15:14:56 +0000 | 4587 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs32.c 2011-09-16 20:16:00.517565031 -0700 |
| 4585 | @@ -16,5 +16,5 @@ | 4588 | @@ -16,5 +16,5 @@ |
| 4586 | vst1q_s32 (arg0_int32_t, arg1_int32x4_t); | 4589 | vst1q_s32 (arg0_int32_t, arg1_int32x4_t); |
| 4587 | } | 4590 | } |
| @@ -4589,10 +4592,10 @@ | |||
| 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" } } */ | 4592 | -/* { 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" } } */ | 4593 | +/* { 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 } } */ | 4594 | /* { dg-final { cleanup-saved-temps } } */ |
| 4592 | 4595 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c | |
| 4593 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c' | 4596 | =================================================================== |
| 4594 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c 2010-05-24 18:36:31 +0000 | 4597 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4595 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c 2011-05-03 15:14:56 +0000 | 4598 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs64.c 2011-09-16 20:16:00.517565031 -0700 |
| 4596 | @@ -16,5 +16,5 @@ | 4599 | @@ -16,5 +16,5 @@ |
| 4597 | vst1q_s64 (arg0_int64_t, arg1_int64x2_t); | 4600 | vst1q_s64 (arg0_int64_t, arg1_int64x2_t); |
| 4598 | } | 4601 | } |
| @@ -4600,10 +4603,10 @@ | |||
| 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" } } */ | 4603 | -/* { 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" } } */ | 4604 | +/* { 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 } } */ | 4605 | /* { dg-final { cleanup-saved-temps } } */ |
| 4603 | 4606 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c | |
| 4604 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c' | 4607 | =================================================================== |
| 4605 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c 2010-05-24 18:36:31 +0000 | 4608 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4606 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c 2011-05-03 15:14:56 +0000 | 4609 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qs8.c 2011-09-16 20:16:00.517565031 -0700 |
| 4607 | @@ -16,5 +16,5 @@ | 4610 | @@ -16,5 +16,5 @@ |
| 4608 | vst1q_s8 (arg0_int8_t, arg1_int8x16_t); | 4611 | vst1q_s8 (arg0_int8_t, arg1_int8x16_t); |
| 4609 | } | 4612 | } |
| @@ -4611,10 +4614,10 @@ | |||
| 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" } } */ | 4614 | -/* { 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" } } */ | 4615 | +/* { 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 } } */ | 4616 | /* { dg-final { cleanup-saved-temps } } */ |
| 4614 | 4617 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c | |
| 4615 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c' | 4618 | =================================================================== |
| 4616 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c 2010-05-24 18:36:31 +0000 | 4619 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4617 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c 2011-05-03 15:14:56 +0000 | 4620 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu16.c 2011-09-16 20:16:00.517565031 -0700 |
| 4618 | @@ -16,5 +16,5 @@ | 4621 | @@ -16,5 +16,5 @@ |
| 4619 | vst1q_u16 (arg0_uint16_t, arg1_uint16x8_t); | 4622 | vst1q_u16 (arg0_uint16_t, arg1_uint16x8_t); |
| 4620 | } | 4623 | } |
| @@ -4622,10 +4625,10 @@ | |||
| 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" } } */ | 4625 | -/* { 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" } } */ | 4626 | +/* { 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 } } */ | 4627 | /* { dg-final { cleanup-saved-temps } } */ |
| 4625 | 4628 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c | |
| 4626 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c' | 4629 | =================================================================== |
| 4627 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c 2010-05-24 18:36:31 +0000 | 4630 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4628 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c 2011-05-03 15:14:56 +0000 | 4631 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu32.c 2011-09-16 20:16:00.517565031 -0700 |
| 4629 | @@ -16,5 +16,5 @@ | 4632 | @@ -16,5 +16,5 @@ |
| 4630 | vst1q_u32 (arg0_uint32_t, arg1_uint32x4_t); | 4633 | vst1q_u32 (arg0_uint32_t, arg1_uint32x4_t); |
| 4631 | } | 4634 | } |
| @@ -4633,10 +4636,10 @@ | |||
| 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" } } */ | 4636 | -/* { 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" } } */ | 4637 | +/* { 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 } } */ | 4638 | /* { dg-final { cleanup-saved-temps } } */ |
| 4636 | 4639 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c | |
| 4637 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c' | 4640 | =================================================================== |
| 4638 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c 2010-05-24 18:36:31 +0000 | 4641 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4639 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c 2011-05-03 15:14:56 +0000 | 4642 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu64.c 2011-09-16 20:16:00.517565031 -0700 |
| 4640 | @@ -16,5 +16,5 @@ | 4643 | @@ -16,5 +16,5 @@ |
| 4641 | vst1q_u64 (arg0_uint64_t, arg1_uint64x2_t); | 4644 | vst1q_u64 (arg0_uint64_t, arg1_uint64x2_t); |
| 4642 | } | 4645 | } |
| @@ -4644,10 +4647,10 @@ | |||
| 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" } } */ | 4647 | -/* { 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" } } */ | 4648 | +/* { 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 } } */ | 4649 | /* { dg-final { cleanup-saved-temps } } */ |
| 4647 | 4650 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c | |
| 4648 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c' | 4651 | =================================================================== |
| 4649 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c 2010-05-24 18:36:31 +0000 | 4652 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4650 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c 2011-05-03 15:14:56 +0000 | 4653 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1Qu8.c 2011-09-16 20:16:00.517565031 -0700 |
| 4651 | @@ -16,5 +16,5 @@ | 4654 | @@ -16,5 +16,5 @@ |
| 4652 | vst1q_u8 (arg0_uint8_t, arg1_uint8x16_t); | 4655 | vst1q_u8 (arg0_uint8_t, arg1_uint8x16_t); |
| 4653 | } | 4656 | } |
| @@ -4655,10 +4658,10 @@ | |||
| 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" } } */ | 4658 | -/* { 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" } } */ | 4659 | +/* { 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 } } */ | 4660 | /* { dg-final { cleanup-saved-temps } } */ |
| 4658 | 4661 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c | |
| 4659 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c' | 4662 | =================================================================== |
| 4660 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c 2010-05-24 18:36:31 +0000 | 4663 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4661 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c 2011-05-03 15:14:56 +0000 | 4664 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanef32.c 2011-09-16 20:16:00.517565031 -0700 |
| 4662 | @@ -16,5 +16,5 @@ | 4665 | @@ -16,5 +16,5 @@ |
| 4663 | vst1_lane_f32 (arg0_float32_t, arg1_float32x2_t, 1); | 4666 | vst1_lane_f32 (arg0_float32_t, arg1_float32x2_t, 1); |
| 4664 | } | 4667 | } |
| @@ -4666,10 +4669,10 @@ | |||
| 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" } } */ | 4669 | -/* { 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" } } */ | 4670 | +/* { 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 } } */ | 4671 | /* { dg-final { cleanup-saved-temps } } */ |
| 4669 | 4672 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c | |
| 4670 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c' | 4673 | =================================================================== |
| 4671 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c 2010-05-24 18:36:31 +0000 | 4674 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4672 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c 2011-05-03 15:14:56 +0000 | 4675 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanep16.c 2011-09-16 20:16:00.517565031 -0700 |
| 4673 | @@ -16,5 +16,5 @@ | 4676 | @@ -16,5 +16,5 @@ |
| 4674 | vst1_lane_p16 (arg0_poly16_t, arg1_poly16x4_t, 1); | 4677 | vst1_lane_p16 (arg0_poly16_t, arg1_poly16x4_t, 1); |
| 4675 | } | 4678 | } |
| @@ -4677,10 +4680,10 @@ | |||
| 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" } } */ | 4680 | -/* { 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" } } */ | 4681 | +/* { 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 } } */ | 4682 | /* { dg-final { cleanup-saved-temps } } */ |
| 4680 | 4683 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c | |
| 4681 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c' | 4684 | =================================================================== |
| 4682 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c 2010-05-24 18:36:31 +0000 | 4685 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4683 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c 2011-05-03 15:14:56 +0000 | 4686 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanep8.c 2011-09-16 20:16:00.517565031 -0700 |
| 4684 | @@ -16,5 +16,5 @@ | 4687 | @@ -16,5 +16,5 @@ |
| 4685 | vst1_lane_p8 (arg0_poly8_t, arg1_poly8x8_t, 1); | 4688 | vst1_lane_p8 (arg0_poly8_t, arg1_poly8x8_t, 1); |
| 4686 | } | 4689 | } |
| @@ -4688,10 +4691,10 @@ | |||
| 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" } } */ | 4691 | -/* { 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" } } */ | 4692 | +/* { 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 } } */ | 4693 | /* { dg-final { cleanup-saved-temps } } */ |
| 4691 | 4694 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c | |
| 4692 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c' | 4695 | =================================================================== |
| 4693 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c 2010-05-24 18:36:31 +0000 | 4696 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4694 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c 2011-05-03 15:14:56 +0000 | 4697 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes16.c 2011-09-16 20:16:00.517565031 -0700 |
| 4695 | @@ -16,5 +16,5 @@ | 4698 | @@ -16,5 +16,5 @@ |
| 4696 | vst1_lane_s16 (arg0_int16_t, arg1_int16x4_t, 1); | 4699 | vst1_lane_s16 (arg0_int16_t, arg1_int16x4_t, 1); |
| 4697 | } | 4700 | } |
| @@ -4699,10 +4702,10 @@ | |||
| 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" } } */ | 4702 | -/* { 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" } } */ | 4703 | +/* { 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 } } */ | 4704 | /* { dg-final { cleanup-saved-temps } } */ |
| 4702 | 4705 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c | |
| 4703 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c' | 4706 | =================================================================== |
| 4704 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c 2010-05-24 18:36:31 +0000 | 4707 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4705 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c 2011-05-03 15:14:56 +0000 | 4708 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes32.c 2011-09-16 20:16:00.517565031 -0700 |
| 4706 | @@ -16,5 +16,5 @@ | 4709 | @@ -16,5 +16,5 @@ |
| 4707 | vst1_lane_s32 (arg0_int32_t, arg1_int32x2_t, 1); | 4710 | vst1_lane_s32 (arg0_int32_t, arg1_int32x2_t, 1); |
| 4708 | } | 4711 | } |
| @@ -4710,10 +4713,10 @@ | |||
| 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" } } */ | 4713 | -/* { 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" } } */ | 4714 | +/* { 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 } } */ | 4715 | /* { dg-final { cleanup-saved-temps } } */ |
| 4713 | 4716 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c | |
| 4714 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c' | 4717 | =================================================================== |
| 4715 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c 2010-05-24 18:36:31 +0000 | 4718 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4716 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c 2011-05-03 15:14:56 +0000 | 4719 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes64.c 2011-09-16 20:16:00.517565031 -0700 |
| 4717 | @@ -16,5 +16,5 @@ | 4720 | @@ -16,5 +16,5 @@ |
| 4718 | vst1_lane_s64 (arg0_int64_t, arg1_int64x1_t, 0); | 4721 | vst1_lane_s64 (arg0_int64_t, arg1_int64x1_t, 0); |
| 4719 | } | 4722 | } |
| @@ -4721,10 +4724,10 @@ | |||
| 4721 | -/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4724 | -/* { 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" } } */ | 4725 | +/* { 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 } } */ | 4726 | /* { dg-final { cleanup-saved-temps } } */ |
| 4724 | 4727 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c | |
| 4725 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c' | 4728 | =================================================================== |
| 4726 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c 2010-05-24 18:36:31 +0000 | 4729 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4727 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c 2011-05-03 15:14:56 +0000 | 4730 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_lanes8.c 2011-09-16 20:16:00.517565031 -0700 |
| 4728 | @@ -16,5 +16,5 @@ | 4731 | @@ -16,5 +16,5 @@ |
| 4729 | vst1_lane_s8 (arg0_int8_t, arg1_int8x8_t, 1); | 4732 | vst1_lane_s8 (arg0_int8_t, arg1_int8x8_t, 1); |
| 4730 | } | 4733 | } |
| @@ -4732,10 +4735,10 @@ | |||
| 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" } } */ | 4735 | -/* { 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" } } */ | 4736 | +/* { 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 } } */ | 4737 | /* { dg-final { cleanup-saved-temps } } */ |
| 4735 | 4738 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c | |
| 4736 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c' | 4739 | =================================================================== |
| 4737 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c 2010-05-24 18:36:31 +0000 | 4740 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4738 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c 2011-05-03 15:14:56 +0000 | 4741 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu16.c 2011-09-16 20:16:00.517565031 -0700 |
| 4739 | @@ -16,5 +16,5 @@ | 4742 | @@ -16,5 +16,5 @@ |
| 4740 | vst1_lane_u16 (arg0_uint16_t, arg1_uint16x4_t, 1); | 4743 | vst1_lane_u16 (arg0_uint16_t, arg1_uint16x4_t, 1); |
| 4741 | } | 4744 | } |
| @@ -4743,10 +4746,10 @@ | |||
| 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" } } */ | 4746 | -/* { 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" } } */ | 4747 | +/* { 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 } } */ | 4748 | /* { dg-final { cleanup-saved-temps } } */ |
| 4746 | 4749 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c | |
| 4747 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c' | 4750 | =================================================================== |
| 4748 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c 2010-05-24 18:36:31 +0000 | 4751 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4749 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c 2011-05-03 15:14:56 +0000 | 4752 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu32.c 2011-09-16 20:16:00.517565031 -0700 |
| 4750 | @@ -16,5 +16,5 @@ | 4753 | @@ -16,5 +16,5 @@ |
| 4751 | vst1_lane_u32 (arg0_uint32_t, arg1_uint32x2_t, 1); | 4754 | vst1_lane_u32 (arg0_uint32_t, arg1_uint32x2_t, 1); |
| 4752 | } | 4755 | } |
| @@ -4754,10 +4757,10 @@ | |||
| 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" } } */ | 4757 | -/* { 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" } } */ | 4758 | +/* { 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 } } */ | 4759 | /* { dg-final { cleanup-saved-temps } } */ |
| 4757 | 4760 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c | |
| 4758 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c' | 4761 | =================================================================== |
| 4759 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c 2010-05-24 18:36:31 +0000 | 4762 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4760 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c 2011-05-03 15:14:56 +0000 | 4763 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu64.c 2011-09-16 20:16:00.517565031 -0700 |
| 4761 | @@ -16,5 +16,5 @@ | 4764 | @@ -16,5 +16,5 @@ |
| 4762 | vst1_lane_u64 (arg0_uint64_t, arg1_uint64x1_t, 0); | 4765 | vst1_lane_u64 (arg0_uint64_t, arg1_uint64x1_t, 0); |
| 4763 | } | 4766 | } |
| @@ -4765,10 +4768,10 @@ | |||
| 4765 | -/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4768 | -/* { 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" } } */ | 4769 | +/* { 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 } } */ | 4770 | /* { dg-final { cleanup-saved-temps } } */ |
| 4768 | 4771 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c | |
| 4769 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c' | 4772 | =================================================================== |
| 4770 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c 2010-05-24 18:36:31 +0000 | 4773 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4771 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c 2011-05-03 15:14:56 +0000 | 4774 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1_laneu8.c 2011-09-16 20:16:00.517565031 -0700 |
| 4772 | @@ -16,5 +16,5 @@ | 4775 | @@ -16,5 +16,5 @@ |
| 4773 | vst1_lane_u8 (arg0_uint8_t, arg1_uint8x8_t, 1); | 4776 | vst1_lane_u8 (arg0_uint8_t, arg1_uint8x8_t, 1); |
| 4774 | } | 4777 | } |
| @@ -4776,10 +4779,10 @@ | |||
| 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" } } */ | 4779 | -/* { 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" } } */ | 4780 | +/* { 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 } } */ | 4781 | /* { dg-final { cleanup-saved-temps } } */ |
| 4779 | 4782 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1f32.c | |
| 4780 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1f32.c' | 4783 | =================================================================== |
| 4781 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1f32.c 2010-05-24 18:36:31 +0000 | 4784 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4782 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1f32.c 2011-05-03 15:14:56 +0000 | 4785 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1f32.c 2011-09-16 20:16:00.517565031 -0700 |
| 4783 | @@ -16,5 +16,5 @@ | 4786 | @@ -16,5 +16,5 @@ |
| 4784 | vst1_f32 (arg0_float32_t, arg1_float32x2_t); | 4787 | vst1_f32 (arg0_float32_t, arg1_float32x2_t); |
| 4785 | } | 4788 | } |
| @@ -4787,10 +4790,10 @@ | |||
| 4787 | -/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4790 | -/* { 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" } } */ | 4791 | +/* { 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 } } */ | 4792 | /* { dg-final { cleanup-saved-temps } } */ |
| 4790 | 4793 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1p16.c | |
| 4791 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1p16.c' | 4794 | =================================================================== |
| 4792 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1p16.c 2010-05-24 18:36:31 +0000 | 4795 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4793 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1p16.c 2011-05-03 15:14:56 +0000 | 4796 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1p16.c 2011-09-16 20:16:00.517565031 -0700 |
| 4794 | @@ -16,5 +16,5 @@ | 4797 | @@ -16,5 +16,5 @@ |
| 4795 | vst1_p16 (arg0_poly16_t, arg1_poly16x4_t); | 4798 | vst1_p16 (arg0_poly16_t, arg1_poly16x4_t); |
| 4796 | } | 4799 | } |
| @@ -4798,10 +4801,10 @@ | |||
| 4798 | -/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4801 | -/* { 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" } } */ | 4802 | +/* { 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 } } */ | 4803 | /* { dg-final { cleanup-saved-temps } } */ |
| 4801 | 4804 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1p8.c | |
| 4802 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1p8.c' | 4805 | =================================================================== |
| 4803 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1p8.c 2010-05-24 18:36:31 +0000 | 4806 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4804 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1p8.c 2011-05-03 15:14:56 +0000 | 4807 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1p8.c 2011-09-16 20:16:00.517565031 -0700 |
| 4805 | @@ -16,5 +16,5 @@ | 4808 | @@ -16,5 +16,5 @@ |
| 4806 | vst1_p8 (arg0_poly8_t, arg1_poly8x8_t); | 4809 | vst1_p8 (arg0_poly8_t, arg1_poly8x8_t); |
| 4807 | } | 4810 | } |
| @@ -4809,10 +4812,10 @@ | |||
| 4809 | -/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4812 | -/* { 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" } } */ | 4813 | +/* { 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 } } */ | 4814 | /* { dg-final { cleanup-saved-temps } } */ |
| 4812 | 4815 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s16.c | |
| 4813 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s16.c' | 4816 | =================================================================== |
| 4814 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1s16.c 2010-05-24 18:36:31 +0000 | 4817 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4815 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1s16.c 2011-05-03 15:14:56 +0000 | 4818 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s16.c 2011-09-16 20:16:00.527565060 -0700 |
| 4816 | @@ -16,5 +16,5 @@ | 4819 | @@ -16,5 +16,5 @@ |
| 4817 | vst1_s16 (arg0_int16_t, arg1_int16x4_t); | 4820 | vst1_s16 (arg0_int16_t, arg1_int16x4_t); |
| 4818 | } | 4821 | } |
| @@ -4820,10 +4823,10 @@ | |||
| 4820 | -/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4823 | -/* { 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" } } */ | 4824 | +/* { 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 } } */ | 4825 | /* { dg-final { cleanup-saved-temps } } */ |
| 4823 | 4826 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s32.c | |
| 4824 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s32.c' | 4827 | =================================================================== |
| 4825 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1s32.c 2010-05-24 18:36:31 +0000 | 4828 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4826 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1s32.c 2011-05-03 15:14:56 +0000 | 4829 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s32.c 2011-09-16 20:16:00.527565060 -0700 |
| 4827 | @@ -16,5 +16,5 @@ | 4830 | @@ -16,5 +16,5 @@ |
| 4828 | vst1_s32 (arg0_int32_t, arg1_int32x2_t); | 4831 | vst1_s32 (arg0_int32_t, arg1_int32x2_t); |
| 4829 | } | 4832 | } |
| @@ -4831,10 +4834,10 @@ | |||
| 4831 | -/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4834 | -/* { 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" } } */ | 4835 | +/* { 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 } } */ | 4836 | /* { dg-final { cleanup-saved-temps } } */ |
| 4834 | 4837 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s64.c | |
| 4835 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s64.c' | 4838 | =================================================================== |
| 4836 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1s64.c 2010-05-24 18:36:31 +0000 | 4839 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4837 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1s64.c 2011-05-03 15:14:56 +0000 | 4840 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s64.c 2011-09-16 20:16:00.527565060 -0700 |
| 4838 | @@ -16,5 +16,5 @@ | 4841 | @@ -16,5 +16,5 @@ |
| 4839 | vst1_s64 (arg0_int64_t, arg1_int64x1_t); | 4842 | vst1_s64 (arg0_int64_t, arg1_int64x1_t); |
| 4840 | } | 4843 | } |
| @@ -4842,10 +4845,10 @@ | |||
| 4842 | -/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4845 | -/* { 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" } } */ | 4846 | +/* { 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 } } */ | 4847 | /* { dg-final { cleanup-saved-temps } } */ |
| 4845 | 4848 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s8.c | |
| 4846 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1s8.c' | 4849 | =================================================================== |
| 4847 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1s8.c 2010-05-24 18:36:31 +0000 | 4850 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4848 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1s8.c 2011-05-03 15:14:56 +0000 | 4851 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1s8.c 2011-09-16 20:16:00.527565060 -0700 |
| 4849 | @@ -16,5 +16,5 @@ | 4852 | @@ -16,5 +16,5 @@ |
| 4850 | vst1_s8 (arg0_int8_t, arg1_int8x8_t); | 4853 | vst1_s8 (arg0_int8_t, arg1_int8x8_t); |
| 4851 | } | 4854 | } |
| @@ -4853,10 +4856,10 @@ | |||
| 4853 | -/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4856 | -/* { 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" } } */ | 4857 | +/* { 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 } } */ | 4858 | /* { dg-final { cleanup-saved-temps } } */ |
| 4856 | 4859 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u16.c | |
| 4857 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u16.c' | 4860 | =================================================================== |
| 4858 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1u16.c 2010-05-24 18:36:31 +0000 | 4861 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4859 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1u16.c 2011-05-03 15:14:56 +0000 | 4862 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u16.c 2011-09-16 20:16:00.527565060 -0700 |
| 4860 | @@ -16,5 +16,5 @@ | 4863 | @@ -16,5 +16,5 @@ |
| 4861 | vst1_u16 (arg0_uint16_t, arg1_uint16x4_t); | 4864 | vst1_u16 (arg0_uint16_t, arg1_uint16x4_t); |
| 4862 | } | 4865 | } |
| @@ -4864,10 +4867,10 @@ | |||
| 4864 | -/* { dg-final { scan-assembler "vst1\.16\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4867 | -/* { 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" } } */ | 4868 | +/* { 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 } } */ | 4869 | /* { dg-final { cleanup-saved-temps } } */ |
| 4867 | 4870 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u32.c | |
| 4868 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u32.c' | 4871 | =================================================================== |
| 4869 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1u32.c 2010-05-24 18:36:31 +0000 | 4872 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4870 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1u32.c 2011-05-03 15:14:56 +0000 | 4873 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u32.c 2011-09-16 20:16:00.527565060 -0700 |
| 4871 | @@ -16,5 +16,5 @@ | 4874 | @@ -16,5 +16,5 @@ |
| 4872 | vst1_u32 (arg0_uint32_t, arg1_uint32x2_t); | 4875 | vst1_u32 (arg0_uint32_t, arg1_uint32x2_t); |
| 4873 | } | 4876 | } |
| @@ -4875,10 +4878,10 @@ | |||
| 4875 | -/* { dg-final { scan-assembler "vst1\.32\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4878 | -/* { 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" } } */ | 4879 | +/* { 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 } } */ | 4880 | /* { dg-final { cleanup-saved-temps } } */ |
| 4878 | 4881 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u64.c | |
| 4879 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u64.c' | 4882 | =================================================================== |
| 4880 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1u64.c 2010-05-24 18:36:31 +0000 | 4883 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 4881 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1u64.c 2011-05-03 15:14:56 +0000 | 4884 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u64.c 2011-09-16 20:16:00.527565060 -0700 |
| 4882 | @@ -16,5 +16,5 @@ | 4885 | @@ -16,5 +16,5 @@ |
| 4883 | vst1_u64 (arg0_uint64_t, arg1_uint64x1_t); | 4886 | vst1_u64 (arg0_uint64_t, arg1_uint64x1_t); |
| 4884 | } | 4887 | } |
| @@ -4886,10 +4889,10 @@ | |||
| 4886 | -/* { dg-final { scan-assembler "vst1\.64\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4889 | -/* { 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" } } */ | 4890 | +/* { 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 } } */ | 4891 | /* { dg-final { cleanup-saved-temps } } */ |
| 4889 | 4892 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u8.c | |
| 4890 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst1u8.c' | 4893 | =================================================================== |
| 4891 | --- old/gcc/testsuite/gcc.target/arm/neon/vst1u8.c 2010-05-24 18:36:31 +0000 | 4894 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst1u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4892 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst1u8.c 2011-05-03 15:14:56 +0000 | 4895 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst1u8.c 2011-09-16 20:16:00.527565060 -0700 |
| 4893 | @@ -16,5 +16,5 @@ | 4896 | @@ -16,5 +16,5 @@ |
| 4894 | vst1_u8 (arg0_uint8_t, arg1_uint8x8_t); | 4897 | vst1_u8 (arg0_uint8_t, arg1_uint8x8_t); |
| 4895 | } | 4898 | } |
| @@ -4897,10 +4900,10 @@ | |||
| 4897 | -/* { dg-final { scan-assembler "vst1\.8\[ \]+((\\\{\[dD\]\[0-9\]+\\\})|(\[dD\]\[0-9\]+)), \\\[\[rR\]\[0-9\]+\\\]!?\(\[ \]+@\[a-zA-Z0-9 \]+\)?\n" } } */ | 4900 | -/* { 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" } } */ | 4901 | +/* { 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 } } */ | 4902 | /* { dg-final { cleanup-saved-temps } } */ |
| 4900 | 4903 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c | |
| 4901 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c' | 4904 | =================================================================== |
| 4902 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c 2010-05-24 18:36:31 +0000 | 4905 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4903 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c 2011-05-03 15:14:56 +0000 | 4906 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanef32.c 2011-09-16 20:16:00.527565060 -0700 |
| 4904 | @@ -16,5 +16,5 @@ | 4907 | @@ -16,5 +16,5 @@ |
| 4905 | vst2q_lane_f32 (arg0_float32_t, arg1_float32x4x2_t, 1); | 4908 | vst2q_lane_f32 (arg0_float32_t, arg1_float32x4x2_t, 1); |
| 4906 | } | 4909 | } |
| @@ -4908,10 +4911,10 @@ | |||
| 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" } } */ | 4911 | -/* { 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" } } */ | 4912 | +/* { 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 } } */ | 4913 | /* { dg-final { cleanup-saved-temps } } */ |
| 4911 | 4914 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c | |
| 4912 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c' | 4915 | =================================================================== |
| 4913 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c 2010-05-24 18:36:31 +0000 | 4916 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4914 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c 2011-05-03 15:14:56 +0000 | 4917 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanep16.c 2011-09-16 20:16:00.527565060 -0700 |
| 4915 | @@ -16,5 +16,5 @@ | 4918 | @@ -16,5 +16,5 @@ |
| 4916 | vst2q_lane_p16 (arg0_poly16_t, arg1_poly16x8x2_t, 1); | 4919 | vst2q_lane_p16 (arg0_poly16_t, arg1_poly16x8x2_t, 1); |
| 4917 | } | 4920 | } |
| @@ -4919,10 +4922,10 @@ | |||
| 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" } } */ | 4922 | -/* { 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" } } */ | 4923 | +/* { 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 } } */ | 4924 | /* { dg-final { cleanup-saved-temps } } */ |
| 4922 | 4925 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c | |
| 4923 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c' | 4926 | =================================================================== |
| 4924 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c 2010-05-24 18:36:31 +0000 | 4927 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4925 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c 2011-05-03 15:14:56 +0000 | 4928 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes16.c 2011-09-16 20:16:00.527565060 -0700 |
| 4926 | @@ -16,5 +16,5 @@ | 4929 | @@ -16,5 +16,5 @@ |
| 4927 | vst2q_lane_s16 (arg0_int16_t, arg1_int16x8x2_t, 1); | 4930 | vst2q_lane_s16 (arg0_int16_t, arg1_int16x8x2_t, 1); |
| 4928 | } | 4931 | } |
| @@ -4930,10 +4933,10 @@ | |||
| 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" } } */ | 4933 | -/* { 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" } } */ | 4934 | +/* { 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 } } */ | 4935 | /* { dg-final { cleanup-saved-temps } } */ |
| 4933 | 4936 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c | |
| 4934 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c' | 4937 | =================================================================== |
| 4935 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c 2010-05-24 18:36:31 +0000 | 4938 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4936 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c 2011-05-03 15:14:56 +0000 | 4939 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_lanes32.c 2011-09-16 20:16:00.527565060 -0700 |
| 4937 | @@ -16,5 +16,5 @@ | 4940 | @@ -16,5 +16,5 @@ |
| 4938 | vst2q_lane_s32 (arg0_int32_t, arg1_int32x4x2_t, 1); | 4941 | vst2q_lane_s32 (arg0_int32_t, arg1_int32x4x2_t, 1); |
| 4939 | } | 4942 | } |
| @@ -4941,10 +4944,10 @@ | |||
| 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" } } */ | 4944 | -/* { 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" } } */ | 4945 | +/* { 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 } } */ | 4946 | /* { dg-final { cleanup-saved-temps } } */ |
| 4944 | 4947 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c | |
| 4945 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c' | 4948 | =================================================================== |
| 4946 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c 2010-05-24 18:36:31 +0000 | 4949 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4947 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c 2011-05-03 15:14:56 +0000 | 4950 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu16.c 2011-09-16 20:16:00.527565060 -0700 |
| 4948 | @@ -16,5 +16,5 @@ | 4951 | @@ -16,5 +16,5 @@ |
| 4949 | vst2q_lane_u16 (arg0_uint16_t, arg1_uint16x8x2_t, 1); | 4952 | vst2q_lane_u16 (arg0_uint16_t, arg1_uint16x8x2_t, 1); |
| 4950 | } | 4953 | } |
| @@ -4952,10 +4955,10 @@ | |||
| 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" } } */ | 4955 | -/* { 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" } } */ | 4956 | +/* { 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 } } */ | 4957 | /* { dg-final { cleanup-saved-temps } } */ |
| 4955 | 4958 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c | |
| 4956 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c' | 4959 | =================================================================== |
| 4957 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c 2010-05-24 18:36:31 +0000 | 4960 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4958 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c 2011-05-03 15:14:56 +0000 | 4961 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Q_laneu32.c 2011-09-16 20:16:00.527565060 -0700 |
| 4959 | @@ -16,5 +16,5 @@ | 4962 | @@ -16,5 +16,5 @@ |
| 4960 | vst2q_lane_u32 (arg0_uint32_t, arg1_uint32x4x2_t, 1); | 4963 | vst2q_lane_u32 (arg0_uint32_t, arg1_uint32x4x2_t, 1); |
| 4961 | } | 4964 | } |
| @@ -4963,10 +4966,10 @@ | |||
| 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" } } */ | 4966 | -/* { 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" } } */ | 4967 | +/* { 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 } } */ | 4968 | /* { dg-final { cleanup-saved-temps } } */ |
| 4966 | 4969 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c | |
| 4967 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c' | 4970 | =================================================================== |
| 4968 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c 2010-05-24 18:36:31 +0000 | 4971 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 4969 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c 2011-05-03 15:14:56 +0000 | 4972 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qf32.c 2011-09-16 20:16:00.527565060 -0700 |
| 4970 | @@ -16,6 +16,6 @@ | 4973 | @@ -16,6 +16,6 @@ |
| 4971 | vst2q_f32 (arg0_float32_t, arg1_float32x4x2_t); | 4974 | vst2q_f32 (arg0_float32_t, arg1_float32x4x2_t); |
| 4972 | } | 4975 | } |
| @@ -4976,10 +4979,10 @@ | |||
| 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" } } */ | 4979 | +/* { 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" } } */ | 4980 | +/* { 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 } } */ | 4981 | /* { dg-final { cleanup-saved-temps } } */ |
| 4979 | 4982 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c | |
| 4980 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c' | 4983 | =================================================================== |
| 4981 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c 2010-05-24 18:36:31 +0000 | 4984 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 4982 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c 2011-05-03 15:14:56 +0000 | 4985 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qp16.c 2011-09-16 20:16:00.527565060 -0700 |
| 4983 | @@ -16,6 +16,6 @@ | 4986 | @@ -16,6 +16,6 @@ |
| 4984 | vst2q_p16 (arg0_poly16_t, arg1_poly16x8x2_t); | 4987 | vst2q_p16 (arg0_poly16_t, arg1_poly16x8x2_t); |
| 4985 | } | 4988 | } |
| @@ -4989,10 +4992,10 @@ | |||
| 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" } } */ | 4992 | +/* { 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" } } */ | 4993 | +/* { 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 } } */ | 4994 | /* { dg-final { cleanup-saved-temps } } */ |
| 4992 | 4995 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c | |
| 4993 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c' | 4996 | =================================================================== |
| 4994 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c 2010-05-24 18:36:31 +0000 | 4997 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 4995 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c 2011-05-03 15:14:56 +0000 | 4998 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qp8.c 2011-09-16 20:16:00.527565060 -0700 |
| 4996 | @@ -16,6 +16,6 @@ | 4999 | @@ -16,6 +16,6 @@ |
| 4997 | vst2q_p8 (arg0_poly8_t, arg1_poly8x16x2_t); | 5000 | vst2q_p8 (arg0_poly8_t, arg1_poly8x16x2_t); |
| 4998 | } | 5001 | } |
| @@ -5002,10 +5005,10 @@ | |||
| 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" } } */ | 5005 | +/* { 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" } } */ | 5006 | +/* { 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 } } */ | 5007 | /* { dg-final { cleanup-saved-temps } } */ |
| 5005 | 5008 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c | |
| 5006 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c' | 5009 | =================================================================== |
| 5007 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c 2010-05-24 18:36:31 +0000 | 5010 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5008 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c 2011-05-03 15:14:56 +0000 | 5011 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qs16.c 2011-09-16 20:16:00.527565060 -0700 |
| 5009 | @@ -16,6 +16,6 @@ | 5012 | @@ -16,6 +16,6 @@ |
| 5010 | vst2q_s16 (arg0_int16_t, arg1_int16x8x2_t); | 5013 | vst2q_s16 (arg0_int16_t, arg1_int16x8x2_t); |
| 5011 | } | 5014 | } |
| @@ -5015,10 +5018,10 @@ | |||
| 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" } } */ | 5018 | +/* { 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" } } */ | 5019 | +/* { 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 } } */ | 5020 | /* { dg-final { cleanup-saved-temps } } */ |
| 5018 | 5021 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c | |
| 5019 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c' | 5022 | =================================================================== |
| 5020 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c 2010-05-24 18:36:31 +0000 | 5023 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5021 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c 2011-05-03 15:14:56 +0000 | 5024 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qs32.c 2011-09-16 20:16:00.527565060 -0700 |
| 5022 | @@ -16,6 +16,6 @@ | 5025 | @@ -16,6 +16,6 @@ |
| 5023 | vst2q_s32 (arg0_int32_t, arg1_int32x4x2_t); | 5026 | vst2q_s32 (arg0_int32_t, arg1_int32x4x2_t); |
| 5024 | } | 5027 | } |
| @@ -5028,10 +5031,10 @@ | |||
| 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" } } */ | 5031 | +/* { 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" } } */ | 5032 | +/* { 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 } } */ | 5033 | /* { dg-final { cleanup-saved-temps } } */ |
| 5031 | 5034 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c | |
| 5032 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c' | 5035 | =================================================================== |
| 5033 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c 2010-05-24 18:36:31 +0000 | 5036 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5034 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c 2011-05-03 15:14:56 +0000 | 5037 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qs8.c 2011-09-16 20:16:00.527565060 -0700 |
| 5035 | @@ -16,6 +16,6 @@ | 5038 | @@ -16,6 +16,6 @@ |
| 5036 | vst2q_s8 (arg0_int8_t, arg1_int8x16x2_t); | 5039 | vst2q_s8 (arg0_int8_t, arg1_int8x16x2_t); |
| 5037 | } | 5040 | } |
| @@ -5041,10 +5044,10 @@ | |||
| 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" } } */ | 5044 | +/* { 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" } } */ | 5045 | +/* { 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 } } */ | 5046 | /* { dg-final { cleanup-saved-temps } } */ |
| 5044 | 5047 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c | |
| 5045 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c' | 5048 | =================================================================== |
| 5046 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c 2010-05-24 18:36:31 +0000 | 5049 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5047 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c 2011-05-03 15:14:56 +0000 | 5050 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qu16.c 2011-09-16 20:16:00.527565060 -0700 |
| 5048 | @@ -16,6 +16,6 @@ | 5051 | @@ -16,6 +16,6 @@ |
| 5049 | vst2q_u16 (arg0_uint16_t, arg1_uint16x8x2_t); | 5052 | vst2q_u16 (arg0_uint16_t, arg1_uint16x8x2_t); |
| 5050 | } | 5053 | } |
| @@ -5054,10 +5057,10 @@ | |||
| 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" } } */ | 5057 | +/* { 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" } } */ | 5058 | +/* { 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 } } */ | 5059 | /* { dg-final { cleanup-saved-temps } } */ |
| 5057 | 5060 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c | |
| 5058 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c' | 5061 | =================================================================== |
| 5059 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c 2010-05-24 18:36:31 +0000 | 5062 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5060 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c 2011-05-03 15:14:56 +0000 | 5063 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qu32.c 2011-09-16 20:16:00.527565060 -0700 |
| 5061 | @@ -16,6 +16,6 @@ | 5064 | @@ -16,6 +16,6 @@ |
| 5062 | vst2q_u32 (arg0_uint32_t, arg1_uint32x4x2_t); | 5065 | vst2q_u32 (arg0_uint32_t, arg1_uint32x4x2_t); |
| 5063 | } | 5066 | } |
| @@ -5067,10 +5070,10 @@ | |||
| 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" } } */ | 5070 | +/* { 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" } } */ | 5071 | +/* { 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 } } */ | 5072 | /* { dg-final { cleanup-saved-temps } } */ |
| 5070 | 5073 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c | |
| 5071 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c' | 5074 | =================================================================== |
| 5072 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c 2010-05-24 18:36:31 +0000 | 5075 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5073 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c 2011-05-03 15:14:56 +0000 | 5076 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2Qu8.c 2011-09-16 20:16:00.537565077 -0700 |
| 5074 | @@ -16,6 +16,6 @@ | 5077 | @@ -16,6 +16,6 @@ |
| 5075 | vst2q_u8 (arg0_uint8_t, arg1_uint8x16x2_t); | 5078 | vst2q_u8 (arg0_uint8_t, arg1_uint8x16x2_t); |
| 5076 | } | 5079 | } |
| @@ -5080,10 +5083,10 @@ | |||
| 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" } } */ | 5083 | +/* { 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" } } */ | 5084 | +/* { 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 } } */ | 5085 | /* { dg-final { cleanup-saved-temps } } */ |
| 5083 | 5086 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c | |
| 5084 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c' | 5087 | =================================================================== |
| 5085 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c 2010-05-24 18:36:31 +0000 | 5088 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5086 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c 2011-05-03 15:14:56 +0000 | 5089 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanef32.c 2011-09-16 20:16:00.537565077 -0700 |
| 5087 | @@ -16,5 +16,5 @@ | 5090 | @@ -16,5 +16,5 @@ |
| 5088 | vst2_lane_f32 (arg0_float32_t, arg1_float32x2x2_t, 1); | 5091 | vst2_lane_f32 (arg0_float32_t, arg1_float32x2x2_t, 1); |
| 5089 | } | 5092 | } |
| @@ -5091,10 +5094,10 @@ | |||
| 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" } } */ | 5094 | -/* { 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" } } */ | 5095 | +/* { 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 } } */ | 5096 | /* { dg-final { cleanup-saved-temps } } */ |
| 5094 | 5097 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c | |
| 5095 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c' | 5098 | =================================================================== |
| 5096 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c 2010-05-24 18:36:31 +0000 | 5099 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5097 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c 2011-05-03 15:14:56 +0000 | 5100 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanep16.c 2011-09-16 20:16:00.537565077 -0700 |
| 5098 | @@ -16,5 +16,5 @@ | 5101 | @@ -16,5 +16,5 @@ |
| 5099 | vst2_lane_p16 (arg0_poly16_t, arg1_poly16x4x2_t, 1); | 5102 | vst2_lane_p16 (arg0_poly16_t, arg1_poly16x4x2_t, 1); |
| 5100 | } | 5103 | } |
| @@ -5102,10 +5105,10 @@ | |||
| 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" } } */ | 5105 | -/* { 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" } } */ | 5106 | +/* { 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 } } */ | 5107 | /* { dg-final { cleanup-saved-temps } } */ |
| 5105 | 5108 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c | |
| 5106 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c' | 5109 | =================================================================== |
| 5107 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c 2010-05-24 18:36:31 +0000 | 5110 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5108 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c 2011-05-03 15:14:56 +0000 | 5111 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanep8.c 2011-09-16 20:16:00.537565077 -0700 |
| 5109 | @@ -16,5 +16,5 @@ | 5112 | @@ -16,5 +16,5 @@ |
| 5110 | vst2_lane_p8 (arg0_poly8_t, arg1_poly8x8x2_t, 1); | 5113 | vst2_lane_p8 (arg0_poly8_t, arg1_poly8x8x2_t, 1); |
| 5111 | } | 5114 | } |
| @@ -5113,10 +5116,10 @@ | |||
| 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" } } */ | 5116 | -/* { 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" } } */ | 5117 | +/* { 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 } } */ | 5118 | /* { dg-final { cleanup-saved-temps } } */ |
| 5116 | 5119 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c | |
| 5117 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c' | 5120 | =================================================================== |
| 5118 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c 2010-05-24 18:36:31 +0000 | 5121 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5119 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c 2011-05-03 15:14:56 +0000 | 5122 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanes16.c 2011-09-16 20:16:00.537565077 -0700 |
| 5120 | @@ -16,5 +16,5 @@ | 5123 | @@ -16,5 +16,5 @@ |
| 5121 | vst2_lane_s16 (arg0_int16_t, arg1_int16x4x2_t, 1); | 5124 | vst2_lane_s16 (arg0_int16_t, arg1_int16x4x2_t, 1); |
| 5122 | } | 5125 | } |
| @@ -5124,10 +5127,10 @@ | |||
| 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" } } */ | 5127 | -/* { 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" } } */ | 5128 | +/* { 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 } } */ | 5129 | /* { dg-final { cleanup-saved-temps } } */ |
| 5127 | 5130 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c | |
| 5128 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c' | 5131 | =================================================================== |
| 5129 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c 2010-05-24 18:36:31 +0000 | 5132 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5130 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c 2011-05-03 15:14:56 +0000 | 5133 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanes32.c 2011-09-16 20:16:00.537565077 -0700 |
| 5131 | @@ -16,5 +16,5 @@ | 5134 | @@ -16,5 +16,5 @@ |
| 5132 | vst2_lane_s32 (arg0_int32_t, arg1_int32x2x2_t, 1); | 5135 | vst2_lane_s32 (arg0_int32_t, arg1_int32x2x2_t, 1); |
| 5133 | } | 5136 | } |
| @@ -5135,10 +5138,10 @@ | |||
| 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" } } */ | 5138 | -/* { 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" } } */ | 5139 | +/* { 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 } } */ | 5140 | /* { dg-final { cleanup-saved-temps } } */ |
| 5138 | 5141 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c | |
| 5139 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c' | 5142 | =================================================================== |
| 5140 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c 2010-05-24 18:36:31 +0000 | 5143 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5141 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c 2011-05-03 15:14:56 +0000 | 5144 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_lanes8.c 2011-09-16 20:16:00.537565077 -0700 |
| 5142 | @@ -16,5 +16,5 @@ | 5145 | @@ -16,5 +16,5 @@ |
| 5143 | vst2_lane_s8 (arg0_int8_t, arg1_int8x8x2_t, 1); | 5146 | vst2_lane_s8 (arg0_int8_t, arg1_int8x8x2_t, 1); |
| 5144 | } | 5147 | } |
| @@ -5146,10 +5149,10 @@ | |||
| 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" } } */ | 5149 | -/* { 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" } } */ | 5150 | +/* { 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 } } */ | 5151 | /* { dg-final { cleanup-saved-temps } } */ |
| 5149 | 5152 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c | |
| 5150 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c' | 5153 | =================================================================== |
| 5151 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c 2010-05-24 18:36:31 +0000 | 5154 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5152 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c 2011-05-03 15:14:56 +0000 | 5155 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_laneu16.c 2011-09-16 20:16:00.537565077 -0700 |
| 5153 | @@ -16,5 +16,5 @@ | 5156 | @@ -16,5 +16,5 @@ |
| 5154 | vst2_lane_u16 (arg0_uint16_t, arg1_uint16x4x2_t, 1); | 5157 | vst2_lane_u16 (arg0_uint16_t, arg1_uint16x4x2_t, 1); |
| 5155 | } | 5158 | } |
| @@ -5157,10 +5160,10 @@ | |||
| 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" } } */ | 5160 | -/* { 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" } } */ | 5161 | +/* { 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 } } */ | 5162 | /* { dg-final { cleanup-saved-temps } } */ |
| 5160 | 5163 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c | |
| 5161 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c' | 5164 | =================================================================== |
| 5162 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c 2010-05-24 18:36:31 +0000 | 5165 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5163 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c 2011-05-03 15:14:56 +0000 | 5166 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_laneu32.c 2011-09-16 20:16:00.537565077 -0700 |
| 5164 | @@ -16,5 +16,5 @@ | 5167 | @@ -16,5 +16,5 @@ |
| 5165 | vst2_lane_u32 (arg0_uint32_t, arg1_uint32x2x2_t, 1); | 5168 | vst2_lane_u32 (arg0_uint32_t, arg1_uint32x2x2_t, 1); |
| 5166 | } | 5169 | } |
| @@ -5168,10 +5171,10 @@ | |||
| 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" } } */ | 5171 | -/* { 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" } } */ | 5172 | +/* { 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 } } */ | 5173 | /* { dg-final { cleanup-saved-temps } } */ |
| 5171 | 5174 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c | |
| 5172 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c' | 5175 | =================================================================== |
| 5173 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c 2010-05-24 18:36:31 +0000 | 5176 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5174 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c 2011-05-03 15:14:56 +0000 | 5177 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2_laneu8.c 2011-09-16 20:16:00.537565077 -0700 |
| 5175 | @@ -16,5 +16,5 @@ | 5178 | @@ -16,5 +16,5 @@ |
| 5176 | vst2_lane_u8 (arg0_uint8_t, arg1_uint8x8x2_t, 1); | 5179 | vst2_lane_u8 (arg0_uint8_t, arg1_uint8x8x2_t, 1); |
| 5177 | } | 5180 | } |
| @@ -5179,10 +5182,10 @@ | |||
| 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" } } */ | 5182 | -/* { 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" } } */ | 5183 | +/* { 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 } } */ | 5184 | /* { dg-final { cleanup-saved-temps } } */ |
| 5182 | 5185 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2f32.c | |
| 5183 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2f32.c' | 5186 | =================================================================== |
| 5184 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2f32.c 2010-05-24 18:36:31 +0000 | 5187 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5185 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2f32.c 2011-05-03 15:14:56 +0000 | 5188 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2f32.c 2011-09-16 20:16:00.537565077 -0700 |
| 5186 | @@ -16,5 +16,5 @@ | 5189 | @@ -16,5 +16,5 @@ |
| 5187 | vst2_f32 (arg0_float32_t, arg1_float32x2x2_t); | 5190 | vst2_f32 (arg0_float32_t, arg1_float32x2x2_t); |
| 5188 | } | 5191 | } |
| @@ -5190,10 +5193,10 @@ | |||
| 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" } } */ | 5193 | -/* { 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" } } */ | 5194 | +/* { 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 } } */ | 5195 | /* { dg-final { cleanup-saved-temps } } */ |
| 5193 | 5196 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2p16.c | |
| 5194 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2p16.c' | 5197 | =================================================================== |
| 5195 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2p16.c 2010-05-24 18:36:31 +0000 | 5198 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5196 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2p16.c 2011-05-03 15:14:56 +0000 | 5199 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2p16.c 2011-09-16 20:16:00.537565077 -0700 |
| 5197 | @@ -16,5 +16,5 @@ | 5200 | @@ -16,5 +16,5 @@ |
| 5198 | vst2_p16 (arg0_poly16_t, arg1_poly16x4x2_t); | 5201 | vst2_p16 (arg0_poly16_t, arg1_poly16x4x2_t); |
| 5199 | } | 5202 | } |
| @@ -5201,10 +5204,10 @@ | |||
| 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" } } */ | 5204 | -/* { 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" } } */ | 5205 | +/* { 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 } } */ | 5206 | /* { dg-final { cleanup-saved-temps } } */ |
| 5204 | 5207 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2p8.c | |
| 5205 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2p8.c' | 5208 | =================================================================== |
| 5206 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2p8.c 2010-05-24 18:36:31 +0000 | 5209 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5207 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2p8.c 2011-05-03 15:14:56 +0000 | 5210 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2p8.c 2011-09-16 20:16:00.547565082 -0700 |
| 5208 | @@ -16,5 +16,5 @@ | 5211 | @@ -16,5 +16,5 @@ |
| 5209 | vst2_p8 (arg0_poly8_t, arg1_poly8x8x2_t); | 5212 | vst2_p8 (arg0_poly8_t, arg1_poly8x8x2_t); |
| 5210 | } | 5213 | } |
| @@ -5212,10 +5215,10 @@ | |||
| 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" } } */ | 5215 | -/* { 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" } } */ | 5216 | +/* { 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 } } */ | 5217 | /* { dg-final { cleanup-saved-temps } } */ |
| 5215 | 5218 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s16.c | |
| 5216 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s16.c' | 5219 | =================================================================== |
| 5217 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2s16.c 2010-05-24 18:36:31 +0000 | 5220 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5218 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2s16.c 2011-05-03 15:14:56 +0000 | 5221 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s16.c 2011-09-16 20:16:00.547565082 -0700 |
| 5219 | @@ -16,5 +16,5 @@ | 5222 | @@ -16,5 +16,5 @@ |
| 5220 | vst2_s16 (arg0_int16_t, arg1_int16x4x2_t); | 5223 | vst2_s16 (arg0_int16_t, arg1_int16x4x2_t); |
| 5221 | } | 5224 | } |
| @@ -5223,10 +5226,10 @@ | |||
| 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" } } */ | 5226 | -/* { 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" } } */ | 5227 | +/* { 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 } } */ | 5228 | /* { dg-final { cleanup-saved-temps } } */ |
| 5226 | 5229 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s32.c | |
| 5227 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s32.c' | 5230 | =================================================================== |
| 5228 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2s32.c 2010-05-24 18:36:31 +0000 | 5231 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5229 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2s32.c 2011-05-03 15:14:56 +0000 | 5232 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s32.c 2011-09-16 20:16:00.547565082 -0700 |
| 5230 | @@ -16,5 +16,5 @@ | 5233 | @@ -16,5 +16,5 @@ |
| 5231 | vst2_s32 (arg0_int32_t, arg1_int32x2x2_t); | 5234 | vst2_s32 (arg0_int32_t, arg1_int32x2x2_t); |
| 5232 | } | 5235 | } |
| @@ -5234,10 +5237,10 @@ | |||
| 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" } } */ | 5237 | -/* { 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" } } */ | 5238 | +/* { 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 } } */ | 5239 | /* { dg-final { cleanup-saved-temps } } */ |
| 5237 | 5240 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s64.c | |
| 5238 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s64.c' | 5241 | =================================================================== |
| 5239 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2s64.c 2010-05-24 18:36:31 +0000 | 5242 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 5240 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2s64.c 2011-05-03 15:14:56 +0000 | 5243 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s64.c 2011-09-16 20:16:00.547565082 -0700 |
| 5241 | @@ -16,5 +16,5 @@ | 5244 | @@ -16,5 +16,5 @@ |
| 5242 | vst2_s64 (arg0_int64_t, arg1_int64x1x2_t); | 5245 | vst2_s64 (arg0_int64_t, arg1_int64x1x2_t); |
| 5243 | } | 5246 | } |
| @@ -5245,10 +5248,10 @@ | |||
| 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" } } */ | 5248 | -/* { 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" } } */ | 5249 | +/* { 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 } } */ | 5250 | /* { dg-final { cleanup-saved-temps } } */ |
| 5248 | 5251 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s8.c | |
| 5249 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2s8.c' | 5252 | =================================================================== |
| 5250 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2s8.c 2010-05-24 18:36:31 +0000 | 5253 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5251 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2s8.c 2011-05-03 15:14:56 +0000 | 5254 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2s8.c 2011-09-16 20:16:00.547565082 -0700 |
| 5252 | @@ -16,5 +16,5 @@ | 5255 | @@ -16,5 +16,5 @@ |
| 5253 | vst2_s8 (arg0_int8_t, arg1_int8x8x2_t); | 5256 | vst2_s8 (arg0_int8_t, arg1_int8x8x2_t); |
| 5254 | } | 5257 | } |
| @@ -5256,10 +5259,10 @@ | |||
| 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" } } */ | 5259 | -/* { 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" } } */ | 5260 | +/* { 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 } } */ | 5261 | /* { dg-final { cleanup-saved-temps } } */ |
| 5259 | 5262 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u16.c | |
| 5260 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u16.c' | 5263 | =================================================================== |
| 5261 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2u16.c 2010-05-24 18:36:31 +0000 | 5264 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5262 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2u16.c 2011-05-03 15:14:56 +0000 | 5265 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u16.c 2011-09-16 20:16:00.547565082 -0700 |
| 5263 | @@ -16,5 +16,5 @@ | 5266 | @@ -16,5 +16,5 @@ |
| 5264 | vst2_u16 (arg0_uint16_t, arg1_uint16x4x2_t); | 5267 | vst2_u16 (arg0_uint16_t, arg1_uint16x4x2_t); |
| 5265 | } | 5268 | } |
| @@ -5267,10 +5270,10 @@ | |||
| 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" } } */ | 5270 | -/* { 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" } } */ | 5271 | +/* { 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 } } */ | 5272 | /* { dg-final { cleanup-saved-temps } } */ |
| 5270 | 5273 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u32.c | |
| 5271 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u32.c' | 5274 | =================================================================== |
| 5272 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2u32.c 2010-05-24 18:36:31 +0000 | 5275 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5273 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2u32.c 2011-05-03 15:14:56 +0000 | 5276 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u32.c 2011-09-16 20:16:00.547565082 -0700 |
| 5274 | @@ -16,5 +16,5 @@ | 5277 | @@ -16,5 +16,5 @@ |
| 5275 | vst2_u32 (arg0_uint32_t, arg1_uint32x2x2_t); | 5278 | vst2_u32 (arg0_uint32_t, arg1_uint32x2x2_t); |
| 5276 | } | 5279 | } |
| @@ -5278,10 +5281,10 @@ | |||
| 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" } } */ | 5281 | -/* { 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" } } */ | 5282 | +/* { 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 } } */ | 5283 | /* { dg-final { cleanup-saved-temps } } */ |
| 5281 | 5284 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u64.c | |
| 5282 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u64.c' | 5285 | =================================================================== |
| 5283 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2u64.c 2010-05-24 18:36:31 +0000 | 5286 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 5284 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2u64.c 2011-05-03 15:14:56 +0000 | 5287 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u64.c 2011-09-16 20:16:00.557565092 -0700 |
| 5285 | @@ -16,5 +16,5 @@ | 5288 | @@ -16,5 +16,5 @@ |
| 5286 | vst2_u64 (arg0_uint64_t, arg1_uint64x1x2_t); | 5289 | vst2_u64 (arg0_uint64_t, arg1_uint64x1x2_t); |
| 5287 | } | 5290 | } |
| @@ -5289,10 +5292,10 @@ | |||
| 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" } } */ | 5292 | -/* { 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" } } */ | 5293 | +/* { 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 } } */ | 5294 | /* { dg-final { cleanup-saved-temps } } */ |
| 5292 | 5295 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u8.c | |
| 5293 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst2u8.c' | 5296 | =================================================================== |
| 5294 | --- old/gcc/testsuite/gcc.target/arm/neon/vst2u8.c 2010-05-24 18:36:31 +0000 | 5297 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst2u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5295 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst2u8.c 2011-05-03 15:14:56 +0000 | 5298 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst2u8.c 2011-09-16 20:16:00.557565092 -0700 |
| 5296 | @@ -16,5 +16,5 @@ | 5299 | @@ -16,5 +16,5 @@ |
| 5297 | vst2_u8 (arg0_uint8_t, arg1_uint8x8x2_t); | 5300 | vst2_u8 (arg0_uint8_t, arg1_uint8x8x2_t); |
| 5298 | } | 5301 | } |
| @@ -5300,10 +5303,10 @@ | |||
| 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" } } */ | 5303 | -/* { 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" } } */ | 5304 | +/* { 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 } } */ | 5305 | /* { dg-final { cleanup-saved-temps } } */ |
| 5303 | 5306 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c | |
| 5304 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c' | 5307 | =================================================================== |
| 5305 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c 2010-05-24 18:36:31 +0000 | 5308 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5306 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c 2011-05-03 15:14:56 +0000 | 5309 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanef32.c 2011-09-16 20:16:00.557565092 -0700 |
| 5307 | @@ -16,5 +16,5 @@ | 5310 | @@ -16,5 +16,5 @@ |
| 5308 | vst3q_lane_f32 (arg0_float32_t, arg1_float32x4x3_t, 1); | 5311 | vst3q_lane_f32 (arg0_float32_t, arg1_float32x4x3_t, 1); |
| 5309 | } | 5312 | } |
| @@ -5311,10 +5314,10 @@ | |||
| 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" } } */ | 5314 | -/* { 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" } } */ | 5315 | +/* { 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 } } */ | 5316 | /* { dg-final { cleanup-saved-temps } } */ |
| 5314 | 5317 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c | |
| 5315 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c' | 5318 | =================================================================== |
| 5316 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c 2010-05-24 18:36:31 +0000 | 5319 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5317 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c 2011-05-03 15:14:56 +0000 | 5320 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanep16.c 2011-09-16 20:16:00.557565092 -0700 |
| 5318 | @@ -16,5 +16,5 @@ | 5321 | @@ -16,5 +16,5 @@ |
| 5319 | vst3q_lane_p16 (arg0_poly16_t, arg1_poly16x8x3_t, 1); | 5322 | vst3q_lane_p16 (arg0_poly16_t, arg1_poly16x8x3_t, 1); |
| 5320 | } | 5323 | } |
| @@ -5322,10 +5325,10 @@ | |||
| 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" } } */ | 5325 | -/* { 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" } } */ | 5326 | +/* { 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 } } */ | 5327 | /* { dg-final { cleanup-saved-temps } } */ |
| 5325 | 5328 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c | |
| 5326 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c' | 5329 | =================================================================== |
| 5327 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c 2010-05-24 18:36:31 +0000 | 5330 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5328 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c 2011-05-03 15:14:56 +0000 | 5331 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes16.c 2011-09-16 20:16:00.557565092 -0700 |
| 5329 | @@ -16,5 +16,5 @@ | 5332 | @@ -16,5 +16,5 @@ |
| 5330 | vst3q_lane_s16 (arg0_int16_t, arg1_int16x8x3_t, 1); | 5333 | vst3q_lane_s16 (arg0_int16_t, arg1_int16x8x3_t, 1); |
| 5331 | } | 5334 | } |
| @@ -5333,10 +5336,10 @@ | |||
| 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" } } */ | 5336 | -/* { 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" } } */ | 5337 | +/* { 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 } } */ | 5338 | /* { dg-final { cleanup-saved-temps } } */ |
| 5336 | 5339 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c | |
| 5337 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c' | 5340 | =================================================================== |
| 5338 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c 2010-05-24 18:36:31 +0000 | 5341 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5339 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c 2011-05-03 15:14:56 +0000 | 5342 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_lanes32.c 2011-09-16 20:16:00.557565092 -0700 |
| 5340 | @@ -16,5 +16,5 @@ | 5343 | @@ -16,5 +16,5 @@ |
| 5341 | vst3q_lane_s32 (arg0_int32_t, arg1_int32x4x3_t, 1); | 5344 | vst3q_lane_s32 (arg0_int32_t, arg1_int32x4x3_t, 1); |
| 5342 | } | 5345 | } |
| @@ -5344,10 +5347,10 @@ | |||
| 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" } } */ | 5347 | -/* { 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" } } */ | 5348 | +/* { 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 } } */ | 5349 | /* { dg-final { cleanup-saved-temps } } */ |
| 5347 | 5350 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c | |
| 5348 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c' | 5351 | =================================================================== |
| 5349 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c 2010-05-24 18:36:31 +0000 | 5352 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5350 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c 2011-05-03 15:14:56 +0000 | 5353 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu16.c 2011-09-16 20:16:00.557565092 -0700 |
| 5351 | @@ -16,5 +16,5 @@ | 5354 | @@ -16,5 +16,5 @@ |
| 5352 | vst3q_lane_u16 (arg0_uint16_t, arg1_uint16x8x3_t, 1); | 5355 | vst3q_lane_u16 (arg0_uint16_t, arg1_uint16x8x3_t, 1); |
| 5353 | } | 5356 | } |
| @@ -5355,10 +5358,10 @@ | |||
| 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" } } */ | 5358 | -/* { 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" } } */ | 5359 | +/* { 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 } } */ | 5360 | /* { dg-final { cleanup-saved-temps } } */ |
| 5358 | 5361 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c | |
| 5359 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c' | 5362 | =================================================================== |
| 5360 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c 2010-05-24 18:36:31 +0000 | 5363 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5361 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c 2011-05-03 15:14:56 +0000 | 5364 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Q_laneu32.c 2011-09-16 20:16:00.557565092 -0700 |
| 5362 | @@ -16,5 +16,5 @@ | 5365 | @@ -16,5 +16,5 @@ |
| 5363 | vst3q_lane_u32 (arg0_uint32_t, arg1_uint32x4x3_t, 1); | 5366 | vst3q_lane_u32 (arg0_uint32_t, arg1_uint32x4x3_t, 1); |
| 5364 | } | 5367 | } |
| @@ -5366,10 +5369,10 @@ | |||
| 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" } } */ | 5369 | -/* { 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" } } */ | 5370 | +/* { 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 } } */ | 5371 | /* { dg-final { cleanup-saved-temps } } */ |
| 5369 | 5372 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c | |
| 5370 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c' | 5373 | =================================================================== |
| 5371 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c 2010-05-24 18:36:31 +0000 | 5374 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5372 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c 2011-05-03 15:14:56 +0000 | 5375 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qf32.c 2011-09-16 20:16:00.557565092 -0700 |
| 5373 | @@ -16,6 +16,6 @@ | 5376 | @@ -16,6 +16,6 @@ |
| 5374 | vst3q_f32 (arg0_float32_t, arg1_float32x4x3_t); | 5377 | vst3q_f32 (arg0_float32_t, arg1_float32x4x3_t); |
| 5375 | } | 5378 | } |
| @@ -5379,10 +5382,10 @@ | |||
| 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" } } */ | 5382 | +/* { 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" } } */ | 5383 | +/* { 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 } } */ | 5384 | /* { dg-final { cleanup-saved-temps } } */ |
| 5382 | 5385 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c | |
| 5383 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c' | 5386 | =================================================================== |
| 5384 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c 2010-05-24 18:36:31 +0000 | 5387 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5385 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c 2011-05-03 15:14:56 +0000 | 5388 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qp16.c 2011-09-16 20:16:00.567565108 -0700 |
| 5386 | @@ -16,6 +16,6 @@ | 5389 | @@ -16,6 +16,6 @@ |
| 5387 | vst3q_p16 (arg0_poly16_t, arg1_poly16x8x3_t); | 5390 | vst3q_p16 (arg0_poly16_t, arg1_poly16x8x3_t); |
| 5388 | } | 5391 | } |
| @@ -5392,10 +5395,10 @@ | |||
| 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" } } */ | 5395 | +/* { 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" } } */ | 5396 | +/* { 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 } } */ | 5397 | /* { dg-final { cleanup-saved-temps } } */ |
| 5395 | 5398 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c | |
| 5396 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c' | 5399 | =================================================================== |
| 5397 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c 2010-05-24 18:36:31 +0000 | 5400 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5398 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c 2011-05-03 15:14:56 +0000 | 5401 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qp8.c 2011-09-16 20:16:00.567565108 -0700 |
| 5399 | @@ -16,6 +16,6 @@ | 5402 | @@ -16,6 +16,6 @@ |
| 5400 | vst3q_p8 (arg0_poly8_t, arg1_poly8x16x3_t); | 5403 | vst3q_p8 (arg0_poly8_t, arg1_poly8x16x3_t); |
| 5401 | } | 5404 | } |
| @@ -5405,10 +5408,10 @@ | |||
| 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" } } */ | 5408 | +/* { 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" } } */ | 5409 | +/* { 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 } } */ | 5410 | /* { dg-final { cleanup-saved-temps } } */ |
| 5408 | 5411 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c | |
| 5409 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c' | 5412 | =================================================================== |
| 5410 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c 2010-05-24 18:36:31 +0000 | 5413 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5411 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c 2011-05-03 15:14:56 +0000 | 5414 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qs16.c 2011-09-16 20:16:00.567565108 -0700 |
| 5412 | @@ -16,6 +16,6 @@ | 5415 | @@ -16,6 +16,6 @@ |
| 5413 | vst3q_s16 (arg0_int16_t, arg1_int16x8x3_t); | 5416 | vst3q_s16 (arg0_int16_t, arg1_int16x8x3_t); |
| 5414 | } | 5417 | } |
| @@ -5418,10 +5421,10 @@ | |||
| 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" } } */ | 5421 | +/* { 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" } } */ | 5422 | +/* { 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 } } */ | 5423 | /* { dg-final { cleanup-saved-temps } } */ |
| 5421 | 5424 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c | |
| 5422 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c' | 5425 | =================================================================== |
| 5423 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c 2010-05-24 18:36:31 +0000 | 5426 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5424 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c 2011-05-03 15:14:56 +0000 | 5427 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qs32.c 2011-09-16 20:16:00.567565108 -0700 |
| 5425 | @@ -16,6 +16,6 @@ | 5428 | @@ -16,6 +16,6 @@ |
| 5426 | vst3q_s32 (arg0_int32_t, arg1_int32x4x3_t); | 5429 | vst3q_s32 (arg0_int32_t, arg1_int32x4x3_t); |
| 5427 | } | 5430 | } |
| @@ -5431,10 +5434,10 @@ | |||
| 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" } } */ | 5434 | +/* { 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" } } */ | 5435 | +/* { 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 } } */ | 5436 | /* { dg-final { cleanup-saved-temps } } */ |
| 5434 | 5437 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c | |
| 5435 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c' | 5438 | =================================================================== |
| 5436 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c 2010-05-24 18:36:31 +0000 | 5439 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5437 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c 2011-05-03 15:14:56 +0000 | 5440 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qs8.c 2011-09-16 20:16:00.567565108 -0700 |
| 5438 | @@ -16,6 +16,6 @@ | 5441 | @@ -16,6 +16,6 @@ |
| 5439 | vst3q_s8 (arg0_int8_t, arg1_int8x16x3_t); | 5442 | vst3q_s8 (arg0_int8_t, arg1_int8x16x3_t); |
| 5440 | } | 5443 | } |
| @@ -5444,10 +5447,10 @@ | |||
| 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" } } */ | 5447 | +/* { 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" } } */ | 5448 | +/* { 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 } } */ | 5449 | /* { dg-final { cleanup-saved-temps } } */ |
| 5447 | 5450 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c | |
| 5448 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c' | 5451 | =================================================================== |
| 5449 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c 2010-05-24 18:36:31 +0000 | 5452 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5450 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c 2011-05-03 15:14:56 +0000 | 5453 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qu16.c 2011-09-16 20:16:00.567565108 -0700 |
| 5451 | @@ -16,6 +16,6 @@ | 5454 | @@ -16,6 +16,6 @@ |
| 5452 | vst3q_u16 (arg0_uint16_t, arg1_uint16x8x3_t); | 5455 | vst3q_u16 (arg0_uint16_t, arg1_uint16x8x3_t); |
| 5453 | } | 5456 | } |
| @@ -5457,10 +5460,10 @@ | |||
| 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" } } */ | 5460 | +/* { 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" } } */ | 5461 | +/* { 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 } } */ | 5462 | /* { dg-final { cleanup-saved-temps } } */ |
| 5460 | 5463 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c | |
| 5461 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c' | 5464 | =================================================================== |
| 5462 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c 2010-05-24 18:36:31 +0000 | 5465 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5463 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c 2011-05-03 15:14:56 +0000 | 5466 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qu32.c 2011-09-16 20:16:00.567565108 -0700 |
| 5464 | @@ -16,6 +16,6 @@ | 5467 | @@ -16,6 +16,6 @@ |
| 5465 | vst3q_u32 (arg0_uint32_t, arg1_uint32x4x3_t); | 5468 | vst3q_u32 (arg0_uint32_t, arg1_uint32x4x3_t); |
| 5466 | } | 5469 | } |
| @@ -5470,10 +5473,10 @@ | |||
| 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" } } */ | 5473 | +/* { 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" } } */ | 5474 | +/* { 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 } } */ | 5475 | /* { dg-final { cleanup-saved-temps } } */ |
| 5473 | 5476 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c | |
| 5474 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c' | 5477 | =================================================================== |
| 5475 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c 2010-05-24 18:36:31 +0000 | 5478 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5476 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c 2011-05-03 15:14:56 +0000 | 5479 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3Qu8.c 2011-09-16 20:16:00.567565108 -0700 |
| 5477 | @@ -16,6 +16,6 @@ | 5480 | @@ -16,6 +16,6 @@ |
| 5478 | vst3q_u8 (arg0_uint8_t, arg1_uint8x16x3_t); | 5481 | vst3q_u8 (arg0_uint8_t, arg1_uint8x16x3_t); |
| 5479 | } | 5482 | } |
| @@ -5483,10 +5486,10 @@ | |||
| 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" } } */ | 5486 | +/* { 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" } } */ | 5487 | +/* { 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 } } */ | 5488 | /* { dg-final { cleanup-saved-temps } } */ |
| 5486 | 5489 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c | |
| 5487 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c' | 5490 | =================================================================== |
| 5488 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c 2010-05-24 18:36:31 +0000 | 5491 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5489 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c 2011-05-03 15:14:56 +0000 | 5492 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanef32.c 2011-09-16 20:16:00.567565108 -0700 |
| 5490 | @@ -16,5 +16,5 @@ | 5493 | @@ -16,5 +16,5 @@ |
| 5491 | vst3_lane_f32 (arg0_float32_t, arg1_float32x2x3_t, 1); | 5494 | vst3_lane_f32 (arg0_float32_t, arg1_float32x2x3_t, 1); |
| 5492 | } | 5495 | } |
| @@ -5494,10 +5497,10 @@ | |||
| 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" } } */ | 5497 | -/* { 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" } } */ | 5498 | +/* { 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 } } */ | 5499 | /* { dg-final { cleanup-saved-temps } } */ |
| 5497 | 5500 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c | |
| 5498 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c' | 5501 | =================================================================== |
| 5499 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c 2010-05-24 18:36:31 +0000 | 5502 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5500 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c 2011-05-03 15:14:56 +0000 | 5503 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanep16.c 2011-09-16 20:16:00.577565135 -0700 |
| 5501 | @@ -16,5 +16,5 @@ | 5504 | @@ -16,5 +16,5 @@ |
| 5502 | vst3_lane_p16 (arg0_poly16_t, arg1_poly16x4x3_t, 1); | 5505 | vst3_lane_p16 (arg0_poly16_t, arg1_poly16x4x3_t, 1); |
| 5503 | } | 5506 | } |
| @@ -5505,10 +5508,10 @@ | |||
| 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" } } */ | 5508 | -/* { 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" } } */ | 5509 | +/* { 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 } } */ | 5510 | /* { dg-final { cleanup-saved-temps } } */ |
| 5508 | 5511 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c | |
| 5509 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c' | 5512 | =================================================================== |
| 5510 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c 2010-05-24 18:36:31 +0000 | 5513 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5511 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c 2011-05-03 15:14:56 +0000 | 5514 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanep8.c 2011-09-16 20:16:00.577565135 -0700 |
| 5512 | @@ -16,5 +16,5 @@ | 5515 | @@ -16,5 +16,5 @@ |
| 5513 | vst3_lane_p8 (arg0_poly8_t, arg1_poly8x8x3_t, 1); | 5516 | vst3_lane_p8 (arg0_poly8_t, arg1_poly8x8x3_t, 1); |
| 5514 | } | 5517 | } |
| @@ -5516,10 +5519,10 @@ | |||
| 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" } } */ | 5519 | -/* { 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" } } */ | 5520 | +/* { 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 } } */ | 5521 | /* { dg-final { cleanup-saved-temps } } */ |
| 5519 | 5522 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c | |
| 5520 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c' | 5523 | =================================================================== |
| 5521 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c 2010-05-24 18:36:31 +0000 | 5524 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5522 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c 2011-05-03 15:14:56 +0000 | 5525 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanes16.c 2011-09-16 20:16:00.577565135 -0700 |
| 5523 | @@ -16,5 +16,5 @@ | 5526 | @@ -16,5 +16,5 @@ |
| 5524 | vst3_lane_s16 (arg0_int16_t, arg1_int16x4x3_t, 1); | 5527 | vst3_lane_s16 (arg0_int16_t, arg1_int16x4x3_t, 1); |
| 5525 | } | 5528 | } |
| @@ -5527,10 +5530,10 @@ | |||
| 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" } } */ | 5530 | -/* { 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" } } */ | 5531 | +/* { 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 } } */ | 5532 | /* { dg-final { cleanup-saved-temps } } */ |
| 5530 | 5533 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c | |
| 5531 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c' | 5534 | =================================================================== |
| 5532 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c 2010-05-24 18:36:31 +0000 | 5535 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5533 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c 2011-05-03 15:14:56 +0000 | 5536 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanes32.c 2011-09-16 20:16:00.577565135 -0700 |
| 5534 | @@ -16,5 +16,5 @@ | 5537 | @@ -16,5 +16,5 @@ |
| 5535 | vst3_lane_s32 (arg0_int32_t, arg1_int32x2x3_t, 1); | 5538 | vst3_lane_s32 (arg0_int32_t, arg1_int32x2x3_t, 1); |
| 5536 | } | 5539 | } |
| @@ -5538,10 +5541,10 @@ | |||
| 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" } } */ | 5541 | -/* { 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" } } */ | 5542 | +/* { 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 } } */ | 5543 | /* { dg-final { cleanup-saved-temps } } */ |
| 5541 | 5544 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c | |
| 5542 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c' | 5545 | =================================================================== |
| 5543 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c 2010-05-24 18:36:31 +0000 | 5546 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5544 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c 2011-05-03 15:14:56 +0000 | 5547 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_lanes8.c 2011-09-16 20:16:00.577565135 -0700 |
| 5545 | @@ -16,5 +16,5 @@ | 5548 | @@ -16,5 +16,5 @@ |
| 5546 | vst3_lane_s8 (arg0_int8_t, arg1_int8x8x3_t, 1); | 5549 | vst3_lane_s8 (arg0_int8_t, arg1_int8x8x3_t, 1); |
| 5547 | } | 5550 | } |
| @@ -5549,10 +5552,10 @@ | |||
| 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" } } */ | 5552 | -/* { 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" } } */ | 5553 | +/* { 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 } } */ | 5554 | /* { dg-final { cleanup-saved-temps } } */ |
| 5552 | 5555 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c | |
| 5553 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c' | 5556 | =================================================================== |
| 5554 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c 2010-05-24 18:36:31 +0000 | 5557 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5555 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c 2011-05-03 15:14:56 +0000 | 5558 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_laneu16.c 2011-09-16 20:16:00.577565135 -0700 |
| 5556 | @@ -16,5 +16,5 @@ | 5559 | @@ -16,5 +16,5 @@ |
| 5557 | vst3_lane_u16 (arg0_uint16_t, arg1_uint16x4x3_t, 1); | 5560 | vst3_lane_u16 (arg0_uint16_t, arg1_uint16x4x3_t, 1); |
| 5558 | } | 5561 | } |
| @@ -5560,10 +5563,10 @@ | |||
| 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" } } */ | 5563 | -/* { 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" } } */ | 5564 | +/* { 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 } } */ | 5565 | /* { dg-final { cleanup-saved-temps } } */ |
| 5563 | 5566 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c | |
| 5564 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c' | 5567 | =================================================================== |
| 5565 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c 2010-05-24 18:36:31 +0000 | 5568 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5566 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c 2011-05-03 15:14:56 +0000 | 5569 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_laneu32.c 2011-09-16 20:16:00.577565135 -0700 |
| 5567 | @@ -16,5 +16,5 @@ | 5570 | @@ -16,5 +16,5 @@ |
| 5568 | vst3_lane_u32 (arg0_uint32_t, arg1_uint32x2x3_t, 1); | 5571 | vst3_lane_u32 (arg0_uint32_t, arg1_uint32x2x3_t, 1); |
| 5569 | } | 5572 | } |
| @@ -5571,10 +5574,10 @@ | |||
| 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" } } */ | 5574 | -/* { 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" } } */ | 5575 | +/* { 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 } } */ | 5576 | /* { dg-final { cleanup-saved-temps } } */ |
| 5574 | 5577 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c | |
| 5575 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c' | 5578 | =================================================================== |
| 5576 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c 2010-05-24 18:36:31 +0000 | 5579 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5577 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c 2011-05-03 15:14:56 +0000 | 5580 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3_laneu8.c 2011-09-16 20:16:00.587565144 -0700 |
| 5578 | @@ -16,5 +16,5 @@ | 5581 | @@ -16,5 +16,5 @@ |
| 5579 | vst3_lane_u8 (arg0_uint8_t, arg1_uint8x8x3_t, 1); | 5582 | vst3_lane_u8 (arg0_uint8_t, arg1_uint8x8x3_t, 1); |
| 5580 | } | 5583 | } |
| @@ -5582,10 +5585,10 @@ | |||
| 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" } } */ | 5585 | -/* { 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" } } */ | 5586 | +/* { 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 } } */ | 5587 | /* { dg-final { cleanup-saved-temps } } */ |
| 5585 | 5588 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3f32.c | |
| 5586 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3f32.c' | 5589 | =================================================================== |
| 5587 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3f32.c 2010-05-24 18:36:31 +0000 | 5590 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5588 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3f32.c 2011-05-03 15:14:56 +0000 | 5591 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3f32.c 2011-09-16 20:16:00.587565144 -0700 |
| 5589 | @@ -16,5 +16,5 @@ | 5592 | @@ -16,5 +16,5 @@ |
| 5590 | vst3_f32 (arg0_float32_t, arg1_float32x2x3_t); | 5593 | vst3_f32 (arg0_float32_t, arg1_float32x2x3_t); |
| 5591 | } | 5594 | } |
| @@ -5593,10 +5596,10 @@ | |||
| 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" } } */ | 5596 | -/* { 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" } } */ | 5597 | +/* { 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 } } */ | 5598 | /* { dg-final { cleanup-saved-temps } } */ |
| 5596 | 5599 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3p16.c | |
| 5597 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3p16.c' | 5600 | =================================================================== |
| 5598 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3p16.c 2010-05-24 18:36:31 +0000 | 5601 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5599 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3p16.c 2011-05-03 15:14:56 +0000 | 5602 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3p16.c 2011-09-16 20:16:00.587565144 -0700 |
| 5600 | @@ -16,5 +16,5 @@ | 5603 | @@ -16,5 +16,5 @@ |
| 5601 | vst3_p16 (arg0_poly16_t, arg1_poly16x4x3_t); | 5604 | vst3_p16 (arg0_poly16_t, arg1_poly16x4x3_t); |
| 5602 | } | 5605 | } |
| @@ -5604,10 +5607,10 @@ | |||
| 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" } } */ | 5607 | -/* { 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" } } */ | 5608 | +/* { 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 } } */ | 5609 | /* { dg-final { cleanup-saved-temps } } */ |
| 5607 | 5610 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3p8.c | |
| 5608 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3p8.c' | 5611 | =================================================================== |
| 5609 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3p8.c 2010-05-24 18:36:31 +0000 | 5612 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5610 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3p8.c 2011-05-03 15:14:56 +0000 | 5613 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3p8.c 2011-09-16 20:16:00.587565144 -0700 |
| 5611 | @@ -16,5 +16,5 @@ | 5614 | @@ -16,5 +16,5 @@ |
| 5612 | vst3_p8 (arg0_poly8_t, arg1_poly8x8x3_t); | 5615 | vst3_p8 (arg0_poly8_t, arg1_poly8x8x3_t); |
| 5613 | } | 5616 | } |
| @@ -5615,10 +5618,10 @@ | |||
| 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" } } */ | 5618 | -/* { 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" } } */ | 5619 | +/* { 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 } } */ | 5620 | /* { dg-final { cleanup-saved-temps } } */ |
| 5618 | 5621 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s16.c | |
| 5619 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s16.c' | 5622 | =================================================================== |
| 5620 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3s16.c 2010-05-24 18:36:31 +0000 | 5623 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5621 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3s16.c 2011-05-03 15:14:56 +0000 | 5624 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s16.c 2011-09-16 20:16:00.587565144 -0700 |
| 5622 | @@ -16,5 +16,5 @@ | 5625 | @@ -16,5 +16,5 @@ |
| 5623 | vst3_s16 (arg0_int16_t, arg1_int16x4x3_t); | 5626 | vst3_s16 (arg0_int16_t, arg1_int16x4x3_t); |
| 5624 | } | 5627 | } |
| @@ -5626,10 +5629,10 @@ | |||
| 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" } } */ | 5629 | -/* { 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" } } */ | 5630 | +/* { 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 } } */ | 5631 | /* { dg-final { cleanup-saved-temps } } */ |
| 5629 | 5632 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s32.c | |
| 5630 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s32.c' | 5633 | =================================================================== |
| 5631 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3s32.c 2010-05-24 18:36:31 +0000 | 5634 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5632 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3s32.c 2011-05-03 15:14:56 +0000 | 5635 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s32.c 2011-09-16 20:16:00.587565144 -0700 |
| 5633 | @@ -16,5 +16,5 @@ | 5636 | @@ -16,5 +16,5 @@ |
| 5634 | vst3_s32 (arg0_int32_t, arg1_int32x2x3_t); | 5637 | vst3_s32 (arg0_int32_t, arg1_int32x2x3_t); |
| 5635 | } | 5638 | } |
| @@ -5637,10 +5640,10 @@ | |||
| 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" } } */ | 5640 | -/* { 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" } } */ | 5641 | +/* { 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 } } */ | 5642 | /* { dg-final { cleanup-saved-temps } } */ |
| 5640 | 5643 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s64.c | |
| 5641 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s64.c' | 5644 | =================================================================== |
| 5642 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3s64.c 2010-05-24 18:36:31 +0000 | 5645 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 5643 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3s64.c 2011-05-03 15:14:56 +0000 | 5646 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s64.c 2011-09-16 20:16:00.587565144 -0700 |
| 5644 | @@ -16,5 +16,5 @@ | 5647 | @@ -16,5 +16,5 @@ |
| 5645 | vst3_s64 (arg0_int64_t, arg1_int64x1x3_t); | 5648 | vst3_s64 (arg0_int64_t, arg1_int64x1x3_t); |
| 5646 | } | 5649 | } |
| @@ -5648,10 +5651,10 @@ | |||
| 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" } } */ | 5651 | -/* { 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" } } */ | 5652 | +/* { 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 } } */ | 5653 | /* { dg-final { cleanup-saved-temps } } */ |
| 5651 | 5654 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s8.c | |
| 5652 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3s8.c' | 5655 | =================================================================== |
| 5653 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3s8.c 2010-05-24 18:36:31 +0000 | 5656 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5654 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3s8.c 2011-05-03 15:14:56 +0000 | 5657 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3s8.c 2011-09-16 20:16:00.587565144 -0700 |
| 5655 | @@ -16,5 +16,5 @@ | 5658 | @@ -16,5 +16,5 @@ |
| 5656 | vst3_s8 (arg0_int8_t, arg1_int8x8x3_t); | 5659 | vst3_s8 (arg0_int8_t, arg1_int8x8x3_t); |
| 5657 | } | 5660 | } |
| @@ -5659,10 +5662,10 @@ | |||
| 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" } } */ | 5662 | -/* { 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" } } */ | 5663 | +/* { 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 } } */ | 5664 | /* { dg-final { cleanup-saved-temps } } */ |
| 5662 | 5665 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u16.c | |
| 5663 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u16.c' | 5666 | =================================================================== |
| 5664 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3u16.c 2010-05-24 18:36:31 +0000 | 5667 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5665 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3u16.c 2011-05-03 15:14:56 +0000 | 5668 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u16.c 2011-09-16 20:16:00.587565144 -0700 |
| 5666 | @@ -16,5 +16,5 @@ | 5669 | @@ -16,5 +16,5 @@ |
| 5667 | vst3_u16 (arg0_uint16_t, arg1_uint16x4x3_t); | 5670 | vst3_u16 (arg0_uint16_t, arg1_uint16x4x3_t); |
| 5668 | } | 5671 | } |
| @@ -5670,10 +5673,10 @@ | |||
| 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" } } */ | 5673 | -/* { 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" } } */ | 5674 | +/* { 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 } } */ | 5675 | /* { dg-final { cleanup-saved-temps } } */ |
| 5673 | 5676 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u32.c | |
| 5674 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u32.c' | 5677 | =================================================================== |
| 5675 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3u32.c 2010-05-24 18:36:31 +0000 | 5678 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5676 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3u32.c 2011-05-03 15:14:56 +0000 | 5679 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u32.c 2011-09-16 20:16:00.587565144 -0700 |
| 5677 | @@ -16,5 +16,5 @@ | 5680 | @@ -16,5 +16,5 @@ |
| 5678 | vst3_u32 (arg0_uint32_t, arg1_uint32x2x3_t); | 5681 | vst3_u32 (arg0_uint32_t, arg1_uint32x2x3_t); |
| 5679 | } | 5682 | } |
| @@ -5681,10 +5684,10 @@ | |||
| 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" } } */ | 5684 | -/* { 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" } } */ | 5685 | +/* { 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 } } */ | 5686 | /* { dg-final { cleanup-saved-temps } } */ |
| 5684 | 5687 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u64.c | |
| 5685 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u64.c' | 5688 | =================================================================== |
| 5686 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3u64.c 2010-05-24 18:36:31 +0000 | 5689 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 5687 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3u64.c 2011-05-03 15:14:56 +0000 | 5690 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u64.c 2011-09-16 20:16:00.587565144 -0700 |
| 5688 | @@ -16,5 +16,5 @@ | 5691 | @@ -16,5 +16,5 @@ |
| 5689 | vst3_u64 (arg0_uint64_t, arg1_uint64x1x3_t); | 5692 | vst3_u64 (arg0_uint64_t, arg1_uint64x1x3_t); |
| 5690 | } | 5693 | } |
| @@ -5692,10 +5695,10 @@ | |||
| 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" } } */ | 5695 | -/* { 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" } } */ | 5696 | +/* { 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 } } */ | 5697 | /* { dg-final { cleanup-saved-temps } } */ |
| 5695 | 5698 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u8.c | |
| 5696 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst3u8.c' | 5699 | =================================================================== |
| 5697 | --- old/gcc/testsuite/gcc.target/arm/neon/vst3u8.c 2010-05-24 18:36:31 +0000 | 5700 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst3u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5698 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst3u8.c 2011-05-03 15:14:56 +0000 | 5701 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst3u8.c 2011-09-16 20:16:00.587565144 -0700 |
| 5699 | @@ -16,5 +16,5 @@ | 5702 | @@ -16,5 +16,5 @@ |
| 5700 | vst3_u8 (arg0_uint8_t, arg1_uint8x8x3_t); | 5703 | vst3_u8 (arg0_uint8_t, arg1_uint8x8x3_t); |
| 5701 | } | 5704 | } |
| @@ -5703,10 +5706,10 @@ | |||
| 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" } } */ | 5706 | -/* { 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" } } */ | 5707 | +/* { 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 } } */ | 5708 | /* { dg-final { cleanup-saved-temps } } */ |
| 5706 | 5709 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c | |
| 5707 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c' | 5710 | =================================================================== |
| 5708 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c 2010-05-24 18:36:31 +0000 | 5711 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5709 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c 2011-05-03 15:14:56 +0000 | 5712 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanef32.c 2011-09-16 20:16:00.597565156 -0700 |
| 5710 | @@ -16,5 +16,5 @@ | 5713 | @@ -16,5 +16,5 @@ |
| 5711 | vst4q_lane_f32 (arg0_float32_t, arg1_float32x4x4_t, 1); | 5714 | vst4q_lane_f32 (arg0_float32_t, arg1_float32x4x4_t, 1); |
| 5712 | } | 5715 | } |
| @@ -5714,10 +5717,10 @@ | |||
| 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" } } */ | 5717 | -/* { 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" } } */ | 5718 | +/* { 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 } } */ | 5719 | /* { dg-final { cleanup-saved-temps } } */ |
| 5717 | 5720 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c | |
| 5718 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c' | 5721 | =================================================================== |
| 5719 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c 2010-05-24 18:36:31 +0000 | 5722 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5720 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c 2011-05-03 15:14:56 +0000 | 5723 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanep16.c 2011-09-16 20:16:00.597565156 -0700 |
| 5721 | @@ -16,5 +16,5 @@ | 5724 | @@ -16,5 +16,5 @@ |
| 5722 | vst4q_lane_p16 (arg0_poly16_t, arg1_poly16x8x4_t, 1); | 5725 | vst4q_lane_p16 (arg0_poly16_t, arg1_poly16x8x4_t, 1); |
| 5723 | } | 5726 | } |
| @@ -5725,10 +5728,10 @@ | |||
| 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" } } */ | 5728 | -/* { 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" } } */ | 5729 | +/* { 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 } } */ | 5730 | /* { dg-final { cleanup-saved-temps } } */ |
| 5728 | 5731 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c | |
| 5729 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c' | 5732 | =================================================================== |
| 5730 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c 2010-05-24 18:36:31 +0000 | 5733 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5731 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c 2011-05-03 15:14:56 +0000 | 5734 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes16.c 2011-09-16 20:16:00.597565156 -0700 |
| 5732 | @@ -16,5 +16,5 @@ | 5735 | @@ -16,5 +16,5 @@ |
| 5733 | vst4q_lane_s16 (arg0_int16_t, arg1_int16x8x4_t, 1); | 5736 | vst4q_lane_s16 (arg0_int16_t, arg1_int16x8x4_t, 1); |
| 5734 | } | 5737 | } |
| @@ -5736,10 +5739,10 @@ | |||
| 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" } } */ | 5739 | -/* { 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" } } */ | 5740 | +/* { 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 } } */ | 5741 | /* { dg-final { cleanup-saved-temps } } */ |
| 5739 | 5742 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c | |
| 5740 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c' | 5743 | =================================================================== |
| 5741 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c 2010-05-24 18:36:31 +0000 | 5744 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5742 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c 2011-05-03 15:14:56 +0000 | 5745 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_lanes32.c 2011-09-16 20:16:00.597565156 -0700 |
| 5743 | @@ -16,5 +16,5 @@ | 5746 | @@ -16,5 +16,5 @@ |
| 5744 | vst4q_lane_s32 (arg0_int32_t, arg1_int32x4x4_t, 1); | 5747 | vst4q_lane_s32 (arg0_int32_t, arg1_int32x4x4_t, 1); |
| 5745 | } | 5748 | } |
| @@ -5747,10 +5750,10 @@ | |||
| 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" } } */ | 5750 | -/* { 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" } } */ | 5751 | +/* { 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 } } */ | 5752 | /* { dg-final { cleanup-saved-temps } } */ |
| 5750 | 5753 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c | |
| 5751 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c' | 5754 | =================================================================== |
| 5752 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c 2010-05-24 18:36:31 +0000 | 5755 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5753 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c 2011-05-03 15:14:56 +0000 | 5756 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu16.c 2011-09-16 20:16:00.597565156 -0700 |
| 5754 | @@ -16,5 +16,5 @@ | 5757 | @@ -16,5 +16,5 @@ |
| 5755 | vst4q_lane_u16 (arg0_uint16_t, arg1_uint16x8x4_t, 1); | 5758 | vst4q_lane_u16 (arg0_uint16_t, arg1_uint16x8x4_t, 1); |
| 5756 | } | 5759 | } |
| @@ -5758,10 +5761,10 @@ | |||
| 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" } } */ | 5761 | -/* { 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" } } */ | 5762 | +/* { 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 } } */ | 5763 | /* { dg-final { cleanup-saved-temps } } */ |
| 5761 | 5764 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c | |
| 5762 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c' | 5765 | =================================================================== |
| 5763 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c 2010-05-24 18:36:31 +0000 | 5766 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5764 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c 2011-05-03 15:14:56 +0000 | 5767 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Q_laneu32.c 2011-09-16 20:16:00.597565156 -0700 |
| 5765 | @@ -16,5 +16,5 @@ | 5768 | @@ -16,5 +16,5 @@ |
| 5766 | vst4q_lane_u32 (arg0_uint32_t, arg1_uint32x4x4_t, 1); | 5769 | vst4q_lane_u32 (arg0_uint32_t, arg1_uint32x4x4_t, 1); |
| 5767 | } | 5770 | } |
| @@ -5769,10 +5772,10 @@ | |||
| 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" } } */ | 5772 | -/* { 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" } } */ | 5773 | +/* { 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 } } */ | 5774 | /* { dg-final { cleanup-saved-temps } } */ |
| 5772 | 5775 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c | |
| 5773 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c' | 5776 | =================================================================== |
| 5774 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c 2010-05-24 18:36:31 +0000 | 5777 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5775 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c 2011-05-03 15:14:56 +0000 | 5778 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qf32.c 2011-09-16 20:16:00.597565156 -0700 |
| 5776 | @@ -16,6 +16,6 @@ | 5779 | @@ -16,6 +16,6 @@ |
| 5777 | vst4q_f32 (arg0_float32_t, arg1_float32x4x4_t); | 5780 | vst4q_f32 (arg0_float32_t, arg1_float32x4x4_t); |
| 5778 | } | 5781 | } |
| @@ -5782,10 +5785,10 @@ | |||
| 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" } } */ | 5785 | +/* { 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" } } */ | 5786 | +/* { 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 } } */ | 5787 | /* { dg-final { cleanup-saved-temps } } */ |
| 5785 | 5788 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c | |
| 5786 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c' | 5789 | =================================================================== |
| 5787 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c 2010-05-24 18:36:31 +0000 | 5790 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5788 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c 2011-05-03 15:14:56 +0000 | 5791 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qp16.c 2011-09-16 20:16:00.597565156 -0700 |
| 5789 | @@ -16,6 +16,6 @@ | 5792 | @@ -16,6 +16,6 @@ |
| 5790 | vst4q_p16 (arg0_poly16_t, arg1_poly16x8x4_t); | 5793 | vst4q_p16 (arg0_poly16_t, arg1_poly16x8x4_t); |
| 5791 | } | 5794 | } |
| @@ -5795,10 +5798,10 @@ | |||
| 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" } } */ | 5798 | +/* { 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" } } */ | 5799 | +/* { 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 } } */ | 5800 | /* { dg-final { cleanup-saved-temps } } */ |
| 5798 | 5801 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c | |
| 5799 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c' | 5802 | =================================================================== |
| 5800 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c 2010-05-24 18:36:31 +0000 | 5803 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5801 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c 2011-05-03 15:14:56 +0000 | 5804 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qp8.c 2011-09-16 20:16:00.597565156 -0700 |
| 5802 | @@ -16,6 +16,6 @@ | 5805 | @@ -16,6 +16,6 @@ |
| 5803 | vst4q_p8 (arg0_poly8_t, arg1_poly8x16x4_t); | 5806 | vst4q_p8 (arg0_poly8_t, arg1_poly8x16x4_t); |
| 5804 | } | 5807 | } |
| @@ -5808,10 +5811,10 @@ | |||
| 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" } } */ | 5811 | +/* { 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" } } */ | 5812 | +/* { 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 } } */ | 5813 | /* { dg-final { cleanup-saved-temps } } */ |
| 5811 | 5814 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c | |
| 5812 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c' | 5815 | =================================================================== |
| 5813 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c 2010-05-24 18:36:31 +0000 | 5816 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5814 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c 2011-05-03 15:14:56 +0000 | 5817 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qs16.c 2011-09-16 20:16:00.597565156 -0700 |
| 5815 | @@ -16,6 +16,6 @@ | 5818 | @@ -16,6 +16,6 @@ |
| 5816 | vst4q_s16 (arg0_int16_t, arg1_int16x8x4_t); | 5819 | vst4q_s16 (arg0_int16_t, arg1_int16x8x4_t); |
| 5817 | } | 5820 | } |
| @@ -5821,10 +5824,10 @@ | |||
| 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" } } */ | 5824 | +/* { 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" } } */ | 5825 | +/* { 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 } } */ | 5826 | /* { dg-final { cleanup-saved-temps } } */ |
| 5824 | 5827 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c | |
| 5825 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c' | 5828 | =================================================================== |
| 5826 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c 2010-05-24 18:36:31 +0000 | 5829 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5827 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c 2011-05-03 15:14:56 +0000 | 5830 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qs32.c 2011-09-16 20:16:00.597565156 -0700 |
| 5828 | @@ -16,6 +16,6 @@ | 5831 | @@ -16,6 +16,6 @@ |
| 5829 | vst4q_s32 (arg0_int32_t, arg1_int32x4x4_t); | 5832 | vst4q_s32 (arg0_int32_t, arg1_int32x4x4_t); |
| 5830 | } | 5833 | } |
| @@ -5834,10 +5837,10 @@ | |||
| 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" } } */ | 5837 | +/* { 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" } } */ | 5838 | +/* { 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 } } */ | 5839 | /* { dg-final { cleanup-saved-temps } } */ |
| 5837 | 5840 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c | |
| 5838 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c' | 5841 | =================================================================== |
| 5839 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c 2010-05-24 18:36:31 +0000 | 5842 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5840 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c 2011-05-03 15:14:56 +0000 | 5843 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qs8.c 2011-09-16 20:16:00.607565171 -0700 |
| 5841 | @@ -16,6 +16,6 @@ | 5844 | @@ -16,6 +16,6 @@ |
| 5842 | vst4q_s8 (arg0_int8_t, arg1_int8x16x4_t); | 5845 | vst4q_s8 (arg0_int8_t, arg1_int8x16x4_t); |
| 5843 | } | 5846 | } |
| @@ -5847,10 +5850,10 @@ | |||
| 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" } } */ | 5850 | +/* { 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" } } */ | 5851 | +/* { 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 } } */ | 5852 | /* { dg-final { cleanup-saved-temps } } */ |
| 5850 | 5853 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c | |
| 5851 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c' | 5854 | =================================================================== |
| 5852 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c 2010-05-24 18:36:31 +0000 | 5855 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5853 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c 2011-05-03 15:14:56 +0000 | 5856 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qu16.c 2011-09-16 20:16:00.607565171 -0700 |
| 5854 | @@ -16,6 +16,6 @@ | 5857 | @@ -16,6 +16,6 @@ |
| 5855 | vst4q_u16 (arg0_uint16_t, arg1_uint16x8x4_t); | 5858 | vst4q_u16 (arg0_uint16_t, arg1_uint16x8x4_t); |
| 5856 | } | 5859 | } |
| @@ -5860,10 +5863,10 @@ | |||
| 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" } } */ | 5863 | +/* { 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" } } */ | 5864 | +/* { 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 } } */ | 5865 | /* { dg-final { cleanup-saved-temps } } */ |
| 5863 | 5866 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c | |
| 5864 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c' | 5867 | =================================================================== |
| 5865 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c 2010-05-24 18:36:31 +0000 | 5868 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5866 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c 2011-05-03 15:14:56 +0000 | 5869 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qu32.c 2011-09-16 20:16:00.607565171 -0700 |
| 5867 | @@ -16,6 +16,6 @@ | 5870 | @@ -16,6 +16,6 @@ |
| 5868 | vst4q_u32 (arg0_uint32_t, arg1_uint32x4x4_t); | 5871 | vst4q_u32 (arg0_uint32_t, arg1_uint32x4x4_t); |
| 5869 | } | 5872 | } |
| @@ -5873,10 +5876,10 @@ | |||
| 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" } } */ | 5876 | +/* { 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" } } */ | 5877 | +/* { 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 } } */ | 5878 | /* { dg-final { cleanup-saved-temps } } */ |
| 5876 | 5879 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c | |
| 5877 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c' | 5880 | =================================================================== |
| 5878 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c 2010-05-24 18:36:31 +0000 | 5881 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5879 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c 2011-05-03 15:14:56 +0000 | 5882 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4Qu8.c 2011-09-16 20:16:00.607565171 -0700 |
| 5880 | @@ -16,6 +16,6 @@ | 5883 | @@ -16,6 +16,6 @@ |
| 5881 | vst4q_u8 (arg0_uint8_t, arg1_uint8x16x4_t); | 5884 | vst4q_u8 (arg0_uint8_t, arg1_uint8x16x4_t); |
| 5882 | } | 5885 | } |
| @@ -5886,10 +5889,10 @@ | |||
| 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" } } */ | 5889 | +/* { 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" } } */ | 5890 | +/* { 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 } } */ | 5891 | /* { dg-final { cleanup-saved-temps } } */ |
| 5889 | 5892 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c | |
| 5890 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c' | 5893 | =================================================================== |
| 5891 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c 2010-05-24 18:36:31 +0000 | 5894 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5892 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c 2011-05-03 15:14:56 +0000 | 5895 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanef32.c 2011-09-16 20:16:00.607565171 -0700 |
| 5893 | @@ -16,5 +16,5 @@ | 5896 | @@ -16,5 +16,5 @@ |
| 5894 | vst4_lane_f32 (arg0_float32_t, arg1_float32x2x4_t, 1); | 5897 | vst4_lane_f32 (arg0_float32_t, arg1_float32x2x4_t, 1); |
| 5895 | } | 5898 | } |
| @@ -5897,10 +5900,10 @@ | |||
| 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" } } */ | 5900 | -/* { 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" } } */ | 5901 | +/* { 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 } } */ | 5902 | /* { dg-final { cleanup-saved-temps } } */ |
| 5900 | 5903 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c | |
| 5901 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c' | 5904 | =================================================================== |
| 5902 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c 2010-05-24 18:36:31 +0000 | 5905 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5903 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c 2011-05-03 15:14:56 +0000 | 5906 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanep16.c 2011-09-16 20:16:00.607565171 -0700 |
| 5904 | @@ -16,5 +16,5 @@ | 5907 | @@ -16,5 +16,5 @@ |
| 5905 | vst4_lane_p16 (arg0_poly16_t, arg1_poly16x4x4_t, 1); | 5908 | vst4_lane_p16 (arg0_poly16_t, arg1_poly16x4x4_t, 1); |
| 5906 | } | 5909 | } |
| @@ -5908,10 +5911,10 @@ | |||
| 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" } } */ | 5911 | -/* { 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" } } */ | 5912 | +/* { 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 } } */ | 5913 | /* { dg-final { cleanup-saved-temps } } */ |
| 5911 | 5914 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c | |
| 5912 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c' | 5915 | =================================================================== |
| 5913 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c 2010-05-24 18:36:31 +0000 | 5916 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5914 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c 2011-05-03 15:14:56 +0000 | 5917 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanep8.c 2011-09-16 20:16:00.607565171 -0700 |
| 5915 | @@ -16,5 +16,5 @@ | 5918 | @@ -16,5 +16,5 @@ |
| 5916 | vst4_lane_p8 (arg0_poly8_t, arg1_poly8x8x4_t, 1); | 5919 | vst4_lane_p8 (arg0_poly8_t, arg1_poly8x8x4_t, 1); |
| 5917 | } | 5920 | } |
| @@ -5919,10 +5922,10 @@ | |||
| 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" } } */ | 5922 | -/* { 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" } } */ | 5923 | +/* { 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 } } */ | 5924 | /* { dg-final { cleanup-saved-temps } } */ |
| 5922 | 5925 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c | |
| 5923 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c' | 5926 | =================================================================== |
| 5924 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c 2010-05-24 18:36:31 +0000 | 5927 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5925 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c 2011-05-03 15:14:56 +0000 | 5928 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanes16.c 2011-09-16 20:16:00.607565171 -0700 |
| 5926 | @@ -16,5 +16,5 @@ | 5929 | @@ -16,5 +16,5 @@ |
| 5927 | vst4_lane_s16 (arg0_int16_t, arg1_int16x4x4_t, 1); | 5930 | vst4_lane_s16 (arg0_int16_t, arg1_int16x4x4_t, 1); |
| 5928 | } | 5931 | } |
| @@ -5930,10 +5933,10 @@ | |||
| 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" } } */ | 5933 | -/* { 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" } } */ | 5934 | +/* { 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 } } */ | 5935 | /* { dg-final { cleanup-saved-temps } } */ |
| 5933 | 5936 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c | |
| 5934 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c' | 5937 | =================================================================== |
| 5935 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c 2010-05-24 18:36:31 +0000 | 5938 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5936 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c 2011-05-03 15:14:56 +0000 | 5939 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanes32.c 2011-09-16 20:16:00.607565171 -0700 |
| 5937 | @@ -16,5 +16,5 @@ | 5940 | @@ -16,5 +16,5 @@ |
| 5938 | vst4_lane_s32 (arg0_int32_t, arg1_int32x2x4_t, 1); | 5941 | vst4_lane_s32 (arg0_int32_t, arg1_int32x2x4_t, 1); |
| 5939 | } | 5942 | } |
| @@ -5941,10 +5944,10 @@ | |||
| 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" } } */ | 5944 | -/* { 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" } } */ | 5945 | +/* { 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 } } */ | 5946 | /* { dg-final { cleanup-saved-temps } } */ |
| 5944 | 5947 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c | |
| 5945 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c' | 5948 | =================================================================== |
| 5946 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c 2010-05-24 18:36:31 +0000 | 5949 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5947 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c 2011-05-03 15:14:56 +0000 | 5950 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_lanes8.c 2011-09-16 20:16:00.607565171 -0700 |
| 5948 | @@ -16,5 +16,5 @@ | 5951 | @@ -16,5 +16,5 @@ |
| 5949 | vst4_lane_s8 (arg0_int8_t, arg1_int8x8x4_t, 1); | 5952 | vst4_lane_s8 (arg0_int8_t, arg1_int8x8x4_t, 1); |
| 5950 | } | 5953 | } |
| @@ -5952,10 +5955,10 @@ | |||
| 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" } } */ | 5955 | -/* { 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" } } */ | 5956 | +/* { 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 } } */ | 5957 | /* { dg-final { cleanup-saved-temps } } */ |
| 5955 | 5958 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c | |
| 5956 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c' | 5959 | =================================================================== |
| 5957 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c 2010-05-24 18:36:31 +0000 | 5960 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c 2011-06-24 08:13:40.000000000 -0700 |
| 5958 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c 2011-05-03 15:14:56 +0000 | 5961 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_laneu16.c 2011-09-16 20:16:00.607565171 -0700 |
| 5959 | @@ -16,5 +16,5 @@ | 5962 | @@ -16,5 +16,5 @@ |
| 5960 | vst4_lane_u16 (arg0_uint16_t, arg1_uint16x4x4_t, 1); | 5963 | vst4_lane_u16 (arg0_uint16_t, arg1_uint16x4x4_t, 1); |
| 5961 | } | 5964 | } |
| @@ -5963,10 +5966,10 @@ | |||
| 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" } } */ | 5966 | -/* { 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" } } */ | 5967 | +/* { 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 } } */ | 5968 | /* { dg-final { cleanup-saved-temps } } */ |
| 5966 | 5969 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c | |
| 5967 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c' | 5970 | =================================================================== |
| 5968 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c 2010-05-24 18:36:31 +0000 | 5971 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5969 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c 2011-05-03 15:14:56 +0000 | 5972 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_laneu32.c 2011-09-16 20:16:00.607565171 -0700 |
| 5970 | @@ -16,5 +16,5 @@ | 5973 | @@ -16,5 +16,5 @@ |
| 5971 | vst4_lane_u32 (arg0_uint32_t, arg1_uint32x2x4_t, 1); | 5974 | vst4_lane_u32 (arg0_uint32_t, arg1_uint32x2x4_t, 1); |
| 5972 | } | 5975 | } |
| @@ -5974,10 +5977,10 @@ | |||
| 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" } } */ | 5977 | -/* { 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" } } */ | 5978 | +/* { 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 } } */ | 5979 | /* { dg-final { cleanup-saved-temps } } */ |
| 5977 | 5980 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c | |
| 5978 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c' | 5981 | =================================================================== |
| 5979 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c 2010-05-24 18:36:31 +0000 | 5982 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c 2011-06-24 08:13:40.000000000 -0700 |
| 5980 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c 2011-05-03 15:14:56 +0000 | 5983 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4_laneu8.c 2011-09-16 20:16:00.607565171 -0700 |
| 5981 | @@ -16,5 +16,5 @@ | 5984 | @@ -16,5 +16,5 @@ |
| 5982 | vst4_lane_u8 (arg0_uint8_t, arg1_uint8x8x4_t, 1); | 5985 | vst4_lane_u8 (arg0_uint8_t, arg1_uint8x8x4_t, 1); |
| 5983 | } | 5986 | } |
| @@ -5985,10 +5988,10 @@ | |||
| 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" } } */ | 5988 | -/* { 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" } } */ | 5989 | +/* { 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 } } */ | 5990 | /* { dg-final { cleanup-saved-temps } } */ |
| 5988 | 5991 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4f32.c | |
| 5989 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4f32.c' | 5992 | =================================================================== |
| 5990 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4f32.c 2010-05-24 18:36:31 +0000 | 5993 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4f32.c 2011-06-24 08:13:40.000000000 -0700 |
| 5991 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4f32.c 2011-05-03 15:14:56 +0000 | 5994 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4f32.c 2011-09-16 20:16:00.607565171 -0700 |
| 5992 | @@ -16,5 +16,5 @@ | 5995 | @@ -16,5 +16,5 @@ |
| 5993 | vst4_f32 (arg0_float32_t, arg1_float32x2x4_t); | 5996 | vst4_f32 (arg0_float32_t, arg1_float32x2x4_t); |
| 5994 | } | 5997 | } |
| @@ -5996,10 +5999,10 @@ | |||
| 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" } } */ | 5999 | -/* { 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" } } */ | 6000 | +/* { 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 } } */ | 6001 | /* { dg-final { cleanup-saved-temps } } */ |
| 5999 | 6002 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4p16.c | |
| 6000 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4p16.c' | 6003 | =================================================================== |
| 6001 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4p16.c 2010-05-24 18:36:31 +0000 | 6004 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4p16.c 2011-06-24 08:13:40.000000000 -0700 |
| 6002 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4p16.c 2011-05-03 15:14:56 +0000 | 6005 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4p16.c 2011-09-16 20:16:00.607565171 -0700 |
| 6003 | @@ -16,5 +16,5 @@ | 6006 | @@ -16,5 +16,5 @@ |
| 6004 | vst4_p16 (arg0_poly16_t, arg1_poly16x4x4_t); | 6007 | vst4_p16 (arg0_poly16_t, arg1_poly16x4x4_t); |
| 6005 | } | 6008 | } |
| @@ -6007,10 +6010,10 @@ | |||
| 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" } } */ | 6010 | -/* { 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" } } */ | 6011 | +/* { 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 } } */ | 6012 | /* { dg-final { cleanup-saved-temps } } */ |
| 6010 | 6013 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4p8.c | |
| 6011 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4p8.c' | 6014 | =================================================================== |
| 6012 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4p8.c 2010-05-24 18:36:31 +0000 | 6015 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4p8.c 2011-06-24 08:13:40.000000000 -0700 |
| 6013 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4p8.c 2011-05-03 15:14:56 +0000 | 6016 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4p8.c 2011-09-16 20:16:00.607565171 -0700 |
| 6014 | @@ -16,5 +16,5 @@ | 6017 | @@ -16,5 +16,5 @@ |
| 6015 | vst4_p8 (arg0_poly8_t, arg1_poly8x8x4_t); | 6018 | vst4_p8 (arg0_poly8_t, arg1_poly8x8x4_t); |
| 6016 | } | 6019 | } |
| @@ -6018,10 +6021,10 @@ | |||
| 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" } } */ | 6021 | -/* { 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" } } */ | 6022 | +/* { 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 } } */ | 6023 | /* { dg-final { cleanup-saved-temps } } */ |
| 6021 | 6024 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s16.c | |
| 6022 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s16.c' | 6025 | =================================================================== |
| 6023 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4s16.c 2010-05-24 18:36:31 +0000 | 6026 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4s16.c 2011-06-24 08:13:40.000000000 -0700 |
| 6024 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4s16.c 2011-05-03 15:14:56 +0000 | 6027 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s16.c 2011-09-16 20:16:00.607565171 -0700 |
| 6025 | @@ -16,5 +16,5 @@ | 6028 | @@ -16,5 +16,5 @@ |
| 6026 | vst4_s16 (arg0_int16_t, arg1_int16x4x4_t); | 6029 | vst4_s16 (arg0_int16_t, arg1_int16x4x4_t); |
| 6027 | } | 6030 | } |
| @@ -6029,10 +6032,10 @@ | |||
| 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" } } */ | 6032 | -/* { 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" } } */ | 6033 | +/* { 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 } } */ | 6034 | /* { dg-final { cleanup-saved-temps } } */ |
| 6032 | 6035 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s32.c | |
| 6033 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s32.c' | 6036 | =================================================================== |
| 6034 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4s32.c 2010-05-24 18:36:31 +0000 | 6037 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4s32.c 2011-06-24 08:13:40.000000000 -0700 |
| 6035 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4s32.c 2011-05-03 15:14:56 +0000 | 6038 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s32.c 2011-09-16 20:16:00.607565171 -0700 |
| 6036 | @@ -16,5 +16,5 @@ | 6039 | @@ -16,5 +16,5 @@ |
| 6037 | vst4_s32 (arg0_int32_t, arg1_int32x2x4_t); | 6040 | vst4_s32 (arg0_int32_t, arg1_int32x2x4_t); |
| 6038 | } | 6041 | } |
| @@ -6040,10 +6043,10 @@ | |||
| 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" } } */ | 6043 | -/* { 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" } } */ | 6044 | +/* { 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 } } */ | 6045 | /* { dg-final { cleanup-saved-temps } } */ |
| 6043 | 6046 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s64.c | |
| 6044 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s64.c' | 6047 | =================================================================== |
| 6045 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4s64.c 2010-05-24 18:36:31 +0000 | 6048 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4s64.c 2011-06-24 08:13:40.000000000 -0700 |
| 6046 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4s64.c 2011-05-03 15:14:56 +0000 | 6049 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s64.c 2011-09-16 20:16:00.607565171 -0700 |
| 6047 | @@ -16,5 +16,5 @@ | 6050 | @@ -16,5 +16,5 @@ |
| 6048 | vst4_s64 (arg0_int64_t, arg1_int64x1x4_t); | 6051 | vst4_s64 (arg0_int64_t, arg1_int64x1x4_t); |
| 6049 | } | 6052 | } |
| @@ -6051,10 +6054,10 @@ | |||
| 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" } } */ | 6054 | -/* { 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" } } */ | 6055 | +/* { 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 } } */ | 6056 | /* { dg-final { cleanup-saved-temps } } */ |
| 6054 | 6057 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s8.c | |
| 6055 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4s8.c' | 6058 | =================================================================== |
| 6056 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4s8.c 2010-05-24 18:36:31 +0000 | 6059 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4s8.c 2011-06-24 08:13:40.000000000 -0700 |
| 6057 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4s8.c 2011-05-03 15:14:56 +0000 | 6060 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4s8.c 2011-09-16 20:16:00.607565171 -0700 |
| 6058 | @@ -16,5 +16,5 @@ | 6061 | @@ -16,5 +16,5 @@ |
| 6059 | vst4_s8 (arg0_int8_t, arg1_int8x8x4_t); | 6062 | vst4_s8 (arg0_int8_t, arg1_int8x8x4_t); |
| 6060 | } | 6063 | } |
| @@ -6062,10 +6065,10 @@ | |||
| 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" } } */ | 6065 | -/* { 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" } } */ | 6066 | +/* { 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 } } */ | 6067 | /* { dg-final { cleanup-saved-temps } } */ |
| 6065 | 6068 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u16.c | |
| 6066 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u16.c' | 6069 | =================================================================== |
| 6067 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4u16.c 2010-05-24 18:36:31 +0000 | 6070 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4u16.c 2011-06-24 08:13:40.000000000 -0700 |
| 6068 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4u16.c 2011-05-03 15:14:56 +0000 | 6071 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u16.c 2011-09-16 20:16:00.607565171 -0700 |
| 6069 | @@ -16,5 +16,5 @@ | 6072 | @@ -16,5 +16,5 @@ |
| 6070 | vst4_u16 (arg0_uint16_t, arg1_uint16x4x4_t); | 6073 | vst4_u16 (arg0_uint16_t, arg1_uint16x4x4_t); |
| 6071 | } | 6074 | } |
| @@ -6073,10 +6076,10 @@ | |||
| 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" } } */ | 6076 | -/* { 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" } } */ | 6077 | +/* { 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 } } */ | 6078 | /* { dg-final { cleanup-saved-temps } } */ |
| 6076 | 6079 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u32.c | |
| 6077 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u32.c' | 6080 | =================================================================== |
| 6078 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4u32.c 2010-05-24 18:36:31 +0000 | 6081 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4u32.c 2011-06-24 08:13:40.000000000 -0700 |
| 6079 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4u32.c 2011-05-03 15:14:56 +0000 | 6082 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u32.c 2011-09-16 20:16:00.607565171 -0700 |
| 6080 | @@ -16,5 +16,5 @@ | 6083 | @@ -16,5 +16,5 @@ |
| 6081 | vst4_u32 (arg0_uint32_t, arg1_uint32x2x4_t); | 6084 | vst4_u32 (arg0_uint32_t, arg1_uint32x2x4_t); |
| 6082 | } | 6085 | } |
| @@ -6084,10 +6087,10 @@ | |||
| 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" } } */ | 6087 | -/* { 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" } } */ | 6088 | +/* { 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 } } */ | 6089 | /* { dg-final { cleanup-saved-temps } } */ |
| 6087 | 6090 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u64.c | |
| 6088 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u64.c' | 6091 | =================================================================== |
| 6089 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4u64.c 2010-05-24 18:36:31 +0000 | 6092 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4u64.c 2011-06-24 08:13:40.000000000 -0700 |
| 6090 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4u64.c 2011-05-03 15:14:56 +0000 | 6093 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u64.c 2011-09-16 20:16:00.607565171 -0700 |
| 6091 | @@ -16,5 +16,5 @@ | 6094 | @@ -16,5 +16,5 @@ |
| 6092 | vst4_u64 (arg0_uint64_t, arg1_uint64x1x4_t); | 6095 | vst4_u64 (arg0_uint64_t, arg1_uint64x1x4_t); |
| 6093 | } | 6096 | } |
| @@ -6095,10 +6098,10 @@ | |||
| 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" } } */ | 6098 | -/* { 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" } } */ | 6099 | +/* { 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 } } */ | 6100 | /* { dg-final { cleanup-saved-temps } } */ |
| 6098 | 6101 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u8.c | |
| 6099 | === modified file 'gcc/testsuite/gcc.target/arm/neon/vst4u8.c' | 6102 | =================================================================== |
| 6100 | --- old/gcc/testsuite/gcc.target/arm/neon/vst4u8.c 2010-05-24 18:36:31 +0000 | 6103 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.target/arm/neon/vst4u8.c 2011-06-24 08:13:40.000000000 -0700 |
| 6101 | +++ new/gcc/testsuite/gcc.target/arm/neon/vst4u8.c 2011-05-03 15:14:56 +0000 | 6104 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/neon/vst4u8.c 2011-09-16 20:16:00.607565171 -0700 |
| 6102 | @@ -16,5 +16,5 @@ | 6105 | @@ -16,5 +16,5 @@ |
| 6103 | vst4_u8 (arg0_uint8_t, arg1_uint8x8x4_t); | 6106 | vst4_u8 (arg0_uint8_t, arg1_uint8x8x4_t); |
| 6104 | } | 6107 | } |
| @@ -6106,10 +6109,10 @@ | |||
| 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" } } */ | 6109 | -/* { 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" } } */ | 6110 | +/* { 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 } } */ | 6111 | /* { dg-final { cleanup-saved-temps } } */ |
| 6109 | 6112 | Index: gcc-4_6-branch/gcc/testsuite/gcc.target/arm/pr46329.c | |
| 6110 | === added file 'gcc/testsuite/gcc.target/arm/pr46329.c' | 6113 | =================================================================== |
| 6111 | --- old/gcc/testsuite/gcc.target/arm/pr46329.c 1970-01-01 00:00:00 +0000 | 6114 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 |
| 6112 | +++ new/gcc/testsuite/gcc.target/arm/pr46329.c 2011-05-03 15:18:07 +0000 | 6115 | +++ gcc-4_6-branch/gcc/testsuite/gcc.target/arm/pr46329.c 2011-09-16 20:16:00.617565191 -0700 |
| 6113 | @@ -0,0 +1,9 @@ | 6116 | @@ -0,0 +1,9 @@ |
| 6114 | +/* { dg-options "-O2" } */ | 6117 | +/* { dg-options "-O2" } */ |
| 6115 | +/* { dg-add-options arm_neon } */ | 6118 | +/* { dg-add-options arm_neon } */ |
| @@ -6120,4 +6123,3 @@ | |||
| 6120 | +{ | 6123 | +{ |
| 6121 | + x <<= x; | 6124 | + x <<= x; |
| 6122 | +} | 6125 | +} |
| 6123 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106763.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106763.patch index 8d2ce21762..4abfa02a77 100644 --- a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106763.patch +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106763.patch | |||
| @@ -1,87 +1,16 @@ | |||
| 1 | 2011-06-28 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | 1 | 2011-06-28 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> |
| 2 | 2 | ||
| 3 | Backport from mainline. | 3 | Backport from mainline. |
| 4 | LP 791327 | ||
| 5 | gcc/ | ||
| 6 | 2011-06-09 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 7 | |||
| 8 | PR target/49335 | ||
| 9 | * config/arm/predicates.md (add_operator): New. | ||
| 10 | * config/arm/arm.md ("*arith_shiftsi"): Fix for SP reg usage | ||
| 11 | in Thumb2. | ||
| 12 | |||
| 13 | 2011-06-28 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 14 | |||
| 15 | Backport from mainline. | ||
| 16 | gcc/ | 4 | gcc/ |
| 17 | 2011-06-24 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | 5 | 2011-06-24 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> |
| 18 | 6 | ||
| 19 | PR target/49385 | 7 | PR target/49385 |
| 20 | * config/arm/thumb2.md (*thumb2_movhi_insn): Make sure atleast | 8 | * config/arm/thumb2.md (*thumb2_movhi_insn): Make sure atleast |
| 21 | one of the operands is a register. | 9 | one of the operands is a register. |
| 22 | 10 | Index: gcc-4_6-branch/gcc/config/arm/thumb2.md | |
| 23 | === modified file 'gcc/config/arm/arm.md' | 11 | =================================================================== |
| 24 | --- old/gcc/config/arm/arm.md 2011-06-27 22:14:07 +0000 | 12 | --- gcc-4_6-branch.orig/gcc/config/arm/thumb2.md 2011-09-16 20:22:40.000000000 -0700 |
| 25 | +++ new/gcc/config/arm/arm.md 2011-06-28 12:02:27 +0000 | 13 | +++ gcc-4_6-branch/gcc/config/arm/thumb2.md 2011-09-16 20:28:47.648690433 -0700 |
| 26 | @@ -8584,18 +8584,22 @@ | ||
| 27 | ;; Patterns to allow combination of arithmetic, cond code and shifts | ||
| 28 | |||
| 29 | (define_insn "*arith_shiftsi" | ||
| 30 | - [(set (match_operand:SI 0 "s_register_operand" "=r,r") | ||
| 31 | + [(set (match_operand:SI 0 "s_register_operand" "=r,r,r,r") | ||
| 32 | (match_operator:SI 1 "shiftable_operator" | ||
| 33 | [(match_operator:SI 3 "shift_operator" | ||
| 34 | - [(match_operand:SI 4 "s_register_operand" "r,r") | ||
| 35 | - (match_operand:SI 5 "shift_amount_operand" "M,r")]) | ||
| 36 | - (match_operand:SI 2 "s_register_operand" "rk,rk")]))] | ||
| 37 | + [(match_operand:SI 4 "s_register_operand" "r,r,r,r") | ||
| 38 | + (match_operand:SI 5 "shift_amount_operand" "M,M,M,r")]) | ||
| 39 | + (match_operand:SI 2 "s_register_operand" "rk,rk,r,rk")]))] | ||
| 40 | "TARGET_32BIT" | ||
| 41 | "%i1%?\\t%0, %2, %4%S3" | ||
| 42 | [(set_attr "predicable" "yes") | ||
| 43 | (set_attr "shift" "4") | ||
| 44 | - (set_attr "arch" "32,a") | ||
| 45 | - ;; We have to make sure to disable the second alternative if | ||
| 46 | + (set_attr "arch" "a,t2,t2,a") | ||
| 47 | + ;; Thumb2 doesn't allow the stack pointer to be used for | ||
| 48 | + ;; operand1 for all operations other than add and sub. In this case | ||
| 49 | + ;; the minus operation is a candidate for an rsub and hence needs | ||
| 50 | + ;; to be disabled. | ||
| 51 | + ;; We have to make sure to disable the fourth alternative if | ||
| 52 | ;; the shift_operator is MULT, since otherwise the insn will | ||
| 53 | ;; also match a multiply_accumulate pattern and validate_change | ||
| 54 | ;; will allow a replacement of the constant with a register | ||
| 55 | @@ -8603,9 +8607,13 @@ | ||
| 56 | (set_attr_alternative "insn_enabled" | ||
| 57 | [(const_string "yes") | ||
| 58 | (if_then_else | ||
| 59 | + (match_operand:SI 1 "add_operator" "") | ||
| 60 | + (const_string "yes") (const_string "no")) | ||
| 61 | + (const_string "yes") | ||
| 62 | + (if_then_else | ||
| 63 | (match_operand:SI 3 "mult_operator" "") | ||
| 64 | (const_string "no") (const_string "yes"))]) | ||
| 65 | - (set_attr "type" "alu_shift,alu_shift_reg")]) | ||
| 66 | + (set_attr "type" "alu_shift,alu_shift,alu_shift,alu_shift_reg")]) | ||
| 67 | |||
| 68 | (define_split | ||
| 69 | [(set (match_operand:SI 0 "s_register_operand" "") | ||
| 70 | |||
| 71 | === modified file 'gcc/config/arm/predicates.md' | ||
| 72 | --- old/gcc/config/arm/predicates.md 2011-05-03 15:14:56 +0000 | ||
| 73 | +++ new/gcc/config/arm/predicates.md 2011-06-22 15:50:23 +0000 | ||
| 74 | @@ -687,3 +687,6 @@ | ||
| 75 | (define_special_predicate "neon_struct_operand" | ||
| 76 | (and (match_code "mem") | ||
| 77 | (match_test "TARGET_32BIT && neon_vector_mem_operand (op, 2)"))) | ||
| 78 | + | ||
| 79 | +(define_special_predicate "add_operator" | ||
| 80 | + (match_code "plus")) | ||
| 81 | |||
| 82 | === modified file 'gcc/config/arm/thumb2.md' | ||
| 83 | --- old/gcc/config/arm/thumb2.md 2011-06-14 14:37:30 +0000 | ||
| 84 | +++ new/gcc/config/arm/thumb2.md 2011-06-20 12:18:27 +0000 | ||
| 85 | @@ -207,7 +207,9 @@ | 14 | @@ -207,7 +207,9 @@ |
| 86 | (define_insn "*thumb2_movhi_insn" | 15 | (define_insn "*thumb2_movhi_insn" |
| 87 | [(set (match_operand:HI 0 "nonimmediate_operand" "=r,r,m,r") | 16 | [(set (match_operand:HI 0 "nonimmediate_operand" "=r,r,m,r") |
| @@ -93,4 +22,3 @@ | |||
| 93 | "@ | 22 | "@ |
| 94 | mov%?\\t%0, %1\\t%@ movhi | 23 | mov%?\\t%0, %1\\t%@ movhi |
| 95 | movw%?\\t%0, %L1\\t%@ movhi | 24 | movw%?\\t%0, %L1\\t%@ movhi |
| 96 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106769.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106769.patch index 37e3036b22..ff34514ff7 100644 --- a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106769.patch +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106769.patch | |||
| @@ -50,8 +50,10 @@ | |||
| 50 | * gcc.dg/vect/vect-widen-mult-half.c: New test. | 50 | * gcc.dg/vect/vect-widen-mult-half.c: New test. |
| 51 | 51 | ||
| 52 | === added file 'gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c' | 52 | === added file 'gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c' |
| 53 | --- old/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c 1970-01-01 00:00:00 +0000 | 53 | Index: gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c |
| 54 | +++ new/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c 2011-07-06 12:04:10 +0000 | 54 | =================================================================== |
| 55 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
| 56 | +++ gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c 2011-09-16 20:32:57.279056697 -0700 | ||
| 55 | @@ -0,0 +1,52 @@ | 57 | @@ -0,0 +1,52 @@ |
| 56 | +/* { dg-require-effective-target vect_int } */ | 58 | +/* { dg-require-effective-target vect_int } */ |
| 57 | + | 59 | + |
| @@ -105,10 +107,10 @@ | |||
| 105 | +/* { dg-final { scan-tree-dump-times "pattern recognized" 2 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */ | 107 | +/* { dg-final { scan-tree-dump-times "pattern recognized" 2 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */ |
| 106 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | 108 | +/* { dg-final { cleanup-tree-dump "vect" } } */ |
| 107 | + | 109 | + |
| 108 | 110 | Index: gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c | |
| 109 | === added file 'gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c' | 111 | =================================================================== |
| 110 | --- old/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c 1970-01-01 00:00:00 +0000 | 112 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 |
| 111 | +++ new/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c 2011-07-06 12:04:10 +0000 | 113 | +++ gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c 2011-09-16 20:32:57.279056697 -0700 |
| 112 | @@ -0,0 +1,59 @@ | 114 | @@ -0,0 +1,59 @@ |
| 113 | +/* { dg-require-effective-target vect_int } */ | 115 | +/* { dg-require-effective-target vect_int } */ |
| 114 | + | 116 | + |
| @@ -169,10 +171,10 @@ | |||
| 169 | +/* { dg-final { scan-tree-dump-times "pattern recognized" 2 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */ | 171 | +/* { dg-final { scan-tree-dump-times "pattern recognized" 2 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */ |
| 170 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | 172 | +/* { dg-final { cleanup-tree-dump "vect" } } */ |
| 171 | + | 173 | + |
| 172 | 174 | Index: gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c | |
| 173 | === added file 'gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c' | 175 | =================================================================== |
| 174 | --- old/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c 1970-01-01 00:00:00 +0000 | 176 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 |
| 175 | +++ new/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c 2011-07-06 12:04:10 +0000 | 177 | +++ gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c 2011-09-16 20:32:57.279056697 -0700 |
| 176 | @@ -0,0 +1,49 @@ | 178 | @@ -0,0 +1,49 @@ |
| 177 | +/* { dg-require-effective-target vect_int } */ | 179 | +/* { dg-require-effective-target vect_int } */ |
| 178 | + | 180 | + |
| @@ -223,10 +225,10 @@ | |||
| 223 | +/* { dg-final { scan-tree-dump-times "pattern recognized" 1 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */ | 225 | +/* { dg-final { scan-tree-dump-times "pattern recognized" 1 "vect" { target vect_widen_mult_hi_to_si_pattern } } } */ |
| 224 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | 226 | +/* { dg-final { cleanup-tree-dump "vect" } } */ |
| 225 | + | 227 | + |
| 226 | 228 | Index: gcc-4_6-branch/gcc/tree-vect-loop.c | |
| 227 | === modified file 'gcc/tree-vect-loop.c' | 229 | =================================================================== |
| 228 | --- old/gcc/tree-vect-loop.c 2011-07-04 11:13:51 +0000 | 230 | --- gcc-4_6-branch.orig/gcc/tree-vect-loop.c 2011-09-16 20:31:52.000000000 -0700 |
| 229 | +++ new/gcc/tree-vect-loop.c 2011-07-11 11:02:55 +0000 | 231 | +++ gcc-4_6-branch/gcc/tree-vect-loop.c 2011-09-16 20:32:57.289056641 -0700 |
| 230 | @@ -181,6 +181,8 @@ | 232 | @@ -181,6 +181,8 @@ |
| 231 | stmt_vec_info stmt_info; | 233 | stmt_vec_info stmt_info; |
| 232 | int i; | 234 | int i; |
| @@ -246,7 +248,6 @@ | |||
| 246 | - tree vf_vectype; | 248 | - tree vf_vectype; |
| 247 | - gimple stmt = gsi_stmt (si), pattern_stmt; | 249 | - gimple stmt = gsi_stmt (si), pattern_stmt; |
| 248 | - stmt_info = vinfo_for_stmt (stmt); | 250 | - stmt_info = vinfo_for_stmt (stmt); |
| 249 | - | ||
| 250 | + tree vf_vectype; | 251 | + tree vf_vectype; |
| 251 | + | 252 | + |
| 252 | + if (analyze_pattern_stmt) | 253 | + if (analyze_pattern_stmt) |
| @@ -256,7 +257,7 @@ | |||
| 256 | + } | 257 | + } |
| 257 | + else | 258 | + else |
| 258 | + stmt = gsi_stmt (si); | 259 | + stmt = gsi_stmt (si); |
| 259 | + | 260 | |
| 260 | + stmt_info = vinfo_for_stmt (stmt); | 261 | + stmt_info = vinfo_for_stmt (stmt); |
| 261 | + | 262 | + |
| 262 | if (vect_print_dump_info (REPORT_DETAILS)) | 263 | if (vect_print_dump_info (REPORT_DETAILS)) |
| @@ -376,10 +377,10 @@ | |||
| 376 | } /* stmts in BB */ | 377 | } /* stmts in BB */ |
| 377 | } /* BBs in loop */ | 378 | } /* BBs in loop */ |
| 378 | 379 | ||
| 379 | 380 | Index: gcc-4_6-branch/gcc/tree-vect-patterns.c | |
| 380 | === modified file 'gcc/tree-vect-patterns.c' | 381 | =================================================================== |
| 381 | --- old/gcc/tree-vect-patterns.c 2011-06-22 12:10:44 +0000 | 382 | --- gcc-4_6-branch.orig/gcc/tree-vect-patterns.c 2011-09-16 20:31:52.000000000 -0700 |
| 382 | +++ new/gcc/tree-vect-patterns.c 2011-07-06 12:04:10 +0000 | 383 | +++ gcc-4_6-branch/gcc/tree-vect-patterns.c 2011-09-16 20:32:57.289056641 -0700 |
| 383 | @@ -39,10 +39,13 @@ | 384 | @@ -39,10 +39,13 @@ |
| 384 | #include "diagnostic-core.h" | 385 | #include "diagnostic-core.h" |
| 385 | 386 | ||
| @@ -552,21 +553,6 @@ | |||
| 552 | S5 prod_T = a_T * CONST; | 553 | S5 prod_T = a_T * CONST; |
| 553 | 554 | ||
| 554 | - Input: | 555 | - Input: |
| 555 | - | ||
| 556 | - * LAST_STMT: A stmt from which the pattern search begins. In the example, | ||
| 557 | - when this function is called with S5, the pattern {S3,S4,S5,(S6)} is | ||
| 558 | - detected. | ||
| 559 | - | ||
| 560 | - Output: | ||
| 561 | - | ||
| 562 | - * TYPE_IN: The type of the input arguments to the pattern. | ||
| 563 | - | ||
| 564 | - * TYPE_OUT: The type of the output of this pattern. | ||
| 565 | - | ||
| 566 | - * Return value: A new stmt that will be used to replace the sequence of | ||
| 567 | - stmts that constitute the pattern. In this case it will be: | ||
| 568 | - WIDEN_MULT <a_t, b_t> | ||
| 569 | - */ | ||
| 570 | + A special case of multiplication by constants is when 'TYPE' is 4 times | 556 | + A special case of multiplication by constants is when 'TYPE' is 4 times |
| 571 | + bigger than 'type', but CONST fits an intermediate type 2 times smaller | 557 | + bigger than 'type', but CONST fits an intermediate type 2 times smaller |
| 572 | + than 'TYPE'. In that case we create an additional pattern stmt for S3 | 558 | + than 'TYPE'. In that case we create an additional pattern stmt for S3 |
| @@ -584,20 +570,30 @@ | |||
| 584 | + '--> prod_T' = a_it w* CONST; | 570 | + '--> prod_T' = a_it w* CONST; |
| 585 | + | 571 | + |
| 586 | + Input/Output: | 572 | + Input/Output: |
| 587 | + | 573 | |
| 574 | - * LAST_STMT: A stmt from which the pattern search begins. In the example, | ||
| 575 | - when this function is called with S5, the pattern {S3,S4,S5,(S6)} is | ||
| 576 | - detected. | ||
| 588 | + * STMTS: Contains a stmt from which the pattern search begins. In the | 577 | + * STMTS: Contains a stmt from which the pattern search begins. In the |
| 589 | + example, when this function is called with S5, the pattern {S3,S4,S5,(S6)} | 578 | + example, when this function is called with S5, the pattern {S3,S4,S5,(S6)} |
| 590 | + is detected. In case of unsigned widen-mult, the original stmt (S5) is | 579 | + is detected. In case of unsigned widen-mult, the original stmt (S5) is |
| 591 | + replaced with S6 in STMTS. In case of multiplication by a constant | 580 | + replaced with S6 in STMTS. In case of multiplication by a constant |
| 592 | + of an intermediate type (the last case above), STMTS also contains S3 | 581 | + of an intermediate type (the last case above), STMTS also contains S3 |
| 593 | + (inserted before S5). | 582 | + (inserted before S5). |
| 594 | + | 583 | |
| 584 | - Output: | ||
| 595 | + Output: | 585 | + Output: |
| 596 | + | 586 | |
| 587 | - * TYPE_IN: The type of the input arguments to the pattern. | ||
| 597 | + * TYPE_IN: The type of the input arguments to the pattern. | 588 | + * TYPE_IN: The type of the input arguments to the pattern. |
| 598 | + | 589 | |
| 590 | - * TYPE_OUT: The type of the output of this pattern. | ||
| 599 | + * TYPE_OUT: The type of the output of this pattern. | 591 | + * TYPE_OUT: The type of the output of this pattern. |
| 600 | + | 592 | |
| 593 | - * Return value: A new stmt that will be used to replace the sequence of | ||
| 594 | - stmts that constitute the pattern. In this case it will be: | ||
| 595 | - WIDEN_MULT <a_t, b_t> | ||
| 596 | - */ | ||
| 601 | + * Return value: A new stmt that will be used to replace the sequence of | 597 | + * Return value: A new stmt that will be used to replace the sequence of |
| 602 | + stmts that constitute the pattern. In this case it will be: | 598 | + stmts that constitute the pattern. In this case it will be: |
| 603 | + WIDEN_MULT <a_t, b_t> | 599 | + WIDEN_MULT <a_t, b_t> |
| @@ -932,10 +928,10 @@ | |||
| 932 | 928 | ||
| 933 | if (vect_print_dump_info (REPORT_DETAILS)) | 929 | if (vect_print_dump_info (REPORT_DETAILS)) |
| 934 | fprintf (vect_dump, "=== vect_pattern_recog ==="); | 930 | fprintf (vect_dump, "=== vect_pattern_recog ==="); |
| 935 | 931 | Index: gcc-4_6-branch/gcc/tree-vect-slp.c | |
| 936 | === modified file 'gcc/tree-vect-slp.c' | 932 | =================================================================== |
| 937 | --- old/gcc/tree-vect-slp.c 2011-06-19 10:59:13 +0000 | 933 | --- gcc-4_6-branch.orig/gcc/tree-vect-slp.c 2011-09-16 20:31:52.000000000 -0700 |
| 938 | +++ new/gcc/tree-vect-slp.c 2011-07-06 12:04:10 +0000 | 934 | +++ gcc-4_6-branch/gcc/tree-vect-slp.c 2011-09-16 20:32:57.289056641 -0700 |
| 939 | @@ -152,7 +152,9 @@ | 935 | @@ -152,7 +152,9 @@ |
| 940 | if (loop && def_stmt && gimple_bb (def_stmt) | 936 | if (loop && def_stmt && gimple_bb (def_stmt) |
| 941 | && flow_bb_inside_loop_p (loop, gimple_bb (def_stmt)) | 937 | && flow_bb_inside_loop_p (loop, gimple_bb (def_stmt)) |
| @@ -947,10 +943,10 @@ | |||
| 947 | { | 943 | { |
| 948 | if (!*first_stmt_dt0) | 944 | if (!*first_stmt_dt0) |
| 949 | *pattern0 = true; | 945 | *pattern0 = true; |
| 950 | 946 | Index: gcc-4_6-branch/gcc/tree-vect-stmts.c | |
| 951 | === modified file 'gcc/tree-vect-stmts.c' | 947 | =================================================================== |
| 952 | --- old/gcc/tree-vect-stmts.c 2011-06-22 06:21:13 +0000 | 948 | --- gcc-4_6-branch.orig/gcc/tree-vect-stmts.c 2011-09-16 20:31:52.000000000 -0700 |
| 953 | +++ new/gcc/tree-vect-stmts.c 2011-07-06 12:04:10 +0000 | 949 | +++ gcc-4_6-branch/gcc/tree-vect-stmts.c 2011-09-16 20:32:57.289056641 -0700 |
| 954 | @@ -126,33 +126,72 @@ | 950 | @@ -126,33 +126,72 @@ |
| 955 | 951 | ||
| 956 | static void | 952 | static void |
| @@ -974,21 +970,6 @@ | |||
| 974 | if (STMT_VINFO_IN_PATTERN_P (stmt_info)) | 970 | if (STMT_VINFO_IN_PATTERN_P (stmt_info)) |
| 975 | { | 971 | { |
| 976 | - gimple pattern_stmt; | 972 | - gimple pattern_stmt; |
| 977 | - | ||
| 978 | - /* This is the last stmt in a sequence that was detected as a | ||
| 979 | - pattern that can potentially be vectorized. Don't mark the stmt | ||
| 980 | - as relevant/live because it's not going to be vectorized. | ||
| 981 | - Instead mark the pattern-stmt that replaces it. */ | ||
| 982 | - | ||
| 983 | - pattern_stmt = STMT_VINFO_RELATED_STMT (stmt_info); | ||
| 984 | - | ||
| 985 | - if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 986 | - fprintf (vect_dump, "last stmt in pattern. don't mark relevant/live."); | ||
| 987 | - stmt_info = vinfo_for_stmt (pattern_stmt); | ||
| 988 | - gcc_assert (STMT_VINFO_RELATED_STMT (stmt_info) == stmt); | ||
| 989 | - save_relevant = STMT_VINFO_RELEVANT (stmt_info); | ||
| 990 | - save_live_p = STMT_VINFO_LIVE_P (stmt_info); | ||
| 991 | - stmt = pattern_stmt; | ||
| 992 | + bool found = false; | 973 | + bool found = false; |
| 993 | + if (!used_in_pattern) | 974 | + if (!used_in_pattern) |
| 994 | + { | 975 | + { |
| @@ -1026,7 +1007,21 @@ | |||
| 1026 | + pattern that can potentially be vectorized. Don't mark the stmt | 1007 | + pattern that can potentially be vectorized. Don't mark the stmt |
| 1027 | + as relevant/live because it's not going to be vectorized. | 1008 | + as relevant/live because it's not going to be vectorized. |
| 1028 | + Instead mark the pattern-stmt that replaces it. */ | 1009 | + Instead mark the pattern-stmt that replaces it. */ |
| 1029 | + | 1010 | |
| 1011 | - /* This is the last stmt in a sequence that was detected as a | ||
| 1012 | - pattern that can potentially be vectorized. Don't mark the stmt | ||
| 1013 | - as relevant/live because it's not going to be vectorized. | ||
| 1014 | - Instead mark the pattern-stmt that replaces it. */ | ||
| 1015 | - | ||
| 1016 | - pattern_stmt = STMT_VINFO_RELATED_STMT (stmt_info); | ||
| 1017 | - | ||
| 1018 | - if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 1019 | - fprintf (vect_dump, "last stmt in pattern. don't mark relevant/live."); | ||
| 1020 | - stmt_info = vinfo_for_stmt (pattern_stmt); | ||
| 1021 | - gcc_assert (STMT_VINFO_RELATED_STMT (stmt_info) == stmt); | ||
| 1022 | - save_relevant = STMT_VINFO_RELEVANT (stmt_info); | ||
| 1023 | - save_live_p = STMT_VINFO_LIVE_P (stmt_info); | ||
| 1024 | - stmt = pattern_stmt; | ||
| 1030 | + pattern_stmt = STMT_VINFO_RELATED_STMT (stmt_info); | 1025 | + pattern_stmt = STMT_VINFO_RELATED_STMT (stmt_info); |
| 1031 | + | 1026 | + |
| 1032 | + if (vect_print_dump_info (REPORT_DETAILS)) | 1027 | + if (vect_print_dump_info (REPORT_DETAILS)) |
| @@ -1119,9 +1114,6 @@ | |||
| 1119 | - VEC_free (gimple, heap, worklist); | 1114 | - VEC_free (gimple, heap, worklist); |
| 1120 | - return false; | 1115 | - return false; |
| 1121 | - } | 1116 | - } |
| 1122 | - } | ||
| 1123 | - else | ||
| 1124 | - return false; | ||
| 1125 | + break; | 1117 | + break; |
| 1126 | + | 1118 | + |
| 1127 | + case GIMPLE_BINARY_RHS: | 1119 | + case GIMPLE_BINARY_RHS: |
| @@ -1154,7 +1146,9 @@ | |||
| 1154 | + | 1146 | + |
| 1155 | + default: | 1147 | + default: |
| 1156 | + return false; | 1148 | + return false; |
| 1157 | + } | 1149 | } |
| 1150 | - else | ||
| 1151 | - return false; | ||
| 1158 | } | 1152 | } |
| 1159 | else if (is_gimple_call (stmt)) | 1153 | else if (is_gimple_call (stmt)) |
| 1160 | { | 1154 | { |
| @@ -1173,7 +1167,7 @@ | |||
| 1173 | gcc_assert (vec_stmt); | 1167 | gcc_assert (vec_stmt); |
| 1174 | if (gimple_code (vec_stmt) == GIMPLE_PHI) | 1168 | if (gimple_code (vec_stmt) == GIMPLE_PHI) |
| 1175 | vec_oprnd = PHI_RESULT (vec_stmt); | 1169 | vec_oprnd = PHI_RESULT (vec_stmt); |
| 1176 | @@ -4886,6 +4946,7 @@ | 1170 | @@ -4894,6 +4954,7 @@ |
| 1177 | enum vect_relevant relevance = STMT_VINFO_RELEVANT (stmt_info); | 1171 | enum vect_relevant relevance = STMT_VINFO_RELEVANT (stmt_info); |
| 1178 | bool ok; | 1172 | bool ok; |
| 1179 | tree scalar_type, vectype; | 1173 | tree scalar_type, vectype; |
| @@ -1181,14 +1175,13 @@ | |||
| 1181 | 1175 | ||
| 1182 | if (vect_print_dump_info (REPORT_DETAILS)) | 1176 | if (vect_print_dump_info (REPORT_DETAILS)) |
| 1183 | { | 1177 | { |
| 1184 | @@ -4907,16 +4968,22 @@ | 1178 | @@ -4915,16 +4976,22 @@ |
| 1185 | - any LABEL_EXPRs in the loop | 1179 | - any LABEL_EXPRs in the loop |
| 1186 | - computations that are used only for array indexing or loop control. | 1180 | - computations that are used only for array indexing or loop control. |
| 1187 | In basic blocks we only analyze statements that are a part of some SLP | 1181 | In basic blocks we only analyze statements that are a part of some SLP |
| 1188 | - instance, therefore, all the statements are relevant. */ | 1182 | - instance, therefore, all the statements are relevant. */ |
| 1189 | - | ||
| 1190 | + instance, therefore, all the statements are relevant. | 1183 | + instance, therefore, all the statements are relevant. |
| 1191 | + | 1184 | |
| 1192 | + Pattern statement need to be analyzed instead of the original statement | 1185 | + Pattern statement need to be analyzed instead of the original statement |
| 1193 | + if the original statement is not relevant. Otherwise, we analyze both | 1186 | + if the original statement is not relevant. Otherwise, we analyze both |
| 1194 | + statements. */ | 1187 | + statements. */ |
| @@ -1207,7 +1200,7 @@ | |||
| 1207 | stmt = pattern_stmt; | 1200 | stmt = pattern_stmt; |
| 1208 | stmt_info = vinfo_for_stmt (pattern_stmt); | 1201 | stmt_info = vinfo_for_stmt (pattern_stmt); |
| 1209 | if (vect_print_dump_info (REPORT_DETAILS)) | 1202 | if (vect_print_dump_info (REPORT_DETAILS)) |
| 1210 | @@ -4933,6 +5000,21 @@ | 1203 | @@ -4941,6 +5008,21 @@ |
| 1211 | return true; | 1204 | return true; |
| 1212 | } | 1205 | } |
| 1213 | } | 1206 | } |
| @@ -1229,42 +1222,7 @@ | |||
| 1229 | 1222 | ||
| 1230 | switch (STMT_VINFO_DEF_TYPE (stmt_info)) | 1223 | switch (STMT_VINFO_DEF_TYPE (stmt_info)) |
| 1231 | { | 1224 | { |
| 1232 | @@ -5066,7 +5148,6 @@ | 1225 | @@ -5605,8 +5687,12 @@ |
| 1233 | bool is_store = false; | ||
| 1234 | gimple vec_stmt = NULL; | ||
| 1235 | stmt_vec_info stmt_info = vinfo_for_stmt (stmt); | ||
| 1236 | - gimple orig_stmt_in_pattern, orig_scalar_stmt = stmt; | ||
| 1237 | bool done; | ||
| 1238 | |||
| 1239 | switch (STMT_VINFO_TYPE (stmt_info)) | ||
| 1240 | @@ -5205,25 +5286,7 @@ | ||
| 1241 | } | ||
| 1242 | |||
| 1243 | if (vec_stmt) | ||
| 1244 | - { | ||
| 1245 | - STMT_VINFO_VEC_STMT (stmt_info) = vec_stmt; | ||
| 1246 | - orig_stmt_in_pattern = STMT_VINFO_RELATED_STMT (stmt_info); | ||
| 1247 | - if (orig_stmt_in_pattern) | ||
| 1248 | - { | ||
| 1249 | - stmt_vec_info stmt_vinfo = vinfo_for_stmt (orig_stmt_in_pattern); | ||
| 1250 | - /* STMT was inserted by the vectorizer to replace a computation idiom. | ||
| 1251 | - ORIG_STMT_IN_PATTERN is a stmt in the original sequence that | ||
| 1252 | - computed this idiom. We need to record a pointer to VEC_STMT in | ||
| 1253 | - the stmt_info of ORIG_STMT_IN_PATTERN. See more details in the | ||
| 1254 | - documentation of vect_pattern_recog. */ | ||
| 1255 | - if (STMT_VINFO_IN_PATTERN_P (stmt_vinfo)) | ||
| 1256 | - { | ||
| 1257 | - gcc_assert (STMT_VINFO_RELATED_STMT (stmt_vinfo) | ||
| 1258 | - == orig_scalar_stmt); | ||
| 1259 | - STMT_VINFO_VEC_STMT (stmt_vinfo) = vec_stmt; | ||
| 1260 | - } | ||
| 1261 | - } | ||
| 1262 | - } | ||
| 1263 | + STMT_VINFO_VEC_STMT (stmt_info) = vec_stmt; | ||
| 1264 | |||
| 1265 | return is_store; | ||
| 1266 | } | ||
| 1267 | @@ -5601,8 +5664,12 @@ | ||
| 1268 | || *dt == vect_nested_cycle) | 1226 | || *dt == vect_nested_cycle) |
| 1269 | { | 1227 | { |
| 1270 | stmt_vec_info stmt_info = vinfo_for_stmt (*def_stmt); | 1228 | stmt_vec_info stmt_info = vinfo_for_stmt (*def_stmt); |
| @@ -1278,10 +1236,10 @@ | |||
| 1278 | *vectype = STMT_VINFO_VECTYPE (stmt_info); | 1236 | *vectype = STMT_VINFO_VECTYPE (stmt_info); |
| 1279 | gcc_assert (*vectype != NULL_TREE); | 1237 | gcc_assert (*vectype != NULL_TREE); |
| 1280 | } | 1238 | } |
| 1281 | 1239 | Index: gcc-4_6-branch/gcc/tree-vectorizer.h | |
| 1282 | === modified file 'gcc/tree-vectorizer.h' | 1240 | =================================================================== |
| 1283 | --- old/gcc/tree-vectorizer.h 2011-07-04 11:13:51 +0000 | 1241 | --- gcc-4_6-branch.orig/gcc/tree-vectorizer.h 2011-09-16 20:31:52.000000000 -0700 |
| 1284 | +++ new/gcc/tree-vectorizer.h 2011-07-11 11:02:55 +0000 | 1242 | +++ gcc-4_6-branch/gcc/tree-vectorizer.h 2011-09-16 20:32:57.299056515 -0700 |
| 1285 | @@ -890,7 +890,7 @@ | 1243 | @@ -890,7 +890,7 @@ |
| 1286 | /* Pattern recognition functions. | 1244 | /* Pattern recognition functions. |
| 1287 | Additional pattern recognition functions can (and will) be added | 1245 | Additional pattern recognition functions can (and will) be added |
| @@ -1291,4 +1249,3 @@ | |||
| 1291 | #define NUM_PATTERNS 4 | 1249 | #define NUM_PATTERNS 4 |
| 1292 | void vect_pattern_recog (loop_vec_info); | 1250 | void vect_pattern_recog (loop_vec_info); |
| 1293 | 1251 | ||
| 1294 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch new file mode 100644 index 0000000000..61e3916375 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106783.patch | |||
| @@ -0,0 +1,62 @@ | |||
| 1 | 2011-07-31 Revital Eres <revital.eres@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | Backport from trunk -r176970: | ||
| 5 | |||
| 6 | * modulo-sched.c: Change comment. | ||
| 7 | (reset_sched_times): Fix print message. | ||
| 8 | (print_partial_schedule): Add print info. | ||
| 9 | |||
| 10 | === modified file 'gcc/modulo-sched.c' | ||
| 11 | --- old/gcc/modulo-sched.c 2011-07-04 12:01:34 +0000 | ||
| 12 | +++ new/gcc/modulo-sched.c 2011-07-31 10:58:46 +0000 | ||
| 13 | @@ -84,13 +84,14 @@ | ||
| 14 | II cycles (i.e. use register copies to prevent a def from overwriting | ||
| 15 | itself before reaching the use). | ||
| 16 | |||
| 17 | - SMS works with countable loops whose loop count can be easily | ||
| 18 | - adjusted. This is because we peel a constant number of iterations | ||
| 19 | - into a prologue and epilogue for which we want to avoid emitting | ||
| 20 | - the control part, and a kernel which is to iterate that constant | ||
| 21 | - number of iterations less than the original loop. So the control | ||
| 22 | - part should be a set of insns clearly identified and having its | ||
| 23 | - own iv, not otherwise used in the loop (at-least for now), which | ||
| 24 | + SMS works with countable loops (1) whose control part can be easily | ||
| 25 | + decoupled from the rest of the loop and (2) whose loop count can | ||
| 26 | + be easily adjusted. This is because we peel a constant number of | ||
| 27 | + iterations into a prologue and epilogue for which we want to avoid | ||
| 28 | + emitting the control part, and a kernel which is to iterate that | ||
| 29 | + constant number of iterations less than the original loop. So the | ||
| 30 | + control part should be a set of insns clearly identified and having | ||
| 31 | + its own iv, not otherwise used in the loop (at-least for now), which | ||
| 32 | initializes a register before the loop to the number of iterations. | ||
| 33 | Currently SMS relies on the do-loop pattern to recognize such loops, | ||
| 34 | where (1) the control part comprises of all insns defining and/or | ||
| 35 | @@ -598,8 +599,8 @@ | ||
| 36 | /* Print the scheduling times after the rotation. */ | ||
| 37 | fprintf (dump_file, "crr_insn->node=%d (insn id %d), " | ||
| 38 | "crr_insn->cycle=%d, min_cycle=%d", crr_insn->node->cuid, | ||
| 39 | - INSN_UID (crr_insn->node->insn), SCHED_TIME (u), | ||
| 40 | - normalized_time); | ||
| 41 | + INSN_UID (crr_insn->node->insn), normalized_time, | ||
| 42 | + new_min_cycle); | ||
| 43 | if (JUMP_P (crr_insn->node->insn)) | ||
| 44 | fprintf (dump_file, " (branch)"); | ||
| 45 | fprintf (dump_file, "\n"); | ||
| 46 | @@ -2550,8 +2551,13 @@ | ||
| 47 | fprintf (dump, "\n[ROW %d ]: ", i); | ||
| 48 | while (ps_i) | ||
| 49 | { | ||
| 50 | - fprintf (dump, "%d, ", | ||
| 51 | - INSN_UID (ps_i->node->insn)); | ||
| 52 | + if (JUMP_P (ps_i->node->insn)) | ||
| 53 | + fprintf (dump, "%d (branch), ", | ||
| 54 | + INSN_UID (ps_i->node->insn)); | ||
| 55 | + else | ||
| 56 | + fprintf (dump, "%d, ", | ||
| 57 | + INSN_UID (ps_i->node->insn)); | ||
| 58 | + | ||
| 59 | ps_i = ps_i->next_in_row; | ||
| 60 | } | ||
| 61 | } | ||
| 62 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106784.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106784.patch new file mode 100644 index 0000000000..b82fe76d41 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106784.patch | |||
| @@ -0,0 +1,458 @@ | |||
| 1 | 2011-08-09 Revital Eres <revital.eres@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | Backport from trunk -r177235. | ||
| 5 | * modulo-sched.c (calculate_stage_count, | ||
| 6 | calculate_must_precede_follow, get_sched_window, | ||
| 7 | try_scheduling_node_in_cycle, remove_node_from_ps): | ||
| 8 | Add declaration. | ||
| 9 | (update_node_sched_params, set_must_precede_follow, optimize_sc): | ||
| 10 | New functions. | ||
| 11 | (reset_sched_times): Call update_node_sched_params. | ||
| 12 | (sms_schedule): Call optimize_sc. | ||
| 13 | (get_sched_window): Change function arguments. | ||
| 14 | (sms_schedule_by_order): Update call to get_sched_window. | ||
| 15 | Call set_must_precede_follow. | ||
| 16 | (calculate_stage_count): Add function argument. | ||
| 17 | |||
| 18 | === modified file 'gcc/modulo-sched.c' | ||
| 19 | --- old/gcc/modulo-sched.c 2011-07-31 10:58:46 +0000 | ||
| 20 | +++ new/gcc/modulo-sched.c 2011-08-09 04:51:48 +0000 | ||
| 21 | @@ -203,7 +203,16 @@ | ||
| 22 | rtx, rtx); | ||
| 23 | static void duplicate_insns_of_cycles (partial_schedule_ptr, | ||
| 24 | int, int, int, rtx); | ||
| 25 | -static int calculate_stage_count (partial_schedule_ptr ps); | ||
| 26 | +static int calculate_stage_count (partial_schedule_ptr, int); | ||
| 27 | +static void calculate_must_precede_follow (ddg_node_ptr, int, int, | ||
| 28 | + int, int, sbitmap, sbitmap, sbitmap); | ||
| 29 | +static int get_sched_window (partial_schedule_ptr, ddg_node_ptr, | ||
| 30 | + sbitmap, int, int *, int *, int *); | ||
| 31 | +static bool try_scheduling_node_in_cycle (partial_schedule_ptr, ddg_node_ptr, | ||
| 32 | + int, int, sbitmap, int *, sbitmap, | ||
| 33 | + sbitmap); | ||
| 34 | +static bool remove_node_from_ps (partial_schedule_ptr, ps_insn_ptr); | ||
| 35 | + | ||
| 36 | #define SCHED_ASAP(x) (((node_sched_params_ptr)(x)->aux.info)->asap) | ||
| 37 | #define SCHED_TIME(x) (((node_sched_params_ptr)(x)->aux.info)->time) | ||
| 38 | #define SCHED_FIRST_REG_MOVE(x) \ | ||
| 39 | @@ -577,6 +586,36 @@ | ||
| 40 | } | ||
| 41 | } | ||
| 42 | |||
| 43 | +/* Update the sched_params (time, row and stage) for node U using the II, | ||
| 44 | + the CYCLE of U and MIN_CYCLE. | ||
| 45 | + We're not simply taking the following | ||
| 46 | + SCHED_STAGE (u) = CALC_STAGE_COUNT (SCHED_TIME (u), min_cycle, ii); | ||
| 47 | + because the stages may not be aligned on cycle 0. */ | ||
| 48 | +static void | ||
| 49 | +update_node_sched_params (ddg_node_ptr u, int ii, int cycle, int min_cycle) | ||
| 50 | +{ | ||
| 51 | + int sc_until_cycle_zero; | ||
| 52 | + int stage; | ||
| 53 | + | ||
| 54 | + SCHED_TIME (u) = cycle; | ||
| 55 | + SCHED_ROW (u) = SMODULO (cycle, ii); | ||
| 56 | + | ||
| 57 | + /* The calculation of stage count is done adding the number | ||
| 58 | + of stages before cycle zero and after cycle zero. */ | ||
| 59 | + sc_until_cycle_zero = CALC_STAGE_COUNT (-1, min_cycle, ii); | ||
| 60 | + | ||
| 61 | + if (SCHED_TIME (u) < 0) | ||
| 62 | + { | ||
| 63 | + stage = CALC_STAGE_COUNT (-1, SCHED_TIME (u), ii); | ||
| 64 | + SCHED_STAGE (u) = sc_until_cycle_zero - stage; | ||
| 65 | + } | ||
| 66 | + else | ||
| 67 | + { | ||
| 68 | + stage = CALC_STAGE_COUNT (SCHED_TIME (u), 0, ii); | ||
| 69 | + SCHED_STAGE (u) = sc_until_cycle_zero + stage - 1; | ||
| 70 | + } | ||
| 71 | +} | ||
| 72 | + | ||
| 73 | /* Bump the SCHED_TIMEs of all nodes by AMOUNT. Set the values of | ||
| 74 | SCHED_ROW and SCHED_STAGE. */ | ||
| 75 | static void | ||
| 76 | @@ -592,7 +631,6 @@ | ||
| 77 | ddg_node_ptr u = crr_insn->node; | ||
| 78 | int normalized_time = SCHED_TIME (u) - amount; | ||
| 79 | int new_min_cycle = PS_MIN_CYCLE (ps) - amount; | ||
| 80 | - int sc_until_cycle_zero, stage; | ||
| 81 | |||
| 82 | if (dump_file) | ||
| 83 | { | ||
| 84 | @@ -608,23 +646,9 @@ | ||
| 85 | |||
| 86 | gcc_assert (SCHED_TIME (u) >= ps->min_cycle); | ||
| 87 | gcc_assert (SCHED_TIME (u) <= ps->max_cycle); | ||
| 88 | - SCHED_TIME (u) = normalized_time; | ||
| 89 | - SCHED_ROW (u) = SMODULO (normalized_time, ii); | ||
| 90 | - | ||
| 91 | - /* The calculation of stage count is done adding the number | ||
| 92 | - of stages before cycle zero and after cycle zero. */ | ||
| 93 | - sc_until_cycle_zero = CALC_STAGE_COUNT (-1, new_min_cycle, ii); | ||
| 94 | - | ||
| 95 | - if (SCHED_TIME (u) < 0) | ||
| 96 | - { | ||
| 97 | - stage = CALC_STAGE_COUNT (-1, SCHED_TIME (u), ii); | ||
| 98 | - SCHED_STAGE (u) = sc_until_cycle_zero - stage; | ||
| 99 | - } | ||
| 100 | - else | ||
| 101 | - { | ||
| 102 | - stage = CALC_STAGE_COUNT (SCHED_TIME (u), 0, ii); | ||
| 103 | - SCHED_STAGE (u) = sc_until_cycle_zero + stage - 1; | ||
| 104 | - } | ||
| 105 | + | ||
| 106 | + crr_insn->cycle = normalized_time; | ||
| 107 | + update_node_sched_params (u, ii, normalized_time, new_min_cycle); | ||
| 108 | } | ||
| 109 | } | ||
| 110 | |||
| 111 | @@ -661,6 +685,206 @@ | ||
| 112 | PREV_INSN (last)); | ||
| 113 | } | ||
| 114 | |||
| 115 | +/* Set bitmaps TMP_FOLLOW and TMP_PRECEDE to MUST_FOLLOW and MUST_PRECEDE | ||
| 116 | + respectively only if cycle C falls on the border of the scheduling | ||
| 117 | + window boundaries marked by START and END cycles. STEP is the | ||
| 118 | + direction of the window. */ | ||
| 119 | +static inline void | ||
| 120 | +set_must_precede_follow (sbitmap *tmp_follow, sbitmap must_follow, | ||
| 121 | + sbitmap *tmp_precede, sbitmap must_precede, int c, | ||
| 122 | + int start, int end, int step) | ||
| 123 | +{ | ||
| 124 | + *tmp_precede = NULL; | ||
| 125 | + *tmp_follow = NULL; | ||
| 126 | + | ||
| 127 | + if (c == start) | ||
| 128 | + { | ||
| 129 | + if (step == 1) | ||
| 130 | + *tmp_precede = must_precede; | ||
| 131 | + else /* step == -1. */ | ||
| 132 | + *tmp_follow = must_follow; | ||
| 133 | + } | ||
| 134 | + if (c == end - step) | ||
| 135 | + { | ||
| 136 | + if (step == 1) | ||
| 137 | + *tmp_follow = must_follow; | ||
| 138 | + else /* step == -1. */ | ||
| 139 | + *tmp_precede = must_precede; | ||
| 140 | + } | ||
| 141 | + | ||
| 142 | +} | ||
| 143 | + | ||
| 144 | +/* Return True if the branch can be moved to row ii-1 while | ||
| 145 | + normalizing the partial schedule PS to start from cycle zero and thus | ||
| 146 | + optimize the SC. Otherwise return False. */ | ||
| 147 | +static bool | ||
| 148 | +optimize_sc (partial_schedule_ptr ps, ddg_ptr g) | ||
| 149 | +{ | ||
| 150 | + int amount = PS_MIN_CYCLE (ps); | ||
| 151 | + sbitmap sched_nodes = sbitmap_alloc (g->num_nodes); | ||
| 152 | + int start, end, step; | ||
| 153 | + int ii = ps->ii; | ||
| 154 | + bool ok = false; | ||
| 155 | + int stage_count, stage_count_curr; | ||
| 156 | + | ||
| 157 | + /* Compare the SC after normalization and SC after bringing the branch | ||
| 158 | + to row ii-1. If they are equal just bail out. */ | ||
| 159 | + stage_count = calculate_stage_count (ps, amount); | ||
| 160 | + stage_count_curr = | ||
| 161 | + calculate_stage_count (ps, SCHED_TIME (g->closing_branch) - (ii - 1)); | ||
| 162 | + | ||
| 163 | + if (stage_count == stage_count_curr) | ||
| 164 | + { | ||
| 165 | + if (dump_file) | ||
| 166 | + fprintf (dump_file, "SMS SC already optimized.\n"); | ||
| 167 | + | ||
| 168 | + ok = false; | ||
| 169 | + goto clear; | ||
| 170 | + } | ||
| 171 | + | ||
| 172 | + if (dump_file) | ||
| 173 | + { | ||
| 174 | + fprintf (dump_file, "SMS Trying to optimize branch location\n"); | ||
| 175 | + fprintf (dump_file, "SMS partial schedule before trial:\n"); | ||
| 176 | + print_partial_schedule (ps, dump_file); | ||
| 177 | + } | ||
| 178 | + | ||
| 179 | + /* First, normalize the partial scheduling. */ | ||
| 180 | + reset_sched_times (ps, amount); | ||
| 181 | + rotate_partial_schedule (ps, amount); | ||
| 182 | + if (dump_file) | ||
| 183 | + { | ||
| 184 | + fprintf (dump_file, | ||
| 185 | + "SMS partial schedule after normalization (ii, %d, SC %d):\n", | ||
| 186 | + ii, stage_count); | ||
| 187 | + print_partial_schedule (ps, dump_file); | ||
| 188 | + } | ||
| 189 | + | ||
| 190 | + if (SMODULO (SCHED_TIME (g->closing_branch), ii) == ii - 1) | ||
| 191 | + { | ||
| 192 | + ok = true; | ||
| 193 | + goto clear; | ||
| 194 | + } | ||
| 195 | + | ||
| 196 | + sbitmap_ones (sched_nodes); | ||
| 197 | + | ||
| 198 | + /* Calculate the new placement of the branch. It should be in row | ||
| 199 | + ii-1 and fall into it's scheduling window. */ | ||
| 200 | + if (get_sched_window (ps, g->closing_branch, sched_nodes, ii, &start, | ||
| 201 | + &step, &end) == 0) | ||
| 202 | + { | ||
| 203 | + bool success; | ||
| 204 | + ps_insn_ptr next_ps_i; | ||
| 205 | + int branch_cycle = SCHED_TIME (g->closing_branch); | ||
| 206 | + int row = SMODULO (branch_cycle, ps->ii); | ||
| 207 | + int num_splits = 0; | ||
| 208 | + sbitmap must_precede, must_follow, tmp_precede, tmp_follow; | ||
| 209 | + int c; | ||
| 210 | + | ||
| 211 | + if (dump_file) | ||
| 212 | + fprintf (dump_file, "\nTrying to schedule node %d " | ||
| 213 | + "INSN = %d in (%d .. %d) step %d\n", | ||
| 214 | + g->closing_branch->cuid, | ||
| 215 | + (INSN_UID (g->closing_branch->insn)), start, end, step); | ||
| 216 | + | ||
| 217 | + gcc_assert ((step > 0 && start < end) || (step < 0 && start > end)); | ||
| 218 | + if (step == 1) | ||
| 219 | + { | ||
| 220 | + c = start + ii - SMODULO (start, ii) - 1; | ||
| 221 | + gcc_assert (c >= start); | ||
| 222 | + if (c >= end) | ||
| 223 | + { | ||
| 224 | + ok = false; | ||
| 225 | + if (dump_file) | ||
| 226 | + fprintf (dump_file, | ||
| 227 | + "SMS failed to schedule branch at cycle: %d\n", c); | ||
| 228 | + goto clear; | ||
| 229 | + } | ||
| 230 | + } | ||
| 231 | + else | ||
| 232 | + { | ||
| 233 | + c = start - SMODULO (start, ii) - 1; | ||
| 234 | + gcc_assert (c <= start); | ||
| 235 | + | ||
| 236 | + if (c <= end) | ||
| 237 | + { | ||
| 238 | + if (dump_file) | ||
| 239 | + fprintf (dump_file, | ||
| 240 | + "SMS failed to schedule branch at cycle: %d\n", c); | ||
| 241 | + ok = false; | ||
| 242 | + goto clear; | ||
| 243 | + } | ||
| 244 | + } | ||
| 245 | + | ||
| 246 | + must_precede = sbitmap_alloc (g->num_nodes); | ||
| 247 | + must_follow = sbitmap_alloc (g->num_nodes); | ||
| 248 | + | ||
| 249 | + /* Try to schedule the branch is it's new cycle. */ | ||
| 250 | + calculate_must_precede_follow (g->closing_branch, start, end, | ||
| 251 | + step, ii, sched_nodes, | ||
| 252 | + must_precede, must_follow); | ||
| 253 | + | ||
| 254 | + set_must_precede_follow (&tmp_follow, must_follow, &tmp_precede, | ||
| 255 | + must_precede, c, start, end, step); | ||
| 256 | + | ||
| 257 | + /* Find the element in the partial schedule related to the closing | ||
| 258 | + branch so we can remove it from it's current cycle. */ | ||
| 259 | + for (next_ps_i = ps->rows[row]; | ||
| 260 | + next_ps_i; next_ps_i = next_ps_i->next_in_row) | ||
| 261 | + if (next_ps_i->node->cuid == g->closing_branch->cuid) | ||
| 262 | + break; | ||
| 263 | + | ||
| 264 | + gcc_assert (next_ps_i); | ||
| 265 | + gcc_assert (remove_node_from_ps (ps, next_ps_i)); | ||
| 266 | + success = | ||
| 267 | + try_scheduling_node_in_cycle (ps, g->closing_branch, | ||
| 268 | + g->closing_branch->cuid, c, | ||
| 269 | + sched_nodes, &num_splits, | ||
| 270 | + tmp_precede, tmp_follow); | ||
| 271 | + gcc_assert (num_splits == 0); | ||
| 272 | + if (!success) | ||
| 273 | + { | ||
| 274 | + if (dump_file) | ||
| 275 | + fprintf (dump_file, | ||
| 276 | + "SMS failed to schedule branch at cycle: %d, " | ||
| 277 | + "bringing it back to cycle %d\n", c, branch_cycle); | ||
| 278 | + | ||
| 279 | + /* The branch was failed to be placed in row ii - 1. | ||
| 280 | + Put it back in it's original place in the partial | ||
| 281 | + schedualing. */ | ||
| 282 | + set_must_precede_follow (&tmp_follow, must_follow, &tmp_precede, | ||
| 283 | + must_precede, branch_cycle, start, end, | ||
| 284 | + step); | ||
| 285 | + success = | ||
| 286 | + try_scheduling_node_in_cycle (ps, g->closing_branch, | ||
| 287 | + g->closing_branch->cuid, | ||
| 288 | + branch_cycle, sched_nodes, | ||
| 289 | + &num_splits, tmp_precede, | ||
| 290 | + tmp_follow); | ||
| 291 | + gcc_assert (success && (num_splits == 0)); | ||
| 292 | + ok = false; | ||
| 293 | + } | ||
| 294 | + else | ||
| 295 | + { | ||
| 296 | + /* The branch is placed in row ii - 1. */ | ||
| 297 | + if (dump_file) | ||
| 298 | + fprintf (dump_file, | ||
| 299 | + "SMS success in moving branch to cycle %d\n", c); | ||
| 300 | + | ||
| 301 | + update_node_sched_params (g->closing_branch, ii, c, | ||
| 302 | + PS_MIN_CYCLE (ps)); | ||
| 303 | + ok = true; | ||
| 304 | + } | ||
| 305 | + | ||
| 306 | + free (must_precede); | ||
| 307 | + free (must_follow); | ||
| 308 | + } | ||
| 309 | + | ||
| 310 | +clear: | ||
| 311 | + free (sched_nodes); | ||
| 312 | + return ok; | ||
| 313 | +} | ||
| 314 | + | ||
| 315 | static void | ||
| 316 | duplicate_insns_of_cycles (partial_schedule_ptr ps, int from_stage, | ||
| 317 | int to_stage, int for_prolog, rtx count_reg) | ||
| 318 | @@ -1116,6 +1340,7 @@ | ||
| 319 | int mii, rec_mii; | ||
| 320 | unsigned stage_count = 0; | ||
| 321 | HOST_WIDEST_INT loop_count = 0; | ||
| 322 | + bool opt_sc_p = false; | ||
| 323 | |||
| 324 | if (! (g = g_arr[loop->num])) | ||
| 325 | continue; | ||
| 326 | @@ -1197,14 +1422,32 @@ | ||
| 327 | set_node_sched_params (g); | ||
| 328 | |||
| 329 | ps = sms_schedule_by_order (g, mii, maxii, node_order); | ||
| 330 | - | ||
| 331 | - if (ps) | ||
| 332 | - { | ||
| 333 | - stage_count = calculate_stage_count (ps); | ||
| 334 | - gcc_assert(stage_count >= 1); | ||
| 335 | - PS_STAGE_COUNT(ps) = stage_count; | ||
| 336 | - } | ||
| 337 | - | ||
| 338 | + | ||
| 339 | + if (ps) | ||
| 340 | + { | ||
| 341 | + /* Try to achieve optimized SC by normalizing the partial | ||
| 342 | + schedule (having the cycles start from cycle zero). | ||
| 343 | + The branch location must be placed in row ii-1 in the | ||
| 344 | + final scheduling. If failed, shift all instructions to | ||
| 345 | + position the branch in row ii-1. */ | ||
| 346 | + opt_sc_p = optimize_sc (ps, g); | ||
| 347 | + if (opt_sc_p) | ||
| 348 | + stage_count = calculate_stage_count (ps, 0); | ||
| 349 | + else | ||
| 350 | + { | ||
| 351 | + /* Bring the branch to cycle ii-1. */ | ||
| 352 | + int amount = SCHED_TIME (g->closing_branch) - (ps->ii - 1); | ||
| 353 | + | ||
| 354 | + if (dump_file) | ||
| 355 | + fprintf (dump_file, "SMS schedule branch at cycle ii-1\n"); | ||
| 356 | + | ||
| 357 | + stage_count = calculate_stage_count (ps, amount); | ||
| 358 | + } | ||
| 359 | + | ||
| 360 | + gcc_assert (stage_count >= 1); | ||
| 361 | + PS_STAGE_COUNT (ps) = stage_count; | ||
| 362 | + } | ||
| 363 | + | ||
| 364 | /* The default value of PARAM_SMS_MIN_SC is 2 as stage count of | ||
| 365 | 1 means that there is no interleaving between iterations thus | ||
| 366 | we let the scheduling passes do the job in this case. */ | ||
| 367 | @@ -1225,12 +1468,16 @@ | ||
| 368 | else | ||
| 369 | { | ||
| 370 | struct undo_replace_buff_elem *reg_move_replaces; | ||
| 371 | - int amount = SCHED_TIME (g->closing_branch) + 1; | ||
| 372 | + | ||
| 373 | + if (!opt_sc_p) | ||
| 374 | + { | ||
| 375 | + /* Rotate the partial schedule to have the branch in row ii-1. */ | ||
| 376 | + int amount = SCHED_TIME (g->closing_branch) - (ps->ii - 1); | ||
| 377 | + | ||
| 378 | + reset_sched_times (ps, amount); | ||
| 379 | + rotate_partial_schedule (ps, amount); | ||
| 380 | + } | ||
| 381 | |||
| 382 | - /* Set the stage boundaries. The closing_branch was scheduled | ||
| 383 | - and should appear in the last (ii-1) row. */ | ||
| 384 | - reset_sched_times (ps, amount); | ||
| 385 | - rotate_partial_schedule (ps, amount); | ||
| 386 | set_columns_for_ps (ps); | ||
| 387 | |||
| 388 | canon_loop (loop); | ||
| 389 | @@ -1382,13 +1629,11 @@ | ||
| 390 | scheduling window is empty and zero otherwise. */ | ||
| 391 | |||
| 392 | static int | ||
| 393 | -get_sched_window (partial_schedule_ptr ps, int *nodes_order, int i, | ||
| 394 | +get_sched_window (partial_schedule_ptr ps, ddg_node_ptr u_node, | ||
| 395 | sbitmap sched_nodes, int ii, int *start_p, int *step_p, int *end_p) | ||
| 396 | { | ||
| 397 | int start, step, end; | ||
| 398 | ddg_edge_ptr e; | ||
| 399 | - int u = nodes_order [i]; | ||
| 400 | - ddg_node_ptr u_node = &ps->g->nodes[u]; | ||
| 401 | sbitmap psp = sbitmap_alloc (ps->g->num_nodes); | ||
| 402 | sbitmap pss = sbitmap_alloc (ps->g->num_nodes); | ||
| 403 | sbitmap u_node_preds = NODE_PREDECESSORS (u_node); | ||
| 404 | @@ -1800,7 +2045,7 @@ | ||
| 405 | |||
| 406 | /* Try to get non-empty scheduling window. */ | ||
| 407 | success = 0; | ||
| 408 | - if (get_sched_window (ps, nodes_order, i, sched_nodes, ii, &start, | ||
| 409 | + if (get_sched_window (ps, u_node, sched_nodes, ii, &start, | ||
| 410 | &step, &end) == 0) | ||
| 411 | { | ||
| 412 | if (dump_file) | ||
| 413 | @@ -1817,24 +2062,11 @@ | ||
| 414 | |||
| 415 | for (c = start; c != end; c += step) | ||
| 416 | { | ||
| 417 | - sbitmap tmp_precede = NULL; | ||
| 418 | - sbitmap tmp_follow = NULL; | ||
| 419 | - | ||
| 420 | - if (c == start) | ||
| 421 | - { | ||
| 422 | - if (step == 1) | ||
| 423 | - tmp_precede = must_precede; | ||
| 424 | - else /* step == -1. */ | ||
| 425 | - tmp_follow = must_follow; | ||
| 426 | - } | ||
| 427 | - if (c == end - step) | ||
| 428 | - { | ||
| 429 | - if (step == 1) | ||
| 430 | - tmp_follow = must_follow; | ||
| 431 | - else /* step == -1. */ | ||
| 432 | - tmp_precede = must_precede; | ||
| 433 | - } | ||
| 434 | - | ||
| 435 | + sbitmap tmp_precede, tmp_follow; | ||
| 436 | + | ||
| 437 | + set_must_precede_follow (&tmp_follow, must_follow, | ||
| 438 | + &tmp_precede, must_precede, | ||
| 439 | + c, start, end, step); | ||
| 440 | success = | ||
| 441 | try_scheduling_node_in_cycle (ps, u_node, u, c, | ||
| 442 | sched_nodes, | ||
| 443 | @@ -2899,12 +3131,10 @@ | ||
| 444 | } | ||
| 445 | |||
| 446 | /* Calculate the stage count of the partial schedule PS. The calculation | ||
| 447 | - takes into account the rotation to bring the closing branch to row | ||
| 448 | - ii-1. */ | ||
| 449 | + takes into account the rotation amount passed in ROTATION_AMOUNT. */ | ||
| 450 | int | ||
| 451 | -calculate_stage_count (partial_schedule_ptr ps) | ||
| 452 | +calculate_stage_count (partial_schedule_ptr ps, int rotation_amount) | ||
| 453 | { | ||
| 454 | - int rotation_amount = (SCHED_TIME (ps->g->closing_branch)) + 1; | ||
| 455 | int new_min_cycle = PS_MIN_CYCLE (ps) - rotation_amount; | ||
| 456 | int new_max_cycle = PS_MAX_CYCLE (ps) - rotation_amount; | ||
| 457 | int stage_count = CALC_STAGE_COUNT (-1, new_min_cycle, ps->ii); | ||
| 458 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106785.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106785.patch new file mode 100644 index 0000000000..608dd18336 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106785.patch | |||
| @@ -0,0 +1,39 @@ | |||
| 1 | 2011-08-09 Revital Eres <revital.eres@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | Backport from trunk -r176972: | ||
| 5 | |||
| 6 | * ddg.c (create_ddg_dep_from_intra_loop_link): Remove | ||
| 7 | the creation of anti-dep edge from a branch. | ||
| 8 | (add_cross_iteration_register_deps): | ||
| 9 | Create anti-dep edge from a branch. | ||
| 10 | |||
| 11 | === modified file 'gcc/ddg.c' | ||
| 12 | --- old/gcc/ddg.c 2011-07-04 11:00:06 +0000 | ||
| 13 | +++ new/gcc/ddg.c 2011-07-31 11:29:10 +0000 | ||
| 14 | @@ -197,11 +197,6 @@ | ||
| 15 | } | ||
| 16 | } | ||
| 17 | |||
| 18 | - /* If a true dep edge enters the branch create an anti edge in the | ||
| 19 | - opposite direction to prevent the creation of reg-moves. */ | ||
| 20 | - if ((DEP_TYPE (link) == REG_DEP_TRUE) && JUMP_P (dest_node->insn)) | ||
| 21 | - create_ddg_dep_no_link (g, dest_node, src_node, ANTI_DEP, REG_DEP, 1); | ||
| 22 | - | ||
| 23 | latency = dep_cost (link); | ||
| 24 | e = create_ddg_edge (src_node, dest_node, t, dt, latency, distance); | ||
| 25 | add_edge_to_ddg (g, e); | ||
| 26 | @@ -306,8 +301,11 @@ | ||
| 27 | |||
| 28 | gcc_assert (first_def_node); | ||
| 29 | |||
| 30 | + /* Always create the edge if the use node is a branch in | ||
| 31 | + order to prevent the creation of reg-moves. */ | ||
| 32 | if (DF_REF_ID (last_def) != DF_REF_ID (first_def) | ||
| 33 | - || !flag_modulo_sched_allow_regmoves) | ||
| 34 | + || !flag_modulo_sched_allow_regmoves | ||
| 35 | + || JUMP_P (use_node->insn)) | ||
| 36 | create_ddg_dep_no_link (g, use_node, first_def_node, ANTI_DEP, | ||
| 37 | REG_DEP, 1); | ||
| 38 | |||
| 39 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106786.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106786.patch new file mode 100644 index 0000000000..55b7cc1078 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106786.patch | |||
| @@ -0,0 +1,94 @@ | |||
| 1 | 2011-08-11 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | Backport from mainline: | ||
| 5 | |||
| 6 | 2011-07-28 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 7 | |||
| 8 | * config/arm/vfp.md ("*movdf_vfp"): Handle the VFP constraints | ||
| 9 | before the core constraints. Adjust attributes. | ||
| 10 | (*thumb2_movdf_vfp"): Likewise. | ||
| 11 | |||
| 12 | === modified file 'gcc/config/arm/vfp.md' | ||
| 13 | --- old/gcc/config/arm/vfp.md 2011-01-20 22:03:29 +0000 | ||
| 14 | +++ new/gcc/config/arm/vfp.md 2011-07-27 12:59:19 +0000 | ||
| 15 | @@ -401,8 +401,8 @@ | ||
| 16 | ;; DFmode moves | ||
| 17 | |||
| 18 | (define_insn "*movdf_vfp" | ||
| 19 | - [(set (match_operand:DF 0 "nonimmediate_soft_df_operand" "=w,?r,w ,r, m,w ,Uv,w,r") | ||
| 20 | - (match_operand:DF 1 "soft_df_operand" " ?r,w,Dy,mF,r,UvF,w, w,r"))] | ||
| 21 | + [(set (match_operand:DF 0 "nonimmediate_soft_df_operand" "=w,?r,w ,w ,Uv,r, m,w,r") | ||
| 22 | + (match_operand:DF 1 "soft_df_operand" " ?r,w,Dy,UvF,w ,mF,r,w,r"))] | ||
| 23 | "TARGET_ARM && TARGET_HARD_FLOAT && TARGET_VFP | ||
| 24 | && ( register_operand (operands[0], DFmode) | ||
| 25 | || register_operand (operands[1], DFmode))" | ||
| 26 | @@ -418,9 +418,9 @@ | ||
| 27 | gcc_assert (TARGET_VFP_DOUBLE); | ||
| 28 | return \"fconstd%?\\t%P0, #%G1\"; | ||
| 29 | case 3: case 4: | ||
| 30 | + return output_move_vfp (operands); | ||
| 31 | + case 5: case 6: | ||
| 32 | return output_move_double (operands); | ||
| 33 | - case 5: case 6: | ||
| 34 | - return output_move_vfp (operands); | ||
| 35 | case 7: | ||
| 36 | if (TARGET_VFP_SINGLE) | ||
| 37 | return \"fcpys%?\\t%0, %1\;fcpys%?\\t%p0, %p1\"; | ||
| 38 | @@ -435,7 +435,7 @@ | ||
| 39 | " | ||
| 40 | [(set_attr "type" | ||
| 41 | "r_2_f,f_2_r,fconstd,f_loadd,f_stored,load2,store2,ffarithd,*") | ||
| 42 | - (set (attr "length") (cond [(eq_attr "alternative" "3,4,8") (const_int 8) | ||
| 43 | + (set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8) | ||
| 44 | (eq_attr "alternative" "7") | ||
| 45 | (if_then_else | ||
| 46 | (eq (symbol_ref "TARGET_VFP_SINGLE") | ||
| 47 | @@ -449,8 +449,8 @@ | ||
| 48 | ) | ||
| 49 | |||
| 50 | (define_insn "*thumb2_movdf_vfp" | ||
| 51 | - [(set (match_operand:DF 0 "nonimmediate_soft_df_operand" "=w,?r,w ,r, m,w ,Uv,w,r") | ||
| 52 | - (match_operand:DF 1 "soft_df_operand" " ?r,w,Dy,mF,r,UvF,w, w,r"))] | ||
| 53 | + [(set (match_operand:DF 0 "nonimmediate_soft_df_operand" "=w,?r,w ,w ,Uv,r ,m,w,r") | ||
| 54 | + (match_operand:DF 1 "soft_df_operand" " ?r,w,Dy,UvF,w, mF,r, w,r"))] | ||
| 55 | "TARGET_THUMB2 && TARGET_HARD_FLOAT && TARGET_VFP" | ||
| 56 | "* | ||
| 57 | { | ||
| 58 | @@ -463,10 +463,10 @@ | ||
| 59 | case 2: | ||
| 60 | gcc_assert (TARGET_VFP_DOUBLE); | ||
| 61 | return \"fconstd%?\\t%P0, #%G1\"; | ||
| 62 | - case 3: case 4: case 8: | ||
| 63 | + case 3: case 4: | ||
| 64 | + return output_move_vfp (operands); | ||
| 65 | + case 5: case 6: case 8: | ||
| 66 | return output_move_double (operands); | ||
| 67 | - case 5: case 6: | ||
| 68 | - return output_move_vfp (operands); | ||
| 69 | case 7: | ||
| 70 | if (TARGET_VFP_SINGLE) | ||
| 71 | return \"fcpys%?\\t%0, %1\;fcpys%?\\t%p0, %p1\"; | ||
| 72 | @@ -478,8 +478,8 @@ | ||
| 73 | } | ||
| 74 | " | ||
| 75 | [(set_attr "type" | ||
| 76 | - "r_2_f,f_2_r,fconstd,load2,store2,f_loadd,f_stored,ffarithd,*") | ||
| 77 | - (set (attr "length") (cond [(eq_attr "alternative" "3,4,8") (const_int 8) | ||
| 78 | + "r_2_f,f_2_r,fconstd,f_loadd,f_stored,load2,store2,ffarithd,*") | ||
| 79 | + (set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8) | ||
| 80 | (eq_attr "alternative" "7") | ||
| 81 | (if_then_else | ||
| 82 | (eq (symbol_ref "TARGET_VFP_SINGLE") | ||
| 83 | @@ -487,8 +487,8 @@ | ||
| 84 | (const_int 8) | ||
| 85 | (const_int 4))] | ||
| 86 | (const_int 4))) | ||
| 87 | - (set_attr "pool_range" "*,*,*,4096,*,1020,*,*,*") | ||
| 88 | - (set_attr "neg_pool_range" "*,*,*,0,*,1008,*,*,*")] | ||
| 89 | + (set_attr "pool_range" "*,*,*,1020,*,4096,*,*,*") | ||
| 90 | + (set_attr "neg_pool_range" "*,*,*,1008,*,0,*,*,*")] | ||
| 91 | ) | ||
| 92 | |||
| 93 | |||
| 94 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106787.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106787.patch new file mode 100644 index 0000000000..bdb48ad1e6 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106787.patch | |||
| @@ -0,0 +1,30 @@ | |||
| 1 | 2011-08-15 Michael Hope <michael.hope@linaro.org> | ||
| 2 | |||
| 3 | Backport from mainline r177357 | ||
| 4 | |||
| 5 | gcc/testsuite/ | ||
| 6 | 2011-08-04 Ian Bolton <ian.bolton@arm.com> | ||
| 7 | |||
| 8 | * gcc.target/arm/vfp-1.c: no large negative offsets on Thumb2. | ||
| 9 | |||
| 10 | === modified file 'gcc/testsuite/gcc.target/arm/vfp-1.c' | ||
| 11 | --- old/gcc/testsuite/gcc.target/arm/vfp-1.c 2011-01-01 08:52:03 +0000 | ||
| 12 | +++ new/gcc/testsuite/gcc.target/arm/vfp-1.c 2011-08-09 23:22:51 +0000 | ||
| 13 | @@ -127,13 +127,13 @@ | ||
| 14 | |||
| 15 | void test_ldst (float f[], double d[]) { | ||
| 16 | /* { dg-final { scan-assembler "flds.+ \\\[r0, #1020\\\]" } } */ | ||
| 17 | - /* { dg-final { scan-assembler "flds.+ \\\[r0, #-1020\\\]" } } */ | ||
| 18 | + /* { dg-final { scan-assembler "flds.+ \\\[r\[0-9\], #-1020\\\]" { target { arm32 && { ! arm_thumb2_ok } } } } } */ | ||
| 19 | /* { dg-final { scan-assembler "add.+ r0, #1024" } } */ | ||
| 20 | - /* { dg-final { scan-assembler "fsts.+ \\\[r0, #0\\\]\n" } } */ | ||
| 21 | + /* { dg-final { scan-assembler "fsts.+ \\\[r\[0-9\], #0\\\]\n" } } */ | ||
| 22 | f[256] = f[255] + f[-255]; | ||
| 23 | |||
| 24 | /* { dg-final { scan-assembler "fldd.+ \\\[r1, #1016\\\]" } } */ | ||
| 25 | - /* { dg-final { scan-assembler "fldd.+ \\\[r1, #-1016\\\]" } } */ | ||
| 26 | + /* { dg-final { scan-assembler "fldd.+ \\\[r\[1-9\], #-1016\\\]" { target { arm32 && { ! arm_thumb2_ok } } } } } */ | ||
| 27 | /* { dg-final { scan-assembler "fstd.+ \\\[r1, #256\\\]" } } */ | ||
| 28 | d[32] = d[127] + d[-127]; | ||
| 29 | } | ||
| 30 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106789.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106789.patch new file mode 100644 index 0000000000..a384ce7a18 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106789.patch | |||
| @@ -0,0 +1,33 @@ | |||
| 1 | 2011-08-15 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | * config/rs6000/rs6000.c (paired_expand_vector_init): Don't create | ||
| 5 | CONST_VECTORs with symbolic elements. | ||
| 6 | (rs6000_expand_vector_init): Likewise. | ||
| 7 | |||
| 8 | === modified file 'gcc/config/rs6000/rs6000.c' | ||
| 9 | --- old/gcc/config/rs6000/rs6000.c 2011-07-27 18:17:15 +0000 | ||
| 10 | +++ new/gcc/config/rs6000/rs6000.c 2011-08-16 08:59:36 +0000 | ||
| 11 | @@ -5134,7 +5134,9 @@ | ||
| 12 | for (i = 0; i < n_elts; ++i) | ||
| 13 | { | ||
| 14 | x = XVECEXP (vals, 0, i); | ||
| 15 | - if (!CONSTANT_P (x)) | ||
| 16 | + if (!(CONST_INT_P (x) | ||
| 17 | + || GET_CODE (x) == CONST_DOUBLE | ||
| 18 | + || GET_CODE (x) == CONST_FIXED)) | ||
| 19 | ++n_var; | ||
| 20 | } | ||
| 21 | if (n_var == 0) | ||
| 22 | @@ -5286,7 +5288,9 @@ | ||
| 23 | for (i = 0; i < n_elts; ++i) | ||
| 24 | { | ||
| 25 | x = XVECEXP (vals, 0, i); | ||
| 26 | - if (!CONSTANT_P (x)) | ||
| 27 | + if (!(CONST_INT_P (x) | ||
| 28 | + || GET_CODE (x) == CONST_DOUBLE | ||
| 29 | + || GET_CODE (x) == CONST_FIXED)) | ||
| 30 | ++n_var, one_var = i; | ||
| 31 | else if (x != CONST0_RTX (inner_mode)) | ||
| 32 | all_const_zero = false; | ||
| 33 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106792.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106792.patch new file mode 100644 index 0000000000..12c578c2b4 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106792.patch | |||
| @@ -0,0 +1,61 @@ | |||
| 1 | 2011-08-18 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | Backport from mainline: | ||
| 5 | |||
| 6 | 2011-08-12 Richard Sandiford <rdsandiford@googlemail.com> | ||
| 7 | |||
| 8 | * config/arm/arm.c (get_label_padding): New function. | ||
| 9 | (create_fix_barrier, arm_reorg): Use it. | ||
| 10 | |||
| 11 | === modified file 'gcc/config/arm/arm.c' | ||
| 12 | --- old/gcc/config/arm/arm.c 2011-07-04 14:03:49 +0000 | ||
| 13 | +++ new/gcc/config/arm/arm.c 2011-08-12 08:08:31 +0000 | ||
| 14 | @@ -11769,6 +11769,19 @@ | ||
| 15 | return 0; | ||
| 16 | } | ||
| 17 | |||
| 18 | +/* Return the maximum amount of padding that will be inserted before | ||
| 19 | + label LABEL. */ | ||
| 20 | + | ||
| 21 | +static HOST_WIDE_INT | ||
| 22 | +get_label_padding (rtx label) | ||
| 23 | +{ | ||
| 24 | + HOST_WIDE_INT align, min_insn_size; | ||
| 25 | + | ||
| 26 | + align = 1 << label_to_alignment (label); | ||
| 27 | + min_insn_size = TARGET_THUMB ? 2 : 4; | ||
| 28 | + return align > min_insn_size ? align - min_insn_size : 0; | ||
| 29 | +} | ||
| 30 | + | ||
| 31 | /* Move a minipool fix MP from its current location to before MAX_MP. | ||
| 32 | If MAX_MP is NULL, then MP doesn't need moving, but the addressing | ||
| 33 | constraints may need updating. */ | ||
| 34 | @@ -12315,8 +12328,12 @@ | ||
| 35 | within range. */ | ||
| 36 | gcc_assert (GET_CODE (from) != BARRIER); | ||
| 37 | |||
| 38 | - /* Count the length of this insn. */ | ||
| 39 | - count += get_attr_length (from); | ||
| 40 | + /* Count the length of this insn. This must stay in sync with the | ||
| 41 | + code that pushes minipool fixes. */ | ||
| 42 | + if (LABEL_P (from)) | ||
| 43 | + count += get_label_padding (from); | ||
| 44 | + else | ||
| 45 | + count += get_attr_length (from); | ||
| 46 | |||
| 47 | /* If there is a jump table, add its length. */ | ||
| 48 | tmp = is_jump_table (from); | ||
| 49 | @@ -12736,6 +12753,11 @@ | ||
| 50 | insn = table; | ||
| 51 | } | ||
| 52 | } | ||
| 53 | + else if (LABEL_P (insn)) | ||
| 54 | + /* Add the worst-case padding due to alignment. We don't add | ||
| 55 | + the _current_ padding because the minipool insertions | ||
| 56 | + themselves might change it. */ | ||
| 57 | + address += get_label_padding (insn); | ||
| 58 | } | ||
| 59 | |||
| 60 | fix = minipool_fix_head; | ||
| 61 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106793.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106793.patch new file mode 100644 index 0000000000..04dabaf604 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106793.patch | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | 2011-08-18 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | Backport from mainline: | ||
| 5 | |||
| 6 | 2011-08-18 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 7 | |||
| 8 | * config/arm/arm.c (arm_rtx_costs_1): Don't modify the costs of SET. | ||
| 9 | (arm_size_rtx_costs): Likewise. | ||
| 10 | |||
| 11 | === modified file 'gcc/config/arm/arm.c' | ||
| 12 | --- old/gcc/config/arm/arm.c 2011-08-12 08:08:31 +0000 | ||
| 13 | +++ new/gcc/config/arm/arm.c 2011-08-18 13:53:37 +0000 | ||
| 14 | @@ -7464,6 +7464,9 @@ | ||
| 15 | *total = COSTS_N_INSNS (4); | ||
| 16 | return true; | ||
| 17 | |||
| 18 | + case SET: | ||
| 19 | + return false; | ||
| 20 | + | ||
| 21 | default: | ||
| 22 | *total = COSTS_N_INSNS (4); | ||
| 23 | return false; | ||
| 24 | @@ -7811,6 +7814,9 @@ | ||
| 25 | *total = COSTS_N_INSNS (1) + 1; | ||
| 26 | return true; | ||
| 27 | |||
| 28 | + case SET: | ||
| 29 | + return false; | ||
| 30 | + | ||
| 31 | default: | ||
| 32 | if (mode != VOIDmode) | ||
| 33 | *total = COSTS_N_INSNS (ARM_NUM_REGS (mode)); | ||
| 34 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106794.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106794.patch new file mode 100644 index 0000000000..29663c64a0 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106794.patch | |||
| @@ -0,0 +1,2648 @@ | |||
| 1 | 2011-08-24 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | * config/arm/arm.c (arm_init_neon_builtins): Use | ||
| 5 | n_operands instead of n_generator_args. | ||
| 6 | |||
| 7 | 2011-08-24 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 8 | |||
| 9 | Backport from mainline | ||
| 10 | 2011-04-18 Jie Zhang <jie@codesourcery.com> | ||
| 11 | Richard Earnshaw <rearnsha@arm.com> | ||
| 12 | |||
| 13 | * arm.c (neon_builtin_type_bits): Remove. | ||
| 14 | (typedef enum neon_builtin_mode): New. | ||
| 15 | (T_MAX): Don't define. | ||
| 16 | (typedef enum neon_builtin_datum): Remove bits, codes[], | ||
| 17 | num_vars and base_fcode. Add mode, code and fcode. | ||
| 18 | (VAR1, VAR2, VAR3, VAR4, VAR5, VAR6, VAR7, VAR8, VAR9 | ||
| 19 | VAR10): Change accordingly. | ||
| 20 | (neon_builtin_data[]): Change accordingly | ||
| 21 | (arm_init_neon_builtins): Change accordingly. | ||
| 22 | (neon_builtin_compare): Remove. | ||
| 23 | (locate_neon_builtin_icode): Remove. | ||
| 24 | (arm_expand_neon_builtin): Change accordingly. | ||
| 25 | |||
| 26 | * arm.h (enum arm_builtins): Move to ... | ||
| 27 | * arm.c (enum arm_builtins): ... here; and rearrange builtin code. | ||
| 28 | |||
| 29 | * arm.c (arm_builtin_decl): Declare. | ||
| 30 | (TARGET_BUILTIN_DECL): Define. | ||
| 31 | (enum arm_builtins): Correct ARM_BUILTIN_MAX. | ||
| 32 | (arm_builtin_decls[]): New. | ||
| 33 | (arm_init_neon_builtins): Store builtin declarations in | ||
| 34 | arm_builtin_decls[]. | ||
| 35 | (arm_init_tls_builtins): Likewise. | ||
| 36 | (arm_init_iwmmxt_builtins): Likewise. Refactor initialization code. | ||
| 37 | (arm_builtin_decl): New. | ||
| 38 | |||
| 39 | === modified file 'gcc/config/arm/arm.c' | ||
| 40 | --- old/gcc/config/arm/arm.c 2011-08-18 13:53:37 +0000 | ||
| 41 | +++ new/gcc/config/arm/arm.c 2011-08-24 17:35:16 +0000 | ||
| 42 | @@ -162,6 +162,7 @@ | ||
| 43 | static rtx arm_expand_binop_builtin (enum insn_code, tree, rtx); | ||
| 44 | static rtx arm_expand_unop_builtin (enum insn_code, tree, rtx, int); | ||
| 45 | static rtx arm_expand_builtin (tree, rtx, rtx, enum machine_mode, int); | ||
| 46 | +static tree arm_builtin_decl (unsigned, bool); | ||
| 47 | static void emit_constant_insn (rtx cond, rtx pattern); | ||
| 48 | static rtx emit_set_insn (rtx, rtx); | ||
| 49 | static int arm_arg_partial_bytes (CUMULATIVE_ARGS *, enum machine_mode, | ||
| 50 | @@ -415,6 +416,8 @@ | ||
| 51 | #define TARGET_INIT_BUILTINS arm_init_builtins | ||
| 52 | #undef TARGET_EXPAND_BUILTIN | ||
| 53 | #define TARGET_EXPAND_BUILTIN arm_expand_builtin | ||
| 54 | +#undef TARGET_BUILTIN_DECL | ||
| 55 | +#define TARGET_BUILTIN_DECL arm_builtin_decl | ||
| 56 | |||
| 57 | #undef TARGET_INIT_LIBFUNCS | ||
| 58 | #define TARGET_INIT_LIBFUNCS arm_init_libfuncs | ||
| 59 | @@ -18147,505 +18150,31 @@ | ||
| 60 | return value; | ||
| 61 | } | ||
| 62 | |||
| 63 | -#define def_mbuiltin(MASK, NAME, TYPE, CODE) \ | ||
| 64 | - do \ | ||
| 65 | - { \ | ||
| 66 | - if ((MASK) & insn_flags) \ | ||
| 67 | - add_builtin_function ((NAME), (TYPE), (CODE), \ | ||
| 68 | - BUILT_IN_MD, NULL, NULL_TREE); \ | ||
| 69 | - } \ | ||
| 70 | - while (0) | ||
| 71 | - | ||
| 72 | -struct builtin_description | ||
| 73 | -{ | ||
| 74 | - const unsigned int mask; | ||
| 75 | - const enum insn_code icode; | ||
| 76 | - const char * const name; | ||
| 77 | - const enum arm_builtins code; | ||
| 78 | - const enum rtx_code comparison; | ||
| 79 | - const unsigned int flag; | ||
| 80 | -}; | ||
| 81 | - | ||
| 82 | -static const struct builtin_description bdesc_2arg[] = | ||
| 83 | -{ | ||
| 84 | -#define IWMMXT_BUILTIN(code, string, builtin) \ | ||
| 85 | - { FL_IWMMXT, CODE_FOR_##code, "__builtin_arm_" string, \ | ||
| 86 | - ARM_BUILTIN_##builtin, UNKNOWN, 0 }, | ||
| 87 | - | ||
| 88 | - IWMMXT_BUILTIN (addv8qi3, "waddb", WADDB) | ||
| 89 | - IWMMXT_BUILTIN (addv4hi3, "waddh", WADDH) | ||
| 90 | - IWMMXT_BUILTIN (addv2si3, "waddw", WADDW) | ||
| 91 | - IWMMXT_BUILTIN (subv8qi3, "wsubb", WSUBB) | ||
| 92 | - IWMMXT_BUILTIN (subv4hi3, "wsubh", WSUBH) | ||
| 93 | - IWMMXT_BUILTIN (subv2si3, "wsubw", WSUBW) | ||
| 94 | - IWMMXT_BUILTIN (ssaddv8qi3, "waddbss", WADDSSB) | ||
| 95 | - IWMMXT_BUILTIN (ssaddv4hi3, "waddhss", WADDSSH) | ||
| 96 | - IWMMXT_BUILTIN (ssaddv2si3, "waddwss", WADDSSW) | ||
| 97 | - IWMMXT_BUILTIN (sssubv8qi3, "wsubbss", WSUBSSB) | ||
| 98 | - IWMMXT_BUILTIN (sssubv4hi3, "wsubhss", WSUBSSH) | ||
| 99 | - IWMMXT_BUILTIN (sssubv2si3, "wsubwss", WSUBSSW) | ||
| 100 | - IWMMXT_BUILTIN (usaddv8qi3, "waddbus", WADDUSB) | ||
| 101 | - IWMMXT_BUILTIN (usaddv4hi3, "waddhus", WADDUSH) | ||
| 102 | - IWMMXT_BUILTIN (usaddv2si3, "waddwus", WADDUSW) | ||
| 103 | - IWMMXT_BUILTIN (ussubv8qi3, "wsubbus", WSUBUSB) | ||
| 104 | - IWMMXT_BUILTIN (ussubv4hi3, "wsubhus", WSUBUSH) | ||
| 105 | - IWMMXT_BUILTIN (ussubv2si3, "wsubwus", WSUBUSW) | ||
| 106 | - IWMMXT_BUILTIN (mulv4hi3, "wmulul", WMULUL) | ||
| 107 | - IWMMXT_BUILTIN (smulv4hi3_highpart, "wmulsm", WMULSM) | ||
| 108 | - IWMMXT_BUILTIN (umulv4hi3_highpart, "wmulum", WMULUM) | ||
| 109 | - IWMMXT_BUILTIN (eqv8qi3, "wcmpeqb", WCMPEQB) | ||
| 110 | - IWMMXT_BUILTIN (eqv4hi3, "wcmpeqh", WCMPEQH) | ||
| 111 | - IWMMXT_BUILTIN (eqv2si3, "wcmpeqw", WCMPEQW) | ||
| 112 | - IWMMXT_BUILTIN (gtuv8qi3, "wcmpgtub", WCMPGTUB) | ||
| 113 | - IWMMXT_BUILTIN (gtuv4hi3, "wcmpgtuh", WCMPGTUH) | ||
| 114 | - IWMMXT_BUILTIN (gtuv2si3, "wcmpgtuw", WCMPGTUW) | ||
| 115 | - IWMMXT_BUILTIN (gtv8qi3, "wcmpgtsb", WCMPGTSB) | ||
| 116 | - IWMMXT_BUILTIN (gtv4hi3, "wcmpgtsh", WCMPGTSH) | ||
| 117 | - IWMMXT_BUILTIN (gtv2si3, "wcmpgtsw", WCMPGTSW) | ||
| 118 | - IWMMXT_BUILTIN (umaxv8qi3, "wmaxub", WMAXUB) | ||
| 119 | - IWMMXT_BUILTIN (smaxv8qi3, "wmaxsb", WMAXSB) | ||
| 120 | - IWMMXT_BUILTIN (umaxv4hi3, "wmaxuh", WMAXUH) | ||
| 121 | - IWMMXT_BUILTIN (smaxv4hi3, "wmaxsh", WMAXSH) | ||
| 122 | - IWMMXT_BUILTIN (umaxv2si3, "wmaxuw", WMAXUW) | ||
| 123 | - IWMMXT_BUILTIN (smaxv2si3, "wmaxsw", WMAXSW) | ||
| 124 | - IWMMXT_BUILTIN (uminv8qi3, "wminub", WMINUB) | ||
| 125 | - IWMMXT_BUILTIN (sminv8qi3, "wminsb", WMINSB) | ||
| 126 | - IWMMXT_BUILTIN (uminv4hi3, "wminuh", WMINUH) | ||
| 127 | - IWMMXT_BUILTIN (sminv4hi3, "wminsh", WMINSH) | ||
| 128 | - IWMMXT_BUILTIN (uminv2si3, "wminuw", WMINUW) | ||
| 129 | - IWMMXT_BUILTIN (sminv2si3, "wminsw", WMINSW) | ||
| 130 | - IWMMXT_BUILTIN (iwmmxt_anddi3, "wand", WAND) | ||
| 131 | - IWMMXT_BUILTIN (iwmmxt_nanddi3, "wandn", WANDN) | ||
| 132 | - IWMMXT_BUILTIN (iwmmxt_iordi3, "wor", WOR) | ||
| 133 | - IWMMXT_BUILTIN (iwmmxt_xordi3, "wxor", WXOR) | ||
| 134 | - IWMMXT_BUILTIN (iwmmxt_uavgv8qi3, "wavg2b", WAVG2B) | ||
| 135 | - IWMMXT_BUILTIN (iwmmxt_uavgv4hi3, "wavg2h", WAVG2H) | ||
| 136 | - IWMMXT_BUILTIN (iwmmxt_uavgrndv8qi3, "wavg2br", WAVG2BR) | ||
| 137 | - IWMMXT_BUILTIN (iwmmxt_uavgrndv4hi3, "wavg2hr", WAVG2HR) | ||
| 138 | - IWMMXT_BUILTIN (iwmmxt_wunpckilb, "wunpckilb", WUNPCKILB) | ||
| 139 | - IWMMXT_BUILTIN (iwmmxt_wunpckilh, "wunpckilh", WUNPCKILH) | ||
| 140 | - IWMMXT_BUILTIN (iwmmxt_wunpckilw, "wunpckilw", WUNPCKILW) | ||
| 141 | - IWMMXT_BUILTIN (iwmmxt_wunpckihb, "wunpckihb", WUNPCKIHB) | ||
| 142 | - IWMMXT_BUILTIN (iwmmxt_wunpckihh, "wunpckihh", WUNPCKIHH) | ||
| 143 | - IWMMXT_BUILTIN (iwmmxt_wunpckihw, "wunpckihw", WUNPCKIHW) | ||
| 144 | - IWMMXT_BUILTIN (iwmmxt_wmadds, "wmadds", WMADDS) | ||
| 145 | - IWMMXT_BUILTIN (iwmmxt_wmaddu, "wmaddu", WMADDU) | ||
| 146 | - | ||
| 147 | -#define IWMMXT_BUILTIN2(code, builtin) \ | ||
| 148 | - { FL_IWMMXT, CODE_FOR_##code, NULL, ARM_BUILTIN_##builtin, UNKNOWN, 0 }, | ||
| 149 | - | ||
| 150 | - IWMMXT_BUILTIN2 (iwmmxt_wpackhss, WPACKHSS) | ||
| 151 | - IWMMXT_BUILTIN2 (iwmmxt_wpackwss, WPACKWSS) | ||
| 152 | - IWMMXT_BUILTIN2 (iwmmxt_wpackdss, WPACKDSS) | ||
| 153 | - IWMMXT_BUILTIN2 (iwmmxt_wpackhus, WPACKHUS) | ||
| 154 | - IWMMXT_BUILTIN2 (iwmmxt_wpackwus, WPACKWUS) | ||
| 155 | - IWMMXT_BUILTIN2 (iwmmxt_wpackdus, WPACKDUS) | ||
| 156 | - IWMMXT_BUILTIN2 (ashlv4hi3_di, WSLLH) | ||
| 157 | - IWMMXT_BUILTIN2 (ashlv4hi3_iwmmxt, WSLLHI) | ||
| 158 | - IWMMXT_BUILTIN2 (ashlv2si3_di, WSLLW) | ||
| 159 | - IWMMXT_BUILTIN2 (ashlv2si3_iwmmxt, WSLLWI) | ||
| 160 | - IWMMXT_BUILTIN2 (ashldi3_di, WSLLD) | ||
| 161 | - IWMMXT_BUILTIN2 (ashldi3_iwmmxt, WSLLDI) | ||
| 162 | - IWMMXT_BUILTIN2 (lshrv4hi3_di, WSRLH) | ||
| 163 | - IWMMXT_BUILTIN2 (lshrv4hi3_iwmmxt, WSRLHI) | ||
| 164 | - IWMMXT_BUILTIN2 (lshrv2si3_di, WSRLW) | ||
| 165 | - IWMMXT_BUILTIN2 (lshrv2si3_iwmmxt, WSRLWI) | ||
| 166 | - IWMMXT_BUILTIN2 (lshrdi3_di, WSRLD) | ||
| 167 | - IWMMXT_BUILTIN2 (lshrdi3_iwmmxt, WSRLDI) | ||
| 168 | - IWMMXT_BUILTIN2 (ashrv4hi3_di, WSRAH) | ||
| 169 | - IWMMXT_BUILTIN2 (ashrv4hi3_iwmmxt, WSRAHI) | ||
| 170 | - IWMMXT_BUILTIN2 (ashrv2si3_di, WSRAW) | ||
| 171 | - IWMMXT_BUILTIN2 (ashrv2si3_iwmmxt, WSRAWI) | ||
| 172 | - IWMMXT_BUILTIN2 (ashrdi3_di, WSRAD) | ||
| 173 | - IWMMXT_BUILTIN2 (ashrdi3_iwmmxt, WSRADI) | ||
| 174 | - IWMMXT_BUILTIN2 (rorv4hi3_di, WRORH) | ||
| 175 | - IWMMXT_BUILTIN2 (rorv4hi3, WRORHI) | ||
| 176 | - IWMMXT_BUILTIN2 (rorv2si3_di, WRORW) | ||
| 177 | - IWMMXT_BUILTIN2 (rorv2si3, WRORWI) | ||
| 178 | - IWMMXT_BUILTIN2 (rordi3_di, WRORD) | ||
| 179 | - IWMMXT_BUILTIN2 (rordi3, WRORDI) | ||
| 180 | - IWMMXT_BUILTIN2 (iwmmxt_wmacuz, WMACUZ) | ||
| 181 | - IWMMXT_BUILTIN2 (iwmmxt_wmacsz, WMACSZ) | ||
| 182 | -}; | ||
| 183 | - | ||
| 184 | -static const struct builtin_description bdesc_1arg[] = | ||
| 185 | -{ | ||
| 186 | - IWMMXT_BUILTIN (iwmmxt_tmovmskb, "tmovmskb", TMOVMSKB) | ||
| 187 | - IWMMXT_BUILTIN (iwmmxt_tmovmskh, "tmovmskh", TMOVMSKH) | ||
| 188 | - IWMMXT_BUILTIN (iwmmxt_tmovmskw, "tmovmskw", TMOVMSKW) | ||
| 189 | - IWMMXT_BUILTIN (iwmmxt_waccb, "waccb", WACCB) | ||
| 190 | - IWMMXT_BUILTIN (iwmmxt_wacch, "wacch", WACCH) | ||
| 191 | - IWMMXT_BUILTIN (iwmmxt_waccw, "waccw", WACCW) | ||
| 192 | - IWMMXT_BUILTIN (iwmmxt_wunpckehub, "wunpckehub", WUNPCKEHUB) | ||
| 193 | - IWMMXT_BUILTIN (iwmmxt_wunpckehuh, "wunpckehuh", WUNPCKEHUH) | ||
| 194 | - IWMMXT_BUILTIN (iwmmxt_wunpckehuw, "wunpckehuw", WUNPCKEHUW) | ||
| 195 | - IWMMXT_BUILTIN (iwmmxt_wunpckehsb, "wunpckehsb", WUNPCKEHSB) | ||
| 196 | - IWMMXT_BUILTIN (iwmmxt_wunpckehsh, "wunpckehsh", WUNPCKEHSH) | ||
| 197 | - IWMMXT_BUILTIN (iwmmxt_wunpckehsw, "wunpckehsw", WUNPCKEHSW) | ||
| 198 | - IWMMXT_BUILTIN (iwmmxt_wunpckelub, "wunpckelub", WUNPCKELUB) | ||
| 199 | - IWMMXT_BUILTIN (iwmmxt_wunpckeluh, "wunpckeluh", WUNPCKELUH) | ||
| 200 | - IWMMXT_BUILTIN (iwmmxt_wunpckeluw, "wunpckeluw", WUNPCKELUW) | ||
| 201 | - IWMMXT_BUILTIN (iwmmxt_wunpckelsb, "wunpckelsb", WUNPCKELSB) | ||
| 202 | - IWMMXT_BUILTIN (iwmmxt_wunpckelsh, "wunpckelsh", WUNPCKELSH) | ||
| 203 | - IWMMXT_BUILTIN (iwmmxt_wunpckelsw, "wunpckelsw", WUNPCKELSW) | ||
| 204 | -}; | ||
| 205 | - | ||
| 206 | -/* Set up all the iWMMXt builtins. This is | ||
| 207 | - not called if TARGET_IWMMXT is zero. */ | ||
| 208 | - | ||
| 209 | -static void | ||
| 210 | -arm_init_iwmmxt_builtins (void) | ||
| 211 | -{ | ||
| 212 | - const struct builtin_description * d; | ||
| 213 | - size_t i; | ||
| 214 | - tree endlink = void_list_node; | ||
| 215 | - | ||
| 216 | - tree V2SI_type_node = build_vector_type_for_mode (intSI_type_node, V2SImode); | ||
| 217 | - tree V4HI_type_node = build_vector_type_for_mode (intHI_type_node, V4HImode); | ||
| 218 | - tree V8QI_type_node = build_vector_type_for_mode (intQI_type_node, V8QImode); | ||
| 219 | - | ||
| 220 | - tree int_ftype_int | ||
| 221 | - = build_function_type (integer_type_node, | ||
| 222 | - tree_cons (NULL_TREE, integer_type_node, endlink)); | ||
| 223 | - tree v8qi_ftype_v8qi_v8qi_int | ||
| 224 | - = build_function_type (V8QI_type_node, | ||
| 225 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 226 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 227 | - tree_cons (NULL_TREE, | ||
| 228 | - integer_type_node, | ||
| 229 | - endlink)))); | ||
| 230 | - tree v4hi_ftype_v4hi_int | ||
| 231 | - = build_function_type (V4HI_type_node, | ||
| 232 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 233 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 234 | - endlink))); | ||
| 235 | - tree v2si_ftype_v2si_int | ||
| 236 | - = build_function_type (V2SI_type_node, | ||
| 237 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 238 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 239 | - endlink))); | ||
| 240 | - tree v2si_ftype_di_di | ||
| 241 | - = build_function_type (V2SI_type_node, | ||
| 242 | - tree_cons (NULL_TREE, long_long_integer_type_node, | ||
| 243 | - tree_cons (NULL_TREE, long_long_integer_type_node, | ||
| 244 | - endlink))); | ||
| 245 | - tree di_ftype_di_int | ||
| 246 | - = build_function_type (long_long_integer_type_node, | ||
| 247 | - tree_cons (NULL_TREE, long_long_integer_type_node, | ||
| 248 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 249 | - endlink))); | ||
| 250 | - tree di_ftype_di_int_int | ||
| 251 | - = build_function_type (long_long_integer_type_node, | ||
| 252 | - tree_cons (NULL_TREE, long_long_integer_type_node, | ||
| 253 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 254 | - tree_cons (NULL_TREE, | ||
| 255 | - integer_type_node, | ||
| 256 | - endlink)))); | ||
| 257 | - tree int_ftype_v8qi | ||
| 258 | - = build_function_type (integer_type_node, | ||
| 259 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 260 | - endlink)); | ||
| 261 | - tree int_ftype_v4hi | ||
| 262 | - = build_function_type (integer_type_node, | ||
| 263 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 264 | - endlink)); | ||
| 265 | - tree int_ftype_v2si | ||
| 266 | - = build_function_type (integer_type_node, | ||
| 267 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 268 | - endlink)); | ||
| 269 | - tree int_ftype_v8qi_int | ||
| 270 | - = build_function_type (integer_type_node, | ||
| 271 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 272 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 273 | - endlink))); | ||
| 274 | - tree int_ftype_v4hi_int | ||
| 275 | - = build_function_type (integer_type_node, | ||
| 276 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 277 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 278 | - endlink))); | ||
| 279 | - tree int_ftype_v2si_int | ||
| 280 | - = build_function_type (integer_type_node, | ||
| 281 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 282 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 283 | - endlink))); | ||
| 284 | - tree v8qi_ftype_v8qi_int_int | ||
| 285 | - = build_function_type (V8QI_type_node, | ||
| 286 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 287 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 288 | - tree_cons (NULL_TREE, | ||
| 289 | - integer_type_node, | ||
| 290 | - endlink)))); | ||
| 291 | - tree v4hi_ftype_v4hi_int_int | ||
| 292 | - = build_function_type (V4HI_type_node, | ||
| 293 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 294 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 295 | - tree_cons (NULL_TREE, | ||
| 296 | - integer_type_node, | ||
| 297 | - endlink)))); | ||
| 298 | - tree v2si_ftype_v2si_int_int | ||
| 299 | - = build_function_type (V2SI_type_node, | ||
| 300 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 301 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 302 | - tree_cons (NULL_TREE, | ||
| 303 | - integer_type_node, | ||
| 304 | - endlink)))); | ||
| 305 | - /* Miscellaneous. */ | ||
| 306 | - tree v8qi_ftype_v4hi_v4hi | ||
| 307 | - = build_function_type (V8QI_type_node, | ||
| 308 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 309 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 310 | - endlink))); | ||
| 311 | - tree v4hi_ftype_v2si_v2si | ||
| 312 | - = build_function_type (V4HI_type_node, | ||
| 313 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 314 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 315 | - endlink))); | ||
| 316 | - tree v2si_ftype_v4hi_v4hi | ||
| 317 | - = build_function_type (V2SI_type_node, | ||
| 318 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 319 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 320 | - endlink))); | ||
| 321 | - tree v2si_ftype_v8qi_v8qi | ||
| 322 | - = build_function_type (V2SI_type_node, | ||
| 323 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 324 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 325 | - endlink))); | ||
| 326 | - tree v4hi_ftype_v4hi_di | ||
| 327 | - = build_function_type (V4HI_type_node, | ||
| 328 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 329 | - tree_cons (NULL_TREE, | ||
| 330 | - long_long_integer_type_node, | ||
| 331 | - endlink))); | ||
| 332 | - tree v2si_ftype_v2si_di | ||
| 333 | - = build_function_type (V2SI_type_node, | ||
| 334 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 335 | - tree_cons (NULL_TREE, | ||
| 336 | - long_long_integer_type_node, | ||
| 337 | - endlink))); | ||
| 338 | - tree void_ftype_int_int | ||
| 339 | - = build_function_type (void_type_node, | ||
| 340 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 341 | - tree_cons (NULL_TREE, integer_type_node, | ||
| 342 | - endlink))); | ||
| 343 | - tree di_ftype_void | ||
| 344 | - = build_function_type (long_long_unsigned_type_node, endlink); | ||
| 345 | - tree di_ftype_v8qi | ||
| 346 | - = build_function_type (long_long_integer_type_node, | ||
| 347 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 348 | - endlink)); | ||
| 349 | - tree di_ftype_v4hi | ||
| 350 | - = build_function_type (long_long_integer_type_node, | ||
| 351 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 352 | - endlink)); | ||
| 353 | - tree di_ftype_v2si | ||
| 354 | - = build_function_type (long_long_integer_type_node, | ||
| 355 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 356 | - endlink)); | ||
| 357 | - tree v2si_ftype_v4hi | ||
| 358 | - = build_function_type (V2SI_type_node, | ||
| 359 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 360 | - endlink)); | ||
| 361 | - tree v4hi_ftype_v8qi | ||
| 362 | - = build_function_type (V4HI_type_node, | ||
| 363 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 364 | - endlink)); | ||
| 365 | - | ||
| 366 | - tree di_ftype_di_v4hi_v4hi | ||
| 367 | - = build_function_type (long_long_unsigned_type_node, | ||
| 368 | - tree_cons (NULL_TREE, | ||
| 369 | - long_long_unsigned_type_node, | ||
| 370 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 371 | - tree_cons (NULL_TREE, | ||
| 372 | - V4HI_type_node, | ||
| 373 | - endlink)))); | ||
| 374 | - | ||
| 375 | - tree di_ftype_v4hi_v4hi | ||
| 376 | - = build_function_type (long_long_unsigned_type_node, | ||
| 377 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 378 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 379 | - endlink))); | ||
| 380 | - | ||
| 381 | - /* Normal vector binops. */ | ||
| 382 | - tree v8qi_ftype_v8qi_v8qi | ||
| 383 | - = build_function_type (V8QI_type_node, | ||
| 384 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 385 | - tree_cons (NULL_TREE, V8QI_type_node, | ||
| 386 | - endlink))); | ||
| 387 | - tree v4hi_ftype_v4hi_v4hi | ||
| 388 | - = build_function_type (V4HI_type_node, | ||
| 389 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 390 | - tree_cons (NULL_TREE, V4HI_type_node, | ||
| 391 | - endlink))); | ||
| 392 | - tree v2si_ftype_v2si_v2si | ||
| 393 | - = build_function_type (V2SI_type_node, | ||
| 394 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 395 | - tree_cons (NULL_TREE, V2SI_type_node, | ||
| 396 | - endlink))); | ||
| 397 | - tree di_ftype_di_di | ||
| 398 | - = build_function_type (long_long_unsigned_type_node, | ||
| 399 | - tree_cons (NULL_TREE, long_long_unsigned_type_node, | ||
| 400 | - tree_cons (NULL_TREE, | ||
| 401 | - long_long_unsigned_type_node, | ||
| 402 | - endlink))); | ||
| 403 | - | ||
| 404 | - /* Add all builtins that are more or less simple operations on two | ||
| 405 | - operands. */ | ||
| 406 | - for (i = 0, d = bdesc_2arg; i < ARRAY_SIZE (bdesc_2arg); i++, d++) | ||
| 407 | - { | ||
| 408 | - /* Use one of the operands; the target can have a different mode for | ||
| 409 | - mask-generating compares. */ | ||
| 410 | - enum machine_mode mode; | ||
| 411 | - tree type; | ||
| 412 | - | ||
| 413 | - if (d->name == 0) | ||
| 414 | - continue; | ||
| 415 | - | ||
| 416 | - mode = insn_data[d->icode].operand[1].mode; | ||
| 417 | - | ||
| 418 | - switch (mode) | ||
| 419 | - { | ||
| 420 | - case V8QImode: | ||
| 421 | - type = v8qi_ftype_v8qi_v8qi; | ||
| 422 | - break; | ||
| 423 | - case V4HImode: | ||
| 424 | - type = v4hi_ftype_v4hi_v4hi; | ||
| 425 | - break; | ||
| 426 | - case V2SImode: | ||
| 427 | - type = v2si_ftype_v2si_v2si; | ||
| 428 | - break; | ||
| 429 | - case DImode: | ||
| 430 | - type = di_ftype_di_di; | ||
| 431 | - break; | ||
| 432 | - | ||
| 433 | - default: | ||
| 434 | - gcc_unreachable (); | ||
| 435 | - } | ||
| 436 | - | ||
| 437 | - def_mbuiltin (d->mask, d->name, type, d->code); | ||
| 438 | - } | ||
| 439 | - | ||
| 440 | - /* Add the remaining MMX insns with somewhat more complicated types. */ | ||
| 441 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wzero", di_ftype_void, ARM_BUILTIN_WZERO); | ||
| 442 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_setwcx", void_ftype_int_int, ARM_BUILTIN_SETWCX); | ||
| 443 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_getwcx", int_ftype_int, ARM_BUILTIN_GETWCX); | ||
| 444 | - | ||
| 445 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsllh", v4hi_ftype_v4hi_di, ARM_BUILTIN_WSLLH); | ||
| 446 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsllw", v2si_ftype_v2si_di, ARM_BUILTIN_WSLLW); | ||
| 447 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wslld", di_ftype_di_di, ARM_BUILTIN_WSLLD); | ||
| 448 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsllhi", v4hi_ftype_v4hi_int, ARM_BUILTIN_WSLLHI); | ||
| 449 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsllwi", v2si_ftype_v2si_int, ARM_BUILTIN_WSLLWI); | ||
| 450 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wslldi", di_ftype_di_int, ARM_BUILTIN_WSLLDI); | ||
| 451 | - | ||
| 452 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrlh", v4hi_ftype_v4hi_di, ARM_BUILTIN_WSRLH); | ||
| 453 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrlw", v2si_ftype_v2si_di, ARM_BUILTIN_WSRLW); | ||
| 454 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrld", di_ftype_di_di, ARM_BUILTIN_WSRLD); | ||
| 455 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrlhi", v4hi_ftype_v4hi_int, ARM_BUILTIN_WSRLHI); | ||
| 456 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrlwi", v2si_ftype_v2si_int, ARM_BUILTIN_WSRLWI); | ||
| 457 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrldi", di_ftype_di_int, ARM_BUILTIN_WSRLDI); | ||
| 458 | - | ||
| 459 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrah", v4hi_ftype_v4hi_di, ARM_BUILTIN_WSRAH); | ||
| 460 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsraw", v2si_ftype_v2si_di, ARM_BUILTIN_WSRAW); | ||
| 461 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrad", di_ftype_di_di, ARM_BUILTIN_WSRAD); | ||
| 462 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrahi", v4hi_ftype_v4hi_int, ARM_BUILTIN_WSRAHI); | ||
| 463 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsrawi", v2si_ftype_v2si_int, ARM_BUILTIN_WSRAWI); | ||
| 464 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsradi", di_ftype_di_int, ARM_BUILTIN_WSRADI); | ||
| 465 | - | ||
| 466 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wrorh", v4hi_ftype_v4hi_di, ARM_BUILTIN_WRORH); | ||
| 467 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wrorw", v2si_ftype_v2si_di, ARM_BUILTIN_WRORW); | ||
| 468 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wrord", di_ftype_di_di, ARM_BUILTIN_WRORD); | ||
| 469 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wrorhi", v4hi_ftype_v4hi_int, ARM_BUILTIN_WRORHI); | ||
| 470 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wrorwi", v2si_ftype_v2si_int, ARM_BUILTIN_WRORWI); | ||
| 471 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wrordi", di_ftype_di_int, ARM_BUILTIN_WRORDI); | ||
| 472 | - | ||
| 473 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wshufh", v4hi_ftype_v4hi_int, ARM_BUILTIN_WSHUFH); | ||
| 474 | - | ||
| 475 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsadb", v2si_ftype_v8qi_v8qi, ARM_BUILTIN_WSADB); | ||
| 476 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsadh", v2si_ftype_v4hi_v4hi, ARM_BUILTIN_WSADH); | ||
| 477 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsadbz", v2si_ftype_v8qi_v8qi, ARM_BUILTIN_WSADBZ); | ||
| 478 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wsadhz", v2si_ftype_v4hi_v4hi, ARM_BUILTIN_WSADHZ); | ||
| 479 | - | ||
| 480 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_textrmsb", int_ftype_v8qi_int, ARM_BUILTIN_TEXTRMSB); | ||
| 481 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_textrmsh", int_ftype_v4hi_int, ARM_BUILTIN_TEXTRMSH); | ||
| 482 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_textrmsw", int_ftype_v2si_int, ARM_BUILTIN_TEXTRMSW); | ||
| 483 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_textrmub", int_ftype_v8qi_int, ARM_BUILTIN_TEXTRMUB); | ||
| 484 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_textrmuh", int_ftype_v4hi_int, ARM_BUILTIN_TEXTRMUH); | ||
| 485 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_textrmuw", int_ftype_v2si_int, ARM_BUILTIN_TEXTRMUW); | ||
| 486 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tinsrb", v8qi_ftype_v8qi_int_int, ARM_BUILTIN_TINSRB); | ||
| 487 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tinsrh", v4hi_ftype_v4hi_int_int, ARM_BUILTIN_TINSRH); | ||
| 488 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tinsrw", v2si_ftype_v2si_int_int, ARM_BUILTIN_TINSRW); | ||
| 489 | - | ||
| 490 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_waccb", di_ftype_v8qi, ARM_BUILTIN_WACCB); | ||
| 491 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wacch", di_ftype_v4hi, ARM_BUILTIN_WACCH); | ||
| 492 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_waccw", di_ftype_v2si, ARM_BUILTIN_WACCW); | ||
| 493 | - | ||
| 494 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmovmskb", int_ftype_v8qi, ARM_BUILTIN_TMOVMSKB); | ||
| 495 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmovmskh", int_ftype_v4hi, ARM_BUILTIN_TMOVMSKH); | ||
| 496 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmovmskw", int_ftype_v2si, ARM_BUILTIN_TMOVMSKW); | ||
| 497 | - | ||
| 498 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wpackhss", v8qi_ftype_v4hi_v4hi, ARM_BUILTIN_WPACKHSS); | ||
| 499 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wpackhus", v8qi_ftype_v4hi_v4hi, ARM_BUILTIN_WPACKHUS); | ||
| 500 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wpackwus", v4hi_ftype_v2si_v2si, ARM_BUILTIN_WPACKWUS); | ||
| 501 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wpackwss", v4hi_ftype_v2si_v2si, ARM_BUILTIN_WPACKWSS); | ||
| 502 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wpackdus", v2si_ftype_di_di, ARM_BUILTIN_WPACKDUS); | ||
| 503 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wpackdss", v2si_ftype_di_di, ARM_BUILTIN_WPACKDSS); | ||
| 504 | - | ||
| 505 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckehub", v4hi_ftype_v8qi, ARM_BUILTIN_WUNPCKEHUB); | ||
| 506 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckehuh", v2si_ftype_v4hi, ARM_BUILTIN_WUNPCKEHUH); | ||
| 507 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckehuw", di_ftype_v2si, ARM_BUILTIN_WUNPCKEHUW); | ||
| 508 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckehsb", v4hi_ftype_v8qi, ARM_BUILTIN_WUNPCKEHSB); | ||
| 509 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckehsh", v2si_ftype_v4hi, ARM_BUILTIN_WUNPCKEHSH); | ||
| 510 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckehsw", di_ftype_v2si, ARM_BUILTIN_WUNPCKEHSW); | ||
| 511 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckelub", v4hi_ftype_v8qi, ARM_BUILTIN_WUNPCKELUB); | ||
| 512 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckeluh", v2si_ftype_v4hi, ARM_BUILTIN_WUNPCKELUH); | ||
| 513 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckeluw", di_ftype_v2si, ARM_BUILTIN_WUNPCKELUW); | ||
| 514 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckelsb", v4hi_ftype_v8qi, ARM_BUILTIN_WUNPCKELSB); | ||
| 515 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckelsh", v2si_ftype_v4hi, ARM_BUILTIN_WUNPCKELSH); | ||
| 516 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wunpckelsw", di_ftype_v2si, ARM_BUILTIN_WUNPCKELSW); | ||
| 517 | - | ||
| 518 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wmacs", di_ftype_di_v4hi_v4hi, ARM_BUILTIN_WMACS); | ||
| 519 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wmacsz", di_ftype_v4hi_v4hi, ARM_BUILTIN_WMACSZ); | ||
| 520 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wmacu", di_ftype_di_v4hi_v4hi, ARM_BUILTIN_WMACU); | ||
| 521 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_wmacuz", di_ftype_v4hi_v4hi, ARM_BUILTIN_WMACUZ); | ||
| 522 | - | ||
| 523 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_walign", v8qi_ftype_v8qi_v8qi_int, ARM_BUILTIN_WALIGN); | ||
| 524 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmia", di_ftype_di_int_int, ARM_BUILTIN_TMIA); | ||
| 525 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmiaph", di_ftype_di_int_int, ARM_BUILTIN_TMIAPH); | ||
| 526 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmiabb", di_ftype_di_int_int, ARM_BUILTIN_TMIABB); | ||
| 527 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmiabt", di_ftype_di_int_int, ARM_BUILTIN_TMIABT); | ||
| 528 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmiatb", di_ftype_di_int_int, ARM_BUILTIN_TMIATB); | ||
| 529 | - def_mbuiltin (FL_IWMMXT, "__builtin_arm_tmiatt", di_ftype_di_int_int, ARM_BUILTIN_TMIATT); | ||
| 530 | -} | ||
| 531 | - | ||
| 532 | -static void | ||
| 533 | -arm_init_tls_builtins (void) | ||
| 534 | -{ | ||
| 535 | - tree ftype, decl; | ||
| 536 | - | ||
| 537 | - ftype = build_function_type (ptr_type_node, void_list_node); | ||
| 538 | - decl = add_builtin_function ("__builtin_thread_pointer", ftype, | ||
| 539 | - ARM_BUILTIN_THREAD_POINTER, BUILT_IN_MD, | ||
| 540 | - NULL, NULL_TREE); | ||
| 541 | - TREE_NOTHROW (decl) = 1; | ||
| 542 | - TREE_READONLY (decl) = 1; | ||
| 543 | -} | ||
| 544 | - | ||
| 545 | -enum neon_builtin_type_bits { | ||
| 546 | - T_V8QI = 0x0001, | ||
| 547 | - T_V4HI = 0x0002, | ||
| 548 | - T_V2SI = 0x0004, | ||
| 549 | - T_V2SF = 0x0008, | ||
| 550 | - T_DI = 0x0010, | ||
| 551 | - T_DREG = 0x001F, | ||
| 552 | - T_V16QI = 0x0020, | ||
| 553 | - T_V8HI = 0x0040, | ||
| 554 | - T_V4SI = 0x0080, | ||
| 555 | - T_V4SF = 0x0100, | ||
| 556 | - T_V2DI = 0x0200, | ||
| 557 | - T_TI = 0x0400, | ||
| 558 | - T_QREG = 0x07E0, | ||
| 559 | - T_EI = 0x0800, | ||
| 560 | - T_OI = 0x1000 | ||
| 561 | -}; | ||
| 562 | +typedef enum { | ||
| 563 | + T_V8QI, | ||
| 564 | + T_V4HI, | ||
| 565 | + T_V2SI, | ||
| 566 | + T_V2SF, | ||
| 567 | + T_DI, | ||
| 568 | + T_V16QI, | ||
| 569 | + T_V8HI, | ||
| 570 | + T_V4SI, | ||
| 571 | + T_V4SF, | ||
| 572 | + T_V2DI, | ||
| 573 | + T_TI, | ||
| 574 | + T_EI, | ||
| 575 | + T_OI, | ||
| 576 | + T_MAX /* Size of enum. Keep last. */ | ||
| 577 | +} neon_builtin_type_mode; | ||
| 578 | + | ||
| 579 | +#define TYPE_MODE_BIT(X) (1 << (X)) | ||
| 580 | + | ||
| 581 | +#define TB_DREG (TYPE_MODE_BIT (T_V8QI) | TYPE_MODE_BIT (T_V4HI) \ | ||
| 582 | + | TYPE_MODE_BIT (T_V2SI) | TYPE_MODE_BIT (T_V2SF) \ | ||
| 583 | + | TYPE_MODE_BIT (T_DI)) | ||
| 584 | +#define TB_QREG (TYPE_MODE_BIT (T_V16QI) | TYPE_MODE_BIT (T_V8HI) \ | ||
| 585 | + | TYPE_MODE_BIT (T_V4SI) | TYPE_MODE_BIT (T_V4SF) \ | ||
| 586 | + | TYPE_MODE_BIT (T_V2DI) | TYPE_MODE_BIT (T_TI)) | ||
| 587 | |||
| 588 | #define v8qi_UP T_V8QI | ||
| 589 | #define v4hi_UP T_V4HI | ||
| 590 | @@ -18663,8 +18192,6 @@ | ||
| 591 | |||
| 592 | #define UP(X) X##_UP | ||
| 593 | |||
| 594 | -#define T_MAX 13 | ||
| 595 | - | ||
| 596 | typedef enum { | ||
| 597 | NEON_BINOP, | ||
| 598 | NEON_TERNOP, | ||
| 599 | @@ -18708,49 +18235,42 @@ | ||
| 600 | typedef struct { | ||
| 601 | const char *name; | ||
| 602 | const neon_itype itype; | ||
| 603 | - const int bits; | ||
| 604 | - const enum insn_code codes[T_MAX]; | ||
| 605 | - const unsigned int num_vars; | ||
| 606 | - unsigned int base_fcode; | ||
| 607 | + const neon_builtin_type_mode mode; | ||
| 608 | + const enum insn_code code; | ||
| 609 | + unsigned int fcode; | ||
| 610 | } neon_builtin_datum; | ||
| 611 | |||
| 612 | #define CF(N,X) CODE_FOR_neon_##N##X | ||
| 613 | |||
| 614 | #define VAR1(T, N, A) \ | ||
| 615 | - #N, NEON_##T, UP (A), { CF (N, A) }, 1, 0 | ||
| 616 | + {#N, NEON_##T, UP (A), CF (N, A), 0} | ||
| 617 | #define VAR2(T, N, A, B) \ | ||
| 618 | - #N, NEON_##T, UP (A) | UP (B), { CF (N, A), CF (N, B) }, 2, 0 | ||
| 619 | + VAR1 (T, N, A), \ | ||
| 620 | + {#N, NEON_##T, UP (B), CF (N, B), 0} | ||
| 621 | #define VAR3(T, N, A, B, C) \ | ||
| 622 | - #N, NEON_##T, UP (A) | UP (B) | UP (C), \ | ||
| 623 | - { CF (N, A), CF (N, B), CF (N, C) }, 3, 0 | ||
| 624 | + VAR2 (T, N, A, B), \ | ||
| 625 | + {#N, NEON_##T, UP (C), CF (N, C), 0} | ||
| 626 | #define VAR4(T, N, A, B, C, D) \ | ||
| 627 | - #N, NEON_##T, UP (A) | UP (B) | UP (C) | UP (D), \ | ||
| 628 | - { CF (N, A), CF (N, B), CF (N, C), CF (N, D) }, 4, 0 | ||
| 629 | + VAR3 (T, N, A, B, C), \ | ||
| 630 | + {#N, NEON_##T, UP (D), CF (N, D), 0} | ||
| 631 | #define VAR5(T, N, A, B, C, D, E) \ | ||
| 632 | - #N, NEON_##T, UP (A) | UP (B) | UP (C) | UP (D) | UP (E), \ | ||
| 633 | - { CF (N, A), CF (N, B), CF (N, C), CF (N, D), CF (N, E) }, 5, 0 | ||
| 634 | + VAR4 (T, N, A, B, C, D), \ | ||
| 635 | + {#N, NEON_##T, UP (E), CF (N, E), 0} | ||
| 636 | #define VAR6(T, N, A, B, C, D, E, F) \ | ||
| 637 | - #N, NEON_##T, UP (A) | UP (B) | UP (C) | UP (D) | UP (E) | UP (F), \ | ||
| 638 | - { CF (N, A), CF (N, B), CF (N, C), CF (N, D), CF (N, E), CF (N, F) }, 6, 0 | ||
| 639 | + VAR5 (T, N, A, B, C, D, E), \ | ||
| 640 | + {#N, NEON_##T, UP (F), CF (N, F), 0} | ||
| 641 | #define VAR7(T, N, A, B, C, D, E, F, G) \ | ||
| 642 | - #N, NEON_##T, UP (A) | UP (B) | UP (C) | UP (D) | UP (E) | UP (F) | UP (G), \ | ||
| 643 | - { CF (N, A), CF (N, B), CF (N, C), CF (N, D), CF (N, E), CF (N, F), \ | ||
| 644 | - CF (N, G) }, 7, 0 | ||
| 645 | + VAR6 (T, N, A, B, C, D, E, F), \ | ||
| 646 | + {#N, NEON_##T, UP (G), CF (N, G), 0} | ||
| 647 | #define VAR8(T, N, A, B, C, D, E, F, G, H) \ | ||
| 648 | - #N, NEON_##T, UP (A) | UP (B) | UP (C) | UP (D) | UP (E) | UP (F) | UP (G) \ | ||
| 649 | - | UP (H), \ | ||
| 650 | - { CF (N, A), CF (N, B), CF (N, C), CF (N, D), CF (N, E), CF (N, F), \ | ||
| 651 | - CF (N, G), CF (N, H) }, 8, 0 | ||
| 652 | + VAR7 (T, N, A, B, C, D, E, F, G), \ | ||
| 653 | + {#N, NEON_##T, UP (H), CF (N, H), 0} | ||
| 654 | #define VAR9(T, N, A, B, C, D, E, F, G, H, I) \ | ||
| 655 | - #N, NEON_##T, UP (A) | UP (B) | UP (C) | UP (D) | UP (E) | UP (F) | UP (G) \ | ||
| 656 | - | UP (H) | UP (I), \ | ||
| 657 | - { CF (N, A), CF (N, B), CF (N, C), CF (N, D), CF (N, E), CF (N, F), \ | ||
| 658 | - CF (N, G), CF (N, H), CF (N, I) }, 9, 0 | ||
| 659 | + VAR8 (T, N, A, B, C, D, E, F, G, H), \ | ||
| 660 | + {#N, NEON_##T, UP (I), CF (N, I), 0} | ||
| 661 | #define VAR10(T, N, A, B, C, D, E, F, G, H, I, J) \ | ||
| 662 | - #N, NEON_##T, UP (A) | UP (B) | UP (C) | UP (D) | UP (E) | UP (F) | UP (G) \ | ||
| 663 | - | UP (H) | UP (I) | UP (J), \ | ||
| 664 | - { CF (N, A), CF (N, B), CF (N, C), CF (N, D), CF (N, E), CF (N, F), \ | ||
| 665 | - CF (N, G), CF (N, H), CF (N, I), CF (N, J) }, 10, 0 | ||
| 666 | + VAR9 (T, N, A, B, C, D, E, F, G, H, I), \ | ||
| 667 | + {#N, NEON_##T, UP (J), CF (N, J), 0} | ||
| 668 | |||
| 669 | /* The mode entries in the following table correspond to the "key" type of the | ||
| 670 | instruction variant, i.e. equivalent to that which would be specified after | ||
| 671 | @@ -18758,192 +18278,190 @@ | ||
| 672 | (Signed/unsigned/polynomial types are not differentiated between though, and | ||
| 673 | are all mapped onto the same mode for a given element size.) The modes | ||
| 674 | listed per instruction should be the same as those defined for that | ||
| 675 | - instruction's pattern in neon.md. | ||
| 676 | - WARNING: Variants should be listed in the same increasing order as | ||
| 677 | - neon_builtin_type_bits. */ | ||
| 678 | + instruction's pattern in neon.md. */ | ||
| 679 | |||
| 680 | static neon_builtin_datum neon_builtin_data[] = | ||
| 681 | { | ||
| 682 | - { VAR10 (BINOP, vadd, | ||
| 683 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 684 | - { VAR3 (BINOP, vaddl, v8qi, v4hi, v2si) }, | ||
| 685 | - { VAR3 (BINOP, vaddw, v8qi, v4hi, v2si) }, | ||
| 686 | - { VAR6 (BINOP, vhadd, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 687 | - { VAR8 (BINOP, vqadd, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 688 | - { VAR3 (BINOP, vaddhn, v8hi, v4si, v2di) }, | ||
| 689 | - { VAR8 (BINOP, vmul, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 690 | - { VAR8 (TERNOP, vmla, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 691 | - { VAR3 (TERNOP, vmlal, v8qi, v4hi, v2si) }, | ||
| 692 | - { VAR8 (TERNOP, vmls, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 693 | - { VAR3 (TERNOP, vmlsl, v8qi, v4hi, v2si) }, | ||
| 694 | - { VAR4 (BINOP, vqdmulh, v4hi, v2si, v8hi, v4si) }, | ||
| 695 | - { VAR2 (TERNOP, vqdmlal, v4hi, v2si) }, | ||
| 696 | - { VAR2 (TERNOP, vqdmlsl, v4hi, v2si) }, | ||
| 697 | - { VAR3 (BINOP, vmull, v8qi, v4hi, v2si) }, | ||
| 698 | - { VAR2 (SCALARMULL, vmull_n, v4hi, v2si) }, | ||
| 699 | - { VAR2 (LANEMULL, vmull_lane, v4hi, v2si) }, | ||
| 700 | - { VAR2 (SCALARMULL, vqdmull_n, v4hi, v2si) }, | ||
| 701 | - { VAR2 (LANEMULL, vqdmull_lane, v4hi, v2si) }, | ||
| 702 | - { VAR4 (SCALARMULH, vqdmulh_n, v4hi, v2si, v8hi, v4si) }, | ||
| 703 | - { VAR4 (LANEMULH, vqdmulh_lane, v4hi, v2si, v8hi, v4si) }, | ||
| 704 | - { VAR2 (BINOP, vqdmull, v4hi, v2si) }, | ||
| 705 | - { VAR8 (BINOP, vshl, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 706 | - { VAR8 (BINOP, vqshl, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 707 | - { VAR8 (SHIFTIMM, vshr_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 708 | - { VAR3 (SHIFTIMM, vshrn_n, v8hi, v4si, v2di) }, | ||
| 709 | - { VAR3 (SHIFTIMM, vqshrn_n, v8hi, v4si, v2di) }, | ||
| 710 | - { VAR3 (SHIFTIMM, vqshrun_n, v8hi, v4si, v2di) }, | ||
| 711 | - { VAR8 (SHIFTIMM, vshl_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 712 | - { VAR8 (SHIFTIMM, vqshl_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 713 | - { VAR8 (SHIFTIMM, vqshlu_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 714 | - { VAR3 (SHIFTIMM, vshll_n, v8qi, v4hi, v2si) }, | ||
| 715 | - { VAR8 (SHIFTACC, vsra_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 716 | - { VAR10 (BINOP, vsub, | ||
| 717 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 718 | - { VAR3 (BINOP, vsubl, v8qi, v4hi, v2si) }, | ||
| 719 | - { VAR3 (BINOP, vsubw, v8qi, v4hi, v2si) }, | ||
| 720 | - { VAR8 (BINOP, vqsub, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 721 | - { VAR6 (BINOP, vhsub, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 722 | - { VAR3 (BINOP, vsubhn, v8hi, v4si, v2di) }, | ||
| 723 | - { VAR8 (BINOP, vceq, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 724 | - { VAR8 (BINOP, vcge, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 725 | - { VAR8 (BINOP, vcgt, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 726 | - { VAR2 (BINOP, vcage, v2sf, v4sf) }, | ||
| 727 | - { VAR2 (BINOP, vcagt, v2sf, v4sf) }, | ||
| 728 | - { VAR6 (BINOP, vtst, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 729 | - { VAR8 (BINOP, vabd, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 730 | - { VAR3 (BINOP, vabdl, v8qi, v4hi, v2si) }, | ||
| 731 | - { VAR6 (TERNOP, vaba, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 732 | - { VAR3 (TERNOP, vabal, v8qi, v4hi, v2si) }, | ||
| 733 | - { VAR8 (BINOP, vmax, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 734 | - { VAR8 (BINOP, vmin, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 735 | - { VAR4 (BINOP, vpadd, v8qi, v4hi, v2si, v2sf) }, | ||
| 736 | - { VAR6 (UNOP, vpaddl, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 737 | - { VAR6 (BINOP, vpadal, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 738 | - { VAR4 (BINOP, vpmax, v8qi, v4hi, v2si, v2sf) }, | ||
| 739 | - { VAR4 (BINOP, vpmin, v8qi, v4hi, v2si, v2sf) }, | ||
| 740 | - { VAR2 (BINOP, vrecps, v2sf, v4sf) }, | ||
| 741 | - { VAR2 (BINOP, vrsqrts, v2sf, v4sf) }, | ||
| 742 | - { VAR8 (SHIFTINSERT, vsri_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 743 | - { VAR8 (SHIFTINSERT, vsli_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) }, | ||
| 744 | - { VAR8 (UNOP, vabs, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 745 | - { VAR6 (UNOP, vqabs, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 746 | - { VAR8 (UNOP, vneg, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 747 | - { VAR6 (UNOP, vqneg, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 748 | - { VAR6 (UNOP, vcls, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 749 | - { VAR6 (UNOP, vclz, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 750 | - { VAR2 (UNOP, vcnt, v8qi, v16qi) }, | ||
| 751 | - { VAR4 (UNOP, vrecpe, v2si, v2sf, v4si, v4sf) }, | ||
| 752 | - { VAR4 (UNOP, vrsqrte, v2si, v2sf, v4si, v4sf) }, | ||
| 753 | - { VAR6 (UNOP, vmvn, v8qi, v4hi, v2si, v16qi, v8hi, v4si) }, | ||
| 754 | + VAR10 (BINOP, vadd, | ||
| 755 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 756 | + VAR3 (BINOP, vaddl, v8qi, v4hi, v2si), | ||
| 757 | + VAR3 (BINOP, vaddw, v8qi, v4hi, v2si), | ||
| 758 | + VAR6 (BINOP, vhadd, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 759 | + VAR8 (BINOP, vqadd, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 760 | + VAR3 (BINOP, vaddhn, v8hi, v4si, v2di), | ||
| 761 | + VAR8 (BINOP, vmul, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 762 | + VAR8 (TERNOP, vmla, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 763 | + VAR3 (TERNOP, vmlal, v8qi, v4hi, v2si), | ||
| 764 | + VAR8 (TERNOP, vmls, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 765 | + VAR3 (TERNOP, vmlsl, v8qi, v4hi, v2si), | ||
| 766 | + VAR4 (BINOP, vqdmulh, v4hi, v2si, v8hi, v4si), | ||
| 767 | + VAR2 (TERNOP, vqdmlal, v4hi, v2si), | ||
| 768 | + VAR2 (TERNOP, vqdmlsl, v4hi, v2si), | ||
| 769 | + VAR3 (BINOP, vmull, v8qi, v4hi, v2si), | ||
| 770 | + VAR2 (SCALARMULL, vmull_n, v4hi, v2si), | ||
| 771 | + VAR2 (LANEMULL, vmull_lane, v4hi, v2si), | ||
| 772 | + VAR2 (SCALARMULL, vqdmull_n, v4hi, v2si), | ||
| 773 | + VAR2 (LANEMULL, vqdmull_lane, v4hi, v2si), | ||
| 774 | + VAR4 (SCALARMULH, vqdmulh_n, v4hi, v2si, v8hi, v4si), | ||
| 775 | + VAR4 (LANEMULH, vqdmulh_lane, v4hi, v2si, v8hi, v4si), | ||
| 776 | + VAR2 (BINOP, vqdmull, v4hi, v2si), | ||
| 777 | + VAR8 (BINOP, vshl, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 778 | + VAR8 (BINOP, vqshl, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 779 | + VAR8 (SHIFTIMM, vshr_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 780 | + VAR3 (SHIFTIMM, vshrn_n, v8hi, v4si, v2di), | ||
| 781 | + VAR3 (SHIFTIMM, vqshrn_n, v8hi, v4si, v2di), | ||
| 782 | + VAR3 (SHIFTIMM, vqshrun_n, v8hi, v4si, v2di), | ||
| 783 | + VAR8 (SHIFTIMM, vshl_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 784 | + VAR8 (SHIFTIMM, vqshl_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 785 | + VAR8 (SHIFTIMM, vqshlu_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 786 | + VAR3 (SHIFTIMM, vshll_n, v8qi, v4hi, v2si), | ||
| 787 | + VAR8 (SHIFTACC, vsra_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 788 | + VAR10 (BINOP, vsub, | ||
| 789 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 790 | + VAR3 (BINOP, vsubl, v8qi, v4hi, v2si), | ||
| 791 | + VAR3 (BINOP, vsubw, v8qi, v4hi, v2si), | ||
| 792 | + VAR8 (BINOP, vqsub, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 793 | + VAR6 (BINOP, vhsub, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 794 | + VAR3 (BINOP, vsubhn, v8hi, v4si, v2di), | ||
| 795 | + VAR8 (BINOP, vceq, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 796 | + VAR8 (BINOP, vcge, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 797 | + VAR8 (BINOP, vcgt, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 798 | + VAR2 (BINOP, vcage, v2sf, v4sf), | ||
| 799 | + VAR2 (BINOP, vcagt, v2sf, v4sf), | ||
| 800 | + VAR6 (BINOP, vtst, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 801 | + VAR8 (BINOP, vabd, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 802 | + VAR3 (BINOP, vabdl, v8qi, v4hi, v2si), | ||
| 803 | + VAR6 (TERNOP, vaba, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 804 | + VAR3 (TERNOP, vabal, v8qi, v4hi, v2si), | ||
| 805 | + VAR8 (BINOP, vmax, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 806 | + VAR8 (BINOP, vmin, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 807 | + VAR4 (BINOP, vpadd, v8qi, v4hi, v2si, v2sf), | ||
| 808 | + VAR6 (UNOP, vpaddl, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 809 | + VAR6 (BINOP, vpadal, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 810 | + VAR4 (BINOP, vpmax, v8qi, v4hi, v2si, v2sf), | ||
| 811 | + VAR4 (BINOP, vpmin, v8qi, v4hi, v2si, v2sf), | ||
| 812 | + VAR2 (BINOP, vrecps, v2sf, v4sf), | ||
| 813 | + VAR2 (BINOP, vrsqrts, v2sf, v4sf), | ||
| 814 | + VAR8 (SHIFTINSERT, vsri_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 815 | + VAR8 (SHIFTINSERT, vsli_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di), | ||
| 816 | + VAR8 (UNOP, vabs, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 817 | + VAR6 (UNOP, vqabs, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 818 | + VAR8 (UNOP, vneg, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 819 | + VAR6 (UNOP, vqneg, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 820 | + VAR6 (UNOP, vcls, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 821 | + VAR6 (UNOP, vclz, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 822 | + VAR2 (UNOP, vcnt, v8qi, v16qi), | ||
| 823 | + VAR4 (UNOP, vrecpe, v2si, v2sf, v4si, v4sf), | ||
| 824 | + VAR4 (UNOP, vrsqrte, v2si, v2sf, v4si, v4sf), | ||
| 825 | + VAR6 (UNOP, vmvn, v8qi, v4hi, v2si, v16qi, v8hi, v4si), | ||
| 826 | /* FIXME: vget_lane supports more variants than this! */ | ||
| 827 | - { VAR10 (GETLANE, vget_lane, | ||
| 828 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 829 | - { VAR10 (SETLANE, vset_lane, | ||
| 830 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 831 | - { VAR5 (CREATE, vcreate, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 832 | - { VAR10 (DUP, vdup_n, | ||
| 833 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 834 | - { VAR10 (DUPLANE, vdup_lane, | ||
| 835 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 836 | - { VAR5 (COMBINE, vcombine, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 837 | - { VAR5 (SPLIT, vget_high, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 838 | - { VAR5 (SPLIT, vget_low, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 839 | - { VAR3 (UNOP, vmovn, v8hi, v4si, v2di) }, | ||
| 840 | - { VAR3 (UNOP, vqmovn, v8hi, v4si, v2di) }, | ||
| 841 | - { VAR3 (UNOP, vqmovun, v8hi, v4si, v2di) }, | ||
| 842 | - { VAR3 (UNOP, vmovl, v8qi, v4hi, v2si) }, | ||
| 843 | - { VAR6 (LANEMUL, vmul_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 844 | - { VAR6 (LANEMAC, vmla_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 845 | - { VAR2 (LANEMAC, vmlal_lane, v4hi, v2si) }, | ||
| 846 | - { VAR2 (LANEMAC, vqdmlal_lane, v4hi, v2si) }, | ||
| 847 | - { VAR6 (LANEMAC, vmls_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 848 | - { VAR2 (LANEMAC, vmlsl_lane, v4hi, v2si) }, | ||
| 849 | - { VAR2 (LANEMAC, vqdmlsl_lane, v4hi, v2si) }, | ||
| 850 | - { VAR6 (SCALARMUL, vmul_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 851 | - { VAR6 (SCALARMAC, vmla_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 852 | - { VAR2 (SCALARMAC, vmlal_n, v4hi, v2si) }, | ||
| 853 | - { VAR2 (SCALARMAC, vqdmlal_n, v4hi, v2si) }, | ||
| 854 | - { VAR6 (SCALARMAC, vmls_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 855 | - { VAR2 (SCALARMAC, vmlsl_n, v4hi, v2si) }, | ||
| 856 | - { VAR2 (SCALARMAC, vqdmlsl_n, v4hi, v2si) }, | ||
| 857 | - { VAR10 (BINOP, vext, | ||
| 858 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 859 | - { VAR8 (UNOP, vrev64, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 860 | - { VAR4 (UNOP, vrev32, v8qi, v4hi, v16qi, v8hi) }, | ||
| 861 | - { VAR2 (UNOP, vrev16, v8qi, v16qi) }, | ||
| 862 | - { VAR4 (CONVERT, vcvt, v2si, v2sf, v4si, v4sf) }, | ||
| 863 | - { VAR4 (FIXCONV, vcvt_n, v2si, v2sf, v4si, v4sf) }, | ||
| 864 | - { VAR10 (SELECT, vbsl, | ||
| 865 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 866 | - { VAR1 (VTBL, vtbl1, v8qi) }, | ||
| 867 | - { VAR1 (VTBL, vtbl2, v8qi) }, | ||
| 868 | - { VAR1 (VTBL, vtbl3, v8qi) }, | ||
| 869 | - { VAR1 (VTBL, vtbl4, v8qi) }, | ||
| 870 | - { VAR1 (VTBX, vtbx1, v8qi) }, | ||
| 871 | - { VAR1 (VTBX, vtbx2, v8qi) }, | ||
| 872 | - { VAR1 (VTBX, vtbx3, v8qi) }, | ||
| 873 | - { VAR1 (VTBX, vtbx4, v8qi) }, | ||
| 874 | - { VAR8 (RESULTPAIR, vtrn, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 875 | - { VAR8 (RESULTPAIR, vzip, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 876 | - { VAR8 (RESULTPAIR, vuzp, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) }, | ||
| 877 | - { VAR5 (REINTERP, vreinterpretv8qi, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 878 | - { VAR5 (REINTERP, vreinterpretv4hi, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 879 | - { VAR5 (REINTERP, vreinterpretv2si, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 880 | - { VAR5 (REINTERP, vreinterpretv2sf, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 881 | - { VAR5 (REINTERP, vreinterpretdi, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 882 | - { VAR5 (REINTERP, vreinterpretv16qi, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 883 | - { VAR5 (REINTERP, vreinterpretv8hi, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 884 | - { VAR5 (REINTERP, vreinterpretv4si, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 885 | - { VAR5 (REINTERP, vreinterpretv4sf, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 886 | - { VAR5 (REINTERP, vreinterpretv2di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 887 | - { VAR10 (LOAD1, vld1, | ||
| 888 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 889 | - { VAR10 (LOAD1LANE, vld1_lane, | ||
| 890 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 891 | - { VAR10 (LOAD1, vld1_dup, | ||
| 892 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 893 | - { VAR10 (STORE1, vst1, | ||
| 894 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 895 | - { VAR10 (STORE1LANE, vst1_lane, | ||
| 896 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 897 | - { VAR9 (LOADSTRUCT, | ||
| 898 | - vld2, v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf) }, | ||
| 899 | - { VAR7 (LOADSTRUCTLANE, vld2_lane, | ||
| 900 | - v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 901 | - { VAR5 (LOADSTRUCT, vld2_dup, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 902 | - { VAR9 (STORESTRUCT, vst2, | ||
| 903 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf) }, | ||
| 904 | - { VAR7 (STORESTRUCTLANE, vst2_lane, | ||
| 905 | - v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 906 | - { VAR9 (LOADSTRUCT, | ||
| 907 | - vld3, v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf) }, | ||
| 908 | - { VAR7 (LOADSTRUCTLANE, vld3_lane, | ||
| 909 | - v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 910 | - { VAR5 (LOADSTRUCT, vld3_dup, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 911 | - { VAR9 (STORESTRUCT, vst3, | ||
| 912 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf) }, | ||
| 913 | - { VAR7 (STORESTRUCTLANE, vst3_lane, | ||
| 914 | - v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 915 | - { VAR9 (LOADSTRUCT, vld4, | ||
| 916 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf) }, | ||
| 917 | - { VAR7 (LOADSTRUCTLANE, vld4_lane, | ||
| 918 | - v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 919 | - { VAR5 (LOADSTRUCT, vld4_dup, v8qi, v4hi, v2si, v2sf, di) }, | ||
| 920 | - { VAR9 (STORESTRUCT, vst4, | ||
| 921 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf) }, | ||
| 922 | - { VAR7 (STORESTRUCTLANE, vst4_lane, | ||
| 923 | - v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf) }, | ||
| 924 | - { VAR10 (LOGICBINOP, vand, | ||
| 925 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 926 | - { VAR10 (LOGICBINOP, vorr, | ||
| 927 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 928 | - { VAR10 (BINOP, veor, | ||
| 929 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 930 | - { VAR10 (LOGICBINOP, vbic, | ||
| 931 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) }, | ||
| 932 | - { VAR10 (LOGICBINOP, vorn, | ||
| 933 | - v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) } | ||
| 934 | + VAR10 (GETLANE, vget_lane, | ||
| 935 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 936 | + VAR10 (SETLANE, vset_lane, | ||
| 937 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 938 | + VAR5 (CREATE, vcreate, v8qi, v4hi, v2si, v2sf, di), | ||
| 939 | + VAR10 (DUP, vdup_n, | ||
| 940 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 941 | + VAR10 (DUPLANE, vdup_lane, | ||
| 942 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 943 | + VAR5 (COMBINE, vcombine, v8qi, v4hi, v2si, v2sf, di), | ||
| 944 | + VAR5 (SPLIT, vget_high, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 945 | + VAR5 (SPLIT, vget_low, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 946 | + VAR3 (UNOP, vmovn, v8hi, v4si, v2di), | ||
| 947 | + VAR3 (UNOP, vqmovn, v8hi, v4si, v2di), | ||
| 948 | + VAR3 (UNOP, vqmovun, v8hi, v4si, v2di), | ||
| 949 | + VAR3 (UNOP, vmovl, v8qi, v4hi, v2si), | ||
| 950 | + VAR6 (LANEMUL, vmul_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 951 | + VAR6 (LANEMAC, vmla_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 952 | + VAR2 (LANEMAC, vmlal_lane, v4hi, v2si), | ||
| 953 | + VAR2 (LANEMAC, vqdmlal_lane, v4hi, v2si), | ||
| 954 | + VAR6 (LANEMAC, vmls_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 955 | + VAR2 (LANEMAC, vmlsl_lane, v4hi, v2si), | ||
| 956 | + VAR2 (LANEMAC, vqdmlsl_lane, v4hi, v2si), | ||
| 957 | + VAR6 (SCALARMUL, vmul_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 958 | + VAR6 (SCALARMAC, vmla_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 959 | + VAR2 (SCALARMAC, vmlal_n, v4hi, v2si), | ||
| 960 | + VAR2 (SCALARMAC, vqdmlal_n, v4hi, v2si), | ||
| 961 | + VAR6 (SCALARMAC, vmls_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 962 | + VAR2 (SCALARMAC, vmlsl_n, v4hi, v2si), | ||
| 963 | + VAR2 (SCALARMAC, vqdmlsl_n, v4hi, v2si), | ||
| 964 | + VAR10 (BINOP, vext, | ||
| 965 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 966 | + VAR8 (UNOP, vrev64, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 967 | + VAR4 (UNOP, vrev32, v8qi, v4hi, v16qi, v8hi), | ||
| 968 | + VAR2 (UNOP, vrev16, v8qi, v16qi), | ||
| 969 | + VAR4 (CONVERT, vcvt, v2si, v2sf, v4si, v4sf), | ||
| 970 | + VAR4 (FIXCONV, vcvt_n, v2si, v2sf, v4si, v4sf), | ||
| 971 | + VAR10 (SELECT, vbsl, | ||
| 972 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 973 | + VAR1 (VTBL, vtbl1, v8qi), | ||
| 974 | + VAR1 (VTBL, vtbl2, v8qi), | ||
| 975 | + VAR1 (VTBL, vtbl3, v8qi), | ||
| 976 | + VAR1 (VTBL, vtbl4, v8qi), | ||
| 977 | + VAR1 (VTBX, vtbx1, v8qi), | ||
| 978 | + VAR1 (VTBX, vtbx2, v8qi), | ||
| 979 | + VAR1 (VTBX, vtbx3, v8qi), | ||
| 980 | + VAR1 (VTBX, vtbx4, v8qi), | ||
| 981 | + VAR8 (RESULTPAIR, vtrn, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 982 | + VAR8 (RESULTPAIR, vzip, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 983 | + VAR8 (RESULTPAIR, vuzp, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf), | ||
| 984 | + VAR5 (REINTERP, vreinterpretv8qi, v8qi, v4hi, v2si, v2sf, di), | ||
| 985 | + VAR5 (REINTERP, vreinterpretv4hi, v8qi, v4hi, v2si, v2sf, di), | ||
| 986 | + VAR5 (REINTERP, vreinterpretv2si, v8qi, v4hi, v2si, v2sf, di), | ||
| 987 | + VAR5 (REINTERP, vreinterpretv2sf, v8qi, v4hi, v2si, v2sf, di), | ||
| 988 | + VAR5 (REINTERP, vreinterpretdi, v8qi, v4hi, v2si, v2sf, di), | ||
| 989 | + VAR5 (REINTERP, vreinterpretv16qi, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 990 | + VAR5 (REINTERP, vreinterpretv8hi, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 991 | + VAR5 (REINTERP, vreinterpretv4si, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 992 | + VAR5 (REINTERP, vreinterpretv4sf, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 993 | + VAR5 (REINTERP, vreinterpretv2di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 994 | + VAR10 (LOAD1, vld1, | ||
| 995 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 996 | + VAR10 (LOAD1LANE, vld1_lane, | ||
| 997 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 998 | + VAR10 (LOAD1, vld1_dup, | ||
| 999 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 1000 | + VAR10 (STORE1, vst1, | ||
| 1001 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 1002 | + VAR10 (STORE1LANE, vst1_lane, | ||
| 1003 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 1004 | + VAR9 (LOADSTRUCT, | ||
| 1005 | + vld2, v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf), | ||
| 1006 | + VAR7 (LOADSTRUCTLANE, vld2_lane, | ||
| 1007 | + v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 1008 | + VAR5 (LOADSTRUCT, vld2_dup, v8qi, v4hi, v2si, v2sf, di), | ||
| 1009 | + VAR9 (STORESTRUCT, vst2, | ||
| 1010 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf), | ||
| 1011 | + VAR7 (STORESTRUCTLANE, vst2_lane, | ||
| 1012 | + v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 1013 | + VAR9 (LOADSTRUCT, | ||
| 1014 | + vld3, v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf), | ||
| 1015 | + VAR7 (LOADSTRUCTLANE, vld3_lane, | ||
| 1016 | + v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 1017 | + VAR5 (LOADSTRUCT, vld3_dup, v8qi, v4hi, v2si, v2sf, di), | ||
| 1018 | + VAR9 (STORESTRUCT, vst3, | ||
| 1019 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf), | ||
| 1020 | + VAR7 (STORESTRUCTLANE, vst3_lane, | ||
| 1021 | + v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 1022 | + VAR9 (LOADSTRUCT, vld4, | ||
| 1023 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf), | ||
| 1024 | + VAR7 (LOADSTRUCTLANE, vld4_lane, | ||
| 1025 | + v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 1026 | + VAR5 (LOADSTRUCT, vld4_dup, v8qi, v4hi, v2si, v2sf, di), | ||
| 1027 | + VAR9 (STORESTRUCT, vst4, | ||
| 1028 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf), | ||
| 1029 | + VAR7 (STORESTRUCTLANE, vst4_lane, | ||
| 1030 | + v8qi, v4hi, v2si, v2sf, v8hi, v4si, v4sf), | ||
| 1031 | + VAR10 (LOGICBINOP, vand, | ||
| 1032 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 1033 | + VAR10 (LOGICBINOP, vorr, | ||
| 1034 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 1035 | + VAR10 (BINOP, veor, | ||
| 1036 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 1037 | + VAR10 (LOGICBINOP, vbic, | ||
| 1038 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di), | ||
| 1039 | + VAR10 (LOGICBINOP, vorn, | ||
| 1040 | + v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) | ||
| 1041 | }; | ||
| 1042 | |||
| 1043 | #undef CF | ||
| 1044 | @@ -18958,10 +18476,185 @@ | ||
| 1045 | #undef VAR9 | ||
| 1046 | #undef VAR10 | ||
| 1047 | |||
| 1048 | +/* Neon defines builtins from ARM_BUILTIN_MAX upwards, though they don't have | ||
| 1049 | + symbolic names defined here (which would require too much duplication). | ||
| 1050 | + FIXME? */ | ||
| 1051 | +enum arm_builtins | ||
| 1052 | +{ | ||
| 1053 | + ARM_BUILTIN_GETWCX, | ||
| 1054 | + ARM_BUILTIN_SETWCX, | ||
| 1055 | + | ||
| 1056 | + ARM_BUILTIN_WZERO, | ||
| 1057 | + | ||
| 1058 | + ARM_BUILTIN_WAVG2BR, | ||
| 1059 | + ARM_BUILTIN_WAVG2HR, | ||
| 1060 | + ARM_BUILTIN_WAVG2B, | ||
| 1061 | + ARM_BUILTIN_WAVG2H, | ||
| 1062 | + | ||
| 1063 | + ARM_BUILTIN_WACCB, | ||
| 1064 | + ARM_BUILTIN_WACCH, | ||
| 1065 | + ARM_BUILTIN_WACCW, | ||
| 1066 | + | ||
| 1067 | + ARM_BUILTIN_WMACS, | ||
| 1068 | + ARM_BUILTIN_WMACSZ, | ||
| 1069 | + ARM_BUILTIN_WMACU, | ||
| 1070 | + ARM_BUILTIN_WMACUZ, | ||
| 1071 | + | ||
| 1072 | + ARM_BUILTIN_WSADB, | ||
| 1073 | + ARM_BUILTIN_WSADBZ, | ||
| 1074 | + ARM_BUILTIN_WSADH, | ||
| 1075 | + ARM_BUILTIN_WSADHZ, | ||
| 1076 | + | ||
| 1077 | + ARM_BUILTIN_WALIGN, | ||
| 1078 | + | ||
| 1079 | + ARM_BUILTIN_TMIA, | ||
| 1080 | + ARM_BUILTIN_TMIAPH, | ||
| 1081 | + ARM_BUILTIN_TMIABB, | ||
| 1082 | + ARM_BUILTIN_TMIABT, | ||
| 1083 | + ARM_BUILTIN_TMIATB, | ||
| 1084 | + ARM_BUILTIN_TMIATT, | ||
| 1085 | + | ||
| 1086 | + ARM_BUILTIN_TMOVMSKB, | ||
| 1087 | + ARM_BUILTIN_TMOVMSKH, | ||
| 1088 | + ARM_BUILTIN_TMOVMSKW, | ||
| 1089 | + | ||
| 1090 | + ARM_BUILTIN_TBCSTB, | ||
| 1091 | + ARM_BUILTIN_TBCSTH, | ||
| 1092 | + ARM_BUILTIN_TBCSTW, | ||
| 1093 | + | ||
| 1094 | + ARM_BUILTIN_WMADDS, | ||
| 1095 | + ARM_BUILTIN_WMADDU, | ||
| 1096 | + | ||
| 1097 | + ARM_BUILTIN_WPACKHSS, | ||
| 1098 | + ARM_BUILTIN_WPACKWSS, | ||
| 1099 | + ARM_BUILTIN_WPACKDSS, | ||
| 1100 | + ARM_BUILTIN_WPACKHUS, | ||
| 1101 | + ARM_BUILTIN_WPACKWUS, | ||
| 1102 | + ARM_BUILTIN_WPACKDUS, | ||
| 1103 | + | ||
| 1104 | + ARM_BUILTIN_WADDB, | ||
| 1105 | + ARM_BUILTIN_WADDH, | ||
| 1106 | + ARM_BUILTIN_WADDW, | ||
| 1107 | + ARM_BUILTIN_WADDSSB, | ||
| 1108 | + ARM_BUILTIN_WADDSSH, | ||
| 1109 | + ARM_BUILTIN_WADDSSW, | ||
| 1110 | + ARM_BUILTIN_WADDUSB, | ||
| 1111 | + ARM_BUILTIN_WADDUSH, | ||
| 1112 | + ARM_BUILTIN_WADDUSW, | ||
| 1113 | + ARM_BUILTIN_WSUBB, | ||
| 1114 | + ARM_BUILTIN_WSUBH, | ||
| 1115 | + ARM_BUILTIN_WSUBW, | ||
| 1116 | + ARM_BUILTIN_WSUBSSB, | ||
| 1117 | + ARM_BUILTIN_WSUBSSH, | ||
| 1118 | + ARM_BUILTIN_WSUBSSW, | ||
| 1119 | + ARM_BUILTIN_WSUBUSB, | ||
| 1120 | + ARM_BUILTIN_WSUBUSH, | ||
| 1121 | + ARM_BUILTIN_WSUBUSW, | ||
| 1122 | + | ||
| 1123 | + ARM_BUILTIN_WAND, | ||
| 1124 | + ARM_BUILTIN_WANDN, | ||
| 1125 | + ARM_BUILTIN_WOR, | ||
| 1126 | + ARM_BUILTIN_WXOR, | ||
| 1127 | + | ||
| 1128 | + ARM_BUILTIN_WCMPEQB, | ||
| 1129 | + ARM_BUILTIN_WCMPEQH, | ||
| 1130 | + ARM_BUILTIN_WCMPEQW, | ||
| 1131 | + ARM_BUILTIN_WCMPGTUB, | ||
| 1132 | + ARM_BUILTIN_WCMPGTUH, | ||
| 1133 | + ARM_BUILTIN_WCMPGTUW, | ||
| 1134 | + ARM_BUILTIN_WCMPGTSB, | ||
| 1135 | + ARM_BUILTIN_WCMPGTSH, | ||
| 1136 | + ARM_BUILTIN_WCMPGTSW, | ||
| 1137 | + | ||
| 1138 | + ARM_BUILTIN_TEXTRMSB, | ||
| 1139 | + ARM_BUILTIN_TEXTRMSH, | ||
| 1140 | + ARM_BUILTIN_TEXTRMSW, | ||
| 1141 | + ARM_BUILTIN_TEXTRMUB, | ||
| 1142 | + ARM_BUILTIN_TEXTRMUH, | ||
| 1143 | + ARM_BUILTIN_TEXTRMUW, | ||
| 1144 | + ARM_BUILTIN_TINSRB, | ||
| 1145 | + ARM_BUILTIN_TINSRH, | ||
| 1146 | + ARM_BUILTIN_TINSRW, | ||
| 1147 | + | ||
| 1148 | + ARM_BUILTIN_WMAXSW, | ||
| 1149 | + ARM_BUILTIN_WMAXSH, | ||
| 1150 | + ARM_BUILTIN_WMAXSB, | ||
| 1151 | + ARM_BUILTIN_WMAXUW, | ||
| 1152 | + ARM_BUILTIN_WMAXUH, | ||
| 1153 | + ARM_BUILTIN_WMAXUB, | ||
| 1154 | + ARM_BUILTIN_WMINSW, | ||
| 1155 | + ARM_BUILTIN_WMINSH, | ||
| 1156 | + ARM_BUILTIN_WMINSB, | ||
| 1157 | + ARM_BUILTIN_WMINUW, | ||
| 1158 | + ARM_BUILTIN_WMINUH, | ||
| 1159 | + ARM_BUILTIN_WMINUB, | ||
| 1160 | + | ||
| 1161 | + ARM_BUILTIN_WMULUM, | ||
| 1162 | + ARM_BUILTIN_WMULSM, | ||
| 1163 | + ARM_BUILTIN_WMULUL, | ||
| 1164 | + | ||
| 1165 | + ARM_BUILTIN_PSADBH, | ||
| 1166 | + ARM_BUILTIN_WSHUFH, | ||
| 1167 | + | ||
| 1168 | + ARM_BUILTIN_WSLLH, | ||
| 1169 | + ARM_BUILTIN_WSLLW, | ||
| 1170 | + ARM_BUILTIN_WSLLD, | ||
| 1171 | + ARM_BUILTIN_WSRAH, | ||
| 1172 | + ARM_BUILTIN_WSRAW, | ||
| 1173 | + ARM_BUILTIN_WSRAD, | ||
| 1174 | + ARM_BUILTIN_WSRLH, | ||
| 1175 | + ARM_BUILTIN_WSRLW, | ||
| 1176 | + ARM_BUILTIN_WSRLD, | ||
| 1177 | + ARM_BUILTIN_WRORH, | ||
| 1178 | + ARM_BUILTIN_WRORW, | ||
| 1179 | + ARM_BUILTIN_WRORD, | ||
| 1180 | + ARM_BUILTIN_WSLLHI, | ||
| 1181 | + ARM_BUILTIN_WSLLWI, | ||
| 1182 | + ARM_BUILTIN_WSLLDI, | ||
| 1183 | + ARM_BUILTIN_WSRAHI, | ||
| 1184 | + ARM_BUILTIN_WSRAWI, | ||
| 1185 | + ARM_BUILTIN_WSRADI, | ||
| 1186 | + ARM_BUILTIN_WSRLHI, | ||
| 1187 | + ARM_BUILTIN_WSRLWI, | ||
| 1188 | + ARM_BUILTIN_WSRLDI, | ||
| 1189 | + ARM_BUILTIN_WRORHI, | ||
| 1190 | + ARM_BUILTIN_WRORWI, | ||
| 1191 | + ARM_BUILTIN_WRORDI, | ||
| 1192 | + | ||
| 1193 | + ARM_BUILTIN_WUNPCKIHB, | ||
| 1194 | + ARM_BUILTIN_WUNPCKIHH, | ||
| 1195 | + ARM_BUILTIN_WUNPCKIHW, | ||
| 1196 | + ARM_BUILTIN_WUNPCKILB, | ||
| 1197 | + ARM_BUILTIN_WUNPCKILH, | ||
| 1198 | + ARM_BUILTIN_WUNPCKILW, | ||
| 1199 | + | ||
| 1200 | + ARM_BUILTIN_WUNPCKEHSB, | ||
| 1201 | + ARM_BUILTIN_WUNPCKEHSH, | ||
| 1202 | + ARM_BUILTIN_WUNPCKEHSW, | ||
| 1203 | + ARM_BUILTIN_WUNPCKEHUB, | ||
| 1204 | + ARM_BUILTIN_WUNPCKEHUH, | ||
| 1205 | + ARM_BUILTIN_WUNPCKEHUW, | ||
| 1206 | + ARM_BUILTIN_WUNPCKELSB, | ||
| 1207 | + ARM_BUILTIN_WUNPCKELSH, | ||
| 1208 | + ARM_BUILTIN_WUNPCKELSW, | ||
| 1209 | + ARM_BUILTIN_WUNPCKELUB, | ||
| 1210 | + ARM_BUILTIN_WUNPCKELUH, | ||
| 1211 | + ARM_BUILTIN_WUNPCKELUW, | ||
| 1212 | + | ||
| 1213 | + ARM_BUILTIN_THREAD_POINTER, | ||
| 1214 | + | ||
| 1215 | + ARM_BUILTIN_NEON_BASE, | ||
| 1216 | + | ||
| 1217 | + ARM_BUILTIN_MAX = ARM_BUILTIN_NEON_BASE + ARRAY_SIZE (neon_builtin_data) | ||
| 1218 | +}; | ||
| 1219 | + | ||
| 1220 | +static GTY(()) tree arm_builtin_decls[ARM_BUILTIN_MAX]; | ||
| 1221 | + | ||
| 1222 | static void | ||
| 1223 | arm_init_neon_builtins (void) | ||
| 1224 | { | ||
| 1225 | - unsigned int i, fcode = ARM_BUILTIN_NEON_BASE; | ||
| 1226 | + unsigned int i, fcode; | ||
| 1227 | + tree decl; | ||
| 1228 | |||
| 1229 | tree neon_intQI_type_node; | ||
| 1230 | tree neon_intHI_type_node; | ||
| 1231 | @@ -19209,250 +18902,740 @@ | ||
| 1232 | } | ||
| 1233 | } | ||
| 1234 | |||
| 1235 | - for (i = 0; i < ARRAY_SIZE (neon_builtin_data); i++) | ||
| 1236 | + for (i = 0, fcode = ARM_BUILTIN_NEON_BASE; | ||
| 1237 | + i < ARRAY_SIZE (neon_builtin_data); | ||
| 1238 | + i++, fcode++) | ||
| 1239 | { | ||
| 1240 | neon_builtin_datum *d = &neon_builtin_data[i]; | ||
| 1241 | - unsigned int j, codeidx = 0; | ||
| 1242 | - | ||
| 1243 | - d->base_fcode = fcode; | ||
| 1244 | - | ||
| 1245 | - for (j = 0; j < T_MAX; j++) | ||
| 1246 | - { | ||
| 1247 | - const char* const modenames[] = { | ||
| 1248 | - "v8qi", "v4hi", "v2si", "v2sf", "di", | ||
| 1249 | - "v16qi", "v8hi", "v4si", "v4sf", "v2di" | ||
| 1250 | - }; | ||
| 1251 | - char namebuf[60]; | ||
| 1252 | - tree ftype = NULL; | ||
| 1253 | - enum insn_code icode; | ||
| 1254 | - int is_load = 0, is_store = 0; | ||
| 1255 | - | ||
| 1256 | - if ((d->bits & (1 << j)) == 0) | ||
| 1257 | - continue; | ||
| 1258 | - | ||
| 1259 | - icode = d->codes[codeidx++]; | ||
| 1260 | - | ||
| 1261 | - switch (d->itype) | ||
| 1262 | - { | ||
| 1263 | - case NEON_LOAD1: | ||
| 1264 | - case NEON_LOAD1LANE: | ||
| 1265 | - case NEON_LOADSTRUCT: | ||
| 1266 | - case NEON_LOADSTRUCTLANE: | ||
| 1267 | - is_load = 1; | ||
| 1268 | - /* Fall through. */ | ||
| 1269 | - case NEON_STORE1: | ||
| 1270 | - case NEON_STORE1LANE: | ||
| 1271 | - case NEON_STORESTRUCT: | ||
| 1272 | - case NEON_STORESTRUCTLANE: | ||
| 1273 | - if (!is_load) | ||
| 1274 | - is_store = 1; | ||
| 1275 | - /* Fall through. */ | ||
| 1276 | - case NEON_UNOP: | ||
| 1277 | - case NEON_BINOP: | ||
| 1278 | - case NEON_LOGICBINOP: | ||
| 1279 | - case NEON_SHIFTINSERT: | ||
| 1280 | - case NEON_TERNOP: | ||
| 1281 | - case NEON_GETLANE: | ||
| 1282 | - case NEON_SETLANE: | ||
| 1283 | - case NEON_CREATE: | ||
| 1284 | - case NEON_DUP: | ||
| 1285 | - case NEON_DUPLANE: | ||
| 1286 | - case NEON_SHIFTIMM: | ||
| 1287 | - case NEON_SHIFTACC: | ||
| 1288 | - case NEON_COMBINE: | ||
| 1289 | - case NEON_SPLIT: | ||
| 1290 | - case NEON_CONVERT: | ||
| 1291 | - case NEON_FIXCONV: | ||
| 1292 | - case NEON_LANEMUL: | ||
| 1293 | - case NEON_LANEMULL: | ||
| 1294 | - case NEON_LANEMULH: | ||
| 1295 | - case NEON_LANEMAC: | ||
| 1296 | - case NEON_SCALARMUL: | ||
| 1297 | - case NEON_SCALARMULL: | ||
| 1298 | - case NEON_SCALARMULH: | ||
| 1299 | - case NEON_SCALARMAC: | ||
| 1300 | - case NEON_SELECT: | ||
| 1301 | - case NEON_VTBL: | ||
| 1302 | - case NEON_VTBX: | ||
| 1303 | - { | ||
| 1304 | - int k; | ||
| 1305 | - tree return_type = void_type_node, args = void_list_node; | ||
| 1306 | - | ||
| 1307 | - /* Build a function type directly from the insn_data for this | ||
| 1308 | - builtin. The build_function_type() function takes care of | ||
| 1309 | - removing duplicates for us. */ | ||
| 1310 | - for (k = insn_data[icode].n_operands - 1; k >= 0; k--) | ||
| 1311 | - { | ||
| 1312 | - tree eltype; | ||
| 1313 | - | ||
| 1314 | - if (is_load && k == 1) | ||
| 1315 | - { | ||
| 1316 | - /* Neon load patterns always have the memory operand | ||
| 1317 | - in the operand 1 position. */ | ||
| 1318 | - gcc_assert (insn_data[icode].operand[k].predicate | ||
| 1319 | - == neon_struct_operand); | ||
| 1320 | - | ||
| 1321 | - switch (1 << j) | ||
| 1322 | - { | ||
| 1323 | - case T_V8QI: | ||
| 1324 | - case T_V16QI: | ||
| 1325 | - eltype = const_intQI_pointer_node; | ||
| 1326 | - break; | ||
| 1327 | - | ||
| 1328 | - case T_V4HI: | ||
| 1329 | - case T_V8HI: | ||
| 1330 | - eltype = const_intHI_pointer_node; | ||
| 1331 | - break; | ||
| 1332 | - | ||
| 1333 | - case T_V2SI: | ||
| 1334 | - case T_V4SI: | ||
| 1335 | - eltype = const_intSI_pointer_node; | ||
| 1336 | - break; | ||
| 1337 | - | ||
| 1338 | - case T_V2SF: | ||
| 1339 | - case T_V4SF: | ||
| 1340 | - eltype = const_float_pointer_node; | ||
| 1341 | - break; | ||
| 1342 | - | ||
| 1343 | - case T_DI: | ||
| 1344 | - case T_V2DI: | ||
| 1345 | - eltype = const_intDI_pointer_node; | ||
| 1346 | - break; | ||
| 1347 | - | ||
| 1348 | - default: gcc_unreachable (); | ||
| 1349 | - } | ||
| 1350 | - } | ||
| 1351 | - else if (is_store && k == 0) | ||
| 1352 | - { | ||
| 1353 | - /* Similarly, Neon store patterns use operand 0 as | ||
| 1354 | - the memory location to store to. */ | ||
| 1355 | - gcc_assert (insn_data[icode].operand[k].predicate | ||
| 1356 | - == neon_struct_operand); | ||
| 1357 | - | ||
| 1358 | - switch (1 << j) | ||
| 1359 | - { | ||
| 1360 | - case T_V8QI: | ||
| 1361 | - case T_V16QI: | ||
| 1362 | - eltype = intQI_pointer_node; | ||
| 1363 | - break; | ||
| 1364 | - | ||
| 1365 | - case T_V4HI: | ||
| 1366 | - case T_V8HI: | ||
| 1367 | - eltype = intHI_pointer_node; | ||
| 1368 | - break; | ||
| 1369 | - | ||
| 1370 | - case T_V2SI: | ||
| 1371 | - case T_V4SI: | ||
| 1372 | - eltype = intSI_pointer_node; | ||
| 1373 | - break; | ||
| 1374 | - | ||
| 1375 | - case T_V2SF: | ||
| 1376 | - case T_V4SF: | ||
| 1377 | - eltype = float_pointer_node; | ||
| 1378 | - break; | ||
| 1379 | - | ||
| 1380 | - case T_DI: | ||
| 1381 | - case T_V2DI: | ||
| 1382 | - eltype = intDI_pointer_node; | ||
| 1383 | - break; | ||
| 1384 | - | ||
| 1385 | - default: gcc_unreachable (); | ||
| 1386 | - } | ||
| 1387 | - } | ||
| 1388 | - else | ||
| 1389 | - { | ||
| 1390 | - switch (insn_data[icode].operand[k].mode) | ||
| 1391 | - { | ||
| 1392 | - case VOIDmode: eltype = void_type_node; break; | ||
| 1393 | - /* Scalars. */ | ||
| 1394 | - case QImode: eltype = neon_intQI_type_node; break; | ||
| 1395 | - case HImode: eltype = neon_intHI_type_node; break; | ||
| 1396 | - case SImode: eltype = neon_intSI_type_node; break; | ||
| 1397 | - case SFmode: eltype = neon_float_type_node; break; | ||
| 1398 | - case DImode: eltype = neon_intDI_type_node; break; | ||
| 1399 | - case TImode: eltype = intTI_type_node; break; | ||
| 1400 | - case EImode: eltype = intEI_type_node; break; | ||
| 1401 | - case OImode: eltype = intOI_type_node; break; | ||
| 1402 | - case CImode: eltype = intCI_type_node; break; | ||
| 1403 | - case XImode: eltype = intXI_type_node; break; | ||
| 1404 | - /* 64-bit vectors. */ | ||
| 1405 | - case V8QImode: eltype = V8QI_type_node; break; | ||
| 1406 | - case V4HImode: eltype = V4HI_type_node; break; | ||
| 1407 | - case V2SImode: eltype = V2SI_type_node; break; | ||
| 1408 | - case V2SFmode: eltype = V2SF_type_node; break; | ||
| 1409 | - /* 128-bit vectors. */ | ||
| 1410 | - case V16QImode: eltype = V16QI_type_node; break; | ||
| 1411 | - case V8HImode: eltype = V8HI_type_node; break; | ||
| 1412 | - case V4SImode: eltype = V4SI_type_node; break; | ||
| 1413 | - case V4SFmode: eltype = V4SF_type_node; break; | ||
| 1414 | - case V2DImode: eltype = V2DI_type_node; break; | ||
| 1415 | - default: gcc_unreachable (); | ||
| 1416 | - } | ||
| 1417 | - } | ||
| 1418 | - | ||
| 1419 | - if (k == 0 && !is_store) | ||
| 1420 | - return_type = eltype; | ||
| 1421 | - else | ||
| 1422 | - args = tree_cons (NULL_TREE, eltype, args); | ||
| 1423 | - } | ||
| 1424 | - | ||
| 1425 | - ftype = build_function_type (return_type, args); | ||
| 1426 | - } | ||
| 1427 | - break; | ||
| 1428 | - | ||
| 1429 | - case NEON_RESULTPAIR: | ||
| 1430 | - { | ||
| 1431 | - switch (insn_data[icode].operand[1].mode) | ||
| 1432 | - { | ||
| 1433 | - case V8QImode: ftype = void_ftype_pv8qi_v8qi_v8qi; break; | ||
| 1434 | - case V4HImode: ftype = void_ftype_pv4hi_v4hi_v4hi; break; | ||
| 1435 | - case V2SImode: ftype = void_ftype_pv2si_v2si_v2si; break; | ||
| 1436 | - case V2SFmode: ftype = void_ftype_pv2sf_v2sf_v2sf; break; | ||
| 1437 | - case DImode: ftype = void_ftype_pdi_di_di; break; | ||
| 1438 | - case V16QImode: ftype = void_ftype_pv16qi_v16qi_v16qi; break; | ||
| 1439 | - case V8HImode: ftype = void_ftype_pv8hi_v8hi_v8hi; break; | ||
| 1440 | - case V4SImode: ftype = void_ftype_pv4si_v4si_v4si; break; | ||
| 1441 | - case V4SFmode: ftype = void_ftype_pv4sf_v4sf_v4sf; break; | ||
| 1442 | - case V2DImode: ftype = void_ftype_pv2di_v2di_v2di; break; | ||
| 1443 | - default: gcc_unreachable (); | ||
| 1444 | - } | ||
| 1445 | - } | ||
| 1446 | - break; | ||
| 1447 | - | ||
| 1448 | - case NEON_REINTERP: | ||
| 1449 | - { | ||
| 1450 | - /* We iterate over 5 doubleword types, then 5 quadword | ||
| 1451 | - types. */ | ||
| 1452 | - int rhs = j % 5; | ||
| 1453 | - switch (insn_data[icode].operand[0].mode) | ||
| 1454 | - { | ||
| 1455 | - case V8QImode: ftype = reinterp_ftype_dreg[0][rhs]; break; | ||
| 1456 | - case V4HImode: ftype = reinterp_ftype_dreg[1][rhs]; break; | ||
| 1457 | - case V2SImode: ftype = reinterp_ftype_dreg[2][rhs]; break; | ||
| 1458 | - case V2SFmode: ftype = reinterp_ftype_dreg[3][rhs]; break; | ||
| 1459 | - case DImode: ftype = reinterp_ftype_dreg[4][rhs]; break; | ||
| 1460 | - case V16QImode: ftype = reinterp_ftype_qreg[0][rhs]; break; | ||
| 1461 | - case V8HImode: ftype = reinterp_ftype_qreg[1][rhs]; break; | ||
| 1462 | - case V4SImode: ftype = reinterp_ftype_qreg[2][rhs]; break; | ||
| 1463 | - case V4SFmode: ftype = reinterp_ftype_qreg[3][rhs]; break; | ||
| 1464 | - case V2DImode: ftype = reinterp_ftype_qreg[4][rhs]; break; | ||
| 1465 | - default: gcc_unreachable (); | ||
| 1466 | - } | ||
| 1467 | - } | ||
| 1468 | - break; | ||
| 1469 | - | ||
| 1470 | - default: | ||
| 1471 | - gcc_unreachable (); | ||
| 1472 | - } | ||
| 1473 | - | ||
| 1474 | - gcc_assert (ftype != NULL); | ||
| 1475 | - | ||
| 1476 | - sprintf (namebuf, "__builtin_neon_%s%s", d->name, modenames[j]); | ||
| 1477 | - | ||
| 1478 | - add_builtin_function (namebuf, ftype, fcode++, BUILT_IN_MD, NULL, | ||
| 1479 | - NULL_TREE); | ||
| 1480 | - } | ||
| 1481 | - } | ||
| 1482 | + | ||
| 1483 | + const char* const modenames[] = { | ||
| 1484 | + "v8qi", "v4hi", "v2si", "v2sf", "di", | ||
| 1485 | + "v16qi", "v8hi", "v4si", "v4sf", "v2di", | ||
| 1486 | + "ti", "ei", "oi" | ||
| 1487 | + }; | ||
| 1488 | + char namebuf[60]; | ||
| 1489 | + tree ftype = NULL; | ||
| 1490 | + int is_load = 0, is_store = 0; | ||
| 1491 | + | ||
| 1492 | + gcc_assert (ARRAY_SIZE (modenames) == T_MAX); | ||
| 1493 | + | ||
| 1494 | + d->fcode = fcode; | ||
| 1495 | + | ||
| 1496 | + switch (d->itype) | ||
| 1497 | + { | ||
| 1498 | + case NEON_LOAD1: | ||
| 1499 | + case NEON_LOAD1LANE: | ||
| 1500 | + case NEON_LOADSTRUCT: | ||
| 1501 | + case NEON_LOADSTRUCTLANE: | ||
| 1502 | + is_load = 1; | ||
| 1503 | + /* Fall through. */ | ||
| 1504 | + case NEON_STORE1: | ||
| 1505 | + case NEON_STORE1LANE: | ||
| 1506 | + case NEON_STORESTRUCT: | ||
| 1507 | + case NEON_STORESTRUCTLANE: | ||
| 1508 | + if (!is_load) | ||
| 1509 | + is_store = 1; | ||
| 1510 | + /* Fall through. */ | ||
| 1511 | + case NEON_UNOP: | ||
| 1512 | + case NEON_BINOP: | ||
| 1513 | + case NEON_LOGICBINOP: | ||
| 1514 | + case NEON_SHIFTINSERT: | ||
| 1515 | + case NEON_TERNOP: | ||
| 1516 | + case NEON_GETLANE: | ||
| 1517 | + case NEON_SETLANE: | ||
| 1518 | + case NEON_CREATE: | ||
| 1519 | + case NEON_DUP: | ||
| 1520 | + case NEON_DUPLANE: | ||
| 1521 | + case NEON_SHIFTIMM: | ||
| 1522 | + case NEON_SHIFTACC: | ||
| 1523 | + case NEON_COMBINE: | ||
| 1524 | + case NEON_SPLIT: | ||
| 1525 | + case NEON_CONVERT: | ||
| 1526 | + case NEON_FIXCONV: | ||
| 1527 | + case NEON_LANEMUL: | ||
| 1528 | + case NEON_LANEMULL: | ||
| 1529 | + case NEON_LANEMULH: | ||
| 1530 | + case NEON_LANEMAC: | ||
| 1531 | + case NEON_SCALARMUL: | ||
| 1532 | + case NEON_SCALARMULL: | ||
| 1533 | + case NEON_SCALARMULH: | ||
| 1534 | + case NEON_SCALARMAC: | ||
| 1535 | + case NEON_SELECT: | ||
| 1536 | + case NEON_VTBL: | ||
| 1537 | + case NEON_VTBX: | ||
| 1538 | + { | ||
| 1539 | + int k; | ||
| 1540 | + tree return_type = void_type_node, args = void_list_node; | ||
| 1541 | + | ||
| 1542 | + /* Build a function type directly from the insn_data for | ||
| 1543 | + this builtin. The build_function_type() function takes | ||
| 1544 | + care of removing duplicates for us. */ | ||
| 1545 | + for (k = insn_data[d->code].n_operands - 1; k >= 0; k--) | ||
| 1546 | + { | ||
| 1547 | + tree eltype; | ||
| 1548 | + | ||
| 1549 | + if (is_load && k == 1) | ||
| 1550 | + { | ||
| 1551 | + /* Neon load patterns always have the memory | ||
| 1552 | + operand in the operand 1 position. */ | ||
| 1553 | + gcc_assert (insn_data[d->code].operand[k].predicate | ||
| 1554 | + == neon_struct_operand); | ||
| 1555 | + | ||
| 1556 | + switch (d->mode) | ||
| 1557 | + { | ||
| 1558 | + case T_V8QI: | ||
| 1559 | + case T_V16QI: | ||
| 1560 | + eltype = const_intQI_pointer_node; | ||
| 1561 | + break; | ||
| 1562 | + | ||
| 1563 | + case T_V4HI: | ||
| 1564 | + case T_V8HI: | ||
| 1565 | + eltype = const_intHI_pointer_node; | ||
| 1566 | + break; | ||
| 1567 | + | ||
| 1568 | + case T_V2SI: | ||
| 1569 | + case T_V4SI: | ||
| 1570 | + eltype = const_intSI_pointer_node; | ||
| 1571 | + break; | ||
| 1572 | + | ||
| 1573 | + case T_V2SF: | ||
| 1574 | + case T_V4SF: | ||
| 1575 | + eltype = const_float_pointer_node; | ||
| 1576 | + break; | ||
| 1577 | + | ||
| 1578 | + case T_DI: | ||
| 1579 | + case T_V2DI: | ||
| 1580 | + eltype = const_intDI_pointer_node; | ||
| 1581 | + break; | ||
| 1582 | + | ||
| 1583 | + default: gcc_unreachable (); | ||
| 1584 | + } | ||
| 1585 | + } | ||
| 1586 | + else if (is_store && k == 0) | ||
| 1587 | + { | ||
| 1588 | + /* Similarly, Neon store patterns use operand 0 as | ||
| 1589 | + the memory location to store to. */ | ||
| 1590 | + gcc_assert (insn_data[d->code].operand[k].predicate | ||
| 1591 | + == neon_struct_operand); | ||
| 1592 | + | ||
| 1593 | + switch (d->mode) | ||
| 1594 | + { | ||
| 1595 | + case T_V8QI: | ||
| 1596 | + case T_V16QI: | ||
| 1597 | + eltype = intQI_pointer_node; | ||
| 1598 | + break; | ||
| 1599 | + | ||
| 1600 | + case T_V4HI: | ||
| 1601 | + case T_V8HI: | ||
| 1602 | + eltype = intHI_pointer_node; | ||
| 1603 | + break; | ||
| 1604 | + | ||
| 1605 | + case T_V2SI: | ||
| 1606 | + case T_V4SI: | ||
| 1607 | + eltype = intSI_pointer_node; | ||
| 1608 | + break; | ||
| 1609 | + | ||
| 1610 | + case T_V2SF: | ||
| 1611 | + case T_V4SF: | ||
| 1612 | + eltype = float_pointer_node; | ||
| 1613 | + break; | ||
| 1614 | + | ||
| 1615 | + case T_DI: | ||
| 1616 | + case T_V2DI: | ||
| 1617 | + eltype = intDI_pointer_node; | ||
| 1618 | + break; | ||
| 1619 | + | ||
| 1620 | + default: gcc_unreachable (); | ||
| 1621 | + } | ||
| 1622 | + } | ||
| 1623 | + else | ||
| 1624 | + { | ||
| 1625 | + switch (insn_data[d->code].operand[k].mode) | ||
| 1626 | + { | ||
| 1627 | + case VOIDmode: eltype = void_type_node; break; | ||
| 1628 | + /* Scalars. */ | ||
| 1629 | + case QImode: eltype = neon_intQI_type_node; break; | ||
| 1630 | + case HImode: eltype = neon_intHI_type_node; break; | ||
| 1631 | + case SImode: eltype = neon_intSI_type_node; break; | ||
| 1632 | + case SFmode: eltype = neon_float_type_node; break; | ||
| 1633 | + case DImode: eltype = neon_intDI_type_node; break; | ||
| 1634 | + case TImode: eltype = intTI_type_node; break; | ||
| 1635 | + case EImode: eltype = intEI_type_node; break; | ||
| 1636 | + case OImode: eltype = intOI_type_node; break; | ||
| 1637 | + case CImode: eltype = intCI_type_node; break; | ||
| 1638 | + case XImode: eltype = intXI_type_node; break; | ||
| 1639 | + /* 64-bit vectors. */ | ||
| 1640 | + case V8QImode: eltype = V8QI_type_node; break; | ||
| 1641 | + case V4HImode: eltype = V4HI_type_node; break; | ||
| 1642 | + case V2SImode: eltype = V2SI_type_node; break; | ||
| 1643 | + case V2SFmode: eltype = V2SF_type_node; break; | ||
| 1644 | + /* 128-bit vectors. */ | ||
| 1645 | + case V16QImode: eltype = V16QI_type_node; break; | ||
| 1646 | + case V8HImode: eltype = V8HI_type_node; break; | ||
| 1647 | + case V4SImode: eltype = V4SI_type_node; break; | ||
| 1648 | + case V4SFmode: eltype = V4SF_type_node; break; | ||
| 1649 | + case V2DImode: eltype = V2DI_type_node; break; | ||
| 1650 | + default: gcc_unreachable (); | ||
| 1651 | + } | ||
| 1652 | + } | ||
| 1653 | + | ||
| 1654 | + if (k == 0 && !is_store) | ||
| 1655 | + return_type = eltype; | ||
| 1656 | + else | ||
| 1657 | + args = tree_cons (NULL_TREE, eltype, args); | ||
| 1658 | + } | ||
| 1659 | + | ||
| 1660 | + ftype = build_function_type (return_type, args); | ||
| 1661 | + } | ||
| 1662 | + break; | ||
| 1663 | + | ||
| 1664 | + case NEON_RESULTPAIR: | ||
| 1665 | + { | ||
| 1666 | + switch (insn_data[d->code].operand[1].mode) | ||
| 1667 | + { | ||
| 1668 | + case V8QImode: ftype = void_ftype_pv8qi_v8qi_v8qi; break; | ||
| 1669 | + case V4HImode: ftype = void_ftype_pv4hi_v4hi_v4hi; break; | ||
| 1670 | + case V2SImode: ftype = void_ftype_pv2si_v2si_v2si; break; | ||
| 1671 | + case V2SFmode: ftype = void_ftype_pv2sf_v2sf_v2sf; break; | ||
| 1672 | + case DImode: ftype = void_ftype_pdi_di_di; break; | ||
| 1673 | + case V16QImode: ftype = void_ftype_pv16qi_v16qi_v16qi; break; | ||
| 1674 | + case V8HImode: ftype = void_ftype_pv8hi_v8hi_v8hi; break; | ||
| 1675 | + case V4SImode: ftype = void_ftype_pv4si_v4si_v4si; break; | ||
| 1676 | + case V4SFmode: ftype = void_ftype_pv4sf_v4sf_v4sf; break; | ||
| 1677 | + case V2DImode: ftype = void_ftype_pv2di_v2di_v2di; break; | ||
| 1678 | + default: gcc_unreachable (); | ||
| 1679 | + } | ||
| 1680 | + } | ||
| 1681 | + break; | ||
| 1682 | + | ||
| 1683 | + case NEON_REINTERP: | ||
| 1684 | + { | ||
| 1685 | + /* We iterate over 5 doubleword types, then 5 quadword | ||
| 1686 | + types. */ | ||
| 1687 | + int rhs = d->mode % 5; | ||
| 1688 | + switch (insn_data[d->code].operand[0].mode) | ||
| 1689 | + { | ||
| 1690 | + case V8QImode: ftype = reinterp_ftype_dreg[0][rhs]; break; | ||
| 1691 | + case V4HImode: ftype = reinterp_ftype_dreg[1][rhs]; break; | ||
| 1692 | + case V2SImode: ftype = reinterp_ftype_dreg[2][rhs]; break; | ||
| 1693 | + case V2SFmode: ftype = reinterp_ftype_dreg[3][rhs]; break; | ||
| 1694 | + case DImode: ftype = reinterp_ftype_dreg[4][rhs]; break; | ||
| 1695 | + case V16QImode: ftype = reinterp_ftype_qreg[0][rhs]; break; | ||
| 1696 | + case V8HImode: ftype = reinterp_ftype_qreg[1][rhs]; break; | ||
| 1697 | + case V4SImode: ftype = reinterp_ftype_qreg[2][rhs]; break; | ||
| 1698 | + case V4SFmode: ftype = reinterp_ftype_qreg[3][rhs]; break; | ||
| 1699 | + case V2DImode: ftype = reinterp_ftype_qreg[4][rhs]; break; | ||
| 1700 | + default: gcc_unreachable (); | ||
| 1701 | + } | ||
| 1702 | + } | ||
| 1703 | + break; | ||
| 1704 | + | ||
| 1705 | + default: | ||
| 1706 | + gcc_unreachable (); | ||
| 1707 | + } | ||
| 1708 | + | ||
| 1709 | + gcc_assert (ftype != NULL); | ||
| 1710 | + | ||
| 1711 | + sprintf (namebuf, "__builtin_neon_%s%s", d->name, modenames[d->mode]); | ||
| 1712 | + | ||
| 1713 | + decl = add_builtin_function (namebuf, ftype, fcode, BUILT_IN_MD, NULL, | ||
| 1714 | + NULL_TREE); | ||
| 1715 | + arm_builtin_decls[fcode] = decl; | ||
| 1716 | + } | ||
| 1717 | +} | ||
| 1718 | + | ||
| 1719 | +#define def_mbuiltin(MASK, NAME, TYPE, CODE) \ | ||
| 1720 | + do \ | ||
| 1721 | + { \ | ||
| 1722 | + if ((MASK) & insn_flags) \ | ||
| 1723 | + { \ | ||
| 1724 | + tree bdecl; \ | ||
| 1725 | + bdecl = add_builtin_function ((NAME), (TYPE), (CODE), \ | ||
| 1726 | + BUILT_IN_MD, NULL, NULL_TREE); \ | ||
| 1727 | + arm_builtin_decls[CODE] = bdecl; \ | ||
| 1728 | + } \ | ||
| 1729 | + } \ | ||
| 1730 | + while (0) | ||
| 1731 | + | ||
| 1732 | +struct builtin_description | ||
| 1733 | +{ | ||
| 1734 | + const unsigned int mask; | ||
| 1735 | + const enum insn_code icode; | ||
| 1736 | + const char * const name; | ||
| 1737 | + const enum arm_builtins code; | ||
| 1738 | + const enum rtx_code comparison; | ||
| 1739 | + const unsigned int flag; | ||
| 1740 | +}; | ||
| 1741 | + | ||
| 1742 | +static const struct builtin_description bdesc_2arg[] = | ||
| 1743 | +{ | ||
| 1744 | +#define IWMMXT_BUILTIN(code, string, builtin) \ | ||
| 1745 | + { FL_IWMMXT, CODE_FOR_##code, "__builtin_arm_" string, \ | ||
| 1746 | + ARM_BUILTIN_##builtin, UNKNOWN, 0 }, | ||
| 1747 | + | ||
| 1748 | + IWMMXT_BUILTIN (addv8qi3, "waddb", WADDB) | ||
| 1749 | + IWMMXT_BUILTIN (addv4hi3, "waddh", WADDH) | ||
| 1750 | + IWMMXT_BUILTIN (addv2si3, "waddw", WADDW) | ||
| 1751 | + IWMMXT_BUILTIN (subv8qi3, "wsubb", WSUBB) | ||
| 1752 | + IWMMXT_BUILTIN (subv4hi3, "wsubh", WSUBH) | ||
| 1753 | + IWMMXT_BUILTIN (subv2si3, "wsubw", WSUBW) | ||
| 1754 | + IWMMXT_BUILTIN (ssaddv8qi3, "waddbss", WADDSSB) | ||
| 1755 | + IWMMXT_BUILTIN (ssaddv4hi3, "waddhss", WADDSSH) | ||
| 1756 | + IWMMXT_BUILTIN (ssaddv2si3, "waddwss", WADDSSW) | ||
| 1757 | + IWMMXT_BUILTIN (sssubv8qi3, "wsubbss", WSUBSSB) | ||
| 1758 | + IWMMXT_BUILTIN (sssubv4hi3, "wsubhss", WSUBSSH) | ||
| 1759 | + IWMMXT_BUILTIN (sssubv2si3, "wsubwss", WSUBSSW) | ||
| 1760 | + IWMMXT_BUILTIN (usaddv8qi3, "waddbus", WADDUSB) | ||
| 1761 | + IWMMXT_BUILTIN (usaddv4hi3, "waddhus", WADDUSH) | ||
| 1762 | + IWMMXT_BUILTIN (usaddv2si3, "waddwus", WADDUSW) | ||
| 1763 | + IWMMXT_BUILTIN (ussubv8qi3, "wsubbus", WSUBUSB) | ||
| 1764 | + IWMMXT_BUILTIN (ussubv4hi3, "wsubhus", WSUBUSH) | ||
| 1765 | + IWMMXT_BUILTIN (ussubv2si3, "wsubwus", WSUBUSW) | ||
| 1766 | + IWMMXT_BUILTIN (mulv4hi3, "wmulul", WMULUL) | ||
| 1767 | + IWMMXT_BUILTIN (smulv4hi3_highpart, "wmulsm", WMULSM) | ||
| 1768 | + IWMMXT_BUILTIN (umulv4hi3_highpart, "wmulum", WMULUM) | ||
| 1769 | + IWMMXT_BUILTIN (eqv8qi3, "wcmpeqb", WCMPEQB) | ||
| 1770 | + IWMMXT_BUILTIN (eqv4hi3, "wcmpeqh", WCMPEQH) | ||
| 1771 | + IWMMXT_BUILTIN (eqv2si3, "wcmpeqw", WCMPEQW) | ||
| 1772 | + IWMMXT_BUILTIN (gtuv8qi3, "wcmpgtub", WCMPGTUB) | ||
| 1773 | + IWMMXT_BUILTIN (gtuv4hi3, "wcmpgtuh", WCMPGTUH) | ||
| 1774 | + IWMMXT_BUILTIN (gtuv2si3, "wcmpgtuw", WCMPGTUW) | ||
| 1775 | + IWMMXT_BUILTIN (gtv8qi3, "wcmpgtsb", WCMPGTSB) | ||
| 1776 | + IWMMXT_BUILTIN (gtv4hi3, "wcmpgtsh", WCMPGTSH) | ||
| 1777 | + IWMMXT_BUILTIN (gtv2si3, "wcmpgtsw", WCMPGTSW) | ||
| 1778 | + IWMMXT_BUILTIN (umaxv8qi3, "wmaxub", WMAXUB) | ||
| 1779 | + IWMMXT_BUILTIN (smaxv8qi3, "wmaxsb", WMAXSB) | ||
| 1780 | + IWMMXT_BUILTIN (umaxv4hi3, "wmaxuh", WMAXUH) | ||
| 1781 | + IWMMXT_BUILTIN (smaxv4hi3, "wmaxsh", WMAXSH) | ||
| 1782 | + IWMMXT_BUILTIN (umaxv2si3, "wmaxuw", WMAXUW) | ||
| 1783 | + IWMMXT_BUILTIN (smaxv2si3, "wmaxsw", WMAXSW) | ||
| 1784 | + IWMMXT_BUILTIN (uminv8qi3, "wminub", WMINUB) | ||
| 1785 | + IWMMXT_BUILTIN (sminv8qi3, "wminsb", WMINSB) | ||
| 1786 | + IWMMXT_BUILTIN (uminv4hi3, "wminuh", WMINUH) | ||
| 1787 | + IWMMXT_BUILTIN (sminv4hi3, "wminsh", WMINSH) | ||
| 1788 | + IWMMXT_BUILTIN (uminv2si3, "wminuw", WMINUW) | ||
| 1789 | + IWMMXT_BUILTIN (sminv2si3, "wminsw", WMINSW) | ||
| 1790 | + IWMMXT_BUILTIN (iwmmxt_anddi3, "wand", WAND) | ||
| 1791 | + IWMMXT_BUILTIN (iwmmxt_nanddi3, "wandn", WANDN) | ||
| 1792 | + IWMMXT_BUILTIN (iwmmxt_iordi3, "wor", WOR) | ||
| 1793 | + IWMMXT_BUILTIN (iwmmxt_xordi3, "wxor", WXOR) | ||
| 1794 | + IWMMXT_BUILTIN (iwmmxt_uavgv8qi3, "wavg2b", WAVG2B) | ||
| 1795 | + IWMMXT_BUILTIN (iwmmxt_uavgv4hi3, "wavg2h", WAVG2H) | ||
| 1796 | + IWMMXT_BUILTIN (iwmmxt_uavgrndv8qi3, "wavg2br", WAVG2BR) | ||
| 1797 | + IWMMXT_BUILTIN (iwmmxt_uavgrndv4hi3, "wavg2hr", WAVG2HR) | ||
| 1798 | + IWMMXT_BUILTIN (iwmmxt_wunpckilb, "wunpckilb", WUNPCKILB) | ||
| 1799 | + IWMMXT_BUILTIN (iwmmxt_wunpckilh, "wunpckilh", WUNPCKILH) | ||
| 1800 | + IWMMXT_BUILTIN (iwmmxt_wunpckilw, "wunpckilw", WUNPCKILW) | ||
| 1801 | + IWMMXT_BUILTIN (iwmmxt_wunpckihb, "wunpckihb", WUNPCKIHB) | ||
| 1802 | + IWMMXT_BUILTIN (iwmmxt_wunpckihh, "wunpckihh", WUNPCKIHH) | ||
| 1803 | + IWMMXT_BUILTIN (iwmmxt_wunpckihw, "wunpckihw", WUNPCKIHW) | ||
| 1804 | + IWMMXT_BUILTIN (iwmmxt_wmadds, "wmadds", WMADDS) | ||
| 1805 | + IWMMXT_BUILTIN (iwmmxt_wmaddu, "wmaddu", WMADDU) | ||
| 1806 | + | ||
| 1807 | +#define IWMMXT_BUILTIN2(code, builtin) \ | ||
| 1808 | + { FL_IWMMXT, CODE_FOR_##code, NULL, ARM_BUILTIN_##builtin, UNKNOWN, 0 }, | ||
| 1809 | + | ||
| 1810 | + IWMMXT_BUILTIN2 (iwmmxt_wpackhss, WPACKHSS) | ||
| 1811 | + IWMMXT_BUILTIN2 (iwmmxt_wpackwss, WPACKWSS) | ||
| 1812 | + IWMMXT_BUILTIN2 (iwmmxt_wpackdss, WPACKDSS) | ||
| 1813 | + IWMMXT_BUILTIN2 (iwmmxt_wpackhus, WPACKHUS) | ||
| 1814 | + IWMMXT_BUILTIN2 (iwmmxt_wpackwus, WPACKWUS) | ||
| 1815 | + IWMMXT_BUILTIN2 (iwmmxt_wpackdus, WPACKDUS) | ||
| 1816 | + IWMMXT_BUILTIN2 (ashlv4hi3_di, WSLLH) | ||
| 1817 | + IWMMXT_BUILTIN2 (ashlv4hi3_iwmmxt, WSLLHI) | ||
| 1818 | + IWMMXT_BUILTIN2 (ashlv2si3_di, WSLLW) | ||
| 1819 | + IWMMXT_BUILTIN2 (ashlv2si3_iwmmxt, WSLLWI) | ||
| 1820 | + IWMMXT_BUILTIN2 (ashldi3_di, WSLLD) | ||
| 1821 | + IWMMXT_BUILTIN2 (ashldi3_iwmmxt, WSLLDI) | ||
| 1822 | + IWMMXT_BUILTIN2 (lshrv4hi3_di, WSRLH) | ||
| 1823 | + IWMMXT_BUILTIN2 (lshrv4hi3_iwmmxt, WSRLHI) | ||
| 1824 | + IWMMXT_BUILTIN2 (lshrv2si3_di, WSRLW) | ||
| 1825 | + IWMMXT_BUILTIN2 (lshrv2si3_iwmmxt, WSRLWI) | ||
| 1826 | + IWMMXT_BUILTIN2 (lshrdi3_di, WSRLD) | ||
| 1827 | + IWMMXT_BUILTIN2 (lshrdi3_iwmmxt, WSRLDI) | ||
| 1828 | + IWMMXT_BUILTIN2 (ashrv4hi3_di, WSRAH) | ||
| 1829 | + IWMMXT_BUILTIN2 (ashrv4hi3_iwmmxt, WSRAHI) | ||
| 1830 | + IWMMXT_BUILTIN2 (ashrv2si3_di, WSRAW) | ||
| 1831 | + IWMMXT_BUILTIN2 (ashrv2si3_iwmmxt, WSRAWI) | ||
| 1832 | + IWMMXT_BUILTIN2 (ashrdi3_di, WSRAD) | ||
| 1833 | + IWMMXT_BUILTIN2 (ashrdi3_iwmmxt, WSRADI) | ||
| 1834 | + IWMMXT_BUILTIN2 (rorv4hi3_di, WRORH) | ||
| 1835 | + IWMMXT_BUILTIN2 (rorv4hi3, WRORHI) | ||
| 1836 | + IWMMXT_BUILTIN2 (rorv2si3_di, WRORW) | ||
| 1837 | + IWMMXT_BUILTIN2 (rorv2si3, WRORWI) | ||
| 1838 | + IWMMXT_BUILTIN2 (rordi3_di, WRORD) | ||
| 1839 | + IWMMXT_BUILTIN2 (rordi3, WRORDI) | ||
| 1840 | + IWMMXT_BUILTIN2 (iwmmxt_wmacuz, WMACUZ) | ||
| 1841 | + IWMMXT_BUILTIN2 (iwmmxt_wmacsz, WMACSZ) | ||
| 1842 | +}; | ||
| 1843 | + | ||
| 1844 | +static const struct builtin_description bdesc_1arg[] = | ||
| 1845 | +{ | ||
| 1846 | + IWMMXT_BUILTIN (iwmmxt_tmovmskb, "tmovmskb", TMOVMSKB) | ||
| 1847 | + IWMMXT_BUILTIN (iwmmxt_tmovmskh, "tmovmskh", TMOVMSKH) | ||
| 1848 | + IWMMXT_BUILTIN (iwmmxt_tmovmskw, "tmovmskw", TMOVMSKW) | ||
| 1849 | + IWMMXT_BUILTIN (iwmmxt_waccb, "waccb", WACCB) | ||
| 1850 | + IWMMXT_BUILTIN (iwmmxt_wacch, "wacch", WACCH) | ||
| 1851 | + IWMMXT_BUILTIN (iwmmxt_waccw, "waccw", WACCW) | ||
| 1852 | + IWMMXT_BUILTIN (iwmmxt_wunpckehub, "wunpckehub", WUNPCKEHUB) | ||
| 1853 | + IWMMXT_BUILTIN (iwmmxt_wunpckehuh, "wunpckehuh", WUNPCKEHUH) | ||
| 1854 | + IWMMXT_BUILTIN (iwmmxt_wunpckehuw, "wunpckehuw", WUNPCKEHUW) | ||
| 1855 | + IWMMXT_BUILTIN (iwmmxt_wunpckehsb, "wunpckehsb", WUNPCKEHSB) | ||
| 1856 | + IWMMXT_BUILTIN (iwmmxt_wunpckehsh, "wunpckehsh", WUNPCKEHSH) | ||
| 1857 | + IWMMXT_BUILTIN (iwmmxt_wunpckehsw, "wunpckehsw", WUNPCKEHSW) | ||
| 1858 | + IWMMXT_BUILTIN (iwmmxt_wunpckelub, "wunpckelub", WUNPCKELUB) | ||
| 1859 | + IWMMXT_BUILTIN (iwmmxt_wunpckeluh, "wunpckeluh", WUNPCKELUH) | ||
| 1860 | + IWMMXT_BUILTIN (iwmmxt_wunpckeluw, "wunpckeluw", WUNPCKELUW) | ||
| 1861 | + IWMMXT_BUILTIN (iwmmxt_wunpckelsb, "wunpckelsb", WUNPCKELSB) | ||
| 1862 | + IWMMXT_BUILTIN (iwmmxt_wunpckelsh, "wunpckelsh", WUNPCKELSH) | ||
| 1863 | + IWMMXT_BUILTIN (iwmmxt_wunpckelsw, "wunpckelsw", WUNPCKELSW) | ||
| 1864 | +}; | ||
| 1865 | + | ||
| 1866 | +/* Set up all the iWMMXt builtins. This is not called if | ||
| 1867 | + TARGET_IWMMXT is zero. */ | ||
| 1868 | + | ||
| 1869 | +static void | ||
| 1870 | +arm_init_iwmmxt_builtins (void) | ||
| 1871 | +{ | ||
| 1872 | + const struct builtin_description * d; | ||
| 1873 | + size_t i; | ||
| 1874 | + tree endlink = void_list_node; | ||
| 1875 | + | ||
| 1876 | + tree V2SI_type_node = build_vector_type_for_mode (intSI_type_node, V2SImode); | ||
| 1877 | + tree V4HI_type_node = build_vector_type_for_mode (intHI_type_node, V4HImode); | ||
| 1878 | + tree V8QI_type_node = build_vector_type_for_mode (intQI_type_node, V8QImode); | ||
| 1879 | + | ||
| 1880 | + tree int_ftype_int | ||
| 1881 | + = build_function_type (integer_type_node, | ||
| 1882 | + tree_cons (NULL_TREE, integer_type_node, endlink)); | ||
| 1883 | + tree v8qi_ftype_v8qi_v8qi_int | ||
| 1884 | + = build_function_type (V8QI_type_node, | ||
| 1885 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 1886 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 1887 | + tree_cons (NULL_TREE, | ||
| 1888 | + integer_type_node, | ||
| 1889 | + endlink)))); | ||
| 1890 | + tree v4hi_ftype_v4hi_int | ||
| 1891 | + = build_function_type (V4HI_type_node, | ||
| 1892 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1893 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1894 | + endlink))); | ||
| 1895 | + tree v2si_ftype_v2si_int | ||
| 1896 | + = build_function_type (V2SI_type_node, | ||
| 1897 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 1898 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1899 | + endlink))); | ||
| 1900 | + tree v2si_ftype_di_di | ||
| 1901 | + = build_function_type (V2SI_type_node, | ||
| 1902 | + tree_cons (NULL_TREE, long_long_integer_type_node, | ||
| 1903 | + tree_cons (NULL_TREE, | ||
| 1904 | + long_long_integer_type_node, | ||
| 1905 | + endlink))); | ||
| 1906 | + tree di_ftype_di_int | ||
| 1907 | + = build_function_type (long_long_integer_type_node, | ||
| 1908 | + tree_cons (NULL_TREE, long_long_integer_type_node, | ||
| 1909 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1910 | + endlink))); | ||
| 1911 | + tree di_ftype_di_int_int | ||
| 1912 | + = build_function_type (long_long_integer_type_node, | ||
| 1913 | + tree_cons (NULL_TREE, long_long_integer_type_node, | ||
| 1914 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1915 | + tree_cons (NULL_TREE, | ||
| 1916 | + integer_type_node, | ||
| 1917 | + endlink)))); | ||
| 1918 | + tree int_ftype_v8qi | ||
| 1919 | + = build_function_type (integer_type_node, | ||
| 1920 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 1921 | + endlink)); | ||
| 1922 | + tree int_ftype_v4hi | ||
| 1923 | + = build_function_type (integer_type_node, | ||
| 1924 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1925 | + endlink)); | ||
| 1926 | + tree int_ftype_v2si | ||
| 1927 | + = build_function_type (integer_type_node, | ||
| 1928 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 1929 | + endlink)); | ||
| 1930 | + tree int_ftype_v8qi_int | ||
| 1931 | + = build_function_type (integer_type_node, | ||
| 1932 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 1933 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1934 | + endlink))); | ||
| 1935 | + tree int_ftype_v4hi_int | ||
| 1936 | + = build_function_type (integer_type_node, | ||
| 1937 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1938 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1939 | + endlink))); | ||
| 1940 | + tree int_ftype_v2si_int | ||
| 1941 | + = build_function_type (integer_type_node, | ||
| 1942 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 1943 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1944 | + endlink))); | ||
| 1945 | + tree v8qi_ftype_v8qi_int_int | ||
| 1946 | + = build_function_type (V8QI_type_node, | ||
| 1947 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 1948 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1949 | + tree_cons (NULL_TREE, | ||
| 1950 | + integer_type_node, | ||
| 1951 | + endlink)))); | ||
| 1952 | + tree v4hi_ftype_v4hi_int_int | ||
| 1953 | + = build_function_type (V4HI_type_node, | ||
| 1954 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1955 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1956 | + tree_cons (NULL_TREE, | ||
| 1957 | + integer_type_node, | ||
| 1958 | + endlink)))); | ||
| 1959 | + tree v2si_ftype_v2si_int_int | ||
| 1960 | + = build_function_type (V2SI_type_node, | ||
| 1961 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 1962 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 1963 | + tree_cons (NULL_TREE, | ||
| 1964 | + integer_type_node, | ||
| 1965 | + endlink)))); | ||
| 1966 | + /* Miscellaneous. */ | ||
| 1967 | + tree v8qi_ftype_v4hi_v4hi | ||
| 1968 | + = build_function_type (V8QI_type_node, | ||
| 1969 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1970 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1971 | + endlink))); | ||
| 1972 | + tree v4hi_ftype_v2si_v2si | ||
| 1973 | + = build_function_type (V4HI_type_node, | ||
| 1974 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 1975 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 1976 | + endlink))); | ||
| 1977 | + tree v2si_ftype_v4hi_v4hi | ||
| 1978 | + = build_function_type (V2SI_type_node, | ||
| 1979 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1980 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1981 | + endlink))); | ||
| 1982 | + tree v2si_ftype_v8qi_v8qi | ||
| 1983 | + = build_function_type (V2SI_type_node, | ||
| 1984 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 1985 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 1986 | + endlink))); | ||
| 1987 | + tree v4hi_ftype_v4hi_di | ||
| 1988 | + = build_function_type (V4HI_type_node, | ||
| 1989 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 1990 | + tree_cons (NULL_TREE, | ||
| 1991 | + long_long_integer_type_node, | ||
| 1992 | + endlink))); | ||
| 1993 | + tree v2si_ftype_v2si_di | ||
| 1994 | + = build_function_type (V2SI_type_node, | ||
| 1995 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 1996 | + tree_cons (NULL_TREE, | ||
| 1997 | + long_long_integer_type_node, | ||
| 1998 | + endlink))); | ||
| 1999 | + tree void_ftype_int_int | ||
| 2000 | + = build_function_type (void_type_node, | ||
| 2001 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 2002 | + tree_cons (NULL_TREE, integer_type_node, | ||
| 2003 | + endlink))); | ||
| 2004 | + tree di_ftype_void | ||
| 2005 | + = build_function_type (long_long_unsigned_type_node, endlink); | ||
| 2006 | + tree di_ftype_v8qi | ||
| 2007 | + = build_function_type (long_long_integer_type_node, | ||
| 2008 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 2009 | + endlink)); | ||
| 2010 | + tree di_ftype_v4hi | ||
| 2011 | + = build_function_type (long_long_integer_type_node, | ||
| 2012 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 2013 | + endlink)); | ||
| 2014 | + tree di_ftype_v2si | ||
| 2015 | + = build_function_type (long_long_integer_type_node, | ||
| 2016 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 2017 | + endlink)); | ||
| 2018 | + tree v2si_ftype_v4hi | ||
| 2019 | + = build_function_type (V2SI_type_node, | ||
| 2020 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 2021 | + endlink)); | ||
| 2022 | + tree v4hi_ftype_v8qi | ||
| 2023 | + = build_function_type (V4HI_type_node, | ||
| 2024 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 2025 | + endlink)); | ||
| 2026 | + | ||
| 2027 | + tree di_ftype_di_v4hi_v4hi | ||
| 2028 | + = build_function_type (long_long_unsigned_type_node, | ||
| 2029 | + tree_cons (NULL_TREE, | ||
| 2030 | + long_long_unsigned_type_node, | ||
| 2031 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 2032 | + tree_cons (NULL_TREE, | ||
| 2033 | + V4HI_type_node, | ||
| 2034 | + endlink)))); | ||
| 2035 | + | ||
| 2036 | + tree di_ftype_v4hi_v4hi | ||
| 2037 | + = build_function_type (long_long_unsigned_type_node, | ||
| 2038 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 2039 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 2040 | + endlink))); | ||
| 2041 | + | ||
| 2042 | + /* Normal vector binops. */ | ||
| 2043 | + tree v8qi_ftype_v8qi_v8qi | ||
| 2044 | + = build_function_type (V8QI_type_node, | ||
| 2045 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 2046 | + tree_cons (NULL_TREE, V8QI_type_node, | ||
| 2047 | + endlink))); | ||
| 2048 | + tree v4hi_ftype_v4hi_v4hi | ||
| 2049 | + = build_function_type (V4HI_type_node, | ||
| 2050 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 2051 | + tree_cons (NULL_TREE, V4HI_type_node, | ||
| 2052 | + endlink))); | ||
| 2053 | + tree v2si_ftype_v2si_v2si | ||
| 2054 | + = build_function_type (V2SI_type_node, | ||
| 2055 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 2056 | + tree_cons (NULL_TREE, V2SI_type_node, | ||
| 2057 | + endlink))); | ||
| 2058 | + tree di_ftype_di_di | ||
| 2059 | + = build_function_type (long_long_unsigned_type_node, | ||
| 2060 | + tree_cons (NULL_TREE, long_long_unsigned_type_node, | ||
| 2061 | + tree_cons (NULL_TREE, | ||
| 2062 | + long_long_unsigned_type_node, | ||
| 2063 | + endlink))); | ||
| 2064 | + | ||
| 2065 | + /* Add all builtins that are more or less simple operations on two | ||
| 2066 | + operands. */ | ||
| 2067 | + for (i = 0, d = bdesc_2arg; i < ARRAY_SIZE (bdesc_2arg); i++, d++) | ||
| 2068 | + { | ||
| 2069 | + /* Use one of the operands; the target can have a different mode for | ||
| 2070 | + mask-generating compares. */ | ||
| 2071 | + enum machine_mode mode; | ||
| 2072 | + tree type; | ||
| 2073 | + | ||
| 2074 | + if (d->name == 0) | ||
| 2075 | + continue; | ||
| 2076 | + | ||
| 2077 | + mode = insn_data[d->icode].operand[1].mode; | ||
| 2078 | + | ||
| 2079 | + switch (mode) | ||
| 2080 | + { | ||
| 2081 | + case V8QImode: | ||
| 2082 | + type = v8qi_ftype_v8qi_v8qi; | ||
| 2083 | + break; | ||
| 2084 | + case V4HImode: | ||
| 2085 | + type = v4hi_ftype_v4hi_v4hi; | ||
| 2086 | + break; | ||
| 2087 | + case V2SImode: | ||
| 2088 | + type = v2si_ftype_v2si_v2si; | ||
| 2089 | + break; | ||
| 2090 | + case DImode: | ||
| 2091 | + type = di_ftype_di_di; | ||
| 2092 | + break; | ||
| 2093 | + | ||
| 2094 | + default: | ||
| 2095 | + gcc_unreachable (); | ||
| 2096 | + } | ||
| 2097 | + | ||
| 2098 | + def_mbuiltin (d->mask, d->name, type, d->code); | ||
| 2099 | + } | ||
| 2100 | + | ||
| 2101 | + /* Add the remaining MMX insns with somewhat more complicated types. */ | ||
| 2102 | +#define iwmmx_mbuiltin(NAME, TYPE, CODE) \ | ||
| 2103 | + def_mbuiltin (FL_IWMMXT, "__builtin_arm_" NAME, (TYPE), \ | ||
| 2104 | + ARM_BUILTIN_ ## CODE) | ||
| 2105 | + | ||
| 2106 | + iwmmx_mbuiltin ("wzero", di_ftype_void, WZERO); | ||
| 2107 | + iwmmx_mbuiltin ("setwcx", void_ftype_int_int, SETWCX); | ||
| 2108 | + iwmmx_mbuiltin ("getwcx", int_ftype_int, GETWCX); | ||
| 2109 | + | ||
| 2110 | + iwmmx_mbuiltin ("wsllh", v4hi_ftype_v4hi_di, WSLLH); | ||
| 2111 | + iwmmx_mbuiltin ("wsllw", v2si_ftype_v2si_di, WSLLW); | ||
| 2112 | + iwmmx_mbuiltin ("wslld", di_ftype_di_di, WSLLD); | ||
| 2113 | + iwmmx_mbuiltin ("wsllhi", v4hi_ftype_v4hi_int, WSLLHI); | ||
| 2114 | + iwmmx_mbuiltin ("wsllwi", v2si_ftype_v2si_int, WSLLWI); | ||
| 2115 | + iwmmx_mbuiltin ("wslldi", di_ftype_di_int, WSLLDI); | ||
| 2116 | + | ||
| 2117 | + iwmmx_mbuiltin ("wsrlh", v4hi_ftype_v4hi_di, WSRLH); | ||
| 2118 | + iwmmx_mbuiltin ("wsrlw", v2si_ftype_v2si_di, WSRLW); | ||
| 2119 | + iwmmx_mbuiltin ("wsrld", di_ftype_di_di, WSRLD); | ||
| 2120 | + iwmmx_mbuiltin ("wsrlhi", v4hi_ftype_v4hi_int, WSRLHI); | ||
| 2121 | + iwmmx_mbuiltin ("wsrlwi", v2si_ftype_v2si_int, WSRLWI); | ||
| 2122 | + iwmmx_mbuiltin ("wsrldi", di_ftype_di_int, WSRLDI); | ||
| 2123 | + | ||
| 2124 | + iwmmx_mbuiltin ("wsrah", v4hi_ftype_v4hi_di, WSRAH); | ||
| 2125 | + iwmmx_mbuiltin ("wsraw", v2si_ftype_v2si_di, WSRAW); | ||
| 2126 | + iwmmx_mbuiltin ("wsrad", di_ftype_di_di, WSRAD); | ||
| 2127 | + iwmmx_mbuiltin ("wsrahi", v4hi_ftype_v4hi_int, WSRAHI); | ||
| 2128 | + iwmmx_mbuiltin ("wsrawi", v2si_ftype_v2si_int, WSRAWI); | ||
| 2129 | + iwmmx_mbuiltin ("wsradi", di_ftype_di_int, WSRADI); | ||
| 2130 | + | ||
| 2131 | + iwmmx_mbuiltin ("wrorh", v4hi_ftype_v4hi_di, WRORH); | ||
| 2132 | + iwmmx_mbuiltin ("wrorw", v2si_ftype_v2si_di, WRORW); | ||
| 2133 | + iwmmx_mbuiltin ("wrord", di_ftype_di_di, WRORD); | ||
| 2134 | + iwmmx_mbuiltin ("wrorhi", v4hi_ftype_v4hi_int, WRORHI); | ||
| 2135 | + iwmmx_mbuiltin ("wrorwi", v2si_ftype_v2si_int, WRORWI); | ||
| 2136 | + iwmmx_mbuiltin ("wrordi", di_ftype_di_int, WRORDI); | ||
| 2137 | + | ||
| 2138 | + iwmmx_mbuiltin ("wshufh", v4hi_ftype_v4hi_int, WSHUFH); | ||
| 2139 | + | ||
| 2140 | + iwmmx_mbuiltin ("wsadb", v2si_ftype_v8qi_v8qi, WSADB); | ||
| 2141 | + iwmmx_mbuiltin ("wsadh", v2si_ftype_v4hi_v4hi, WSADH); | ||
| 2142 | + iwmmx_mbuiltin ("wsadbz", v2si_ftype_v8qi_v8qi, WSADBZ); | ||
| 2143 | + iwmmx_mbuiltin ("wsadhz", v2si_ftype_v4hi_v4hi, WSADHZ); | ||
| 2144 | + | ||
| 2145 | + iwmmx_mbuiltin ("textrmsb", int_ftype_v8qi_int, TEXTRMSB); | ||
| 2146 | + iwmmx_mbuiltin ("textrmsh", int_ftype_v4hi_int, TEXTRMSH); | ||
| 2147 | + iwmmx_mbuiltin ("textrmsw", int_ftype_v2si_int, TEXTRMSW); | ||
| 2148 | + iwmmx_mbuiltin ("textrmub", int_ftype_v8qi_int, TEXTRMUB); | ||
| 2149 | + iwmmx_mbuiltin ("textrmuh", int_ftype_v4hi_int, TEXTRMUH); | ||
| 2150 | + iwmmx_mbuiltin ("textrmuw", int_ftype_v2si_int, TEXTRMUW); | ||
| 2151 | + iwmmx_mbuiltin ("tinsrb", v8qi_ftype_v8qi_int_int, TINSRB); | ||
| 2152 | + iwmmx_mbuiltin ("tinsrh", v4hi_ftype_v4hi_int_int, TINSRH); | ||
| 2153 | + iwmmx_mbuiltin ("tinsrw", v2si_ftype_v2si_int_int, TINSRW); | ||
| 2154 | + | ||
| 2155 | + iwmmx_mbuiltin ("waccb", di_ftype_v8qi, WACCB); | ||
| 2156 | + iwmmx_mbuiltin ("wacch", di_ftype_v4hi, WACCH); | ||
| 2157 | + iwmmx_mbuiltin ("waccw", di_ftype_v2si, WACCW); | ||
| 2158 | + | ||
| 2159 | + iwmmx_mbuiltin ("tmovmskb", int_ftype_v8qi, TMOVMSKB); | ||
| 2160 | + iwmmx_mbuiltin ("tmovmskh", int_ftype_v4hi, TMOVMSKH); | ||
| 2161 | + iwmmx_mbuiltin ("tmovmskw", int_ftype_v2si, TMOVMSKW); | ||
| 2162 | + | ||
| 2163 | + iwmmx_mbuiltin ("wpackhss", v8qi_ftype_v4hi_v4hi, WPACKHSS); | ||
| 2164 | + iwmmx_mbuiltin ("wpackhus", v8qi_ftype_v4hi_v4hi, WPACKHUS); | ||
| 2165 | + iwmmx_mbuiltin ("wpackwus", v4hi_ftype_v2si_v2si, WPACKWUS); | ||
| 2166 | + iwmmx_mbuiltin ("wpackwss", v4hi_ftype_v2si_v2si, WPACKWSS); | ||
| 2167 | + iwmmx_mbuiltin ("wpackdus", v2si_ftype_di_di, WPACKDUS); | ||
| 2168 | + iwmmx_mbuiltin ("wpackdss", v2si_ftype_di_di, WPACKDSS); | ||
| 2169 | + | ||
| 2170 | + iwmmx_mbuiltin ("wunpckehub", v4hi_ftype_v8qi, WUNPCKEHUB); | ||
| 2171 | + iwmmx_mbuiltin ("wunpckehuh", v2si_ftype_v4hi, WUNPCKEHUH); | ||
| 2172 | + iwmmx_mbuiltin ("wunpckehuw", di_ftype_v2si, WUNPCKEHUW); | ||
| 2173 | + iwmmx_mbuiltin ("wunpckehsb", v4hi_ftype_v8qi, WUNPCKEHSB); | ||
| 2174 | + iwmmx_mbuiltin ("wunpckehsh", v2si_ftype_v4hi, WUNPCKEHSH); | ||
| 2175 | + iwmmx_mbuiltin ("wunpckehsw", di_ftype_v2si, WUNPCKEHSW); | ||
| 2176 | + iwmmx_mbuiltin ("wunpckelub", v4hi_ftype_v8qi, WUNPCKELUB); | ||
| 2177 | + iwmmx_mbuiltin ("wunpckeluh", v2si_ftype_v4hi, WUNPCKELUH); | ||
| 2178 | + iwmmx_mbuiltin ("wunpckeluw", di_ftype_v2si, WUNPCKELUW); | ||
| 2179 | + iwmmx_mbuiltin ("wunpckelsb", v4hi_ftype_v8qi, WUNPCKELSB); | ||
| 2180 | + iwmmx_mbuiltin ("wunpckelsh", v2si_ftype_v4hi, WUNPCKELSH); | ||
| 2181 | + iwmmx_mbuiltin ("wunpckelsw", di_ftype_v2si, WUNPCKELSW); | ||
| 2182 | + | ||
| 2183 | + iwmmx_mbuiltin ("wmacs", di_ftype_di_v4hi_v4hi, WMACS); | ||
| 2184 | + iwmmx_mbuiltin ("wmacsz", di_ftype_v4hi_v4hi, WMACSZ); | ||
| 2185 | + iwmmx_mbuiltin ("wmacu", di_ftype_di_v4hi_v4hi, WMACU); | ||
| 2186 | + iwmmx_mbuiltin ("wmacuz", di_ftype_v4hi_v4hi, WMACUZ); | ||
| 2187 | + | ||
| 2188 | + iwmmx_mbuiltin ("walign", v8qi_ftype_v8qi_v8qi_int, WALIGN); | ||
| 2189 | + iwmmx_mbuiltin ("tmia", di_ftype_di_int_int, TMIA); | ||
| 2190 | + iwmmx_mbuiltin ("tmiaph", di_ftype_di_int_int, TMIAPH); | ||
| 2191 | + iwmmx_mbuiltin ("tmiabb", di_ftype_di_int_int, TMIABB); | ||
| 2192 | + iwmmx_mbuiltin ("tmiabt", di_ftype_di_int_int, TMIABT); | ||
| 2193 | + iwmmx_mbuiltin ("tmiatb", di_ftype_di_int_int, TMIATB); | ||
| 2194 | + iwmmx_mbuiltin ("tmiatt", di_ftype_di_int_int, TMIATT); | ||
| 2195 | + | ||
| 2196 | +#undef iwmmx_mbuiltin | ||
| 2197 | +} | ||
| 2198 | + | ||
| 2199 | +static void | ||
| 2200 | +arm_init_tls_builtins (void) | ||
| 2201 | +{ | ||
| 2202 | + tree ftype, decl; | ||
| 2203 | + | ||
| 2204 | + ftype = build_function_type (ptr_type_node, void_list_node); | ||
| 2205 | + decl = add_builtin_function ("__builtin_thread_pointer", ftype, | ||
| 2206 | + ARM_BUILTIN_THREAD_POINTER, BUILT_IN_MD, | ||
| 2207 | + NULL, NULL_TREE); | ||
| 2208 | + TREE_NOTHROW (decl) = 1; | ||
| 2209 | + TREE_READONLY (decl) = 1; | ||
| 2210 | + arm_builtin_decls[ARM_BUILTIN_THREAD_POINTER] = decl; | ||
| 2211 | } | ||
| 2212 | |||
| 2213 | static void | ||
| 2214 | @@ -19479,6 +19662,17 @@ | ||
| 2215 | arm_init_fp16_builtins (); | ||
| 2216 | } | ||
| 2217 | |||
| 2218 | +/* Return the ARM builtin for CODE. */ | ||
| 2219 | + | ||
| 2220 | +static tree | ||
| 2221 | +arm_builtin_decl (unsigned code, bool initialize_p ATTRIBUTE_UNUSED) | ||
| 2222 | +{ | ||
| 2223 | + if (code >= ARM_BUILTIN_MAX) | ||
| 2224 | + return error_mark_node; | ||
| 2225 | + | ||
| 2226 | + return arm_builtin_decls[code]; | ||
| 2227 | +} | ||
| 2228 | + | ||
| 2229 | /* Implement TARGET_INVALID_PARAMETER_TYPE. */ | ||
| 2230 | |||
| 2231 | static const char * | ||
| 2232 | @@ -19630,58 +19824,6 @@ | ||
| 2233 | return target; | ||
| 2234 | } | ||
| 2235 | |||
| 2236 | -static int | ||
| 2237 | -neon_builtin_compare (const void *a, const void *b) | ||
| 2238 | -{ | ||
| 2239 | - const neon_builtin_datum *const key = (const neon_builtin_datum *) a; | ||
| 2240 | - const neon_builtin_datum *const memb = (const neon_builtin_datum *) b; | ||
| 2241 | - unsigned int soughtcode = key->base_fcode; | ||
| 2242 | - | ||
| 2243 | - if (soughtcode >= memb->base_fcode | ||
| 2244 | - && soughtcode < memb->base_fcode + memb->num_vars) | ||
| 2245 | - return 0; | ||
| 2246 | - else if (soughtcode < memb->base_fcode) | ||
| 2247 | - return -1; | ||
| 2248 | - else | ||
| 2249 | - return 1; | ||
| 2250 | -} | ||
| 2251 | - | ||
| 2252 | -static enum insn_code | ||
| 2253 | -locate_neon_builtin_icode (int fcode, neon_itype *itype, | ||
| 2254 | - enum neon_builtin_type_bits *type_bit) | ||
| 2255 | -{ | ||
| 2256 | - neon_builtin_datum key | ||
| 2257 | - = { NULL, (neon_itype) 0, 0, { CODE_FOR_nothing }, 0, 0 }; | ||
| 2258 | - neon_builtin_datum *found; | ||
| 2259 | - int idx, type, ntypes; | ||
| 2260 | - | ||
| 2261 | - key.base_fcode = fcode; | ||
| 2262 | - found = (neon_builtin_datum *) | ||
| 2263 | - bsearch (&key, &neon_builtin_data[0], ARRAY_SIZE (neon_builtin_data), | ||
| 2264 | - sizeof (neon_builtin_data[0]), neon_builtin_compare); | ||
| 2265 | - gcc_assert (found); | ||
| 2266 | - idx = fcode - (int) found->base_fcode; | ||
| 2267 | - gcc_assert (idx >= 0 && idx < T_MAX && idx < (int)found->num_vars); | ||
| 2268 | - | ||
| 2269 | - if (itype) | ||
| 2270 | - *itype = found->itype; | ||
| 2271 | - | ||
| 2272 | - if (type_bit) | ||
| 2273 | - { | ||
| 2274 | - ntypes = 0; | ||
| 2275 | - for (type = 0; type < T_MAX; type++) | ||
| 2276 | - if (found->bits & (1 << type)) | ||
| 2277 | - { | ||
| 2278 | - if (ntypes == idx) | ||
| 2279 | - break; | ||
| 2280 | - ntypes++; | ||
| 2281 | - } | ||
| 2282 | - gcc_assert (type < T_MAX); | ||
| 2283 | - *type_bit = (enum neon_builtin_type_bits) (1 << type); | ||
| 2284 | - } | ||
| 2285 | - return found->codes[idx]; | ||
| 2286 | -} | ||
| 2287 | - | ||
| 2288 | typedef enum { | ||
| 2289 | NEON_ARG_COPY_TO_REG, | ||
| 2290 | NEON_ARG_CONSTANT, | ||
| 2291 | @@ -19695,14 +19837,14 @@ | ||
| 2292 | and return an expression for the accessed memory. | ||
| 2293 | |||
| 2294 | The intrinsic function operates on a block of registers that has | ||
| 2295 | - mode REG_MODE. This block contains vectors of type TYPE_BIT. | ||
| 2296 | + mode REG_MODE. This block contains vectors of type TYPE_MODE. | ||
| 2297 | The function references the memory at EXP in mode MEM_MODE; | ||
| 2298 | this mode may be BLKmode if no more suitable mode is available. */ | ||
| 2299 | |||
| 2300 | static tree | ||
| 2301 | neon_dereference_pointer (tree exp, enum machine_mode mem_mode, | ||
| 2302 | enum machine_mode reg_mode, | ||
| 2303 | - enum neon_builtin_type_bits type_bit) | ||
| 2304 | + neon_builtin_type_mode type_mode) | ||
| 2305 | { | ||
| 2306 | HOST_WIDE_INT reg_size, vector_size, nvectors, nelems; | ||
| 2307 | tree elem_type, upper_bound, array_type; | ||
| 2308 | @@ -19711,8 +19853,8 @@ | ||
| 2309 | reg_size = GET_MODE_SIZE (reg_mode); | ||
| 2310 | |||
| 2311 | /* Work out the size of each vector in bytes. */ | ||
| 2312 | - gcc_assert (type_bit & (T_DREG | T_QREG)); | ||
| 2313 | - vector_size = (type_bit & T_QREG ? 16 : 8); | ||
| 2314 | + gcc_assert (TYPE_MODE_BIT (type_mode) & (TB_DREG | TB_QREG)); | ||
| 2315 | + vector_size = (TYPE_MODE_BIT (type_mode) & TB_QREG ? 16 : 8); | ||
| 2316 | |||
| 2317 | /* Work out how many vectors there are. */ | ||
| 2318 | gcc_assert (reg_size % vector_size == 0); | ||
| 2319 | @@ -19743,7 +19885,7 @@ | ||
| 2320 | /* Expand a Neon builtin. */ | ||
| 2321 | static rtx | ||
| 2322 | arm_expand_neon_args (rtx target, int icode, int have_retval, | ||
| 2323 | - enum neon_builtin_type_bits type_bit, | ||
| 2324 | + neon_builtin_type_mode type_mode, | ||
| 2325 | tree exp, ...) | ||
| 2326 | { | ||
| 2327 | va_list ap; | ||
| 2328 | @@ -19779,7 +19921,7 @@ | ||
| 2329 | { | ||
| 2330 | other_mode = insn_data[icode].operand[1 - opno].mode; | ||
| 2331 | arg[argc] = neon_dereference_pointer (arg[argc], mode[argc], | ||
| 2332 | - other_mode, type_bit); | ||
| 2333 | + other_mode, type_mode); | ||
| 2334 | } | ||
| 2335 | op[argc] = expand_normal (arg[argc]); | ||
| 2336 | |||
| 2337 | @@ -19889,16 +20031,17 @@ | ||
| 2338 | static rtx | ||
| 2339 | arm_expand_neon_builtin (int fcode, tree exp, rtx target) | ||
| 2340 | { | ||
| 2341 | - neon_itype itype; | ||
| 2342 | - enum neon_builtin_type_bits type_bit; | ||
| 2343 | - enum insn_code icode = locate_neon_builtin_icode (fcode, &itype, &type_bit); | ||
| 2344 | + neon_builtin_datum *d = &neon_builtin_data[fcode - ARM_BUILTIN_NEON_BASE]; | ||
| 2345 | + neon_itype itype = d->itype; | ||
| 2346 | + enum insn_code icode = d->code; | ||
| 2347 | + neon_builtin_type_mode type_mode = d->mode; | ||
| 2348 | |||
| 2349 | switch (itype) | ||
| 2350 | { | ||
| 2351 | case NEON_UNOP: | ||
| 2352 | case NEON_CONVERT: | ||
| 2353 | case NEON_DUPLANE: | ||
| 2354 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2355 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2356 | NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, NEON_ARG_STOP); | ||
| 2357 | |||
| 2358 | case NEON_BINOP: | ||
| 2359 | @@ -19908,89 +20051,89 @@ | ||
| 2360 | case NEON_SCALARMULH: | ||
| 2361 | case NEON_SHIFTINSERT: | ||
| 2362 | case NEON_LOGICBINOP: | ||
| 2363 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2364 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2365 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, | ||
| 2366 | NEON_ARG_STOP); | ||
| 2367 | |||
| 2368 | case NEON_TERNOP: | ||
| 2369 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2370 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2371 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, | ||
| 2372 | NEON_ARG_CONSTANT, NEON_ARG_STOP); | ||
| 2373 | |||
| 2374 | case NEON_GETLANE: | ||
| 2375 | case NEON_FIXCONV: | ||
| 2376 | case NEON_SHIFTIMM: | ||
| 2377 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2378 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2379 | NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, NEON_ARG_CONSTANT, | ||
| 2380 | NEON_ARG_STOP); | ||
| 2381 | |||
| 2382 | case NEON_CREATE: | ||
| 2383 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2384 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2385 | NEON_ARG_COPY_TO_REG, NEON_ARG_STOP); | ||
| 2386 | |||
| 2387 | case NEON_DUP: | ||
| 2388 | case NEON_SPLIT: | ||
| 2389 | case NEON_REINTERP: | ||
| 2390 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2391 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2392 | NEON_ARG_COPY_TO_REG, NEON_ARG_STOP); | ||
| 2393 | |||
| 2394 | case NEON_COMBINE: | ||
| 2395 | case NEON_VTBL: | ||
| 2396 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2397 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2398 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_STOP); | ||
| 2399 | |||
| 2400 | case NEON_RESULTPAIR: | ||
| 2401 | - return arm_expand_neon_args (target, icode, 0, type_bit, exp, | ||
| 2402 | + return arm_expand_neon_args (target, icode, 0, type_mode, exp, | ||
| 2403 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, | ||
| 2404 | NEON_ARG_STOP); | ||
| 2405 | |||
| 2406 | case NEON_LANEMUL: | ||
| 2407 | case NEON_LANEMULL: | ||
| 2408 | case NEON_LANEMULH: | ||
| 2409 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2410 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2411 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, | ||
| 2412 | NEON_ARG_CONSTANT, NEON_ARG_STOP); | ||
| 2413 | |||
| 2414 | case NEON_LANEMAC: | ||
| 2415 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2416 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2417 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, | ||
| 2418 | NEON_ARG_CONSTANT, NEON_ARG_CONSTANT, NEON_ARG_STOP); | ||
| 2419 | |||
| 2420 | case NEON_SHIFTACC: | ||
| 2421 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2422 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2423 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, | ||
| 2424 | NEON_ARG_CONSTANT, NEON_ARG_STOP); | ||
| 2425 | |||
| 2426 | case NEON_SCALARMAC: | ||
| 2427 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2428 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2429 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, | ||
| 2430 | NEON_ARG_CONSTANT, NEON_ARG_STOP); | ||
| 2431 | |||
| 2432 | case NEON_SELECT: | ||
| 2433 | case NEON_VTBX: | ||
| 2434 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2435 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2436 | NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, NEON_ARG_COPY_TO_REG, | ||
| 2437 | NEON_ARG_STOP); | ||
| 2438 | |||
| 2439 | case NEON_LOAD1: | ||
| 2440 | case NEON_LOADSTRUCT: | ||
| 2441 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2442 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2443 | NEON_ARG_MEMORY, NEON_ARG_STOP); | ||
| 2444 | |||
| 2445 | case NEON_LOAD1LANE: | ||
| 2446 | case NEON_LOADSTRUCTLANE: | ||
| 2447 | - return arm_expand_neon_args (target, icode, 1, type_bit, exp, | ||
| 2448 | + return arm_expand_neon_args (target, icode, 1, type_mode, exp, | ||
| 2449 | NEON_ARG_MEMORY, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, | ||
| 2450 | NEON_ARG_STOP); | ||
| 2451 | |||
| 2452 | case NEON_STORE1: | ||
| 2453 | case NEON_STORESTRUCT: | ||
| 2454 | - return arm_expand_neon_args (target, icode, 0, type_bit, exp, | ||
| 2455 | + return arm_expand_neon_args (target, icode, 0, type_mode, exp, | ||
| 2456 | NEON_ARG_MEMORY, NEON_ARG_COPY_TO_REG, NEON_ARG_STOP); | ||
| 2457 | |||
| 2458 | case NEON_STORE1LANE: | ||
| 2459 | case NEON_STORESTRUCTLANE: | ||
| 2460 | - return arm_expand_neon_args (target, icode, 0, type_bit, exp, | ||
| 2461 | + return arm_expand_neon_args (target, icode, 0, type_mode, exp, | ||
| 2462 | NEON_ARG_MEMORY, NEON_ARG_COPY_TO_REG, NEON_ARG_CONSTANT, | ||
| 2463 | NEON_ARG_STOP); | ||
| 2464 | } | ||
| 2465 | |||
| 2466 | === modified file 'gcc/config/arm/arm.h' | ||
| 2467 | --- old/gcc/config/arm/arm.h 2011-08-13 08:32:32 +0000 | ||
| 2468 | +++ new/gcc/config/arm/arm.h 2011-08-24 17:35:16 +0000 | ||
| 2469 | @@ -2269,178 +2269,6 @@ | ||
| 2470 | : arm_gen_return_addr_mask ()) | ||
| 2471 | |||
| 2472 | |||
| 2473 | -/* Neon defines builtins from ARM_BUILTIN_MAX upwards, though they don't have | ||
| 2474 | - symbolic names defined here (which would require too much duplication). | ||
| 2475 | - FIXME? */ | ||
| 2476 | -enum arm_builtins | ||
| 2477 | -{ | ||
| 2478 | - ARM_BUILTIN_GETWCX, | ||
| 2479 | - ARM_BUILTIN_SETWCX, | ||
| 2480 | - | ||
| 2481 | - ARM_BUILTIN_WZERO, | ||
| 2482 | - | ||
| 2483 | - ARM_BUILTIN_WAVG2BR, | ||
| 2484 | - ARM_BUILTIN_WAVG2HR, | ||
| 2485 | - ARM_BUILTIN_WAVG2B, | ||
| 2486 | - ARM_BUILTIN_WAVG2H, | ||
| 2487 | - | ||
| 2488 | - ARM_BUILTIN_WACCB, | ||
| 2489 | - ARM_BUILTIN_WACCH, | ||
| 2490 | - ARM_BUILTIN_WACCW, | ||
| 2491 | - | ||
| 2492 | - ARM_BUILTIN_WMACS, | ||
| 2493 | - ARM_BUILTIN_WMACSZ, | ||
| 2494 | - ARM_BUILTIN_WMACU, | ||
| 2495 | - ARM_BUILTIN_WMACUZ, | ||
| 2496 | - | ||
| 2497 | - ARM_BUILTIN_WSADB, | ||
| 2498 | - ARM_BUILTIN_WSADBZ, | ||
| 2499 | - ARM_BUILTIN_WSADH, | ||
| 2500 | - ARM_BUILTIN_WSADHZ, | ||
| 2501 | - | ||
| 2502 | - ARM_BUILTIN_WALIGN, | ||
| 2503 | - | ||
| 2504 | - ARM_BUILTIN_TMIA, | ||
| 2505 | - ARM_BUILTIN_TMIAPH, | ||
| 2506 | - ARM_BUILTIN_TMIABB, | ||
| 2507 | - ARM_BUILTIN_TMIABT, | ||
| 2508 | - ARM_BUILTIN_TMIATB, | ||
| 2509 | - ARM_BUILTIN_TMIATT, | ||
| 2510 | - | ||
| 2511 | - ARM_BUILTIN_TMOVMSKB, | ||
| 2512 | - ARM_BUILTIN_TMOVMSKH, | ||
| 2513 | - ARM_BUILTIN_TMOVMSKW, | ||
| 2514 | - | ||
| 2515 | - ARM_BUILTIN_TBCSTB, | ||
| 2516 | - ARM_BUILTIN_TBCSTH, | ||
| 2517 | - ARM_BUILTIN_TBCSTW, | ||
| 2518 | - | ||
| 2519 | - ARM_BUILTIN_WMADDS, | ||
| 2520 | - ARM_BUILTIN_WMADDU, | ||
| 2521 | - | ||
| 2522 | - ARM_BUILTIN_WPACKHSS, | ||
| 2523 | - ARM_BUILTIN_WPACKWSS, | ||
| 2524 | - ARM_BUILTIN_WPACKDSS, | ||
| 2525 | - ARM_BUILTIN_WPACKHUS, | ||
| 2526 | - ARM_BUILTIN_WPACKWUS, | ||
| 2527 | - ARM_BUILTIN_WPACKDUS, | ||
| 2528 | - | ||
| 2529 | - ARM_BUILTIN_WADDB, | ||
| 2530 | - ARM_BUILTIN_WADDH, | ||
| 2531 | - ARM_BUILTIN_WADDW, | ||
| 2532 | - ARM_BUILTIN_WADDSSB, | ||
| 2533 | - ARM_BUILTIN_WADDSSH, | ||
| 2534 | - ARM_BUILTIN_WADDSSW, | ||
| 2535 | - ARM_BUILTIN_WADDUSB, | ||
| 2536 | - ARM_BUILTIN_WADDUSH, | ||
| 2537 | - ARM_BUILTIN_WADDUSW, | ||
| 2538 | - ARM_BUILTIN_WSUBB, | ||
| 2539 | - ARM_BUILTIN_WSUBH, | ||
| 2540 | - ARM_BUILTIN_WSUBW, | ||
| 2541 | - ARM_BUILTIN_WSUBSSB, | ||
| 2542 | - ARM_BUILTIN_WSUBSSH, | ||
| 2543 | - ARM_BUILTIN_WSUBSSW, | ||
| 2544 | - ARM_BUILTIN_WSUBUSB, | ||
| 2545 | - ARM_BUILTIN_WSUBUSH, | ||
| 2546 | - ARM_BUILTIN_WSUBUSW, | ||
| 2547 | - | ||
| 2548 | - ARM_BUILTIN_WAND, | ||
| 2549 | - ARM_BUILTIN_WANDN, | ||
| 2550 | - ARM_BUILTIN_WOR, | ||
| 2551 | - ARM_BUILTIN_WXOR, | ||
| 2552 | - | ||
| 2553 | - ARM_BUILTIN_WCMPEQB, | ||
| 2554 | - ARM_BUILTIN_WCMPEQH, | ||
| 2555 | - ARM_BUILTIN_WCMPEQW, | ||
| 2556 | - ARM_BUILTIN_WCMPGTUB, | ||
| 2557 | - ARM_BUILTIN_WCMPGTUH, | ||
| 2558 | - ARM_BUILTIN_WCMPGTUW, | ||
| 2559 | - ARM_BUILTIN_WCMPGTSB, | ||
| 2560 | - ARM_BUILTIN_WCMPGTSH, | ||
| 2561 | - ARM_BUILTIN_WCMPGTSW, | ||
| 2562 | - | ||
| 2563 | - ARM_BUILTIN_TEXTRMSB, | ||
| 2564 | - ARM_BUILTIN_TEXTRMSH, | ||
| 2565 | - ARM_BUILTIN_TEXTRMSW, | ||
| 2566 | - ARM_BUILTIN_TEXTRMUB, | ||
| 2567 | - ARM_BUILTIN_TEXTRMUH, | ||
| 2568 | - ARM_BUILTIN_TEXTRMUW, | ||
| 2569 | - ARM_BUILTIN_TINSRB, | ||
| 2570 | - ARM_BUILTIN_TINSRH, | ||
| 2571 | - ARM_BUILTIN_TINSRW, | ||
| 2572 | - | ||
| 2573 | - ARM_BUILTIN_WMAXSW, | ||
| 2574 | - ARM_BUILTIN_WMAXSH, | ||
| 2575 | - ARM_BUILTIN_WMAXSB, | ||
| 2576 | - ARM_BUILTIN_WMAXUW, | ||
| 2577 | - ARM_BUILTIN_WMAXUH, | ||
| 2578 | - ARM_BUILTIN_WMAXUB, | ||
| 2579 | - ARM_BUILTIN_WMINSW, | ||
| 2580 | - ARM_BUILTIN_WMINSH, | ||
| 2581 | - ARM_BUILTIN_WMINSB, | ||
| 2582 | - ARM_BUILTIN_WMINUW, | ||
| 2583 | - ARM_BUILTIN_WMINUH, | ||
| 2584 | - ARM_BUILTIN_WMINUB, | ||
| 2585 | - | ||
| 2586 | - ARM_BUILTIN_WMULUM, | ||
| 2587 | - ARM_BUILTIN_WMULSM, | ||
| 2588 | - ARM_BUILTIN_WMULUL, | ||
| 2589 | - | ||
| 2590 | - ARM_BUILTIN_PSADBH, | ||
| 2591 | - ARM_BUILTIN_WSHUFH, | ||
| 2592 | - | ||
| 2593 | - ARM_BUILTIN_WSLLH, | ||
| 2594 | - ARM_BUILTIN_WSLLW, | ||
| 2595 | - ARM_BUILTIN_WSLLD, | ||
| 2596 | - ARM_BUILTIN_WSRAH, | ||
| 2597 | - ARM_BUILTIN_WSRAW, | ||
| 2598 | - ARM_BUILTIN_WSRAD, | ||
| 2599 | - ARM_BUILTIN_WSRLH, | ||
| 2600 | - ARM_BUILTIN_WSRLW, | ||
| 2601 | - ARM_BUILTIN_WSRLD, | ||
| 2602 | - ARM_BUILTIN_WRORH, | ||
| 2603 | - ARM_BUILTIN_WRORW, | ||
| 2604 | - ARM_BUILTIN_WRORD, | ||
| 2605 | - ARM_BUILTIN_WSLLHI, | ||
| 2606 | - ARM_BUILTIN_WSLLWI, | ||
| 2607 | - ARM_BUILTIN_WSLLDI, | ||
| 2608 | - ARM_BUILTIN_WSRAHI, | ||
| 2609 | - ARM_BUILTIN_WSRAWI, | ||
| 2610 | - ARM_BUILTIN_WSRADI, | ||
| 2611 | - ARM_BUILTIN_WSRLHI, | ||
| 2612 | - ARM_BUILTIN_WSRLWI, | ||
| 2613 | - ARM_BUILTIN_WSRLDI, | ||
| 2614 | - ARM_BUILTIN_WRORHI, | ||
| 2615 | - ARM_BUILTIN_WRORWI, | ||
| 2616 | - ARM_BUILTIN_WRORDI, | ||
| 2617 | - | ||
| 2618 | - ARM_BUILTIN_WUNPCKIHB, | ||
| 2619 | - ARM_BUILTIN_WUNPCKIHH, | ||
| 2620 | - ARM_BUILTIN_WUNPCKIHW, | ||
| 2621 | - ARM_BUILTIN_WUNPCKILB, | ||
| 2622 | - ARM_BUILTIN_WUNPCKILH, | ||
| 2623 | - ARM_BUILTIN_WUNPCKILW, | ||
| 2624 | - | ||
| 2625 | - ARM_BUILTIN_WUNPCKEHSB, | ||
| 2626 | - ARM_BUILTIN_WUNPCKEHSH, | ||
| 2627 | - ARM_BUILTIN_WUNPCKEHSW, | ||
| 2628 | - ARM_BUILTIN_WUNPCKEHUB, | ||
| 2629 | - ARM_BUILTIN_WUNPCKEHUH, | ||
| 2630 | - ARM_BUILTIN_WUNPCKEHUW, | ||
| 2631 | - ARM_BUILTIN_WUNPCKELSB, | ||
| 2632 | - ARM_BUILTIN_WUNPCKELSH, | ||
| 2633 | - ARM_BUILTIN_WUNPCKELSW, | ||
| 2634 | - ARM_BUILTIN_WUNPCKELUB, | ||
| 2635 | - ARM_BUILTIN_WUNPCKELUH, | ||
| 2636 | - ARM_BUILTIN_WUNPCKELUW, | ||
| 2637 | - | ||
| 2638 | - ARM_BUILTIN_THREAD_POINTER, | ||
| 2639 | - | ||
| 2640 | - ARM_BUILTIN_NEON_BASE, | ||
| 2641 | - | ||
| 2642 | - ARM_BUILTIN_MAX = ARM_BUILTIN_NEON_BASE /* FIXME: Wrong! */ | ||
| 2643 | -}; | ||
| 2644 | - | ||
| 2645 | /* Do not emit .note.GNU-stack by default. */ | ||
| 2646 | #ifndef NEED_INDICATE_EXEC_STACK | ||
| 2647 | #define NEED_INDICATE_EXEC_STACK 0 | ||
| 2648 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106796.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106796.patch new file mode 100644 index 0000000000..1a940975f3 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106796.patch | |||
| @@ -0,0 +1,1255 @@ | |||
| 1 | 2011-08-25 Andrew Stubbs <ams@codesourcery.com> | ||
| 2 | |||
| 3 | Backport from FSF mainline: | ||
| 4 | |||
| 5 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 6 | |||
| 7 | gcc/ | ||
| 8 | * tree-ssa-math-opts.c (is_widening_mult_rhs_p): Handle constants | ||
| 9 | beyond conversions. | ||
| 10 | (convert_mult_to_widen): Convert constant inputs to the right type. | ||
| 11 | (convert_plusminus_to_widen): Don't automatically reject inputs that | ||
| 12 | are not an SSA_NAME. | ||
| 13 | Convert constant inputs to the right type. | ||
| 14 | |||
| 15 | gcc/testsuite/ | ||
| 16 | * gcc.target/arm/wmul-11.c: New file. | ||
| 17 | * gcc.target/arm/wmul-12.c: New file. | ||
| 18 | * gcc.target/arm/wmul-13.c: New file. | ||
| 19 | |||
| 20 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 21 | |||
| 22 | gcc/ | ||
| 23 | * tree-ssa-math-opts.c (convert_plusminus_to_widen): Convert add_rhs | ||
| 24 | to the correct type. | ||
| 25 | |||
| 26 | gcc/testsuite/ | ||
| 27 | * gcc.target/arm/wmul-10.c: New file. | ||
| 28 | |||
| 29 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 30 | |||
| 31 | gcc/ | ||
| 32 | * tree-ssa-math-opts.c (convert_mult_to_widen): Better handle | ||
| 33 | unsigned inputs of different modes. | ||
| 34 | (convert_plusminus_to_widen): Likewise. | ||
| 35 | |||
| 36 | gcc/testsuite/ | ||
| 37 | * gcc.target/arm/wmul-9.c: New file. | ||
| 38 | * gcc.target/arm/wmul-bitfield-2.c: New file. | ||
| 39 | |||
| 40 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 41 | |||
| 42 | gcc/ | ||
| 43 | * tree-ssa-math-opts.c (is_widening_mult_rhs_p): Add new argument | ||
| 44 | 'type'. | ||
| 45 | Use 'type' from caller, not inferred from 'rhs'. | ||
| 46 | Don't reject non-conversion statements. Do return lhs in this case. | ||
| 47 | (is_widening_mult_p): Add new argument 'type'. | ||
| 48 | Use 'type' from caller, not inferred from 'stmt'. | ||
| 49 | Pass type to is_widening_mult_rhs_p. | ||
| 50 | (convert_mult_to_widen): Pass type to is_widening_mult_p. | ||
| 51 | (convert_plusminus_to_widen): Likewise. | ||
| 52 | |||
| 53 | gcc/testsuite/ | ||
| 54 | * gcc.target/arm/wmul-8.c: New file. | ||
| 55 | |||
| 56 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 57 | |||
| 58 | gcc/ | ||
| 59 | * tree-ssa-math-opts.c (is_widening_mult_p): Remove FIXME. | ||
| 60 | Ensure the the larger type is the first operand. | ||
| 61 | |||
| 62 | gcc/testsuite/ | ||
| 63 | * gcc.target/arm/wmul-7.c: New file. | ||
| 64 | |||
| 65 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 66 | |||
| 67 | gcc/ | ||
| 68 | * tree-ssa-math-opts.c (convert_mult_to_widen): Convert | ||
| 69 | unsupported unsigned multiplies to signed. | ||
| 70 | (convert_plusminus_to_widen): Likewise. | ||
| 71 | |||
| 72 | gcc/testsuite/ | ||
| 73 | * gcc.target/arm/wmul-6.c: New file. | ||
| 74 | |||
| 75 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 76 | |||
| 77 | gcc/ | ||
| 78 | * tree-ssa-math-opts.c (convert_plusminus_to_widen): Permit a single | ||
| 79 | conversion statement separating multiply-and-accumulate. | ||
| 80 | |||
| 81 | gcc/testsuite/ | ||
| 82 | * gcc.target/arm/wmul-5.c: New file. | ||
| 83 | * gcc.target/arm/no-wmla-1.c: New file. | ||
| 84 | |||
| 85 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 86 | |||
| 87 | gcc/ | ||
| 88 | * config/arm/arm.md (maddhidi4): Remove '*' from name. | ||
| 89 | * expr.c (expand_expr_real_2): Use find_widening_optab_handler. | ||
| 90 | * optabs.c (find_widening_optab_handler_and_mode): New function. | ||
| 91 | (expand_widen_pattern_expr): Use find_widening_optab_handler. | ||
| 92 | (expand_binop_directly): Likewise. | ||
| 93 | (expand_binop): Likewise. | ||
| 94 | * optabs.h (find_widening_optab_handler): New macro define. | ||
| 95 | (find_widening_optab_handler_and_mode): New prototype. | ||
| 96 | * tree-cfg.c (verify_gimple_assign_binary): Adjust WIDEN_MULT_EXPR | ||
| 97 | type precision rules. | ||
| 98 | (verify_gimple_assign_ternary): Likewise for WIDEN_MULT_PLUS_EXPR. | ||
| 99 | * tree-ssa-math-opts.c (build_and_insert_cast): New function. | ||
| 100 | (is_widening_mult_rhs_p): Allow widening by more than one mode. | ||
| 101 | Explicitly disallow mis-matched input types. | ||
| 102 | (convert_mult_to_widen): Use find_widening_optab_handler, and cast | ||
| 103 | input types to fit the new handler. | ||
| 104 | (convert_plusminus_to_widen): Likewise. | ||
| 105 | |||
| 106 | gcc/testsuite/ | ||
| 107 | * gcc.target/arm/wmul-bitfield-1.c: New file. | ||
| 108 | |||
| 109 | 2011-08-19 Andrew Stubbs <ams@codesourcery.com> | ||
| 110 | |||
| 111 | gcc/ | ||
| 112 | * expr.c (expand_expr_real_2): Use widening_optab_handler. | ||
| 113 | * genopinit.c (optabs): Use set_widening_optab_handler for $N. | ||
| 114 | (gen_insn): $N now means $a must be wider than $b, not consecutive. | ||
| 115 | * optabs.c (widened_mode): New function. | ||
| 116 | (expand_widen_pattern_expr): Use widening_optab_handler. | ||
| 117 | (expand_binop_directly): Likewise. | ||
| 118 | (expand_binop): Likewise. | ||
| 119 | * optabs.h (widening_optab_handlers): New struct. | ||
| 120 | (optab_d): New member, 'widening'. | ||
| 121 | (widening_optab_handler): New function. | ||
| 122 | (set_widening_optab_handler): New function. | ||
| 123 | * tree-ssa-math-opts.c (convert_mult_to_widen): Use | ||
| 124 | widening_optab_handler. | ||
| 125 | (convert_plusminus_to_widen): Likewise. | ||
| 126 | |||
| 127 | === modified file 'gcc/config/arm/arm.md' | ||
| 128 | --- old/gcc/config/arm/arm.md 2011-08-13 08:32:32 +0000 | ||
| 129 | +++ new/gcc/config/arm/arm.md 2011-08-25 11:42:09 +0000 | ||
| 130 | @@ -1839,7 +1839,7 @@ | ||
| 131 | (set_attr "predicable" "yes")] | ||
| 132 | ) | ||
| 133 | |||
| 134 | -(define_insn "*maddhidi4" | ||
| 135 | +(define_insn "maddhidi4" | ||
| 136 | [(set (match_operand:DI 0 "s_register_operand" "=r") | ||
| 137 | (plus:DI | ||
| 138 | (mult:DI (sign_extend:DI | ||
| 139 | |||
| 140 | === modified file 'gcc/expr.c' | ||
| 141 | --- old/gcc/expr.c 2011-08-13 08:32:32 +0000 | ||
| 142 | +++ new/gcc/expr.c 2011-08-25 11:42:09 +0000 | ||
| 143 | @@ -7688,18 +7688,16 @@ | ||
| 144 | { | ||
| 145 | enum machine_mode innermode = TYPE_MODE (TREE_TYPE (treeop0)); | ||
| 146 | this_optab = usmul_widen_optab; | ||
| 147 | - if (mode == GET_MODE_2XWIDER_MODE (innermode)) | ||
| 148 | + if (find_widening_optab_handler (this_optab, mode, innermode, 0) | ||
| 149 | + != CODE_FOR_nothing) | ||
| 150 | { | ||
| 151 | - if (optab_handler (this_optab, mode) != CODE_FOR_nothing) | ||
| 152 | - { | ||
| 153 | - if (TYPE_UNSIGNED (TREE_TYPE (treeop0))) | ||
| 154 | - expand_operands (treeop0, treeop1, NULL_RTX, &op0, &op1, | ||
| 155 | - EXPAND_NORMAL); | ||
| 156 | - else | ||
| 157 | - expand_operands (treeop0, treeop1, NULL_RTX, &op1, &op0, | ||
| 158 | - EXPAND_NORMAL); | ||
| 159 | - goto binop3; | ||
| 160 | - } | ||
| 161 | + if (TYPE_UNSIGNED (TREE_TYPE (treeop0))) | ||
| 162 | + expand_operands (treeop0, treeop1, NULL_RTX, &op0, &op1, | ||
| 163 | + EXPAND_NORMAL); | ||
| 164 | + else | ||
| 165 | + expand_operands (treeop0, treeop1, NULL_RTX, &op1, &op0, | ||
| 166 | + EXPAND_NORMAL); | ||
| 167 | + goto binop3; | ||
| 168 | } | ||
| 169 | } | ||
| 170 | /* Check for a multiplication with matching signedness. */ | ||
| 171 | @@ -7714,10 +7712,10 @@ | ||
| 172 | optab other_optab = zextend_p ? smul_widen_optab : umul_widen_optab; | ||
| 173 | this_optab = zextend_p ? umul_widen_optab : smul_widen_optab; | ||
| 174 | |||
| 175 | - if (mode == GET_MODE_2XWIDER_MODE (innermode) | ||
| 176 | - && TREE_CODE (treeop0) != INTEGER_CST) | ||
| 177 | + if (TREE_CODE (treeop0) != INTEGER_CST) | ||
| 178 | { | ||
| 179 | - if (optab_handler (this_optab, mode) != CODE_FOR_nothing) | ||
| 180 | + if (find_widening_optab_handler (this_optab, mode, innermode, 0) | ||
| 181 | + != CODE_FOR_nothing) | ||
| 182 | { | ||
| 183 | expand_operands (treeop0, treeop1, NULL_RTX, &op0, &op1, | ||
| 184 | EXPAND_NORMAL); | ||
| 185 | @@ -7725,7 +7723,8 @@ | ||
| 186 | unsignedp, this_optab); | ||
| 187 | return REDUCE_BIT_FIELD (temp); | ||
| 188 | } | ||
| 189 | - if (optab_handler (other_optab, mode) != CODE_FOR_nothing | ||
| 190 | + if (find_widening_optab_handler (other_optab, mode, innermode, 0) | ||
| 191 | + != CODE_FOR_nothing | ||
| 192 | && innermode == word_mode) | ||
| 193 | { | ||
| 194 | rtx htem, hipart; | ||
| 195 | |||
| 196 | === modified file 'gcc/genopinit.c' | ||
| 197 | --- old/gcc/genopinit.c 2011-05-05 15:43:06 +0000 | ||
| 198 | +++ new/gcc/genopinit.c 2011-07-15 13:06:31 +0000 | ||
| 199 | @@ -46,10 +46,12 @@ | ||
| 200 | used. $A and $B are replaced with the full name of the mode; $a and $b | ||
| 201 | are replaced with the short form of the name, as above. | ||
| 202 | |||
| 203 | - If $N is present in the pattern, it means the two modes must be consecutive | ||
| 204 | - widths in the same mode class (e.g, QImode and HImode). $I means that | ||
| 205 | - only full integer modes should be considered for the next mode, and $F | ||
| 206 | - means that only float modes should be considered. | ||
| 207 | + If $N is present in the pattern, it means the two modes must be in | ||
| 208 | + the same mode class, and $b must be greater than $a (e.g, QImode | ||
| 209 | + and HImode). | ||
| 210 | + | ||
| 211 | + $I means that only full integer modes should be considered for the | ||
| 212 | + next mode, and $F means that only float modes should be considered. | ||
| 213 | $P means that both full and partial integer modes should be considered. | ||
| 214 | $Q means that only fixed-point modes should be considered. | ||
| 215 | |||
| 216 | @@ -99,17 +101,17 @@ | ||
| 217 | "set_optab_handler (smulv_optab, $A, CODE_FOR_$(mulv$I$a3$))", | ||
| 218 | "set_optab_handler (umul_highpart_optab, $A, CODE_FOR_$(umul$a3_highpart$))", | ||
| 219 | "set_optab_handler (smul_highpart_optab, $A, CODE_FOR_$(smul$a3_highpart$))", | ||
| 220 | - "set_optab_handler (smul_widen_optab, $B, CODE_FOR_$(mul$a$b3$)$N)", | ||
| 221 | - "set_optab_handler (umul_widen_optab, $B, CODE_FOR_$(umul$a$b3$)$N)", | ||
| 222 | - "set_optab_handler (usmul_widen_optab, $B, CODE_FOR_$(usmul$a$b3$)$N)", | ||
| 223 | - "set_optab_handler (smadd_widen_optab, $B, CODE_FOR_$(madd$a$b4$)$N)", | ||
| 224 | - "set_optab_handler (umadd_widen_optab, $B, CODE_FOR_$(umadd$a$b4$)$N)", | ||
| 225 | - "set_optab_handler (ssmadd_widen_optab, $B, CODE_FOR_$(ssmadd$a$b4$)$N)", | ||
| 226 | - "set_optab_handler (usmadd_widen_optab, $B, CODE_FOR_$(usmadd$a$b4$)$N)", | ||
| 227 | - "set_optab_handler (smsub_widen_optab, $B, CODE_FOR_$(msub$a$b4$)$N)", | ||
| 228 | - "set_optab_handler (umsub_widen_optab, $B, CODE_FOR_$(umsub$a$b4$)$N)", | ||
| 229 | - "set_optab_handler (ssmsub_widen_optab, $B, CODE_FOR_$(ssmsub$a$b4$)$N)", | ||
| 230 | - "set_optab_handler (usmsub_widen_optab, $B, CODE_FOR_$(usmsub$a$b4$)$N)", | ||
| 231 | + "set_widening_optab_handler (smul_widen_optab, $B, $A, CODE_FOR_$(mul$a$b3$)$N)", | ||
| 232 | + "set_widening_optab_handler (umul_widen_optab, $B, $A, CODE_FOR_$(umul$a$b3$)$N)", | ||
| 233 | + "set_widening_optab_handler (usmul_widen_optab, $B, $A, CODE_FOR_$(usmul$a$b3$)$N)", | ||
| 234 | + "set_widening_optab_handler (smadd_widen_optab, $B, $A, CODE_FOR_$(madd$a$b4$)$N)", | ||
| 235 | + "set_widening_optab_handler (umadd_widen_optab, $B, $A, CODE_FOR_$(umadd$a$b4$)$N)", | ||
| 236 | + "set_widening_optab_handler (ssmadd_widen_optab, $B, $A, CODE_FOR_$(ssmadd$a$b4$)$N)", | ||
| 237 | + "set_widening_optab_handler (usmadd_widen_optab, $B, $A, CODE_FOR_$(usmadd$a$b4$)$N)", | ||
| 238 | + "set_widening_optab_handler (smsub_widen_optab, $B, $A, CODE_FOR_$(msub$a$b4$)$N)", | ||
| 239 | + "set_widening_optab_handler (umsub_widen_optab, $B, $A, CODE_FOR_$(umsub$a$b4$)$N)", | ||
| 240 | + "set_widening_optab_handler (ssmsub_widen_optab, $B, $A, CODE_FOR_$(ssmsub$a$b4$)$N)", | ||
| 241 | + "set_widening_optab_handler (usmsub_widen_optab, $B, $A, CODE_FOR_$(usmsub$a$b4$)$N)", | ||
| 242 | "set_optab_handler (sdiv_optab, $A, CODE_FOR_$(div$a3$))", | ||
| 243 | "set_optab_handler (ssdiv_optab, $A, CODE_FOR_$(ssdiv$Q$a3$))", | ||
| 244 | "set_optab_handler (sdivv_optab, $A, CODE_FOR_$(div$V$I$a3$))", | ||
| 245 | @@ -304,7 +306,7 @@ | ||
| 246 | { | ||
| 247 | int force_float = 0, force_int = 0, force_partial_int = 0; | ||
| 248 | int force_fixed = 0; | ||
| 249 | - int force_consec = 0; | ||
| 250 | + int force_wider = 0; | ||
| 251 | int matches = 1; | ||
| 252 | |||
| 253 | for (pp = optabs[pindex]; pp[0] != '$' || pp[1] != '('; pp++) | ||
| 254 | @@ -322,7 +324,7 @@ | ||
| 255 | switch (*++pp) | ||
| 256 | { | ||
| 257 | case 'N': | ||
| 258 | - force_consec = 1; | ||
| 259 | + force_wider = 1; | ||
| 260 | break; | ||
| 261 | case 'I': | ||
| 262 | force_int = 1; | ||
| 263 | @@ -391,7 +393,10 @@ | ||
| 264 | || mode_class[i] == MODE_VECTOR_FRACT | ||
| 265 | || mode_class[i] == MODE_VECTOR_UFRACT | ||
| 266 | || mode_class[i] == MODE_VECTOR_ACCUM | ||
| 267 | - || mode_class[i] == MODE_VECTOR_UACCUM)) | ||
| 268 | + || mode_class[i] == MODE_VECTOR_UACCUM) | ||
| 269 | + && (! force_wider | ||
| 270 | + || *pp == 'a' | ||
| 271 | + || m1 < i)) | ||
| 272 | break; | ||
| 273 | } | ||
| 274 | |||
| 275 | @@ -411,8 +416,7 @@ | ||
| 276 | } | ||
| 277 | |||
| 278 | if (matches && pp[0] == '$' && pp[1] == ')' | ||
| 279 | - && *np == 0 | ||
| 280 | - && (! force_consec || (int) GET_MODE_WIDER_MODE(m1) == m2)) | ||
| 281 | + && *np == 0) | ||
| 282 | break; | ||
| 283 | } | ||
| 284 | |||
| 285 | |||
| 286 | === modified file 'gcc/optabs.c' | ||
| 287 | --- old/gcc/optabs.c 2011-07-04 14:03:49 +0000 | ||
| 288 | +++ new/gcc/optabs.c 2011-08-11 15:46:01 +0000 | ||
| 289 | @@ -225,6 +225,61 @@ | ||
| 290 | return 1; | ||
| 291 | } | ||
| 292 | |||
| 293 | +/* Given two input operands, OP0 and OP1, determine what the correct from_mode | ||
| 294 | + for a widening operation would be. In most cases this would be OP0, but if | ||
| 295 | + that's a constant it'll be VOIDmode, which isn't useful. */ | ||
| 296 | + | ||
| 297 | +static enum machine_mode | ||
| 298 | +widened_mode (enum machine_mode to_mode, rtx op0, rtx op1) | ||
| 299 | +{ | ||
| 300 | + enum machine_mode m0 = GET_MODE (op0); | ||
| 301 | + enum machine_mode m1 = GET_MODE (op1); | ||
| 302 | + enum machine_mode result; | ||
| 303 | + | ||
| 304 | + if (m0 == VOIDmode && m1 == VOIDmode) | ||
| 305 | + return to_mode; | ||
| 306 | + else if (m0 == VOIDmode || GET_MODE_SIZE (m0) < GET_MODE_SIZE (m1)) | ||
| 307 | + result = m1; | ||
| 308 | + else | ||
| 309 | + result = m0; | ||
| 310 | + | ||
| 311 | + if (GET_MODE_SIZE (result) > GET_MODE_SIZE (to_mode)) | ||
| 312 | + return to_mode; | ||
| 313 | + | ||
| 314 | + return result; | ||
| 315 | +} | ||
| 316 | + | ||
| 317 | +/* Find a widening optab even if it doesn't widen as much as we want. | ||
| 318 | + E.g. if from_mode is HImode, and to_mode is DImode, and there is no | ||
| 319 | + direct HI->SI insn, then return SI->DI, if that exists. | ||
| 320 | + If PERMIT_NON_WIDENING is non-zero then this can be used with | ||
| 321 | + non-widening optabs also. */ | ||
| 322 | + | ||
| 323 | +enum insn_code | ||
| 324 | +find_widening_optab_handler_and_mode (optab op, enum machine_mode to_mode, | ||
| 325 | + enum machine_mode from_mode, | ||
| 326 | + int permit_non_widening, | ||
| 327 | + enum machine_mode *found_mode) | ||
| 328 | +{ | ||
| 329 | + for (; (permit_non_widening || from_mode != to_mode) | ||
| 330 | + && GET_MODE_SIZE (from_mode) <= GET_MODE_SIZE (to_mode) | ||
| 331 | + && from_mode != VOIDmode; | ||
| 332 | + from_mode = GET_MODE_WIDER_MODE (from_mode)) | ||
| 333 | + { | ||
| 334 | + enum insn_code handler = widening_optab_handler (op, to_mode, | ||
| 335 | + from_mode); | ||
| 336 | + | ||
| 337 | + if (handler != CODE_FOR_nothing) | ||
| 338 | + { | ||
| 339 | + if (found_mode) | ||
| 340 | + *found_mode = from_mode; | ||
| 341 | + return handler; | ||
| 342 | + } | ||
| 343 | + } | ||
| 344 | + | ||
| 345 | + return CODE_FOR_nothing; | ||
| 346 | +} | ||
| 347 | + | ||
| 348 | /* Widen OP to MODE and return the rtx for the widened operand. UNSIGNEDP | ||
| 349 | says whether OP is signed or unsigned. NO_EXTEND is nonzero if we need | ||
| 350 | not actually do a sign-extend or zero-extend, but can leave the | ||
| 351 | @@ -517,8 +572,9 @@ | ||
| 352 | optab_for_tree_code (ops->code, TREE_TYPE (oprnd0), optab_default); | ||
| 353 | if (ops->code == WIDEN_MULT_PLUS_EXPR | ||
| 354 | || ops->code == WIDEN_MULT_MINUS_EXPR) | ||
| 355 | - icode = (int) optab_handler (widen_pattern_optab, | ||
| 356 | - TYPE_MODE (TREE_TYPE (ops->op2))); | ||
| 357 | + icode = (int) find_widening_optab_handler (widen_pattern_optab, | ||
| 358 | + TYPE_MODE (TREE_TYPE (ops->op2)), | ||
| 359 | + tmode0, 0); | ||
| 360 | else | ||
| 361 | icode = (int) optab_handler (widen_pattern_optab, tmode0); | ||
| 362 | gcc_assert (icode != CODE_FOR_nothing); | ||
| 363 | @@ -1389,7 +1445,9 @@ | ||
| 364 | rtx target, int unsignedp, enum optab_methods methods, | ||
| 365 | rtx last) | ||
| 366 | { | ||
| 367 | - int icode = (int) optab_handler (binoptab, mode); | ||
| 368 | + enum machine_mode from_mode = widened_mode (mode, op0, op1); | ||
| 369 | + int icode = (int) find_widening_optab_handler (binoptab, mode, | ||
| 370 | + from_mode, 1); | ||
| 371 | enum machine_mode mode0 = insn_data[icode].operand[1].mode; | ||
| 372 | enum machine_mode mode1 = insn_data[icode].operand[2].mode; | ||
| 373 | enum machine_mode tmp_mode; | ||
| 374 | @@ -1546,7 +1604,9 @@ | ||
| 375 | /* If we can do it with a three-operand insn, do so. */ | ||
| 376 | |||
| 377 | if (methods != OPTAB_MUST_WIDEN | ||
| 378 | - && optab_handler (binoptab, mode) != CODE_FOR_nothing) | ||
| 379 | + && find_widening_optab_handler (binoptab, mode, | ||
| 380 | + widened_mode (mode, op0, op1), 1) | ||
| 381 | + != CODE_FOR_nothing) | ||
| 382 | { | ||
| 383 | temp = expand_binop_directly (mode, binoptab, op0, op1, target, | ||
| 384 | unsignedp, methods, last); | ||
| 385 | @@ -1586,8 +1646,9 @@ | ||
| 386 | |||
| 387 | if (binoptab == smul_optab | ||
| 388 | && GET_MODE_WIDER_MODE (mode) != VOIDmode | ||
| 389 | - && (optab_handler ((unsignedp ? umul_widen_optab : smul_widen_optab), | ||
| 390 | - GET_MODE_WIDER_MODE (mode)) | ||
| 391 | + && (widening_optab_handler ((unsignedp ? umul_widen_optab | ||
| 392 | + : smul_widen_optab), | ||
| 393 | + GET_MODE_WIDER_MODE (mode), mode) | ||
| 394 | != CODE_FOR_nothing)) | ||
| 395 | { | ||
| 396 | temp = expand_binop (GET_MODE_WIDER_MODE (mode), | ||
| 397 | @@ -1618,9 +1679,11 @@ | ||
| 398 | if (optab_handler (binoptab, wider_mode) != CODE_FOR_nothing | ||
| 399 | || (binoptab == smul_optab | ||
| 400 | && GET_MODE_WIDER_MODE (wider_mode) != VOIDmode | ||
| 401 | - && (optab_handler ((unsignedp ? umul_widen_optab | ||
| 402 | - : smul_widen_optab), | ||
| 403 | - GET_MODE_WIDER_MODE (wider_mode)) | ||
| 404 | + && (find_widening_optab_handler ((unsignedp | ||
| 405 | + ? umul_widen_optab | ||
| 406 | + : smul_widen_optab), | ||
| 407 | + GET_MODE_WIDER_MODE (wider_mode), | ||
| 408 | + mode, 0) | ||
| 409 | != CODE_FOR_nothing))) | ||
| 410 | { | ||
| 411 | rtx xop0 = op0, xop1 = op1; | ||
| 412 | @@ -2043,8 +2106,8 @@ | ||
| 413 | && optab_handler (add_optab, word_mode) != CODE_FOR_nothing) | ||
| 414 | { | ||
| 415 | rtx product = NULL_RTX; | ||
| 416 | - | ||
| 417 | - if (optab_handler (umul_widen_optab, mode) != CODE_FOR_nothing) | ||
| 418 | + if (widening_optab_handler (umul_widen_optab, mode, word_mode) | ||
| 419 | + != CODE_FOR_nothing) | ||
| 420 | { | ||
| 421 | product = expand_doubleword_mult (mode, op0, op1, target, | ||
| 422 | true, methods); | ||
| 423 | @@ -2053,7 +2116,8 @@ | ||
| 424 | } | ||
| 425 | |||
| 426 | if (product == NULL_RTX | ||
| 427 | - && optab_handler (smul_widen_optab, mode) != CODE_FOR_nothing) | ||
| 428 | + && widening_optab_handler (smul_widen_optab, mode, word_mode) | ||
| 429 | + != CODE_FOR_nothing) | ||
| 430 | { | ||
| 431 | product = expand_doubleword_mult (mode, op0, op1, target, | ||
| 432 | false, methods); | ||
| 433 | @@ -2144,7 +2208,8 @@ | ||
| 434 | wider_mode != VOIDmode; | ||
| 435 | wider_mode = GET_MODE_WIDER_MODE (wider_mode)) | ||
| 436 | { | ||
| 437 | - if (optab_handler (binoptab, wider_mode) != CODE_FOR_nothing | ||
| 438 | + if (find_widening_optab_handler (binoptab, wider_mode, mode, 1) | ||
| 439 | + != CODE_FOR_nothing | ||
| 440 | || (methods == OPTAB_LIB | ||
| 441 | && optab_libfunc (binoptab, wider_mode))) | ||
| 442 | { | ||
| 443 | |||
| 444 | === modified file 'gcc/optabs.h' | ||
| 445 | --- old/gcc/optabs.h 2011-05-05 15:43:06 +0000 | ||
| 446 | +++ new/gcc/optabs.h 2011-07-27 14:12:45 +0000 | ||
| 447 | @@ -42,6 +42,11 @@ | ||
| 448 | int insn_code; | ||
| 449 | }; | ||
| 450 | |||
| 451 | +struct widening_optab_handlers | ||
| 452 | +{ | ||
| 453 | + struct optab_handlers handlers[NUM_MACHINE_MODES][NUM_MACHINE_MODES]; | ||
| 454 | +}; | ||
| 455 | + | ||
| 456 | struct optab_d | ||
| 457 | { | ||
| 458 | enum rtx_code code; | ||
| 459 | @@ -50,6 +55,7 @@ | ||
| 460 | void (*libcall_gen)(struct optab_d *, const char *name, char suffix, | ||
| 461 | enum machine_mode); | ||
| 462 | struct optab_handlers handlers[NUM_MACHINE_MODES]; | ||
| 463 | + struct widening_optab_handlers *widening; | ||
| 464 | }; | ||
| 465 | typedef struct optab_d * optab; | ||
| 466 | |||
| 467 | @@ -799,6 +805,15 @@ | ||
| 468 | extern void emit_unop_insn (int, rtx, rtx, enum rtx_code); | ||
| 469 | extern bool maybe_emit_unop_insn (int, rtx, rtx, enum rtx_code); | ||
| 470 | |||
| 471 | +/* Find a widening optab even if it doesn't widen as much as we want. */ | ||
| 472 | +#define find_widening_optab_handler(A,B,C,D) \ | ||
| 473 | + find_widening_optab_handler_and_mode (A, B, C, D, NULL) | ||
| 474 | +extern enum insn_code find_widening_optab_handler_and_mode (optab, | ||
| 475 | + enum machine_mode, | ||
| 476 | + enum machine_mode, | ||
| 477 | + int, | ||
| 478 | + enum machine_mode *); | ||
| 479 | + | ||
| 480 | /* An extra flag to control optab_for_tree_code's behavior. This is needed to | ||
| 481 | distinguish between machines with a vector shift that takes a scalar for the | ||
| 482 | shift amount vs. machines that take a vector for the shift amount. */ | ||
| 483 | @@ -874,6 +889,23 @@ | ||
| 484 | + (int) CODE_FOR_nothing); | ||
| 485 | } | ||
| 486 | |||
| 487 | +/* Like optab_handler, but for widening_operations that have a TO_MODE and | ||
| 488 | + a FROM_MODE. */ | ||
| 489 | + | ||
| 490 | +static inline enum insn_code | ||
| 491 | +widening_optab_handler (optab op, enum machine_mode to_mode, | ||
| 492 | + enum machine_mode from_mode) | ||
| 493 | +{ | ||
| 494 | + if (to_mode == from_mode || from_mode == VOIDmode) | ||
| 495 | + return optab_handler (op, to_mode); | ||
| 496 | + | ||
| 497 | + if (op->widening) | ||
| 498 | + return (enum insn_code) (op->widening->handlers[(int) to_mode][(int) from_mode].insn_code | ||
| 499 | + + (int) CODE_FOR_nothing); | ||
| 500 | + | ||
| 501 | + return CODE_FOR_nothing; | ||
| 502 | +} | ||
| 503 | + | ||
| 504 | /* Record that insn CODE should be used to implement mode MODE of OP. */ | ||
| 505 | |||
| 506 | static inline void | ||
| 507 | @@ -882,6 +914,26 @@ | ||
| 508 | op->handlers[(int) mode].insn_code = (int) code - (int) CODE_FOR_nothing; | ||
| 509 | } | ||
| 510 | |||
| 511 | +/* Like set_optab_handler, but for widening operations that have a TO_MODE | ||
| 512 | + and a FROM_MODE. */ | ||
| 513 | + | ||
| 514 | +static inline void | ||
| 515 | +set_widening_optab_handler (optab op, enum machine_mode to_mode, | ||
| 516 | + enum machine_mode from_mode, enum insn_code code) | ||
| 517 | +{ | ||
| 518 | + if (to_mode == from_mode) | ||
| 519 | + set_optab_handler (op, to_mode, code); | ||
| 520 | + else | ||
| 521 | + { | ||
| 522 | + if (op->widening == NULL) | ||
| 523 | + op->widening = (struct widening_optab_handlers *) | ||
| 524 | + xcalloc (1, sizeof (struct widening_optab_handlers)); | ||
| 525 | + | ||
| 526 | + op->widening->handlers[(int) to_mode][(int) from_mode].insn_code | ||
| 527 | + = (int) code - (int) CODE_FOR_nothing; | ||
| 528 | + } | ||
| 529 | +} | ||
| 530 | + | ||
| 531 | /* Return the insn used to perform conversion OP from mode FROM_MODE | ||
| 532 | to mode TO_MODE; return CODE_FOR_nothing if the target does not have | ||
| 533 | such an insn. */ | ||
| 534 | |||
| 535 | === added file 'gcc/testsuite/gcc.target/arm/no-wmla-1.c' | ||
| 536 | --- old/gcc/testsuite/gcc.target/arm/no-wmla-1.c 1970-01-01 00:00:00 +0000 | ||
| 537 | +++ new/gcc/testsuite/gcc.target/arm/no-wmla-1.c 2011-07-15 13:52:38 +0000 | ||
| 538 | @@ -0,0 +1,11 @@ | ||
| 539 | +/* { dg-do compile } */ | ||
| 540 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 541 | + | ||
| 542 | +int | ||
| 543 | +foo (int a, short b, short c) | ||
| 544 | +{ | ||
| 545 | + int bc = b * c; | ||
| 546 | + return a + (short)bc; | ||
| 547 | +} | ||
| 548 | + | ||
| 549 | +/* { dg-final { scan-assembler "mul" } } */ | ||
| 550 | |||
| 551 | === added file 'gcc/testsuite/gcc.target/arm/wmul-10.c' | ||
| 552 | --- old/gcc/testsuite/gcc.target/arm/wmul-10.c 1970-01-01 00:00:00 +0000 | ||
| 553 | +++ new/gcc/testsuite/gcc.target/arm/wmul-10.c 2011-07-18 12:56:20 +0000 | ||
| 554 | @@ -0,0 +1,10 @@ | ||
| 555 | +/* { dg-do compile } */ | ||
| 556 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 557 | + | ||
| 558 | +unsigned long long | ||
| 559 | +foo (unsigned short a, unsigned short *b, unsigned short *c) | ||
| 560 | +{ | ||
| 561 | + return (unsigned)a + (unsigned long long)*b * (unsigned long long)*c; | ||
| 562 | +} | ||
| 563 | + | ||
| 564 | +/* { dg-final { scan-assembler "umlal" } } */ | ||
| 565 | |||
| 566 | === added file 'gcc/testsuite/gcc.target/arm/wmul-11.c' | ||
| 567 | --- old/gcc/testsuite/gcc.target/arm/wmul-11.c 1970-01-01 00:00:00 +0000 | ||
| 568 | +++ new/gcc/testsuite/gcc.target/arm/wmul-11.c 2011-07-22 15:46:42 +0000 | ||
| 569 | @@ -0,0 +1,10 @@ | ||
| 570 | +/* { dg-do compile } */ | ||
| 571 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 572 | + | ||
| 573 | +long long | ||
| 574 | +foo (int *b) | ||
| 575 | +{ | ||
| 576 | + return 10 * (long long)*b; | ||
| 577 | +} | ||
| 578 | + | ||
| 579 | +/* { dg-final { scan-assembler "smull" } } */ | ||
| 580 | |||
| 581 | === added file 'gcc/testsuite/gcc.target/arm/wmul-12.c' | ||
| 582 | --- old/gcc/testsuite/gcc.target/arm/wmul-12.c 1970-01-01 00:00:00 +0000 | ||
| 583 | +++ new/gcc/testsuite/gcc.target/arm/wmul-12.c 2011-07-22 15:46:42 +0000 | ||
| 584 | @@ -0,0 +1,11 @@ | ||
| 585 | +/* { dg-do compile } */ | ||
| 586 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 587 | + | ||
| 588 | +long long | ||
| 589 | +foo (int *b, int *c) | ||
| 590 | +{ | ||
| 591 | + int tmp = *b * *c; | ||
| 592 | + return 10 + (long long)tmp; | ||
| 593 | +} | ||
| 594 | + | ||
| 595 | +/* { dg-final { scan-assembler "smlal" } } */ | ||
| 596 | |||
| 597 | === added file 'gcc/testsuite/gcc.target/arm/wmul-13.c' | ||
| 598 | --- old/gcc/testsuite/gcc.target/arm/wmul-13.c 1970-01-01 00:00:00 +0000 | ||
| 599 | +++ new/gcc/testsuite/gcc.target/arm/wmul-13.c 2011-07-22 15:46:42 +0000 | ||
| 600 | @@ -0,0 +1,10 @@ | ||
| 601 | +/* { dg-do compile } */ | ||
| 602 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 603 | + | ||
| 604 | +long long | ||
| 605 | +foo (int *a, int *b) | ||
| 606 | +{ | ||
| 607 | + return *a + (long long)*b * 10; | ||
| 608 | +} | ||
| 609 | + | ||
| 610 | +/* { dg-final { scan-assembler "smlal" } } */ | ||
| 611 | |||
| 612 | === added file 'gcc/testsuite/gcc.target/arm/wmul-5.c' | ||
| 613 | --- old/gcc/testsuite/gcc.target/arm/wmul-5.c 1970-01-01 00:00:00 +0000 | ||
| 614 | +++ new/gcc/testsuite/gcc.target/arm/wmul-5.c 2011-07-15 13:52:38 +0000 | ||
| 615 | @@ -0,0 +1,10 @@ | ||
| 616 | +/* { dg-do compile } */ | ||
| 617 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 618 | + | ||
| 619 | +long long | ||
| 620 | +foo (long long a, char *b, char *c) | ||
| 621 | +{ | ||
| 622 | + return a + *b * *c; | ||
| 623 | +} | ||
| 624 | + | ||
| 625 | +/* { dg-final { scan-assembler "umlal" } } */ | ||
| 626 | |||
| 627 | === added file 'gcc/testsuite/gcc.target/arm/wmul-6.c' | ||
| 628 | --- old/gcc/testsuite/gcc.target/arm/wmul-6.c 1970-01-01 00:00:00 +0000 | ||
| 629 | +++ new/gcc/testsuite/gcc.target/arm/wmul-6.c 2011-07-15 13:59:11 +0000 | ||
| 630 | @@ -0,0 +1,10 @@ | ||
| 631 | +/* { dg-do compile } */ | ||
| 632 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 633 | + | ||
| 634 | +long long | ||
| 635 | +foo (long long a, unsigned char *b, signed char *c) | ||
| 636 | +{ | ||
| 637 | + return a + (long long)*b * (long long)*c; | ||
| 638 | +} | ||
| 639 | + | ||
| 640 | +/* { dg-final { scan-assembler "smlal" } } */ | ||
| 641 | |||
| 642 | === added file 'gcc/testsuite/gcc.target/arm/wmul-7.c' | ||
| 643 | --- old/gcc/testsuite/gcc.target/arm/wmul-7.c 1970-01-01 00:00:00 +0000 | ||
| 644 | +++ new/gcc/testsuite/gcc.target/arm/wmul-7.c 2011-07-15 14:11:23 +0000 | ||
| 645 | @@ -0,0 +1,10 @@ | ||
| 646 | +/* { dg-do compile } */ | ||
| 647 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 648 | + | ||
| 649 | +unsigned long long | ||
| 650 | +foo (unsigned long long a, unsigned char *b, unsigned short *c) | ||
| 651 | +{ | ||
| 652 | + return a + *b * *c; | ||
| 653 | +} | ||
| 654 | + | ||
| 655 | +/* { dg-final { scan-assembler "umlal" } } */ | ||
| 656 | |||
| 657 | === added file 'gcc/testsuite/gcc.target/arm/wmul-8.c' | ||
| 658 | --- old/gcc/testsuite/gcc.target/arm/wmul-8.c 1970-01-01 00:00:00 +0000 | ||
| 659 | +++ new/gcc/testsuite/gcc.target/arm/wmul-8.c 2011-07-15 14:16:54 +0000 | ||
| 660 | @@ -0,0 +1,10 @@ | ||
| 661 | +/* { dg-do compile } */ | ||
| 662 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 663 | + | ||
| 664 | +long long | ||
| 665 | +foo (long long a, int *b, int *c) | ||
| 666 | +{ | ||
| 667 | + return a + *b * *c; | ||
| 668 | +} | ||
| 669 | + | ||
| 670 | +/* { dg-final { scan-assembler "smlal" } } */ | ||
| 671 | |||
| 672 | === added file 'gcc/testsuite/gcc.target/arm/wmul-9.c' | ||
| 673 | --- old/gcc/testsuite/gcc.target/arm/wmul-9.c 1970-01-01 00:00:00 +0000 | ||
| 674 | +++ new/gcc/testsuite/gcc.target/arm/wmul-9.c 2011-07-15 14:22:39 +0000 | ||
| 675 | @@ -0,0 +1,10 @@ | ||
| 676 | +/* { dg-do compile } */ | ||
| 677 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 678 | + | ||
| 679 | +long long | ||
| 680 | +foo (long long a, short *b, char *c) | ||
| 681 | +{ | ||
| 682 | + return a + *b * *c; | ||
| 683 | +} | ||
| 684 | + | ||
| 685 | +/* { dg-final { scan-assembler "smlalbb" } } */ | ||
| 686 | |||
| 687 | === added file 'gcc/testsuite/gcc.target/arm/wmul-bitfield-1.c' | ||
| 688 | --- old/gcc/testsuite/gcc.target/arm/wmul-bitfield-1.c 1970-01-01 00:00:00 +0000 | ||
| 689 | +++ new/gcc/testsuite/gcc.target/arm/wmul-bitfield-1.c 2011-07-15 13:44:50 +0000 | ||
| 690 | @@ -0,0 +1,17 @@ | ||
| 691 | +/* { dg-do compile } */ | ||
| 692 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 693 | + | ||
| 694 | +struct bf | ||
| 695 | +{ | ||
| 696 | + int a : 3; | ||
| 697 | + int b : 15; | ||
| 698 | + int c : 3; | ||
| 699 | +}; | ||
| 700 | + | ||
| 701 | +long long | ||
| 702 | +foo (long long a, struct bf b, struct bf c) | ||
| 703 | +{ | ||
| 704 | + return a + b.b * c.b; | ||
| 705 | +} | ||
| 706 | + | ||
| 707 | +/* { dg-final { scan-assembler "smlalbb" } } */ | ||
| 708 | |||
| 709 | === added file 'gcc/testsuite/gcc.target/arm/wmul-bitfield-2.c' | ||
| 710 | --- old/gcc/testsuite/gcc.target/arm/wmul-bitfield-2.c 1970-01-01 00:00:00 +0000 | ||
| 711 | +++ new/gcc/testsuite/gcc.target/arm/wmul-bitfield-2.c 2011-07-15 14:22:39 +0000 | ||
| 712 | @@ -0,0 +1,17 @@ | ||
| 713 | +/* { dg-do compile } */ | ||
| 714 | +/* { dg-options "-O2 -march=armv7-a" } */ | ||
| 715 | + | ||
| 716 | +struct bf | ||
| 717 | +{ | ||
| 718 | + int a : 3; | ||
| 719 | + unsigned int b : 15; | ||
| 720 | + int c : 3; | ||
| 721 | +}; | ||
| 722 | + | ||
| 723 | +long long | ||
| 724 | +foo (long long a, struct bf b, struct bf c) | ||
| 725 | +{ | ||
| 726 | + return a + b.b * c.c; | ||
| 727 | +} | ||
| 728 | + | ||
| 729 | +/* { dg-final { scan-assembler "smlalbb" } } */ | ||
| 730 | |||
| 731 | === modified file 'gcc/tree-cfg.c' | ||
| 732 | --- old/gcc/tree-cfg.c 2011-07-01 09:19:21 +0000 | ||
| 733 | +++ new/gcc/tree-cfg.c 2011-07-15 13:44:50 +0000 | ||
| 734 | @@ -3574,7 +3574,7 @@ | ||
| 735 | case WIDEN_MULT_EXPR: | ||
| 736 | if (TREE_CODE (lhs_type) != INTEGER_TYPE) | ||
| 737 | return true; | ||
| 738 | - return ((2 * TYPE_PRECISION (rhs1_type) != TYPE_PRECISION (lhs_type)) | ||
| 739 | + return ((2 * TYPE_PRECISION (rhs1_type) > TYPE_PRECISION (lhs_type)) | ||
| 740 | || (TYPE_PRECISION (rhs1_type) != TYPE_PRECISION (rhs2_type))); | ||
| 741 | |||
| 742 | case WIDEN_SUM_EXPR: | ||
| 743 | @@ -3667,7 +3667,7 @@ | ||
| 744 | && !FIXED_POINT_TYPE_P (rhs1_type)) | ||
| 745 | || !useless_type_conversion_p (rhs1_type, rhs2_type) | ||
| 746 | || !useless_type_conversion_p (lhs_type, rhs3_type) | ||
| 747 | - || 2 * TYPE_PRECISION (rhs1_type) != TYPE_PRECISION (lhs_type) | ||
| 748 | + || 2 * TYPE_PRECISION (rhs1_type) > TYPE_PRECISION (lhs_type) | ||
| 749 | || TYPE_PRECISION (rhs1_type) != TYPE_PRECISION (rhs2_type)) | ||
| 750 | { | ||
| 751 | error ("type mismatch in widening multiply-accumulate expression"); | ||
| 752 | |||
| 753 | === modified file 'gcc/tree-ssa-math-opts.c' | ||
| 754 | --- old/gcc/tree-ssa-math-opts.c 2011-03-11 16:36:16 +0000 | ||
| 755 | +++ new/gcc/tree-ssa-math-opts.c 2011-08-09 10:26:48 +0000 | ||
| 756 | @@ -1266,39 +1266,67 @@ | ||
| 757 | } | ||
| 758 | }; | ||
| 759 | |||
| 760 | -/* Return true if RHS is a suitable operand for a widening multiplication. | ||
| 761 | +/* Build a gimple assignment to cast VAL to TARGET. Insert the statement | ||
| 762 | + prior to GSI's current position, and return the fresh SSA name. */ | ||
| 763 | + | ||
| 764 | +static tree | ||
| 765 | +build_and_insert_cast (gimple_stmt_iterator *gsi, location_t loc, | ||
| 766 | + tree target, tree val) | ||
| 767 | +{ | ||
| 768 | + tree result = make_ssa_name (target, NULL); | ||
| 769 | + gimple stmt = gimple_build_assign_with_ops (CONVERT_EXPR, result, val, NULL); | ||
| 770 | + gimple_set_location (stmt, loc); | ||
| 771 | + gsi_insert_before (gsi, stmt, GSI_SAME_STMT); | ||
| 772 | + return result; | ||
| 773 | +} | ||
| 774 | + | ||
| 775 | +/* Return true if RHS is a suitable operand for a widening multiplication, | ||
| 776 | + assuming a target type of TYPE. | ||
| 777 | There are two cases: | ||
| 778 | |||
| 779 | - - RHS makes some value twice as wide. Store that value in *NEW_RHS_OUT | ||
| 780 | - if so, and store its type in *TYPE_OUT. | ||
| 781 | + - RHS makes some value at least twice as wide. Store that value | ||
| 782 | + in *NEW_RHS_OUT if so, and store its type in *TYPE_OUT. | ||
| 783 | |||
| 784 | - RHS is an integer constant. Store that value in *NEW_RHS_OUT if so, | ||
| 785 | but leave *TYPE_OUT untouched. */ | ||
| 786 | |||
| 787 | static bool | ||
| 788 | -is_widening_mult_rhs_p (tree rhs, tree *type_out, tree *new_rhs_out) | ||
| 789 | +is_widening_mult_rhs_p (tree type, tree rhs, tree *type_out, | ||
| 790 | + tree *new_rhs_out) | ||
| 791 | { | ||
| 792 | gimple stmt; | ||
| 793 | - tree type, type1, rhs1; | ||
| 794 | + tree type1, rhs1; | ||
| 795 | enum tree_code rhs_code; | ||
| 796 | |||
| 797 | if (TREE_CODE (rhs) == SSA_NAME) | ||
| 798 | { | ||
| 799 | - type = TREE_TYPE (rhs); | ||
| 800 | stmt = SSA_NAME_DEF_STMT (rhs); | ||
| 801 | - if (!is_gimple_assign (stmt)) | ||
| 802 | - return false; | ||
| 803 | - | ||
| 804 | - rhs_code = gimple_assign_rhs_code (stmt); | ||
| 805 | - if (TREE_CODE (type) == INTEGER_TYPE | ||
| 806 | - ? !CONVERT_EXPR_CODE_P (rhs_code) | ||
| 807 | - : rhs_code != FIXED_CONVERT_EXPR) | ||
| 808 | - return false; | ||
| 809 | - | ||
| 810 | - rhs1 = gimple_assign_rhs1 (stmt); | ||
| 811 | + if (is_gimple_assign (stmt)) | ||
| 812 | + { | ||
| 813 | + rhs_code = gimple_assign_rhs_code (stmt); | ||
| 814 | + if (TREE_CODE (type) == INTEGER_TYPE | ||
| 815 | + ? !CONVERT_EXPR_CODE_P (rhs_code) | ||
| 816 | + : rhs_code != FIXED_CONVERT_EXPR) | ||
| 817 | + rhs1 = rhs; | ||
| 818 | + else | ||
| 819 | + { | ||
| 820 | + rhs1 = gimple_assign_rhs1 (stmt); | ||
| 821 | + | ||
| 822 | + if (TREE_CODE (rhs1) == INTEGER_CST) | ||
| 823 | + { | ||
| 824 | + *new_rhs_out = rhs1; | ||
| 825 | + *type_out = NULL; | ||
| 826 | + return true; | ||
| 827 | + } | ||
| 828 | + } | ||
| 829 | + } | ||
| 830 | + else | ||
| 831 | + rhs1 = rhs; | ||
| 832 | + | ||
| 833 | type1 = TREE_TYPE (rhs1); | ||
| 834 | + | ||
| 835 | if (TREE_CODE (type1) != TREE_CODE (type) | ||
| 836 | - || TYPE_PRECISION (type1) * 2 != TYPE_PRECISION (type)) | ||
| 837 | + || TYPE_PRECISION (type1) * 2 > TYPE_PRECISION (type)) | ||
| 838 | return false; | ||
| 839 | |||
| 840 | *new_rhs_out = rhs1; | ||
| 841 | @@ -1316,28 +1344,27 @@ | ||
| 842 | return false; | ||
| 843 | } | ||
| 844 | |||
| 845 | -/* Return true if STMT performs a widening multiplication. If so, | ||
| 846 | - store the unwidened types of the operands in *TYPE1_OUT and *TYPE2_OUT | ||
| 847 | - respectively. Also fill *RHS1_OUT and *RHS2_OUT such that converting | ||
| 848 | - those operands to types *TYPE1_OUT and *TYPE2_OUT would give the | ||
| 849 | - operands of the multiplication. */ | ||
| 850 | +/* Return true if STMT performs a widening multiplication, assuming the | ||
| 851 | + output type is TYPE. If so, store the unwidened types of the operands | ||
| 852 | + in *TYPE1_OUT and *TYPE2_OUT respectively. Also fill *RHS1_OUT and | ||
| 853 | + *RHS2_OUT such that converting those operands to types *TYPE1_OUT | ||
| 854 | + and *TYPE2_OUT would give the operands of the multiplication. */ | ||
| 855 | |||
| 856 | static bool | ||
| 857 | -is_widening_mult_p (gimple stmt, | ||
| 858 | +is_widening_mult_p (tree type, gimple stmt, | ||
| 859 | tree *type1_out, tree *rhs1_out, | ||
| 860 | tree *type2_out, tree *rhs2_out) | ||
| 861 | { | ||
| 862 | - tree type; | ||
| 863 | - | ||
| 864 | - type = TREE_TYPE (gimple_assign_lhs (stmt)); | ||
| 865 | if (TREE_CODE (type) != INTEGER_TYPE | ||
| 866 | && TREE_CODE (type) != FIXED_POINT_TYPE) | ||
| 867 | return false; | ||
| 868 | |||
| 869 | - if (!is_widening_mult_rhs_p (gimple_assign_rhs1 (stmt), type1_out, rhs1_out)) | ||
| 870 | + if (!is_widening_mult_rhs_p (type, gimple_assign_rhs1 (stmt), type1_out, | ||
| 871 | + rhs1_out)) | ||
| 872 | return false; | ||
| 873 | |||
| 874 | - if (!is_widening_mult_rhs_p (gimple_assign_rhs2 (stmt), type2_out, rhs2_out)) | ||
| 875 | + if (!is_widening_mult_rhs_p (type, gimple_assign_rhs2 (stmt), type2_out, | ||
| 876 | + rhs2_out)) | ||
| 877 | return false; | ||
| 878 | |||
| 879 | if (*type1_out == NULL) | ||
| 880 | @@ -1354,6 +1381,18 @@ | ||
| 881 | *type2_out = *type1_out; | ||
| 882 | } | ||
| 883 | |||
| 884 | + /* Ensure that the larger of the two operands comes first. */ | ||
| 885 | + if (TYPE_PRECISION (*type1_out) < TYPE_PRECISION (*type2_out)) | ||
| 886 | + { | ||
| 887 | + tree tmp; | ||
| 888 | + tmp = *type1_out; | ||
| 889 | + *type1_out = *type2_out; | ||
| 890 | + *type2_out = tmp; | ||
| 891 | + tmp = *rhs1_out; | ||
| 892 | + *rhs1_out = *rhs2_out; | ||
| 893 | + *rhs2_out = tmp; | ||
| 894 | + } | ||
| 895 | + | ||
| 896 | return true; | ||
| 897 | } | ||
| 898 | |||
| 899 | @@ -1362,31 +1401,100 @@ | ||
| 900 | value is true iff we converted the statement. */ | ||
| 901 | |||
| 902 | static bool | ||
| 903 | -convert_mult_to_widen (gimple stmt) | ||
| 904 | +convert_mult_to_widen (gimple stmt, gimple_stmt_iterator *gsi) | ||
| 905 | { | ||
| 906 | - tree lhs, rhs1, rhs2, type, type1, type2; | ||
| 907 | + tree lhs, rhs1, rhs2, type, type1, type2, tmp = NULL; | ||
| 908 | enum insn_code handler; | ||
| 909 | + enum machine_mode to_mode, from_mode, actual_mode; | ||
| 910 | + optab op; | ||
| 911 | + int actual_precision; | ||
| 912 | + location_t loc = gimple_location (stmt); | ||
| 913 | + bool from_unsigned1, from_unsigned2; | ||
| 914 | |||
| 915 | lhs = gimple_assign_lhs (stmt); | ||
| 916 | type = TREE_TYPE (lhs); | ||
| 917 | if (TREE_CODE (type) != INTEGER_TYPE) | ||
| 918 | return false; | ||
| 919 | |||
| 920 | - if (!is_widening_mult_p (stmt, &type1, &rhs1, &type2, &rhs2)) | ||
| 921 | + if (!is_widening_mult_p (type, stmt, &type1, &rhs1, &type2, &rhs2)) | ||
| 922 | return false; | ||
| 923 | |||
| 924 | - if (TYPE_UNSIGNED (type1) && TYPE_UNSIGNED (type2)) | ||
| 925 | - handler = optab_handler (umul_widen_optab, TYPE_MODE (type)); | ||
| 926 | - else if (!TYPE_UNSIGNED (type1) && !TYPE_UNSIGNED (type2)) | ||
| 927 | - handler = optab_handler (smul_widen_optab, TYPE_MODE (type)); | ||
| 928 | + to_mode = TYPE_MODE (type); | ||
| 929 | + from_mode = TYPE_MODE (type1); | ||
| 930 | + from_unsigned1 = TYPE_UNSIGNED (type1); | ||
| 931 | + from_unsigned2 = TYPE_UNSIGNED (type2); | ||
| 932 | + | ||
| 933 | + if (from_unsigned1 && from_unsigned2) | ||
| 934 | + op = umul_widen_optab; | ||
| 935 | + else if (!from_unsigned1 && !from_unsigned2) | ||
| 936 | + op = smul_widen_optab; | ||
| 937 | else | ||
| 938 | - handler = optab_handler (usmul_widen_optab, TYPE_MODE (type)); | ||
| 939 | + op = usmul_widen_optab; | ||
| 940 | + | ||
| 941 | + handler = find_widening_optab_handler_and_mode (op, to_mode, from_mode, | ||
| 942 | + 0, &actual_mode); | ||
| 943 | |||
| 944 | if (handler == CODE_FOR_nothing) | ||
| 945 | - return false; | ||
| 946 | - | ||
| 947 | - gimple_assign_set_rhs1 (stmt, fold_convert (type1, rhs1)); | ||
| 948 | - gimple_assign_set_rhs2 (stmt, fold_convert (type2, rhs2)); | ||
| 949 | + { | ||
| 950 | + if (op != smul_widen_optab) | ||
| 951 | + { | ||
| 952 | + /* We can use a signed multiply with unsigned types as long as | ||
| 953 | + there is a wider mode to use, or it is the smaller of the two | ||
| 954 | + types that is unsigned. Note that type1 >= type2, always. */ | ||
| 955 | + if ((TYPE_UNSIGNED (type1) | ||
| 956 | + && TYPE_PRECISION (type1) == GET_MODE_PRECISION (from_mode)) | ||
| 957 | + || (TYPE_UNSIGNED (type2) | ||
| 958 | + && TYPE_PRECISION (type2) == GET_MODE_PRECISION (from_mode))) | ||
| 959 | + { | ||
| 960 | + from_mode = GET_MODE_WIDER_MODE (from_mode); | ||
| 961 | + if (GET_MODE_SIZE (to_mode) <= GET_MODE_SIZE (from_mode)) | ||
| 962 | + return false; | ||
| 963 | + } | ||
| 964 | + | ||
| 965 | + op = smul_widen_optab; | ||
| 966 | + handler = find_widening_optab_handler_and_mode (op, to_mode, | ||
| 967 | + from_mode, 0, | ||
| 968 | + &actual_mode); | ||
| 969 | + | ||
| 970 | + if (handler == CODE_FOR_nothing) | ||
| 971 | + return false; | ||
| 972 | + | ||
| 973 | + from_unsigned1 = from_unsigned2 = false; | ||
| 974 | + } | ||
| 975 | + else | ||
| 976 | + return false; | ||
| 977 | + } | ||
| 978 | + | ||
| 979 | + /* Ensure that the inputs to the handler are in the correct precison | ||
| 980 | + for the opcode. This will be the full mode size. */ | ||
| 981 | + actual_precision = GET_MODE_PRECISION (actual_mode); | ||
| 982 | + if (actual_precision != TYPE_PRECISION (type1) | ||
| 983 | + || from_unsigned1 != TYPE_UNSIGNED (type1)) | ||
| 984 | + { | ||
| 985 | + tmp = create_tmp_var (build_nonstandard_integer_type | ||
| 986 | + (actual_precision, from_unsigned1), | ||
| 987 | + NULL); | ||
| 988 | + rhs1 = build_and_insert_cast (gsi, loc, tmp, rhs1); | ||
| 989 | + } | ||
| 990 | + if (actual_precision != TYPE_PRECISION (type2) | ||
| 991 | + || from_unsigned2 != TYPE_UNSIGNED (type2)) | ||
| 992 | + { | ||
| 993 | + /* Reuse the same type info, if possible. */ | ||
| 994 | + if (!tmp || from_unsigned1 != from_unsigned2) | ||
| 995 | + tmp = create_tmp_var (build_nonstandard_integer_type | ||
| 996 | + (actual_precision, from_unsigned2), | ||
| 997 | + NULL); | ||
| 998 | + rhs2 = build_and_insert_cast (gsi, loc, tmp, rhs2); | ||
| 999 | + } | ||
| 1000 | + | ||
| 1001 | + /* Handle constants. */ | ||
| 1002 | + if (TREE_CODE (rhs1) == INTEGER_CST) | ||
| 1003 | + rhs1 = fold_convert (type1, rhs1); | ||
| 1004 | + if (TREE_CODE (rhs2) == INTEGER_CST) | ||
| 1005 | + rhs2 = fold_convert (type2, rhs2); | ||
| 1006 | + | ||
| 1007 | + gimple_assign_set_rhs1 (stmt, rhs1); | ||
| 1008 | + gimple_assign_set_rhs2 (stmt, rhs2); | ||
| 1009 | gimple_assign_set_rhs_code (stmt, WIDEN_MULT_EXPR); | ||
| 1010 | update_stmt (stmt); | ||
| 1011 | return true; | ||
| 1012 | @@ -1403,11 +1511,17 @@ | ||
| 1013 | enum tree_code code) | ||
| 1014 | { | ||
| 1015 | gimple rhs1_stmt = NULL, rhs2_stmt = NULL; | ||
| 1016 | - tree type, type1, type2; | ||
| 1017 | + gimple conv1_stmt = NULL, conv2_stmt = NULL, conv_stmt; | ||
| 1018 | + tree type, type1, type2, optype, tmp = NULL; | ||
| 1019 | tree lhs, rhs1, rhs2, mult_rhs1, mult_rhs2, add_rhs; | ||
| 1020 | enum tree_code rhs1_code = ERROR_MARK, rhs2_code = ERROR_MARK; | ||
| 1021 | optab this_optab; | ||
| 1022 | enum tree_code wmult_code; | ||
| 1023 | + enum insn_code handler; | ||
| 1024 | + enum machine_mode to_mode, from_mode, actual_mode; | ||
| 1025 | + location_t loc = gimple_location (stmt); | ||
| 1026 | + int actual_precision; | ||
| 1027 | + bool from_unsigned1, from_unsigned2; | ||
| 1028 | |||
| 1029 | lhs = gimple_assign_lhs (stmt); | ||
| 1030 | type = TREE_TYPE (lhs); | ||
| 1031 | @@ -1429,8 +1543,6 @@ | ||
| 1032 | if (is_gimple_assign (rhs1_stmt)) | ||
| 1033 | rhs1_code = gimple_assign_rhs_code (rhs1_stmt); | ||
| 1034 | } | ||
| 1035 | - else | ||
| 1036 | - return false; | ||
| 1037 | |||
| 1038 | if (TREE_CODE (rhs2) == SSA_NAME) | ||
| 1039 | { | ||
| 1040 | @@ -1438,57 +1550,160 @@ | ||
| 1041 | if (is_gimple_assign (rhs2_stmt)) | ||
| 1042 | rhs2_code = gimple_assign_rhs_code (rhs2_stmt); | ||
| 1043 | } | ||
| 1044 | - else | ||
| 1045 | - return false; | ||
| 1046 | - | ||
| 1047 | - if (code == PLUS_EXPR && rhs1_code == MULT_EXPR) | ||
| 1048 | - { | ||
| 1049 | - if (!is_widening_mult_p (rhs1_stmt, &type1, &mult_rhs1, | ||
| 1050 | - &type2, &mult_rhs2)) | ||
| 1051 | - return false; | ||
| 1052 | - add_rhs = rhs2; | ||
| 1053 | - } | ||
| 1054 | - else if (rhs2_code == MULT_EXPR) | ||
| 1055 | - { | ||
| 1056 | - if (!is_widening_mult_p (rhs2_stmt, &type1, &mult_rhs1, | ||
| 1057 | - &type2, &mult_rhs2)) | ||
| 1058 | - return false; | ||
| 1059 | - add_rhs = rhs1; | ||
| 1060 | - } | ||
| 1061 | - else if (code == PLUS_EXPR && rhs1_code == WIDEN_MULT_EXPR) | ||
| 1062 | - { | ||
| 1063 | - mult_rhs1 = gimple_assign_rhs1 (rhs1_stmt); | ||
| 1064 | - mult_rhs2 = gimple_assign_rhs2 (rhs1_stmt); | ||
| 1065 | - type1 = TREE_TYPE (mult_rhs1); | ||
| 1066 | - type2 = TREE_TYPE (mult_rhs2); | ||
| 1067 | - add_rhs = rhs2; | ||
| 1068 | - } | ||
| 1069 | - else if (rhs2_code == WIDEN_MULT_EXPR) | ||
| 1070 | - { | ||
| 1071 | - mult_rhs1 = gimple_assign_rhs1 (rhs2_stmt); | ||
| 1072 | - mult_rhs2 = gimple_assign_rhs2 (rhs2_stmt); | ||
| 1073 | - type1 = TREE_TYPE (mult_rhs1); | ||
| 1074 | - type2 = TREE_TYPE (mult_rhs2); | ||
| 1075 | - add_rhs = rhs1; | ||
| 1076 | - } | ||
| 1077 | - else | ||
| 1078 | - return false; | ||
| 1079 | - | ||
| 1080 | - if (TYPE_UNSIGNED (type1) != TYPE_UNSIGNED (type2)) | ||
| 1081 | - return false; | ||
| 1082 | + | ||
| 1083 | + /* Allow for one conversion statement between the multiply | ||
| 1084 | + and addition/subtraction statement. If there are more than | ||
| 1085 | + one conversions then we assume they would invalidate this | ||
| 1086 | + transformation. If that's not the case then they should have | ||
| 1087 | + been folded before now. */ | ||
| 1088 | + if (CONVERT_EXPR_CODE_P (rhs1_code)) | ||
| 1089 | + { | ||
| 1090 | + conv1_stmt = rhs1_stmt; | ||
| 1091 | + rhs1 = gimple_assign_rhs1 (rhs1_stmt); | ||
| 1092 | + if (TREE_CODE (rhs1) == SSA_NAME) | ||
| 1093 | + { | ||
| 1094 | + rhs1_stmt = SSA_NAME_DEF_STMT (rhs1); | ||
| 1095 | + if (is_gimple_assign (rhs1_stmt)) | ||
| 1096 | + rhs1_code = gimple_assign_rhs_code (rhs1_stmt); | ||
| 1097 | + } | ||
| 1098 | + else | ||
| 1099 | + return false; | ||
| 1100 | + } | ||
| 1101 | + if (CONVERT_EXPR_CODE_P (rhs2_code)) | ||
| 1102 | + { | ||
| 1103 | + conv2_stmt = rhs2_stmt; | ||
| 1104 | + rhs2 = gimple_assign_rhs1 (rhs2_stmt); | ||
| 1105 | + if (TREE_CODE (rhs2) == SSA_NAME) | ||
| 1106 | + { | ||
| 1107 | + rhs2_stmt = SSA_NAME_DEF_STMT (rhs2); | ||
| 1108 | + if (is_gimple_assign (rhs2_stmt)) | ||
| 1109 | + rhs2_code = gimple_assign_rhs_code (rhs2_stmt); | ||
| 1110 | + } | ||
| 1111 | + else | ||
| 1112 | + return false; | ||
| 1113 | + } | ||
| 1114 | + | ||
| 1115 | + /* If code is WIDEN_MULT_EXPR then it would seem unnecessary to call | ||
| 1116 | + is_widening_mult_p, but we still need the rhs returns. | ||
| 1117 | + | ||
| 1118 | + It might also appear that it would be sufficient to use the existing | ||
| 1119 | + operands of the widening multiply, but that would limit the choice of | ||
| 1120 | + multiply-and-accumulate instructions. */ | ||
| 1121 | + if (code == PLUS_EXPR | ||
| 1122 | + && (rhs1_code == MULT_EXPR || rhs1_code == WIDEN_MULT_EXPR)) | ||
| 1123 | + { | ||
| 1124 | + if (!is_widening_mult_p (type, rhs1_stmt, &type1, &mult_rhs1, | ||
| 1125 | + &type2, &mult_rhs2)) | ||
| 1126 | + return false; | ||
| 1127 | + add_rhs = rhs2; | ||
| 1128 | + conv_stmt = conv1_stmt; | ||
| 1129 | + } | ||
| 1130 | + else if (rhs2_code == MULT_EXPR || rhs2_code == WIDEN_MULT_EXPR) | ||
| 1131 | + { | ||
| 1132 | + if (!is_widening_mult_p (type, rhs2_stmt, &type1, &mult_rhs1, | ||
| 1133 | + &type2, &mult_rhs2)) | ||
| 1134 | + return false; | ||
| 1135 | + add_rhs = rhs1; | ||
| 1136 | + conv_stmt = conv2_stmt; | ||
| 1137 | + } | ||
| 1138 | + else | ||
| 1139 | + return false; | ||
| 1140 | + | ||
| 1141 | + to_mode = TYPE_MODE (type); | ||
| 1142 | + from_mode = TYPE_MODE (type1); | ||
| 1143 | + from_unsigned1 = TYPE_UNSIGNED (type1); | ||
| 1144 | + from_unsigned2 = TYPE_UNSIGNED (type2); | ||
| 1145 | + | ||
| 1146 | + /* There's no such thing as a mixed sign madd yet, so use a wider mode. */ | ||
| 1147 | + if (from_unsigned1 != from_unsigned2) | ||
| 1148 | + { | ||
| 1149 | + /* We can use a signed multiply with unsigned types as long as | ||
| 1150 | + there is a wider mode to use, or it is the smaller of the two | ||
| 1151 | + types that is unsigned. Note that type1 >= type2, always. */ | ||
| 1152 | + if ((from_unsigned1 | ||
| 1153 | + && TYPE_PRECISION (type1) == GET_MODE_PRECISION (from_mode)) | ||
| 1154 | + || (from_unsigned2 | ||
| 1155 | + && TYPE_PRECISION (type2) == GET_MODE_PRECISION (from_mode))) | ||
| 1156 | + { | ||
| 1157 | + from_mode = GET_MODE_WIDER_MODE (from_mode); | ||
| 1158 | + if (GET_MODE_SIZE (from_mode) >= GET_MODE_SIZE (to_mode)) | ||
| 1159 | + return false; | ||
| 1160 | + } | ||
| 1161 | + | ||
| 1162 | + from_unsigned1 = from_unsigned2 = false; | ||
| 1163 | + } | ||
| 1164 | + | ||
| 1165 | + /* If there was a conversion between the multiply and addition | ||
| 1166 | + then we need to make sure it fits a multiply-and-accumulate. | ||
| 1167 | + The should be a single mode change which does not change the | ||
| 1168 | + value. */ | ||
| 1169 | + if (conv_stmt) | ||
| 1170 | + { | ||
| 1171 | + /* We use the original, unmodified data types for this. */ | ||
| 1172 | + tree from_type = TREE_TYPE (gimple_assign_rhs1 (conv_stmt)); | ||
| 1173 | + tree to_type = TREE_TYPE (gimple_assign_lhs (conv_stmt)); | ||
| 1174 | + int data_size = TYPE_PRECISION (type1) + TYPE_PRECISION (type2); | ||
| 1175 | + bool is_unsigned = TYPE_UNSIGNED (type1) && TYPE_UNSIGNED (type2); | ||
| 1176 | + | ||
| 1177 | + if (TYPE_PRECISION (from_type) > TYPE_PRECISION (to_type)) | ||
| 1178 | + { | ||
| 1179 | + /* Conversion is a truncate. */ | ||
| 1180 | + if (TYPE_PRECISION (to_type) < data_size) | ||
| 1181 | + return false; | ||
| 1182 | + } | ||
| 1183 | + else if (TYPE_PRECISION (from_type) < TYPE_PRECISION (to_type)) | ||
| 1184 | + { | ||
| 1185 | + /* Conversion is an extend. Check it's the right sort. */ | ||
| 1186 | + if (TYPE_UNSIGNED (from_type) != is_unsigned | ||
| 1187 | + && !(is_unsigned && TYPE_PRECISION (from_type) > data_size)) | ||
| 1188 | + return false; | ||
| 1189 | + } | ||
| 1190 | + /* else convert is a no-op for our purposes. */ | ||
| 1191 | + } | ||
| 1192 | |||
| 1193 | /* Verify that the machine can perform a widening multiply | ||
| 1194 | accumulate in this mode/signedness combination, otherwise | ||
| 1195 | this transformation is likely to pessimize code. */ | ||
| 1196 | - this_optab = optab_for_tree_code (wmult_code, type1, optab_default); | ||
| 1197 | - if (optab_handler (this_optab, TYPE_MODE (type)) == CODE_FOR_nothing) | ||
| 1198 | + optype = build_nonstandard_integer_type (from_mode, from_unsigned1); | ||
| 1199 | + this_optab = optab_for_tree_code (wmult_code, optype, optab_default); | ||
| 1200 | + handler = find_widening_optab_handler_and_mode (this_optab, to_mode, | ||
| 1201 | + from_mode, 0, &actual_mode); | ||
| 1202 | + | ||
| 1203 | + if (handler == CODE_FOR_nothing) | ||
| 1204 | return false; | ||
| 1205 | |||
| 1206 | - /* ??? May need some type verification here? */ | ||
| 1207 | - | ||
| 1208 | - gimple_assign_set_rhs_with_ops_1 (gsi, wmult_code, | ||
| 1209 | - fold_convert (type1, mult_rhs1), | ||
| 1210 | - fold_convert (type2, mult_rhs2), | ||
| 1211 | + /* Ensure that the inputs to the handler are in the correct precison | ||
| 1212 | + for the opcode. This will be the full mode size. */ | ||
| 1213 | + actual_precision = GET_MODE_PRECISION (actual_mode); | ||
| 1214 | + if (actual_precision != TYPE_PRECISION (type1) | ||
| 1215 | + || from_unsigned1 != TYPE_UNSIGNED (type1)) | ||
| 1216 | + { | ||
| 1217 | + tmp = create_tmp_var (build_nonstandard_integer_type | ||
| 1218 | + (actual_precision, from_unsigned1), | ||
| 1219 | + NULL); | ||
| 1220 | + mult_rhs1 = build_and_insert_cast (gsi, loc, tmp, mult_rhs1); | ||
| 1221 | + } | ||
| 1222 | + if (actual_precision != TYPE_PRECISION (type2) | ||
| 1223 | + || from_unsigned2 != TYPE_UNSIGNED (type2)) | ||
| 1224 | + { | ||
| 1225 | + if (!tmp || from_unsigned1 != from_unsigned2) | ||
| 1226 | + tmp = create_tmp_var (build_nonstandard_integer_type | ||
| 1227 | + (actual_precision, from_unsigned2), | ||
| 1228 | + NULL); | ||
| 1229 | + mult_rhs2 = build_and_insert_cast (gsi, loc, tmp, mult_rhs2); | ||
| 1230 | + } | ||
| 1231 | + | ||
| 1232 | + if (!useless_type_conversion_p (type, TREE_TYPE (add_rhs))) | ||
| 1233 | + add_rhs = build_and_insert_cast (gsi, loc, create_tmp_var (type, NULL), | ||
| 1234 | + add_rhs); | ||
| 1235 | + | ||
| 1236 | + /* Handle constants. */ | ||
| 1237 | + if (TREE_CODE (mult_rhs1) == INTEGER_CST) | ||
| 1238 | + rhs1 = fold_convert (type1, mult_rhs1); | ||
| 1239 | + if (TREE_CODE (mult_rhs2) == INTEGER_CST) | ||
| 1240 | + rhs2 = fold_convert (type2, mult_rhs2); | ||
| 1241 | + | ||
| 1242 | + gimple_assign_set_rhs_with_ops_1 (gsi, wmult_code, mult_rhs1, mult_rhs2, | ||
| 1243 | add_rhs); | ||
| 1244 | update_stmt (gsi_stmt (*gsi)); | ||
| 1245 | return true; | ||
| 1246 | @@ -1696,7 +1911,7 @@ | ||
| 1247 | switch (code) | ||
| 1248 | { | ||
| 1249 | case MULT_EXPR: | ||
| 1250 | - if (!convert_mult_to_widen (stmt) | ||
| 1251 | + if (!convert_mult_to_widen (stmt, &gsi) | ||
| 1252 | && convert_mult_to_fma (stmt, | ||
| 1253 | gimple_assign_rhs1 (stmt), | ||
| 1254 | gimple_assign_rhs2 (stmt))) | ||
| 1255 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106797.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106797.patch new file mode 100644 index 0000000000..8230beb91e --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106797.patch | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | 2011-08-26 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | Backport from mainline: | ||
| 5 | |||
| 6 | 2011-08-26 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 7 | |||
| 8 | * df-problems.c (df_note_bb_compute): Pass uses rather than defs | ||
| 9 | to df_set_dead_notes_for_mw. | ||
| 10 | |||
| 11 | === modified file 'gcc/df-problems.c' | ||
| 12 | --- old/gcc/df-problems.c 2011-07-07 19:10:01 +0000 | ||
| 13 | +++ new/gcc/df-problems.c 2011-08-26 14:32:47 +0000 | ||
| 14 | @@ -3375,7 +3375,7 @@ | ||
| 15 | while (*mws_rec) | ||
| 16 | { | ||
| 17 | struct df_mw_hardreg *mws = *mws_rec; | ||
| 18 | - if ((DF_MWS_REG_DEF_P (mws)) | ||
| 19 | + if (DF_MWS_REG_USE_P (mws) | ||
| 20 | && !df_ignore_stack_reg (mws->start_regno)) | ||
| 21 | { | ||
| 22 | bool really_add_notes = debug_insn != 0; | ||
| 23 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106798.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106798.patch new file mode 100644 index 0000000000..aa067b7113 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106798.patch | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | 2011-09-05 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | |||
| 5 | 2011-08-12 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 6 | |||
| 7 | PR target/48328 | ||
| 8 | * config/arm/arm.h (CASE_VECTOR_SHORTEN_MODE): Fix distance | ||
| 9 | for tbh instructions. | ||
| 10 | |||
| 11 | === modified file 'gcc/config/arm/arm.h' | ||
| 12 | --- old/gcc/config/arm/arm.h 2011-08-24 17:35:16 +0000 | ||
| 13 | +++ new/gcc/config/arm/arm.h 2011-09-05 14:32:11 +0000 | ||
| 14 | @@ -1961,7 +1961,7 @@ | ||
| 15 | : min >= -4096 && max < 4096 \ | ||
| 16 | ? (ADDR_DIFF_VEC_FLAGS (body).offset_unsigned = 0, HImode) \ | ||
| 17 | : SImode) \ | ||
| 18 | - : ((min < 0 || max >= 0x2000 || !TARGET_THUMB2) ? SImode \ | ||
| 19 | + : ((min < 0 || max >= 0x20000 || !TARGET_THUMB2) ? SImode \ | ||
| 20 | : (max >= 0x200) ? HImode \ | ||
| 21 | : QImode)) | ||
| 22 | |||
| 23 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106799.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106799.patch new file mode 100644 index 0000000000..c440db91e1 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106799.patch | |||
| @@ -0,0 +1,75 @@ | |||
| 1 | 2011-09-05 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 2 | |||
| 3 | Backport from mainline. | ||
| 4 | 2011-08-26 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> | ||
| 5 | |||
| 6 | * config/arm/cortex-a9.md ("cortex_a9_mult_long"): New. | ||
| 7 | ("cortex_a9_multiply_long"): New and use above. Handle all | ||
| 8 | long multiply cases. | ||
| 9 | ("cortex_a9_multiply"): Handle smmul and smmulr. | ||
| 10 | ("cortex_a9_mac"): Handle smmla. | ||
| 11 | |||
| 12 | === modified file 'gcc/config/arm/cortex-a9.md' | ||
| 13 | --- old/gcc/config/arm/cortex-a9.md 2011-01-18 15:28:08 +0000 | ||
| 14 | +++ new/gcc/config/arm/cortex-a9.md 2011-08-26 08:52:15 +0000 | ||
| 15 | @@ -68,7 +68,8 @@ | ||
| 16 | "cortex_a9_mac_m1*2, cortex_a9_mac_m2, cortex_a9_p0_wb") | ||
| 17 | (define_reservation "cortex_a9_mac" | ||
| 18 | "cortex_a9_multcycle1*2 ,cortex_a9_mac_m2, cortex_a9_p0_wb") | ||
| 19 | - | ||
| 20 | +(define_reservation "cortex_a9_mult_long" | ||
| 21 | + "cortex_a9_mac_m1*3, cortex_a9_mac_m2, cortex_a9_p0_wb") | ||
| 22 | |||
| 23 | ;; Issue at the same time along the load store pipeline and | ||
| 24 | ;; the VFP / Neon pipeline is not possible. | ||
| 25 | @@ -139,29 +140,35 @@ | ||
| 26 | (eq_attr "insn" "smlaxy")) | ||
| 27 | "cortex_a9_mac16") | ||
| 28 | |||
| 29 | - | ||
| 30 | (define_insn_reservation "cortex_a9_multiply" 4 | ||
| 31 | (and (eq_attr "tune" "cortexa9") | ||
| 32 | - (eq_attr "insn" "mul")) | ||
| 33 | + (eq_attr "insn" "mul,smmul,smmulr")) | ||
| 34 | "cortex_a9_mult") | ||
| 35 | |||
| 36 | (define_insn_reservation "cortex_a9_mac" 4 | ||
| 37 | (and (eq_attr "tune" "cortexa9") | ||
| 38 | - (eq_attr "insn" "mla")) | ||
| 39 | + (eq_attr "insn" "mla,smmla")) | ||
| 40 | "cortex_a9_mac") | ||
| 41 | |||
| 42 | +(define_insn_reservation "cortex_a9_multiply_long" 5 | ||
| 43 | + (and (eq_attr "tune" "cortexa9") | ||
| 44 | + (eq_attr "insn" "smull,umull,smulls,umulls,smlal,smlals,umlal,umlals")) | ||
| 45 | + "cortex_a9_mult_long") | ||
| 46 | + | ||
| 47 | ;; An instruction with a result in E2 can be forwarded | ||
| 48 | ;; to E2 or E1 or M1 or the load store unit in the next cycle. | ||
| 49 | |||
| 50 | (define_bypass 1 "cortex_a9_dp" | ||
| 51 | "cortex_a9_dp_shift, cortex_a9_multiply, | ||
| 52 | cortex_a9_load1_2, cortex_a9_dp, cortex_a9_store1_2, | ||
| 53 | - cortex_a9_mult16, cortex_a9_mac16, cortex_a9_mac, cortex_a9_store3_4, cortex_a9_load3_4") | ||
| 54 | + cortex_a9_mult16, cortex_a9_mac16, cortex_a9_mac, cortex_a9_store3_4, cortex_a9_load3_4, | ||
| 55 | + cortex_a9_multiply_long") | ||
| 56 | |||
| 57 | (define_bypass 2 "cortex_a9_dp_shift" | ||
| 58 | "cortex_a9_dp_shift, cortex_a9_multiply, | ||
| 59 | cortex_a9_load1_2, cortex_a9_dp, cortex_a9_store1_2, | ||
| 60 | - cortex_a9_mult16, cortex_a9_mac16, cortex_a9_mac, cortex_a9_store3_4, cortex_a9_load3_4") | ||
| 61 | + cortex_a9_mult16, cortex_a9_mac16, cortex_a9_mac, cortex_a9_store3_4, cortex_a9_load3_4, | ||
| 62 | + cortex_a9_multiply_long") | ||
| 63 | |||
| 64 | ;; An instruction in the load store pipeline can provide | ||
| 65 | ;; read access to a DP instruction in the P0 default pipeline | ||
| 66 | @@ -212,7 +219,7 @@ | ||
| 67 | |||
| 68 | (define_bypass 1 | ||
| 69 | "cortex_a9_fps" | ||
| 70 | - "cortex_a9_fadd, cortex_a9_fps, cortex_a9_fcmp, cortex_a9_dp, cortex_a9_dp_shift, cortex_a9_multiply") | ||
| 71 | + "cortex_a9_fadd, cortex_a9_fps, cortex_a9_fcmp, cortex_a9_dp, cortex_a9_dp_shift, cortex_a9_multiply, cortex_a9_multiply_long") | ||
| 72 | |||
| 73 | ;; Scheduling on the FP_ADD pipeline. | ||
| 74 | (define_reservation "ca9fp_add" "ca9_issue_vfp_neon + ca9fp_add1, ca9fp_add2, ca9fp_add3, ca9fp_add4") | ||
| 75 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106800.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106800.patch new file mode 100644 index 0000000000..dfdeec7245 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106800.patch | |||
| @@ -0,0 +1,1270 @@ | |||
| 1 | 2011-09-07 Ira Rosen <ira.rosen@linaro.org> | ||
| 2 | |||
| 3 | Backport from mainline: | ||
| 4 | |||
| 5 | 2011-08-04 Ira Rosen <ira.rosen@linaro.org> | ||
| 6 | |||
| 7 | gcc/ | ||
| 8 | * tree-vectorizer.h (struct _stmt_vec_info): Add new field for | ||
| 9 | pattern def statement, and its access macro. | ||
| 10 | (NUM_PATTERNS): Set to 5. | ||
| 11 | * tree-vect-loop.c (vect_determine_vectorization_factor): Handle | ||
| 12 | pattern def statement. | ||
| 13 | (vect_transform_loop): Likewise. | ||
| 14 | * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Add new | ||
| 15 | function vect_recog_over_widening_pattern (). | ||
| 16 | (vect_operation_fits_smaller_type): New function. | ||
| 17 | (vect_recog_over_widening_pattern, vect_mark_pattern_stmts): | ||
| 18 | Likewise. | ||
| 19 | (vect_pattern_recog_1): Move the code that marks pattern | ||
| 20 | statements to vect_mark_pattern_stmts (), and call it. Update | ||
| 21 | documentation. | ||
| 22 | * tree-vect-stmts.c (vect_supportable_shift): New function. | ||
| 23 | (vect_analyze_stmt): Handle pattern def statement. | ||
| 24 | (new_stmt_vec_info): Initialize pattern def statement. | ||
| 25 | |||
| 26 | gcc/testsuite/ | ||
| 27 | * gcc.dg/vect/vect-over-widen-1.c: New test. | ||
| 28 | * gcc.dg/vect/vect-over-widen-2.c: New test. | ||
| 29 | * gcc.dg/vect/vect-over-widen-3.c: New test. | ||
| 30 | * gcc.dg/vect/vect-over-widen-4.c: New test. | ||
| 31 | |||
| 32 | |||
| 33 | 2011-08-09 Ira Rosen <ira.rosen@linaro.org> | ||
| 34 | |||
| 35 | gcc/ | ||
| 36 | PR tree-optimization/50014 | ||
| 37 | * tree-vect-loop.c (vectorizable_reduction): Get def type before | ||
| 38 | calling vect_get_vec_def_for_stmt_copy (). | ||
| 39 | |||
| 40 | gcc/testsuite/ | ||
| 41 | PR tree-optimization/50014 | ||
| 42 | * gcc.dg/vect/pr50014.c: New test. | ||
| 43 | |||
| 44 | |||
| 45 | 2011-08-11 Ira Rosen <ira.rosen@linaro.org> | ||
| 46 | |||
| 47 | gcc/ | ||
| 48 | PR tree-optimization/50039 | ||
| 49 | * tree-vect-patterns.c (vect_operation_fits_smaller_type): Check | ||
| 50 | that DEF_STMT has a stmt_vec_info. | ||
| 51 | |||
| 52 | gcc/testsuite/ | ||
| 53 | PR tree-optimization/50039 | ||
| 54 | * gcc.dg/vect/vect.exp: Run no-tree-fre-* tests with -fno-tree-fre. | ||
| 55 | * gcc.dg/vect/no-tree-fre-pr50039.c: New test. | ||
| 56 | |||
| 57 | |||
| 58 | 2011-09-04 Jakub Jelinek <jakub@redhat.com> | ||
| 59 | Ira Rosen <ira.rosen@linaro.org> | ||
| 60 | |||
| 61 | gcc/ | ||
| 62 | PR tree-optimization/50208 | ||
| 63 | * tree-vect-patterns.c (vect_handle_widen_mult_by_const): Add an | ||
| 64 | argument. Check that def_stmt is inside the loop. | ||
| 65 | (vect_recog_widen_mult_pattern): Update calls to | ||
| 66 | vect_handle_widen_mult_by_cons. | ||
| 67 | (vect_operation_fits_smaller_type): Check that def_stmt is | ||
| 68 | inside the loop. | ||
| 69 | |||
| 70 | gcc/testsuite/ | ||
| 71 | PR tree-optimization/50208 | ||
| 72 | * gcc.dg/vect/no-fre-pre-pr50208.c: New test. | ||
| 73 | * gcc.dg/vect/vect.exp: Run no-fre-pre-*.c tests with | ||
| 74 | -fno-tree-fre -fno-tree-pre. | ||
| 75 | |||
| 76 | === added file 'gcc/testsuite/gcc.dg/vect/no-fre-pre-pr50208.c' | ||
| 77 | --- old/gcc/testsuite/gcc.dg/vect/no-fre-pre-pr50208.c 1970-01-01 00:00:00 +0000 | ||
| 78 | +++ new/gcc/testsuite/gcc.dg/vect/no-fre-pre-pr50208.c 2011-09-05 06:23:37 +0000 | ||
| 79 | @@ -0,0 +1,17 @@ | ||
| 80 | +/* { dg-do compile } */ | ||
| 81 | + | ||
| 82 | +char c; | ||
| 83 | +int a, b; | ||
| 84 | + | ||
| 85 | +void foo (int j) | ||
| 86 | +{ | ||
| 87 | + int i; | ||
| 88 | + while (--j) | ||
| 89 | + { | ||
| 90 | + b = 3; | ||
| 91 | + for (i = 0; i < 2; ++i) | ||
| 92 | + a = b ^ c; | ||
| 93 | + } | ||
| 94 | +} | ||
| 95 | + | ||
| 96 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | ||
| 97 | |||
| 98 | === added file 'gcc/testsuite/gcc.dg/vect/no-tree-fre-pr50039.c' | ||
| 99 | --- old/gcc/testsuite/gcc.dg/vect/no-tree-fre-pr50039.c 1970-01-01 00:00:00 +0000 | ||
| 100 | +++ new/gcc/testsuite/gcc.dg/vect/no-tree-fre-pr50039.c 2011-09-05 06:23:37 +0000 | ||
| 101 | @@ -0,0 +1,15 @@ | ||
| 102 | +/* { dg-do compile } */ | ||
| 103 | + | ||
| 104 | +extern unsigned char g_5; | ||
| 105 | +extern int g_31, g_76; | ||
| 106 | +int main(void) { | ||
| 107 | + int i, j; | ||
| 108 | + for (j=0; j < 2; ++j) { | ||
| 109 | + g_31 = -3; | ||
| 110 | + for (i=0; i < 2; ++i) | ||
| 111 | + g_76 = (g_31 ? g_31+1 : 0) ^ g_5; | ||
| 112 | + } | ||
| 113 | +} | ||
| 114 | + | ||
| 115 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | ||
| 116 | + | ||
| 117 | |||
| 118 | === added file 'gcc/testsuite/gcc.dg/vect/pr50014.c' | ||
| 119 | --- old/gcc/testsuite/gcc.dg/vect/pr50014.c 1970-01-01 00:00:00 +0000 | ||
| 120 | +++ new/gcc/testsuite/gcc.dg/vect/pr50014.c 2011-09-05 06:23:37 +0000 | ||
| 121 | @@ -0,0 +1,16 @@ | ||
| 122 | +/* { dg-do compile } */ | ||
| 123 | +/* { dg-require-effective-target vect_int } */ | ||
| 124 | + | ||
| 125 | +int f(unsigned char *s, int n) | ||
| 126 | +{ | ||
| 127 | + int sum = 0; | ||
| 128 | + int i; | ||
| 129 | + | ||
| 130 | + for (i = 0; i < n; i++) | ||
| 131 | + sum += 256 * s[i]; | ||
| 132 | + | ||
| 133 | + return sum; | ||
| 134 | +} | ||
| 135 | + | ||
| 136 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | ||
| 137 | + | ||
| 138 | |||
| 139 | === added file 'gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c' | ||
| 140 | --- old/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c 1970-01-01 00:00:00 +0000 | ||
| 141 | +++ new/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c 2011-09-05 06:23:37 +0000 | ||
| 142 | @@ -0,0 +1,64 @@ | ||
| 143 | +/* { dg-require-effective-target vect_int } */ | ||
| 144 | +/* { dg-require-effective-target vect_shift } */ | ||
| 145 | + | ||
| 146 | +#include <stdlib.h> | ||
| 147 | +#include <stdarg.h> | ||
| 148 | +#include "tree-vect.h" | ||
| 149 | + | ||
| 150 | +#define N 64 | ||
| 151 | + | ||
| 152 | +/* Modified rgb to rgb conversion from FFmpeg. */ | ||
| 153 | +__attribute__ ((noinline)) void | ||
| 154 | +foo (unsigned char *src, unsigned char *dst) | ||
| 155 | +{ | ||
| 156 | + unsigned char *s = src; | ||
| 157 | + unsigned short *d = (unsigned short *)dst; | ||
| 158 | + int i; | ||
| 159 | + | ||
| 160 | + for (i = 0; i < N/4; i++) | ||
| 161 | + { | ||
| 162 | + const int b = *s++; | ||
| 163 | + const int g = *s++; | ||
| 164 | + const int r = *s++; | ||
| 165 | + const int a = *s++; | ||
| 166 | + *d = ((b>>3) | ((g&0xFC)<<3) | ((r&0xF8)<<8) | (a>>5)); | ||
| 167 | + d++; | ||
| 168 | + } | ||
| 169 | + | ||
| 170 | + s = src; | ||
| 171 | + d = (unsigned short *)dst; | ||
| 172 | + for (i = 0; i < N/4; i++) | ||
| 173 | + { | ||
| 174 | + const int b = *s++; | ||
| 175 | + const int g = *s++; | ||
| 176 | + const int r = *s++; | ||
| 177 | + const int a = *s++; | ||
| 178 | + if (*d != ((b>>3) | ((g&0xFC)<<3) | ((r&0xF8)<<8) | (a>>5))) | ||
| 179 | + abort (); | ||
| 180 | + d++; | ||
| 181 | + } | ||
| 182 | +} | ||
| 183 | + | ||
| 184 | +int main (void) | ||
| 185 | +{ | ||
| 186 | + int i; | ||
| 187 | + unsigned char in[N], out[N]; | ||
| 188 | + | ||
| 189 | + check_vect (); | ||
| 190 | + | ||
| 191 | + for (i = 0; i < N; i++) | ||
| 192 | + { | ||
| 193 | + in[i] = i; | ||
| 194 | + out[i] = 255; | ||
| 195 | + __asm__ volatile (""); | ||
| 196 | + } | ||
| 197 | + | ||
| 198 | + foo (in, out); | ||
| 199 | + | ||
| 200 | + return 0; | ||
| 201 | +} | ||
| 202 | + | ||
| 203 | +/* { dg-final { scan-tree-dump-times "vect_recog_over_widening_pattern: detected" 4 "vect" } } */ | ||
| 204 | +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ | ||
| 205 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | ||
| 206 | + | ||
| 207 | |||
| 208 | === added file 'gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c' | ||
| 209 | --- old/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c 1970-01-01 00:00:00 +0000 | ||
| 210 | +++ new/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c 2011-09-05 06:23:37 +0000 | ||
| 211 | @@ -0,0 +1,65 @@ | ||
| 212 | +/* { dg-require-effective-target vect_int } */ | ||
| 213 | +/* { dg-require-effective-target vect_shift } */ | ||
| 214 | + | ||
| 215 | +#include <stdlib.h> | ||
| 216 | +#include <stdarg.h> | ||
| 217 | +#include "tree-vect.h" | ||
| 218 | + | ||
| 219 | +#define N 64 | ||
| 220 | + | ||
| 221 | +/* Modified rgb to rgb conversion from FFmpeg. */ | ||
| 222 | +__attribute__ ((noinline)) void | ||
| 223 | +foo (unsigned char *src, unsigned char *dst) | ||
| 224 | +{ | ||
| 225 | + unsigned char *s = src; | ||
| 226 | + int *d = (int *)dst; | ||
| 227 | + int i; | ||
| 228 | + | ||
| 229 | + for (i = 0; i < N/4; i++) | ||
| 230 | + { | ||
| 231 | + const int b = *s++; | ||
| 232 | + const int g = *s++; | ||
| 233 | + const int r = *s++; | ||
| 234 | + const int a = *s++; | ||
| 235 | + *d = ((b>>3) | ((g&0xFC)<<3) | ((r&0xF8)<<8) | (a>>5)); | ||
| 236 | + d++; | ||
| 237 | + } | ||
| 238 | + | ||
| 239 | + s = src; | ||
| 240 | + d = (int *)dst; | ||
| 241 | + for (i = 0; i < N/4; i++) | ||
| 242 | + { | ||
| 243 | + const int b = *s++; | ||
| 244 | + const int g = *s++; | ||
| 245 | + const int r = *s++; | ||
| 246 | + const int a = *s++; | ||
| 247 | + if (*d != ((b>>3) | ((g&0xFC)<<3) | ((r&0xF8)<<8) | (a>>5))) | ||
| 248 | + abort (); | ||
| 249 | + d++; | ||
| 250 | + } | ||
| 251 | +} | ||
| 252 | + | ||
| 253 | +int main (void) | ||
| 254 | +{ | ||
| 255 | + int i; | ||
| 256 | + unsigned char in[N], out[N]; | ||
| 257 | + | ||
| 258 | + check_vect (); | ||
| 259 | + | ||
| 260 | + for (i = 0; i < N; i++) | ||
| 261 | + { | ||
| 262 | + in[i] = i; | ||
| 263 | + out[i] = 255; | ||
| 264 | + __asm__ volatile (""); | ||
| 265 | + } | ||
| 266 | + | ||
| 267 | + foo (in, out); | ||
| 268 | + | ||
| 269 | + return 0; | ||
| 270 | +} | ||
| 271 | + | ||
| 272 | +/* Final value stays in int, so no over-widening is detected at the moment. */ | ||
| 273 | +/* { dg-final { scan-tree-dump-times "vect_recog_over_widening_pattern: detected" 0 "vect" } } */ | ||
| 274 | +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ | ||
| 275 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | ||
| 276 | + | ||
| 277 | |||
| 278 | === added file 'gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c' | ||
| 279 | --- old/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c 1970-01-01 00:00:00 +0000 | ||
| 280 | +++ new/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c 2011-09-05 06:23:37 +0000 | ||
| 281 | @@ -0,0 +1,64 @@ | ||
| 282 | +/* { dg-require-effective-target vect_int } */ | ||
| 283 | +/* { dg-require-effective-target vect_shift } */ | ||
| 284 | + | ||
| 285 | +#include <stdlib.h> | ||
| 286 | +#include <stdarg.h> | ||
| 287 | +#include "tree-vect.h" | ||
| 288 | + | ||
| 289 | +#define N 64 | ||
| 290 | + | ||
| 291 | +/* Modified rgb to rgb conversion from FFmpeg. */ | ||
| 292 | +__attribute__ ((noinline)) void | ||
| 293 | +foo (unsigned char *src, unsigned char *dst) | ||
| 294 | +{ | ||
| 295 | + unsigned char *s = src; | ||
| 296 | + unsigned short *d = (unsigned short *)dst; | ||
| 297 | + int i; | ||
| 298 | + | ||
| 299 | + for (i = 0; i < N/4; i++) | ||
| 300 | + { | ||
| 301 | + const int b = *s++; | ||
| 302 | + const int g = *s++; | ||
| 303 | + const int r = *s++; | ||
| 304 | + const int a = *s++; | ||
| 305 | + *d = ((b>>3) | ((g&0xFFC)<<3) | ((r+0xF8)>>8) | (a<<9)); | ||
| 306 | + d++; | ||
| 307 | + } | ||
| 308 | + | ||
| 309 | + s = src; | ||
| 310 | + d = (unsigned short *)dst; | ||
| 311 | + for (i = 0; i < N/4; i++) | ||
| 312 | + { | ||
| 313 | + const int b = *s++; | ||
| 314 | + const int g = *s++; | ||
| 315 | + const int r = *s++; | ||
| 316 | + const int a = *s++; | ||
| 317 | + if (*d != ((b>>3) | ((g&0xFFC)<<3) | ((r+0xF8)>>8) | (a<<9))) | ||
| 318 | + abort (); | ||
| 319 | + d++; | ||
| 320 | + } | ||
| 321 | +} | ||
| 322 | + | ||
| 323 | +int main (void) | ||
| 324 | +{ | ||
| 325 | + int i; | ||
| 326 | + unsigned char in[N], out[N]; | ||
| 327 | + | ||
| 328 | + check_vect (); | ||
| 329 | + | ||
| 330 | + for (i = 0; i < N; i++) | ||
| 331 | + { | ||
| 332 | + in[i] = i; | ||
| 333 | + out[i] = 255; | ||
| 334 | + __asm__ volatile (""); | ||
| 335 | + } | ||
| 336 | + | ||
| 337 | + foo (in, out); | ||
| 338 | + | ||
| 339 | + return 0; | ||
| 340 | +} | ||
| 341 | + | ||
| 342 | +/* { dg-final { scan-tree-dump-times "vect_recog_over_widening_pattern: detected" 1 "vect" } } */ | ||
| 343 | +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ | ||
| 344 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | ||
| 345 | + | ||
| 346 | |||
| 347 | === added file 'gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c' | ||
| 348 | --- old/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c 1970-01-01 00:00:00 +0000 | ||
| 349 | +++ new/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c 2011-09-05 06:23:37 +0000 | ||
| 350 | @@ -0,0 +1,68 @@ | ||
| 351 | +/* { dg-require-effective-target vect_int } */ | ||
| 352 | +/* { dg-require-effective-target vect_shift } */ | ||
| 353 | + | ||
| 354 | +#include <stdlib.h> | ||
| 355 | +#include <stdarg.h> | ||
| 356 | +#include "tree-vect.h" | ||
| 357 | + | ||
| 358 | +#define N 64 | ||
| 359 | + | ||
| 360 | +/* Modified rgb to rgb conversion from FFmpeg. */ | ||
| 361 | +__attribute__ ((noinline)) int | ||
| 362 | +foo (unsigned char *src, unsigned char *dst) | ||
| 363 | +{ | ||
| 364 | + unsigned char *s = src; | ||
| 365 | + unsigned short *d = (unsigned short *)dst, res; | ||
| 366 | + int i, result = 0; | ||
| 367 | + | ||
| 368 | + for (i = 0; i < N/4; i++) | ||
| 369 | + { | ||
| 370 | + const int b = *s++; | ||
| 371 | + const int g = *s++; | ||
| 372 | + const int r = *s++; | ||
| 373 | + const int a = *s++; | ||
| 374 | + res = ((b>>3) | ((g&0xFC)<<3) | ((r&0xF8)<<8) | (a>>5)); | ||
| 375 | + *d = res; | ||
| 376 | + result += res; | ||
| 377 | + d++; | ||
| 378 | + } | ||
| 379 | + | ||
| 380 | + s = src; | ||
| 381 | + d = (unsigned short *)dst; | ||
| 382 | + for (i = 0; i < N/4; i++) | ||
| 383 | + { | ||
| 384 | + const int b = *s++; | ||
| 385 | + const int g = *s++; | ||
| 386 | + const int r = *s++; | ||
| 387 | + const int a = *s++; | ||
| 388 | + if (*d != ((b>>3) | ((g&0xFC)<<3) | ((r&0xF8)<<8) | (a>>5))) | ||
| 389 | + abort (); | ||
| 390 | + d++; | ||
| 391 | + } | ||
| 392 | + | ||
| 393 | + return result; | ||
| 394 | +} | ||
| 395 | + | ||
| 396 | +int main (void) | ||
| 397 | +{ | ||
| 398 | + int i; | ||
| 399 | + unsigned char in[N], out[N]; | ||
| 400 | + | ||
| 401 | + check_vect (); | ||
| 402 | + | ||
| 403 | + for (i = 0; i < N; i++) | ||
| 404 | + { | ||
| 405 | + in[i] = i; | ||
| 406 | + out[i] = 255; | ||
| 407 | + __asm__ volatile (""); | ||
| 408 | + } | ||
| 409 | + | ||
| 410 | + foo (in, out); | ||
| 411 | + | ||
| 412 | + return 0; | ||
| 413 | +} | ||
| 414 | + | ||
| 415 | +/* { dg-final { scan-tree-dump-times "vect_recog_over_widening_pattern: detected" 4 "vect" } } */ | ||
| 416 | +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ | ||
| 417 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | ||
| 418 | + | ||
| 419 | |||
| 420 | === modified file 'gcc/testsuite/gcc.dg/vect/vect.exp' | ||
| 421 | --- old/gcc/testsuite/gcc.dg/vect/vect.exp 2011-05-05 15:43:31 +0000 | ||
| 422 | +++ new/gcc/testsuite/gcc.dg/vect/vect.exp 2011-09-05 06:23:37 +0000 | ||
| 423 | @@ -245,6 +245,18 @@ | ||
| 424 | dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/no-tree-reassoc-bb-slp-*.\[cS\]]] \ | ||
| 425 | "" $VECT_SLP_CFLAGS | ||
| 426 | |||
| 427 | +# -fno-tree-fre | ||
| 428 | +set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS | ||
| 429 | +lappend DEFAULT_VECTCFLAGS "-fno-tree-fre" | ||
| 430 | +dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/no-tree-fre-*.\[cS\]]] \ | ||
| 431 | + "" $DEFAULT_VECTCFLAGS | ||
| 432 | + | ||
| 433 | +# -fno-tree-fre -fno-tree-pre | ||
| 434 | +set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS | ||
| 435 | +lappend DEFAULT_VECTCFLAGS "-fno-tree-fre" "-fno-tree-pre" | ||
| 436 | +dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/no-fre-pre*.\[cS\]]] \ | ||
| 437 | + "" $DEFAULT_VECTCFLAGS | ||
| 438 | + | ||
| 439 | # Clean up. | ||
| 440 | set dg-do-what-default ${save-dg-do-what-default} | ||
| 441 | |||
| 442 | |||
| 443 | === modified file 'gcc/tree-vect-loop.c' | ||
| 444 | --- old/gcc/tree-vect-loop.c 2011-07-11 11:02:55 +0000 | ||
| 445 | +++ new/gcc/tree-vect-loop.c 2011-09-05 06:23:37 +0000 | ||
| 446 | @@ -181,8 +181,8 @@ | ||
| 447 | stmt_vec_info stmt_info; | ||
| 448 | int i; | ||
| 449 | HOST_WIDE_INT dummy; | ||
| 450 | - gimple stmt, pattern_stmt = NULL; | ||
| 451 | - bool analyze_pattern_stmt = false; | ||
| 452 | + gimple stmt, pattern_stmt = NULL, pattern_def_stmt = NULL; | ||
| 453 | + bool analyze_pattern_stmt = false, pattern_def = false; | ||
| 454 | |||
| 455 | if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 456 | fprintf (vect_dump, "=== vect_determine_vectorization_factor ==="); | ||
| 457 | @@ -297,6 +297,29 @@ | ||
| 458 | || STMT_VINFO_LIVE_P (vinfo_for_stmt (pattern_stmt)))) | ||
| 459 | analyze_pattern_stmt = true; | ||
| 460 | |||
| 461 | + /* If a pattern statement has a def stmt, analyze it too. */ | ||
| 462 | + if (is_pattern_stmt_p (stmt_info) | ||
| 463 | + && (pattern_def_stmt = STMT_VINFO_PATTERN_DEF_STMT (stmt_info)) | ||
| 464 | + && (STMT_VINFO_RELEVANT_P (vinfo_for_stmt (pattern_def_stmt)) | ||
| 465 | + || STMT_VINFO_LIVE_P (vinfo_for_stmt (pattern_def_stmt)))) | ||
| 466 | + { | ||
| 467 | + if (pattern_def) | ||
| 468 | + pattern_def = false; | ||
| 469 | + else | ||
| 470 | + { | ||
| 471 | + if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 472 | + { | ||
| 473 | + fprintf (vect_dump, "==> examining pattern def stmt: "); | ||
| 474 | + print_gimple_stmt (vect_dump, pattern_def_stmt, 0, | ||
| 475 | + TDF_SLIM); | ||
| 476 | + } | ||
| 477 | + | ||
| 478 | + pattern_def = true; | ||
| 479 | + stmt = pattern_def_stmt; | ||
| 480 | + stmt_info = vinfo_for_stmt (stmt); | ||
| 481 | + } | ||
| 482 | + } | ||
| 483 | + | ||
| 484 | if (gimple_get_lhs (stmt) == NULL_TREE) | ||
| 485 | { | ||
| 486 | if (vect_print_dump_info (REPORT_UNVECTORIZED_LOCATIONS)) | ||
| 487 | @@ -401,7 +424,7 @@ | ||
| 488 | || (nunits > vectorization_factor)) | ||
| 489 | vectorization_factor = nunits; | ||
| 490 | |||
| 491 | - if (!analyze_pattern_stmt) | ||
| 492 | + if (!analyze_pattern_stmt && !pattern_def) | ||
| 493 | gsi_next (&si); | ||
| 494 | } | ||
| 495 | } | ||
| 496 | @@ -3985,7 +4008,7 @@ | ||
| 497 | VEC (tree, heap) *vec_oprnds0 = NULL, *vec_oprnds1 = NULL, *vect_defs = NULL; | ||
| 498 | VEC (gimple, heap) *phis = NULL; | ||
| 499 | int vec_num; | ||
| 500 | - tree def0, def1, tem; | ||
| 501 | + tree def0, def1, tem, op0, op1 = NULL_TREE; | ||
| 502 | |||
| 503 | if (nested_in_vect_loop_p (loop, stmt)) | ||
| 504 | { | ||
| 505 | @@ -4418,8 +4441,6 @@ | ||
| 506 | /* Handle uses. */ | ||
| 507 | if (j == 0) | ||
| 508 | { | ||
| 509 | - tree op0, op1 = NULL_TREE; | ||
| 510 | - | ||
| 511 | op0 = ops[!reduc_index]; | ||
| 512 | if (op_type == ternary_op) | ||
| 513 | { | ||
| 514 | @@ -4449,11 +4470,19 @@ | ||
| 515 | { | ||
| 516 | if (!slp_node) | ||
| 517 | { | ||
| 518 | - enum vect_def_type dt = vect_unknown_def_type; /* Dummy */ | ||
| 519 | - loop_vec_def0 = vect_get_vec_def_for_stmt_copy (dt, loop_vec_def0); | ||
| 520 | + enum vect_def_type dt; | ||
| 521 | + gimple dummy_stmt; | ||
| 522 | + tree dummy; | ||
| 523 | + | ||
| 524 | + vect_is_simple_use (ops[!reduc_index], loop_vinfo, NULL, | ||
| 525 | + &dummy_stmt, &dummy, &dt); | ||
| 526 | + loop_vec_def0 = vect_get_vec_def_for_stmt_copy (dt, | ||
| 527 | + loop_vec_def0); | ||
| 528 | VEC_replace (tree, vec_oprnds0, 0, loop_vec_def0); | ||
| 529 | if (op_type == ternary_op) | ||
| 530 | { | ||
| 531 | + vect_is_simple_use (op1, loop_vinfo, NULL, &dummy_stmt, | ||
| 532 | + &dummy, &dt); | ||
| 533 | loop_vec_def1 = vect_get_vec_def_for_stmt_copy (dt, | ||
| 534 | loop_vec_def1); | ||
| 535 | VEC_replace (tree, vec_oprnds1, 0, loop_vec_def1); | ||
| 536 | @@ -4758,8 +4787,8 @@ | ||
| 537 | tree cond_expr = NULL_TREE; | ||
| 538 | gimple_seq cond_expr_stmt_list = NULL; | ||
| 539 | bool do_peeling_for_loop_bound; | ||
| 540 | - gimple stmt, pattern_stmt; | ||
| 541 | - bool transform_pattern_stmt = false; | ||
| 542 | + gimple stmt, pattern_stmt, pattern_def_stmt; | ||
| 543 | + bool transform_pattern_stmt = false, pattern_def = false; | ||
| 544 | |||
| 545 | if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 546 | fprintf (vect_dump, "=== vec_transform_loop ==="); | ||
| 547 | @@ -4903,6 +4932,30 @@ | ||
| 548 | || STMT_VINFO_LIVE_P (vinfo_for_stmt (pattern_stmt)))) | ||
| 549 | transform_pattern_stmt = true; | ||
| 550 | |||
| 551 | + /* If pattern statement has a def stmt, vectorize it too. */ | ||
| 552 | + if (is_pattern_stmt_p (stmt_info) | ||
| 553 | + && (pattern_def_stmt = STMT_VINFO_PATTERN_DEF_STMT (stmt_info)) | ||
| 554 | + && (STMT_VINFO_RELEVANT_P (vinfo_for_stmt (pattern_def_stmt)) | ||
| 555 | + || STMT_VINFO_LIVE_P (vinfo_for_stmt (pattern_def_stmt)))) | ||
| 556 | + { | ||
| 557 | + if (pattern_def) | ||
| 558 | + pattern_def = false; | ||
| 559 | + else | ||
| 560 | + { | ||
| 561 | + if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 562 | + { | ||
| 563 | + fprintf (vect_dump, "==> vectorizing pattern def" | ||
| 564 | + " stmt: "); | ||
| 565 | + print_gimple_stmt (vect_dump, pattern_def_stmt, 0, | ||
| 566 | + TDF_SLIM); | ||
| 567 | + } | ||
| 568 | + | ||
| 569 | + pattern_def = true; | ||
| 570 | + stmt = pattern_def_stmt; | ||
| 571 | + stmt_info = vinfo_for_stmt (stmt); | ||
| 572 | + } | ||
| 573 | + } | ||
| 574 | + | ||
| 575 | gcc_assert (STMT_VINFO_VECTYPE (stmt_info)); | ||
| 576 | nunits = (unsigned int) TYPE_VECTOR_SUBPARTS ( | ||
| 577 | STMT_VINFO_VECTYPE (stmt_info)); | ||
| 578 | @@ -4930,7 +4983,7 @@ | ||
| 579 | /* Hybrid SLP stmts must be vectorized in addition to SLP. */ | ||
| 580 | if (!vinfo_for_stmt (stmt) || PURE_SLP_STMT (stmt_info)) | ||
| 581 | { | ||
| 582 | - if (!transform_pattern_stmt) | ||
| 583 | + if (!transform_pattern_stmt && !pattern_def) | ||
| 584 | gsi_next (&si); | ||
| 585 | continue; | ||
| 586 | } | ||
| 587 | @@ -4962,7 +5015,7 @@ | ||
| 588 | } | ||
| 589 | } | ||
| 590 | |||
| 591 | - if (!transform_pattern_stmt) | ||
| 592 | + if (!transform_pattern_stmt && !pattern_def) | ||
| 593 | gsi_next (&si); | ||
| 594 | } /* stmts in BB */ | ||
| 595 | } /* BBs in loop */ | ||
| 596 | |||
| 597 | === modified file 'gcc/tree-vect-patterns.c' | ||
| 598 | --- old/gcc/tree-vect-patterns.c 2011-07-06 12:04:10 +0000 | ||
| 599 | +++ new/gcc/tree-vect-patterns.c 2011-09-05 06:23:37 +0000 | ||
| 600 | @@ -46,11 +46,14 @@ | ||
| 601 | static gimple vect_recog_dot_prod_pattern (VEC (gimple, heap) **, tree *, | ||
| 602 | tree *); | ||
| 603 | static gimple vect_recog_pow_pattern (VEC (gimple, heap) **, tree *, tree *); | ||
| 604 | +static gimple vect_recog_over_widening_pattern (VEC (gimple, heap) **, tree *, | ||
| 605 | + tree *); | ||
| 606 | static vect_recog_func_ptr vect_vect_recog_func_ptrs[NUM_PATTERNS] = { | ||
| 607 | vect_recog_widen_mult_pattern, | ||
| 608 | vect_recog_widen_sum_pattern, | ||
| 609 | vect_recog_dot_prod_pattern, | ||
| 610 | - vect_recog_pow_pattern}; | ||
| 611 | + vect_recog_pow_pattern, | ||
| 612 | + vect_recog_over_widening_pattern}; | ||
| 613 | |||
| 614 | |||
| 615 | /* Function widened_name_p | ||
| 616 | @@ -339,12 +342,14 @@ | ||
| 617 | replace a_T = (TYPE) a_t; with a_it - (interm_type) a_t; */ | ||
| 618 | |||
| 619 | static bool | ||
| 620 | -vect_handle_widen_mult_by_const (tree const_oprnd, tree *oprnd, | ||
| 621 | +vect_handle_widen_mult_by_const (gimple stmt, tree const_oprnd, tree *oprnd, | ||
| 622 | VEC (gimple, heap) **stmts, tree type, | ||
| 623 | tree *half_type, gimple def_stmt) | ||
| 624 | { | ||
| 625 | tree new_type, new_oprnd, tmp; | ||
| 626 | gimple new_stmt; | ||
| 627 | + loop_vec_info loop_info = STMT_VINFO_LOOP_VINFO (vinfo_for_stmt (stmt)); | ||
| 628 | + struct loop *loop = LOOP_VINFO_LOOP (loop_info); | ||
| 629 | |||
| 630 | if (int_fits_type_p (const_oprnd, *half_type)) | ||
| 631 | { | ||
| 632 | @@ -354,6 +359,8 @@ | ||
| 633 | } | ||
| 634 | |||
| 635 | if (TYPE_PRECISION (type) < (TYPE_PRECISION (*half_type) * 4) | ||
| 636 | + || !gimple_bb (def_stmt) | ||
| 637 | + || !flow_bb_inside_loop_p (loop, gimple_bb (def_stmt)) | ||
| 638 | || !vinfo_for_stmt (def_stmt)) | ||
| 639 | return false; | ||
| 640 | |||
| 641 | @@ -522,7 +529,8 @@ | ||
| 642 | { | ||
| 643 | if (TREE_CODE (oprnd0) == INTEGER_CST | ||
| 644 | && TREE_CODE (half_type1) == INTEGER_TYPE | ||
| 645 | - && vect_handle_widen_mult_by_const (oprnd0, &oprnd1, stmts, type, | ||
| 646 | + && vect_handle_widen_mult_by_const (last_stmt, oprnd0, &oprnd1, | ||
| 647 | + stmts, type, | ||
| 648 | &half_type1, def_stmt1)) | ||
| 649 | half_type0 = half_type1; | ||
| 650 | else | ||
| 651 | @@ -532,7 +540,8 @@ | ||
| 652 | { | ||
| 653 | if (TREE_CODE (oprnd1) == INTEGER_CST | ||
| 654 | && TREE_CODE (half_type0) == INTEGER_TYPE | ||
| 655 | - && vect_handle_widen_mult_by_const (oprnd1, &oprnd0, stmts, type, | ||
| 656 | + && vect_handle_widen_mult_by_const (last_stmt, oprnd1, &oprnd0, | ||
| 657 | + stmts, type, | ||
| 658 | &half_type0, def_stmt0)) | ||
| 659 | half_type1 = half_type0; | ||
| 660 | else | ||
| 661 | @@ -826,6 +835,424 @@ | ||
| 662 | } | ||
| 663 | |||
| 664 | |||
| 665 | +/* Return TRUE if the operation in STMT can be performed on a smaller type. | ||
| 666 | + | ||
| 667 | + Input: | ||
| 668 | + STMT - a statement to check. | ||
| 669 | + DEF - we support operations with two operands, one of which is constant. | ||
| 670 | + The other operand can be defined by a demotion operation, or by a | ||
| 671 | + previous statement in a sequence of over-promoted operations. In the | ||
| 672 | + later case DEF is used to replace that operand. (It is defined by a | ||
| 673 | + pattern statement we created for the previous statement in the | ||
| 674 | + sequence). | ||
| 675 | + | ||
| 676 | + Input/output: | ||
| 677 | + NEW_TYPE - Output: a smaller type that we are trying to use. Input: if not | ||
| 678 | + NULL, it's the type of DEF. | ||
| 679 | + STMTS - additional pattern statements. If a pattern statement (type | ||
| 680 | + conversion) is created in this function, its original statement is | ||
| 681 | + added to STMTS. | ||
| 682 | + | ||
| 683 | + Output: | ||
| 684 | + OP0, OP1 - if the operation fits a smaller type, OP0 and OP1 are the new | ||
| 685 | + operands to use in the new pattern statement for STMT (will be created | ||
| 686 | + in vect_recog_over_widening_pattern ()). | ||
| 687 | + NEW_DEF_STMT - in case DEF has to be promoted, we create two pattern | ||
| 688 | + statements for STMT: the first one is a type promotion and the second | ||
| 689 | + one is the operation itself. We return the type promotion statement | ||
| 690 | + in NEW_DEF_STMT and further store it in STMT_VINFO_PATTERN_DEF_STMT of | ||
| 691 | + the second pattern statement. */ | ||
| 692 | + | ||
| 693 | +static bool | ||
| 694 | +vect_operation_fits_smaller_type (gimple stmt, tree def, tree *new_type, | ||
| 695 | + tree *op0, tree *op1, gimple *new_def_stmt, | ||
| 696 | + VEC (gimple, heap) **stmts) | ||
| 697 | +{ | ||
| 698 | + enum tree_code code; | ||
| 699 | + tree const_oprnd, oprnd; | ||
| 700 | + tree interm_type = NULL_TREE, half_type, tmp, new_oprnd, type; | ||
| 701 | + gimple def_stmt, new_stmt; | ||
| 702 | + bool first = false; | ||
| 703 | + loop_vec_info loop_info = STMT_VINFO_LOOP_VINFO (vinfo_for_stmt (stmt)); | ||
| 704 | + struct loop *loop = LOOP_VINFO_LOOP (loop_info); | ||
| 705 | + | ||
| 706 | + *new_def_stmt = NULL; | ||
| 707 | + | ||
| 708 | + if (!is_gimple_assign (stmt)) | ||
| 709 | + return false; | ||
| 710 | + | ||
| 711 | + code = gimple_assign_rhs_code (stmt); | ||
| 712 | + if (code != LSHIFT_EXPR && code != RSHIFT_EXPR | ||
| 713 | + && code != BIT_IOR_EXPR && code != BIT_XOR_EXPR && code != BIT_AND_EXPR) | ||
| 714 | + return false; | ||
| 715 | + | ||
| 716 | + oprnd = gimple_assign_rhs1 (stmt); | ||
| 717 | + const_oprnd = gimple_assign_rhs2 (stmt); | ||
| 718 | + type = gimple_expr_type (stmt); | ||
| 719 | + | ||
| 720 | + if (TREE_CODE (oprnd) != SSA_NAME | ||
| 721 | + || TREE_CODE (const_oprnd) != INTEGER_CST) | ||
| 722 | + return false; | ||
| 723 | + | ||
| 724 | + /* If we are in the middle of a sequence, we use DEF from a previous | ||
| 725 | + statement. Otherwise, OPRND has to be a result of type promotion. */ | ||
| 726 | + if (*new_type) | ||
| 727 | + { | ||
| 728 | + half_type = *new_type; | ||
| 729 | + oprnd = def; | ||
| 730 | + } | ||
| 731 | + else | ||
| 732 | + { | ||
| 733 | + first = true; | ||
| 734 | + if (!widened_name_p (oprnd, stmt, &half_type, &def_stmt, false) | ||
| 735 | + || !gimple_bb (def_stmt) | ||
| 736 | + || !flow_bb_inside_loop_p (loop, gimple_bb (def_stmt)) | ||
| 737 | + || !vinfo_for_stmt (def_stmt)) | ||
| 738 | + return false; | ||
| 739 | + } | ||
| 740 | + | ||
| 741 | + /* Can we perform the operation on a smaller type? */ | ||
| 742 | + switch (code) | ||
| 743 | + { | ||
| 744 | + case BIT_IOR_EXPR: | ||
| 745 | + case BIT_XOR_EXPR: | ||
| 746 | + case BIT_AND_EXPR: | ||
| 747 | + if (!int_fits_type_p (const_oprnd, half_type)) | ||
| 748 | + { | ||
| 749 | + /* HALF_TYPE is not enough. Try a bigger type if possible. */ | ||
| 750 | + if (TYPE_PRECISION (type) < (TYPE_PRECISION (half_type) * 4)) | ||
| 751 | + return false; | ||
| 752 | + | ||
| 753 | + interm_type = build_nonstandard_integer_type ( | ||
| 754 | + TYPE_PRECISION (half_type) * 2, TYPE_UNSIGNED (type)); | ||
| 755 | + if (!int_fits_type_p (const_oprnd, interm_type)) | ||
| 756 | + return false; | ||
| 757 | + } | ||
| 758 | + | ||
| 759 | + break; | ||
| 760 | + | ||
| 761 | + case LSHIFT_EXPR: | ||
| 762 | + /* Try intermediate type - HALF_TYPE is not enough for sure. */ | ||
| 763 | + if (TYPE_PRECISION (type) < (TYPE_PRECISION (half_type) * 4)) | ||
| 764 | + return false; | ||
| 765 | + | ||
| 766 | + /* Check that HALF_TYPE size + shift amount <= INTERM_TYPE size. | ||
| 767 | + (e.g., if the original value was char, the shift amount is at most 8 | ||
| 768 | + if we want to use short). */ | ||
| 769 | + if (compare_tree_int (const_oprnd, TYPE_PRECISION (half_type)) == 1) | ||
| 770 | + return false; | ||
| 771 | + | ||
| 772 | + interm_type = build_nonstandard_integer_type ( | ||
| 773 | + TYPE_PRECISION (half_type) * 2, TYPE_UNSIGNED (type)); | ||
| 774 | + | ||
| 775 | + if (!vect_supportable_shift (code, interm_type)) | ||
| 776 | + return false; | ||
| 777 | + | ||
| 778 | + break; | ||
| 779 | + | ||
| 780 | + case RSHIFT_EXPR: | ||
| 781 | + if (vect_supportable_shift (code, half_type)) | ||
| 782 | + break; | ||
| 783 | + | ||
| 784 | + /* Try intermediate type - HALF_TYPE is not supported. */ | ||
| 785 | + if (TYPE_PRECISION (type) < (TYPE_PRECISION (half_type) * 4)) | ||
| 786 | + return false; | ||
| 787 | + | ||
| 788 | + interm_type = build_nonstandard_integer_type ( | ||
| 789 | + TYPE_PRECISION (half_type) * 2, TYPE_UNSIGNED (type)); | ||
| 790 | + | ||
| 791 | + if (!vect_supportable_shift (code, interm_type)) | ||
| 792 | + return false; | ||
| 793 | + | ||
| 794 | + break; | ||
| 795 | + | ||
| 796 | + default: | ||
| 797 | + gcc_unreachable (); | ||
| 798 | + } | ||
| 799 | + | ||
| 800 | + /* There are four possible cases: | ||
| 801 | + 1. OPRND is defined by a type promotion (in that case FIRST is TRUE, it's | ||
| 802 | + the first statement in the sequence) | ||
| 803 | + a. The original, HALF_TYPE, is not enough - we replace the promotion | ||
| 804 | + from HALF_TYPE to TYPE with a promotion to INTERM_TYPE. | ||
| 805 | + b. HALF_TYPE is sufficient, OPRND is set as the RHS of the original | ||
| 806 | + promotion. | ||
| 807 | + 2. OPRND is defined by a pattern statement we created. | ||
| 808 | + a. Its type is not sufficient for the operation, we create a new stmt: | ||
| 809 | + a type conversion for OPRND from HALF_TYPE to INTERM_TYPE. We store | ||
| 810 | + this statement in NEW_DEF_STMT, and it is later put in | ||
| 811 | + STMT_VINFO_PATTERN_DEF_STMT of the pattern statement for STMT. | ||
| 812 | + b. OPRND is good to use in the new statement. */ | ||
| 813 | + if (first) | ||
| 814 | + { | ||
| 815 | + if (interm_type) | ||
| 816 | + { | ||
| 817 | + /* Replace the original type conversion HALF_TYPE->TYPE with | ||
| 818 | + HALF_TYPE->INTERM_TYPE. */ | ||
| 819 | + if (STMT_VINFO_RELATED_STMT (vinfo_for_stmt (def_stmt))) | ||
| 820 | + { | ||
| 821 | + new_stmt = STMT_VINFO_RELATED_STMT (vinfo_for_stmt (def_stmt)); | ||
| 822 | + /* Check if the already created pattern stmt is what we need. */ | ||
| 823 | + if (!is_gimple_assign (new_stmt) | ||
| 824 | + || gimple_assign_rhs_code (new_stmt) != NOP_EXPR | ||
| 825 | + || TREE_TYPE (gimple_assign_lhs (new_stmt)) != interm_type) | ||
| 826 | + return false; | ||
| 827 | + | ||
| 828 | + oprnd = gimple_assign_lhs (new_stmt); | ||
| 829 | + } | ||
| 830 | + else | ||
| 831 | + { | ||
| 832 | + /* Create NEW_OPRND = (INTERM_TYPE) OPRND. */ | ||
| 833 | + oprnd = gimple_assign_rhs1 (def_stmt); | ||
| 834 | + tmp = create_tmp_reg (interm_type, NULL); | ||
| 835 | + add_referenced_var (tmp); | ||
| 836 | + new_oprnd = make_ssa_name (tmp, NULL); | ||
| 837 | + new_stmt = gimple_build_assign_with_ops (NOP_EXPR, new_oprnd, | ||
| 838 | + oprnd, NULL_TREE); | ||
| 839 | + SSA_NAME_DEF_STMT (new_oprnd) = new_stmt; | ||
| 840 | + STMT_VINFO_RELATED_STMT (vinfo_for_stmt (def_stmt)) = new_stmt; | ||
| 841 | + VEC_safe_push (gimple, heap, *stmts, def_stmt); | ||
| 842 | + oprnd = new_oprnd; | ||
| 843 | + } | ||
| 844 | + } | ||
| 845 | + else | ||
| 846 | + { | ||
| 847 | + /* Retrieve the operand before the type promotion. */ | ||
| 848 | + oprnd = gimple_assign_rhs1 (def_stmt); | ||
| 849 | + } | ||
| 850 | + } | ||
| 851 | + else | ||
| 852 | + { | ||
| 853 | + if (interm_type) | ||
| 854 | + { | ||
| 855 | + /* Create a type conversion HALF_TYPE->INTERM_TYPE. */ | ||
| 856 | + tmp = create_tmp_reg (interm_type, NULL); | ||
| 857 | + add_referenced_var (tmp); | ||
| 858 | + new_oprnd = make_ssa_name (tmp, NULL); | ||
| 859 | + new_stmt = gimple_build_assign_with_ops (NOP_EXPR, new_oprnd, | ||
| 860 | + oprnd, NULL_TREE); | ||
| 861 | + SSA_NAME_DEF_STMT (new_oprnd) = new_stmt; | ||
| 862 | + oprnd = new_oprnd; | ||
| 863 | + *new_def_stmt = new_stmt; | ||
| 864 | + } | ||
| 865 | + | ||
| 866 | + /* Otherwise, OPRND is already set. */ | ||
| 867 | + } | ||
| 868 | + | ||
| 869 | + if (interm_type) | ||
| 870 | + *new_type = interm_type; | ||
| 871 | + else | ||
| 872 | + *new_type = half_type; | ||
| 873 | + | ||
| 874 | + *op0 = oprnd; | ||
| 875 | + *op1 = fold_convert (*new_type, const_oprnd); | ||
| 876 | + | ||
| 877 | + return true; | ||
| 878 | +} | ||
| 879 | + | ||
| 880 | + | ||
| 881 | +/* Try to find a statement or a sequence of statements that can be performed | ||
| 882 | + on a smaller type: | ||
| 883 | + | ||
| 884 | + type x_t; | ||
| 885 | + TYPE x_T, res0_T, res1_T; | ||
| 886 | + loop: | ||
| 887 | + S1 x_t = *p; | ||
| 888 | + S2 x_T = (TYPE) x_t; | ||
| 889 | + S3 res0_T = op (x_T, C0); | ||
| 890 | + S4 res1_T = op (res0_T, C1); | ||
| 891 | + S5 ... = () res1_T; - type demotion | ||
| 892 | + | ||
| 893 | + where type 'TYPE' is at least double the size of type 'type', C0 and C1 are | ||
| 894 | + constants. | ||
| 895 | + Check if S3 and S4 can be done on a smaller type than 'TYPE', it can either | ||
| 896 | + be 'type' or some intermediate type. For now, we expect S5 to be a type | ||
| 897 | + demotion operation. We also check that S3 and S4 have only one use. | ||
| 898 | +. | ||
| 899 | + | ||
| 900 | +*/ | ||
| 901 | +static gimple | ||
| 902 | +vect_recog_over_widening_pattern (VEC (gimple, heap) **stmts, | ||
| 903 | + tree *type_in, tree *type_out) | ||
| 904 | +{ | ||
| 905 | + gimple stmt = VEC_pop (gimple, *stmts); | ||
| 906 | + gimple pattern_stmt = NULL, new_def_stmt, prev_stmt = NULL, use_stmt = NULL; | ||
| 907 | + tree op0, op1, vectype = NULL_TREE, lhs, use_lhs, use_type; | ||
| 908 | + imm_use_iterator imm_iter; | ||
| 909 | + use_operand_p use_p; | ||
| 910 | + int nuses = 0; | ||
| 911 | + tree var = NULL_TREE, new_type = NULL_TREE, tmp, new_oprnd; | ||
| 912 | + bool first; | ||
| 913 | + struct loop *loop = (gimple_bb (stmt))->loop_father; | ||
| 914 | + | ||
| 915 | + first = true; | ||
| 916 | + while (1) | ||
| 917 | + { | ||
| 918 | + if (!vinfo_for_stmt (stmt) | ||
| 919 | + || STMT_VINFO_IN_PATTERN_P (vinfo_for_stmt (stmt))) | ||
| 920 | + return NULL; | ||
| 921 | + | ||
| 922 | + new_def_stmt = NULL; | ||
| 923 | + if (!vect_operation_fits_smaller_type (stmt, var, &new_type, | ||
| 924 | + &op0, &op1, &new_def_stmt, | ||
| 925 | + stmts)) | ||
| 926 | + { | ||
| 927 | + if (first) | ||
| 928 | + return NULL; | ||
| 929 | + else | ||
| 930 | + break; | ||
| 931 | + } | ||
| 932 | + | ||
| 933 | + /* STMT can be performed on a smaller type. Check its uses. */ | ||
| 934 | + lhs = gimple_assign_lhs (stmt); | ||
| 935 | + nuses = 0; | ||
| 936 | + FOR_EACH_IMM_USE_FAST (use_p, imm_iter, lhs) | ||
| 937 | + { | ||
| 938 | + if (is_gimple_debug (USE_STMT (use_p))) | ||
| 939 | + continue; | ||
| 940 | + use_stmt = USE_STMT (use_p); | ||
| 941 | + nuses++; | ||
| 942 | + } | ||
| 943 | + | ||
| 944 | + if (nuses != 1 || !is_gimple_assign (use_stmt) | ||
| 945 | + || !gimple_bb (use_stmt) | ||
| 946 | + || !flow_bb_inside_loop_p (loop, gimple_bb (use_stmt))) | ||
| 947 | + return NULL; | ||
| 948 | + | ||
| 949 | + /* Create pattern statement for STMT. */ | ||
| 950 | + vectype = get_vectype_for_scalar_type (new_type); | ||
| 951 | + if (!vectype) | ||
| 952 | + return NULL; | ||
| 953 | + | ||
| 954 | + /* We want to collect all the statements for which we create pattern | ||
| 955 | + statetments, except for the case when the last statement in the | ||
| 956 | + sequence doesn't have a corresponding pattern statement. In such | ||
| 957 | + case we associate the last pattern statement with the last statement | ||
| 958 | + in the sequence. Therefore, we only add an original statetement to | ||
| 959 | + the list if we know that it is not the last. */ | ||
| 960 | + if (prev_stmt) | ||
| 961 | + VEC_safe_push (gimple, heap, *stmts, prev_stmt); | ||
| 962 | + | ||
| 963 | + var = vect_recog_temp_ssa_var (new_type, NULL); | ||
| 964 | + pattern_stmt = gimple_build_assign_with_ops ( | ||
| 965 | + gimple_assign_rhs_code (stmt), var, op0, op1); | ||
| 966 | + SSA_NAME_DEF_STMT (var) = pattern_stmt; | ||
| 967 | + STMT_VINFO_RELATED_STMT (vinfo_for_stmt (stmt)) = pattern_stmt; | ||
| 968 | + STMT_VINFO_PATTERN_DEF_STMT (vinfo_for_stmt (stmt)) = new_def_stmt; | ||
| 969 | + | ||
| 970 | + if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 971 | + { | ||
| 972 | + fprintf (vect_dump, "created pattern stmt: "); | ||
| 973 | + print_gimple_stmt (vect_dump, pattern_stmt, 0, TDF_SLIM); | ||
| 974 | + } | ||
| 975 | + | ||
| 976 | + prev_stmt = stmt; | ||
| 977 | + stmt = use_stmt; | ||
| 978 | + | ||
| 979 | + first = false; | ||
| 980 | + } | ||
| 981 | + | ||
| 982 | + /* We got a sequence. We expect it to end with a type demotion operation. | ||
| 983 | + Otherwise, we quit (for now). There are three possible cases: the | ||
| 984 | + conversion is to NEW_TYPE (we don't do anything), the conversion is to | ||
| 985 | + a type bigger than NEW_TYPE and/or the signedness of USE_TYPE and | ||
| 986 | + NEW_TYPE differs (we create a new conversion statement). */ | ||
| 987 | + if (CONVERT_EXPR_CODE_P (gimple_assign_rhs_code (use_stmt))) | ||
| 988 | + { | ||
| 989 | + use_lhs = gimple_assign_lhs (use_stmt); | ||
| 990 | + use_type = TREE_TYPE (use_lhs); | ||
| 991 | + /* Support only type promotion or signedess change. */ | ||
| 992 | + if (!INTEGRAL_TYPE_P (use_type) | ||
| 993 | + || TYPE_PRECISION (new_type) > TYPE_PRECISION (use_type)) | ||
| 994 | + return NULL; | ||
| 995 | + | ||
| 996 | + if (TYPE_UNSIGNED (new_type) != TYPE_UNSIGNED (use_type) | ||
| 997 | + || TYPE_PRECISION (new_type) != TYPE_PRECISION (use_type)) | ||
| 998 | + { | ||
| 999 | + /* Create NEW_TYPE->USE_TYPE conversion. */ | ||
| 1000 | + tmp = create_tmp_reg (use_type, NULL); | ||
| 1001 | + add_referenced_var (tmp); | ||
| 1002 | + new_oprnd = make_ssa_name (tmp, NULL); | ||
| 1003 | + pattern_stmt = gimple_build_assign_with_ops (NOP_EXPR, new_oprnd, | ||
| 1004 | + var, NULL_TREE); | ||
| 1005 | + SSA_NAME_DEF_STMT (new_oprnd) = pattern_stmt; | ||
| 1006 | + STMT_VINFO_RELATED_STMT (vinfo_for_stmt (use_stmt)) = pattern_stmt; | ||
| 1007 | + | ||
| 1008 | + *type_in = get_vectype_for_scalar_type (new_type); | ||
| 1009 | + *type_out = get_vectype_for_scalar_type (use_type); | ||
| 1010 | + | ||
| 1011 | + /* We created a pattern statement for the last statement in the | ||
| 1012 | + sequence, so we don't need to associate it with the pattern | ||
| 1013 | + statement created for PREV_STMT. Therefore, we add PREV_STMT | ||
| 1014 | + to the list in order to mark it later in vect_pattern_recog_1. */ | ||
| 1015 | + if (prev_stmt) | ||
| 1016 | + VEC_safe_push (gimple, heap, *stmts, prev_stmt); | ||
| 1017 | + } | ||
| 1018 | + else | ||
| 1019 | + { | ||
| 1020 | + if (prev_stmt) | ||
| 1021 | + STMT_VINFO_PATTERN_DEF_STMT (vinfo_for_stmt (use_stmt)) | ||
| 1022 | + = STMT_VINFO_PATTERN_DEF_STMT (vinfo_for_stmt (prev_stmt)); | ||
| 1023 | + | ||
| 1024 | + *type_in = vectype; | ||
| 1025 | + *type_out = NULL_TREE; | ||
| 1026 | + } | ||
| 1027 | + | ||
| 1028 | + VEC_safe_push (gimple, heap, *stmts, use_stmt); | ||
| 1029 | + } | ||
| 1030 | + else | ||
| 1031 | + /* TODO: support general case, create a conversion to the correct type. */ | ||
| 1032 | + return NULL; | ||
| 1033 | + | ||
| 1034 | + /* Pattern detected. */ | ||
| 1035 | + if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 1036 | + { | ||
| 1037 | + fprintf (vect_dump, "vect_recog_over_widening_pattern: detected: "); | ||
| 1038 | + print_gimple_stmt (vect_dump, pattern_stmt, 0, TDF_SLIM); | ||
| 1039 | + } | ||
| 1040 | + | ||
| 1041 | + return pattern_stmt; | ||
| 1042 | +} | ||
| 1043 | + | ||
| 1044 | + | ||
| 1045 | +/* Mark statements that are involved in a pattern. */ | ||
| 1046 | + | ||
| 1047 | +static inline void | ||
| 1048 | +vect_mark_pattern_stmts (gimple orig_stmt, gimple pattern_stmt, | ||
| 1049 | + tree pattern_vectype) | ||
| 1050 | +{ | ||
| 1051 | + stmt_vec_info pattern_stmt_info, def_stmt_info; | ||
| 1052 | + stmt_vec_info orig_stmt_info = vinfo_for_stmt (orig_stmt); | ||
| 1053 | + loop_vec_info loop_vinfo = STMT_VINFO_LOOP_VINFO (orig_stmt_info); | ||
| 1054 | + gimple def_stmt; | ||
| 1055 | + | ||
| 1056 | + set_vinfo_for_stmt (pattern_stmt, | ||
| 1057 | + new_stmt_vec_info (pattern_stmt, loop_vinfo, NULL)); | ||
| 1058 | + gimple_set_bb (pattern_stmt, gimple_bb (orig_stmt)); | ||
| 1059 | + pattern_stmt_info = vinfo_for_stmt (pattern_stmt); | ||
| 1060 | + | ||
| 1061 | + STMT_VINFO_RELATED_STMT (pattern_stmt_info) = orig_stmt; | ||
| 1062 | + STMT_VINFO_DEF_TYPE (pattern_stmt_info) | ||
| 1063 | + = STMT_VINFO_DEF_TYPE (orig_stmt_info); | ||
| 1064 | + STMT_VINFO_VECTYPE (pattern_stmt_info) = pattern_vectype; | ||
| 1065 | + STMT_VINFO_IN_PATTERN_P (orig_stmt_info) = true; | ||
| 1066 | + STMT_VINFO_RELATED_STMT (orig_stmt_info) = pattern_stmt; | ||
| 1067 | + STMT_VINFO_PATTERN_DEF_STMT (pattern_stmt_info) | ||
| 1068 | + = STMT_VINFO_PATTERN_DEF_STMT (orig_stmt_info); | ||
| 1069 | + if (STMT_VINFO_PATTERN_DEF_STMT (pattern_stmt_info)) | ||
| 1070 | + { | ||
| 1071 | + def_stmt = STMT_VINFO_PATTERN_DEF_STMT (pattern_stmt_info); | ||
| 1072 | + set_vinfo_for_stmt (def_stmt, | ||
| 1073 | + new_stmt_vec_info (def_stmt, loop_vinfo, NULL)); | ||
| 1074 | + gimple_set_bb (def_stmt, gimple_bb (orig_stmt)); | ||
| 1075 | + def_stmt_info = vinfo_for_stmt (def_stmt); | ||
| 1076 | + STMT_VINFO_RELATED_STMT (def_stmt_info) = orig_stmt; | ||
| 1077 | + STMT_VINFO_DEF_TYPE (def_stmt_info) | ||
| 1078 | + = STMT_VINFO_DEF_TYPE (orig_stmt_info); | ||
| 1079 | + STMT_VINFO_VECTYPE (def_stmt_info) = pattern_vectype; | ||
| 1080 | + } | ||
| 1081 | +} | ||
| 1082 | + | ||
| 1083 | /* Function vect_pattern_recog_1 | ||
| 1084 | |||
| 1085 | Input: | ||
| 1086 | @@ -855,7 +1282,6 @@ | ||
| 1087 | { | ||
| 1088 | gimple stmt = gsi_stmt (si), pattern_stmt; | ||
| 1089 | stmt_vec_info stmt_info; | ||
| 1090 | - stmt_vec_info pattern_stmt_info; | ||
| 1091 | loop_vec_info loop_vinfo; | ||
| 1092 | tree pattern_vectype; | ||
| 1093 | tree type_in, type_out; | ||
| 1094 | @@ -923,16 +1349,7 @@ | ||
| 1095 | } | ||
| 1096 | |||
| 1097 | /* Mark the stmts that are involved in the pattern. */ | ||
| 1098 | - set_vinfo_for_stmt (pattern_stmt, | ||
| 1099 | - new_stmt_vec_info (pattern_stmt, loop_vinfo, NULL)); | ||
| 1100 | - gimple_set_bb (pattern_stmt, gimple_bb (stmt)); | ||
| 1101 | - pattern_stmt_info = vinfo_for_stmt (pattern_stmt); | ||
| 1102 | - | ||
| 1103 | - STMT_VINFO_RELATED_STMT (pattern_stmt_info) = stmt; | ||
| 1104 | - STMT_VINFO_DEF_TYPE (pattern_stmt_info) = STMT_VINFO_DEF_TYPE (stmt_info); | ||
| 1105 | - STMT_VINFO_VECTYPE (pattern_stmt_info) = pattern_vectype; | ||
| 1106 | - STMT_VINFO_IN_PATTERN_P (stmt_info) = true; | ||
| 1107 | - STMT_VINFO_RELATED_STMT (stmt_info) = pattern_stmt; | ||
| 1108 | + vect_mark_pattern_stmts (stmt, pattern_stmt, pattern_vectype); | ||
| 1109 | |||
| 1110 | /* Patterns cannot be vectorized using SLP, because they change the order of | ||
| 1111 | computation. */ | ||
| 1112 | @@ -940,9 +1357,9 @@ | ||
| 1113 | if (next == stmt) | ||
| 1114 | VEC_ordered_remove (gimple, LOOP_VINFO_REDUCTIONS (loop_vinfo), i); | ||
| 1115 | |||
| 1116 | - /* In case of widen-mult by a constant, it is possible that an additional | ||
| 1117 | - pattern stmt is created and inserted in STMTS_TO_REPLACE. We create a | ||
| 1118 | - stmt_info for it, and mark the relevant statements. */ | ||
| 1119 | + /* It is possible that additional pattern stmts are created and inserted in | ||
| 1120 | + STMTS_TO_REPLACE. We create a stmt_info for each of them, and mark the | ||
| 1121 | + relevant statements. */ | ||
| 1122 | for (i = 0; VEC_iterate (gimple, stmts_to_replace, i, stmt) | ||
| 1123 | && (unsigned) i < (VEC_length (gimple, stmts_to_replace) - 1); | ||
| 1124 | i++) | ||
| 1125 | @@ -955,16 +1372,7 @@ | ||
| 1126 | print_gimple_stmt (vect_dump, pattern_stmt, 0, TDF_SLIM); | ||
| 1127 | } | ||
| 1128 | |||
| 1129 | - set_vinfo_for_stmt (pattern_stmt, | ||
| 1130 | - new_stmt_vec_info (pattern_stmt, loop_vinfo, NULL)); | ||
| 1131 | - gimple_set_bb (pattern_stmt, gimple_bb (stmt)); | ||
| 1132 | - pattern_stmt_info = vinfo_for_stmt (pattern_stmt); | ||
| 1133 | - | ||
| 1134 | - STMT_VINFO_RELATED_STMT (pattern_stmt_info) = stmt; | ||
| 1135 | - STMT_VINFO_DEF_TYPE (pattern_stmt_info) | ||
| 1136 | - = STMT_VINFO_DEF_TYPE (stmt_info); | ||
| 1137 | - STMT_VINFO_VECTYPE (pattern_stmt_info) = STMT_VINFO_VECTYPE (stmt_info); | ||
| 1138 | - STMT_VINFO_IN_PATTERN_P (stmt_info) = true; | ||
| 1139 | + vect_mark_pattern_stmts (stmt, pattern_stmt, NULL_TREE); | ||
| 1140 | } | ||
| 1141 | |||
| 1142 | VEC_free (gimple, heap, stmts_to_replace); | ||
| 1143 | |||
| 1144 | === modified file 'gcc/tree-vect-stmts.c' | ||
| 1145 | --- old/gcc/tree-vect-stmts.c 2011-07-06 12:04:10 +0000 | ||
| 1146 | +++ new/gcc/tree-vect-stmts.c 2011-09-05 06:23:37 +0000 | ||
| 1147 | @@ -2246,6 +2246,42 @@ | ||
| 1148 | } | ||
| 1149 | |||
| 1150 | |||
| 1151 | +/* Return TRUE if CODE (a shift operation) is supported for SCALAR_TYPE | ||
| 1152 | + either as shift by a scalar or by a vector. */ | ||
| 1153 | + | ||
| 1154 | +bool | ||
| 1155 | +vect_supportable_shift (enum tree_code code, tree scalar_type) | ||
| 1156 | +{ | ||
| 1157 | + | ||
| 1158 | + enum machine_mode vec_mode; | ||
| 1159 | + optab optab; | ||
| 1160 | + int icode; | ||
| 1161 | + tree vectype; | ||
| 1162 | + | ||
| 1163 | + vectype = get_vectype_for_scalar_type (scalar_type); | ||
| 1164 | + if (!vectype) | ||
| 1165 | + return false; | ||
| 1166 | + | ||
| 1167 | + optab = optab_for_tree_code (code, vectype, optab_scalar); | ||
| 1168 | + if (!optab | ||
| 1169 | + || optab_handler (optab, TYPE_MODE (vectype)) == CODE_FOR_nothing) | ||
| 1170 | + { | ||
| 1171 | + optab = optab_for_tree_code (code, vectype, optab_vector); | ||
| 1172 | + if (!optab | ||
| 1173 | + || (optab_handler (optab, TYPE_MODE (vectype)) | ||
| 1174 | + == CODE_FOR_nothing)) | ||
| 1175 | + return false; | ||
| 1176 | + } | ||
| 1177 | + | ||
| 1178 | + vec_mode = TYPE_MODE (vectype); | ||
| 1179 | + icode = (int) optab_handler (optab, vec_mode); | ||
| 1180 | + if (icode == CODE_FOR_nothing) | ||
| 1181 | + return false; | ||
| 1182 | + | ||
| 1183 | + return true; | ||
| 1184 | +} | ||
| 1185 | + | ||
| 1186 | + | ||
| 1187 | /* Function vectorizable_shift. | ||
| 1188 | |||
| 1189 | Check if STMT performs a shift operation that can be vectorized. | ||
| 1190 | @@ -4946,7 +4982,7 @@ | ||
| 1191 | enum vect_relevant relevance = STMT_VINFO_RELEVANT (stmt_info); | ||
| 1192 | bool ok; | ||
| 1193 | tree scalar_type, vectype; | ||
| 1194 | - gimple pattern_stmt; | ||
| 1195 | + gimple pattern_stmt, pattern_def_stmt; | ||
| 1196 | |||
| 1197 | if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 1198 | { | ||
| 1199 | @@ -5016,6 +5052,23 @@ | ||
| 1200 | return false; | ||
| 1201 | } | ||
| 1202 | |||
| 1203 | + if (is_pattern_stmt_p (stmt_info) | ||
| 1204 | + && (pattern_def_stmt = STMT_VINFO_PATTERN_DEF_STMT (stmt_info)) | ||
| 1205 | + && (STMT_VINFO_RELEVANT_P (vinfo_for_stmt (pattern_def_stmt)) | ||
| 1206 | + || STMT_VINFO_LIVE_P (vinfo_for_stmt (pattern_def_stmt)))) | ||
| 1207 | + { | ||
| 1208 | + /* Analyze def stmt of STMT if it's a pattern stmt. */ | ||
| 1209 | + if (vect_print_dump_info (REPORT_DETAILS)) | ||
| 1210 | + { | ||
| 1211 | + fprintf (vect_dump, "==> examining pattern def statement: "); | ||
| 1212 | + print_gimple_stmt (vect_dump, pattern_def_stmt, 0, TDF_SLIM); | ||
| 1213 | + } | ||
| 1214 | + | ||
| 1215 | + if (!vect_analyze_stmt (pattern_def_stmt, need_to_vectorize, node)) | ||
| 1216 | + return false; | ||
| 1217 | + } | ||
| 1218 | + | ||
| 1219 | + | ||
| 1220 | switch (STMT_VINFO_DEF_TYPE (stmt_info)) | ||
| 1221 | { | ||
| 1222 | case vect_internal_def: | ||
| 1223 | @@ -5336,6 +5389,7 @@ | ||
| 1224 | STMT_VINFO_VECTORIZABLE (res) = true; | ||
| 1225 | STMT_VINFO_IN_PATTERN_P (res) = false; | ||
| 1226 | STMT_VINFO_RELATED_STMT (res) = NULL; | ||
| 1227 | + STMT_VINFO_PATTERN_DEF_STMT (res) = NULL; | ||
| 1228 | STMT_VINFO_DATA_REF (res) = NULL; | ||
| 1229 | |||
| 1230 | STMT_VINFO_DR_BASE_ADDRESS (res) = NULL; | ||
| 1231 | |||
| 1232 | === modified file 'gcc/tree-vectorizer.h' | ||
| 1233 | --- old/gcc/tree-vectorizer.h 2011-07-11 11:02:55 +0000 | ||
| 1234 | +++ new/gcc/tree-vectorizer.h 2011-09-05 06:23:37 +0000 | ||
| 1235 | @@ -464,6 +464,9 @@ | ||
| 1236 | pattern). */ | ||
| 1237 | gimple related_stmt; | ||
| 1238 | |||
| 1239 | + /* Used to keep a def stmt of a pattern stmt if such exists. */ | ||
| 1240 | + gimple pattern_def_stmt; | ||
| 1241 | + | ||
| 1242 | /* List of datarefs that are known to have the same alignment as the dataref | ||
| 1243 | of this stmt. */ | ||
| 1244 | VEC(dr_p,heap) *same_align_refs; | ||
| 1245 | @@ -531,6 +534,7 @@ | ||
| 1246 | |||
| 1247 | #define STMT_VINFO_IN_PATTERN_P(S) (S)->in_pattern_p | ||
| 1248 | #define STMT_VINFO_RELATED_STMT(S) (S)->related_stmt | ||
| 1249 | +#define STMT_VINFO_PATTERN_DEF_STMT(S) (S)->pattern_def_stmt | ||
| 1250 | #define STMT_VINFO_SAME_ALIGN_REFS(S) (S)->same_align_refs | ||
| 1251 | #define STMT_VINFO_DEF_TYPE(S) (S)->def_type | ||
| 1252 | #define STMT_VINFO_DR_GROUP_FIRST_DR(S) (S)->first_dr | ||
| 1253 | @@ -814,6 +818,7 @@ | ||
| 1254 | extern void vect_get_load_cost (struct data_reference *, int, bool, | ||
| 1255 | unsigned int *, unsigned int *); | ||
| 1256 | extern void vect_get_store_cost (struct data_reference *, int, unsigned int *); | ||
| 1257 | +extern bool vect_supportable_shift (enum tree_code, tree); | ||
| 1258 | |||
| 1259 | /* In tree-vect-data-refs.c. */ | ||
| 1260 | extern bool vect_can_force_dr_alignment_p (const_tree, unsigned int); | ||
| 1261 | @@ -891,7 +896,7 @@ | ||
| 1262 | Additional pattern recognition functions can (and will) be added | ||
| 1263 | in the future. */ | ||
| 1264 | typedef gimple (* vect_recog_func_ptr) (VEC (gimple, heap) **, tree *, tree *); | ||
| 1265 | -#define NUM_PATTERNS 4 | ||
| 1266 | +#define NUM_PATTERNS 5 | ||
| 1267 | void vect_pattern_recog (loop_vec_info); | ||
| 1268 | |||
| 1269 | /* In tree-vectorizer.c. */ | ||
| 1270 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106802.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106802.patch new file mode 100644 index 0000000000..ade96fdd11 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106802.patch | |||
| @@ -0,0 +1,948 @@ | |||
| 1 | 2011-09-12 Andrew Stubbs <ams@codesourcery.com> | ||
| 2 | |||
| 3 | Backport from FSF mainline: | ||
| 4 | |||
| 5 | 2011-08-30 Andrew Stubbs <ams@codesourcery.com> | ||
| 6 | |||
| 7 | gcc/ | ||
| 8 | * config/arm/arm.c (optimal_immediate_sequence_1): Make b1, b2, | ||
| 9 | b3 and b4 unsigned. | ||
| 10 | |||
| 11 | 2011-08-30 Andrew Stubbs <ams@codesourcery.com> | ||
| 12 | |||
| 13 | gcc/ | ||
| 14 | * config/arm/arm.c (arm_gen_constant): Set can_negate correctly | ||
| 15 | when code is SET. | ||
| 16 | |||
| 17 | 2011-08-26 Andrew Stubbs <ams@codesourcery.com> | ||
| 18 | |||
| 19 | gcc/ | ||
| 20 | * config/arm/arm.c (struct four_ints): New type. | ||
| 21 | (count_insns_for_constant): Delete function. | ||
| 22 | (find_best_start): Delete function. | ||
| 23 | (optimal_immediate_sequence): New function. | ||
| 24 | (optimal_immediate_sequence_1): New function. | ||
| 25 | (arm_gen_constant): Move constant splitting code to | ||
| 26 | optimal_immediate_sequence. | ||
| 27 | Rewrite constant negation/invertion code. | ||
| 28 | |||
| 29 | gcc/testsuite/ | ||
| 30 | * gcc.target/arm/thumb2-replicated-constant1.c: New file. | ||
| 31 | * gcc.target/arm/thumb2-replicated-constant2.c: New file. | ||
| 32 | * gcc.target/arm/thumb2-replicated-constant3.c: New file. | ||
| 33 | * gcc.target/arm/thumb2-replicated-constant4.c: New file. | ||
| 34 | |||
| 35 | 2011-08-26 Andrew Stubbs <ams@codesourcery.com> | ||
| 36 | |||
| 37 | gcc/ | ||
| 38 | * config/arm/arm-protos.h (const_ok_for_op): Add prototype. | ||
| 39 | * config/arm/arm.c (const_ok_for_op): Add support for addw/subw. | ||
| 40 | Remove prototype. Remove static function type. | ||
| 41 | * config/arm/arm.md (*arm_addsi3): Add addw/subw support. | ||
| 42 | Add arch attribute. | ||
| 43 | * config/arm/constraints.md (Pj, PJ): New constraints. | ||
| 44 | |||
| 45 | 2011-04-20 Andrew Stubbs <ams@codesourcery.com> | ||
| 46 | |||
| 47 | gcc/ | ||
| 48 | * config/arm/arm.c (arm_gen_constant): Move mowv support .... | ||
| 49 | (const_ok_for_op): ... to here. | ||
| 50 | |||
| 51 | 2011-04-20 Andrew Stubbs <ams@codesourcery.com> | ||
| 52 | |||
| 53 | gcc/ | ||
| 54 | * config/arm/arm.c (arm_gen_constant): Remove redundant can_invert. | ||
| 55 | |||
| 56 | |||
| 57 | === modified file 'gcc/config/arm/arm-protos.h' | ||
| 58 | --- old/gcc/config/arm/arm-protos.h 2011-07-04 14:03:49 +0000 | ||
| 59 | +++ new/gcc/config/arm/arm-protos.h 2011-08-25 13:26:58 +0000 | ||
| 60 | @@ -46,6 +46,7 @@ | ||
| 61 | extern bool arm_small_register_classes_for_mode_p (enum machine_mode); | ||
| 62 | extern int arm_hard_regno_mode_ok (unsigned int, enum machine_mode); | ||
| 63 | extern int const_ok_for_arm (HOST_WIDE_INT); | ||
| 64 | +extern int const_ok_for_op (HOST_WIDE_INT, enum rtx_code); | ||
| 65 | extern int arm_split_constant (RTX_CODE, enum machine_mode, rtx, | ||
| 66 | HOST_WIDE_INT, rtx, rtx, int); | ||
| 67 | extern RTX_CODE arm_canonicalize_comparison (RTX_CODE, rtx *, rtx *); | ||
| 68 | |||
| 69 | === modified file 'gcc/config/arm/arm.c' | ||
| 70 | --- old/gcc/config/arm/arm.c 2011-08-24 17:35:16 +0000 | ||
| 71 | +++ new/gcc/config/arm/arm.c 2011-09-06 12:57:56 +0000 | ||
| 72 | @@ -63,6 +63,11 @@ | ||
| 73 | |||
| 74 | void (*arm_lang_output_object_attributes_hook)(void); | ||
| 75 | |||
| 76 | +struct four_ints | ||
| 77 | +{ | ||
| 78 | + int i[4]; | ||
| 79 | +}; | ||
| 80 | + | ||
| 81 | /* Forward function declarations. */ | ||
| 82 | static bool arm_needs_doubleword_align (enum machine_mode, const_tree); | ||
| 83 | static int arm_compute_static_chain_stack_bytes (void); | ||
| 84 | @@ -81,7 +86,6 @@ | ||
| 85 | static bool arm_legitimate_address_p (enum machine_mode, rtx, bool); | ||
| 86 | static int thumb_far_jump_used_p (void); | ||
| 87 | static bool thumb_force_lr_save (void); | ||
| 88 | -static int const_ok_for_op (HOST_WIDE_INT, enum rtx_code); | ||
| 89 | static rtx emit_sfm (int, int); | ||
| 90 | static unsigned arm_size_return_regs (void); | ||
| 91 | static bool arm_assemble_integer (rtx, unsigned int, int); | ||
| 92 | @@ -129,7 +133,13 @@ | ||
| 93 | static int arm_comp_type_attributes (const_tree, const_tree); | ||
| 94 | static void arm_set_default_type_attributes (tree); | ||
| 95 | static int arm_adjust_cost (rtx, rtx, rtx, int); | ||
| 96 | -static int count_insns_for_constant (HOST_WIDE_INT, int); | ||
| 97 | +static int optimal_immediate_sequence (enum rtx_code code, | ||
| 98 | + unsigned HOST_WIDE_INT val, | ||
| 99 | + struct four_ints *return_sequence); | ||
| 100 | +static int optimal_immediate_sequence_1 (enum rtx_code code, | ||
| 101 | + unsigned HOST_WIDE_INT val, | ||
| 102 | + struct four_ints *return_sequence, | ||
| 103 | + int i); | ||
| 104 | static int arm_get_strip_length (int); | ||
| 105 | static bool arm_function_ok_for_sibcall (tree, tree); | ||
| 106 | static enum machine_mode arm_promote_function_mode (const_tree, | ||
| 107 | @@ -2525,7 +2535,7 @@ | ||
| 108 | } | ||
| 109 | |||
| 110 | /* Return true if I is a valid constant for the operation CODE. */ | ||
| 111 | -static int | ||
| 112 | +int | ||
| 113 | const_ok_for_op (HOST_WIDE_INT i, enum rtx_code code) | ||
| 114 | { | ||
| 115 | if (const_ok_for_arm (i)) | ||
| 116 | @@ -2533,7 +2543,21 @@ | ||
| 117 | |||
| 118 | switch (code) | ||
| 119 | { | ||
| 120 | + case SET: | ||
| 121 | + /* See if we can use movw. */ | ||
| 122 | + if (arm_arch_thumb2 && (i & 0xffff0000) == 0) | ||
| 123 | + return 1; | ||
| 124 | + else | ||
| 125 | + return 0; | ||
| 126 | + | ||
| 127 | case PLUS: | ||
| 128 | + /* See if we can use addw or subw. */ | ||
| 129 | + if (TARGET_THUMB2 | ||
| 130 | + && ((i & 0xfffff000) == 0 | ||
| 131 | + || ((-i) & 0xfffff000) == 0)) | ||
| 132 | + return 1; | ||
| 133 | + /* else fall through. */ | ||
| 134 | + | ||
| 135 | case COMPARE: | ||
| 136 | case EQ: | ||
| 137 | case NE: | ||
| 138 | @@ -2649,68 +2673,41 @@ | ||
| 139 | 1); | ||
| 140 | } | ||
| 141 | |||
| 142 | -/* Return the number of instructions required to synthesize the given | ||
| 143 | - constant, if we start emitting them from bit-position I. */ | ||
| 144 | -static int | ||
| 145 | -count_insns_for_constant (HOST_WIDE_INT remainder, int i) | ||
| 146 | -{ | ||
| 147 | - HOST_WIDE_INT temp1; | ||
| 148 | - int step_size = TARGET_ARM ? 2 : 1; | ||
| 149 | - int num_insns = 0; | ||
| 150 | - | ||
| 151 | - gcc_assert (TARGET_ARM || i == 0); | ||
| 152 | - | ||
| 153 | - do | ||
| 154 | - { | ||
| 155 | - int end; | ||
| 156 | - | ||
| 157 | - if (i <= 0) | ||
| 158 | - i += 32; | ||
| 159 | - if (remainder & (((1 << step_size) - 1) << (i - step_size))) | ||
| 160 | - { | ||
| 161 | - end = i - 8; | ||
| 162 | - if (end < 0) | ||
| 163 | - end += 32; | ||
| 164 | - temp1 = remainder & ((0x0ff << end) | ||
| 165 | - | ((i < end) ? (0xff >> (32 - end)) : 0)); | ||
| 166 | - remainder &= ~temp1; | ||
| 167 | - num_insns++; | ||
| 168 | - i -= 8 - step_size; | ||
| 169 | - } | ||
| 170 | - i -= step_size; | ||
| 171 | - } while (remainder); | ||
| 172 | - return num_insns; | ||
| 173 | -} | ||
| 174 | - | ||
| 175 | -static int | ||
| 176 | -find_best_start (unsigned HOST_WIDE_INT remainder) | ||
| 177 | +/* Return a sequence of integers, in RETURN_SEQUENCE that fit into | ||
| 178 | + ARM/THUMB2 immediates, and add up to VAL. | ||
| 179 | + Thr function return value gives the number of insns required. */ | ||
| 180 | +static int | ||
| 181 | +optimal_immediate_sequence (enum rtx_code code, unsigned HOST_WIDE_INT val, | ||
| 182 | + struct four_ints *return_sequence) | ||
| 183 | { | ||
| 184 | int best_consecutive_zeros = 0; | ||
| 185 | int i; | ||
| 186 | int best_start = 0; | ||
| 187 | + int insns1, insns2; | ||
| 188 | + struct four_ints tmp_sequence; | ||
| 189 | |||
| 190 | /* If we aren't targetting ARM, the best place to start is always at | ||
| 191 | - the bottom. */ | ||
| 192 | - if (! TARGET_ARM) | ||
| 193 | - return 0; | ||
| 194 | - | ||
| 195 | - for (i = 0; i < 32; i += 2) | ||
| 196 | + the bottom, otherwise look more closely. */ | ||
| 197 | + if (TARGET_ARM) | ||
| 198 | { | ||
| 199 | - int consecutive_zeros = 0; | ||
| 200 | - | ||
| 201 | - if (!(remainder & (3 << i))) | ||
| 202 | + for (i = 0; i < 32; i += 2) | ||
| 203 | { | ||
| 204 | - while ((i < 32) && !(remainder & (3 << i))) | ||
| 205 | - { | ||
| 206 | - consecutive_zeros += 2; | ||
| 207 | - i += 2; | ||
| 208 | - } | ||
| 209 | - if (consecutive_zeros > best_consecutive_zeros) | ||
| 210 | - { | ||
| 211 | - best_consecutive_zeros = consecutive_zeros; | ||
| 212 | - best_start = i - consecutive_zeros; | ||
| 213 | - } | ||
| 214 | - i -= 2; | ||
| 215 | + int consecutive_zeros = 0; | ||
| 216 | + | ||
| 217 | + if (!(val & (3 << i))) | ||
| 218 | + { | ||
| 219 | + while ((i < 32) && !(val & (3 << i))) | ||
| 220 | + { | ||
| 221 | + consecutive_zeros += 2; | ||
| 222 | + i += 2; | ||
| 223 | + } | ||
| 224 | + if (consecutive_zeros > best_consecutive_zeros) | ||
| 225 | + { | ||
| 226 | + best_consecutive_zeros = consecutive_zeros; | ||
| 227 | + best_start = i - consecutive_zeros; | ||
| 228 | + } | ||
| 229 | + i -= 2; | ||
| 230 | + } | ||
| 231 | } | ||
| 232 | } | ||
| 233 | |||
| 234 | @@ -2737,13 +2734,161 @@ | ||
| 235 | the constant starting from `best_start', and also starting from | ||
| 236 | zero (i.e. with bit 31 first to be output). If `best_start' doesn't | ||
| 237 | yield a shorter sequence, we may as well use zero. */ | ||
| 238 | + insns1 = optimal_immediate_sequence_1 (code, val, return_sequence, best_start); | ||
| 239 | if (best_start != 0 | ||
| 240 | - && ((((unsigned HOST_WIDE_INT) 1) << best_start) < remainder) | ||
| 241 | - && (count_insns_for_constant (remainder, 0) <= | ||
| 242 | - count_insns_for_constant (remainder, best_start))) | ||
| 243 | - best_start = 0; | ||
| 244 | - | ||
| 245 | - return best_start; | ||
| 246 | + && ((((unsigned HOST_WIDE_INT) 1) << best_start) < val)) | ||
| 247 | + { | ||
| 248 | + insns2 = optimal_immediate_sequence_1 (code, val, &tmp_sequence, 0); | ||
| 249 | + if (insns2 <= insns1) | ||
| 250 | + { | ||
| 251 | + *return_sequence = tmp_sequence; | ||
| 252 | + insns1 = insns2; | ||
| 253 | + } | ||
| 254 | + } | ||
| 255 | + | ||
| 256 | + return insns1; | ||
| 257 | +} | ||
| 258 | + | ||
| 259 | +/* As for optimal_immediate_sequence, but starting at bit-position I. */ | ||
| 260 | +static int | ||
| 261 | +optimal_immediate_sequence_1 (enum rtx_code code, unsigned HOST_WIDE_INT val, | ||
| 262 | + struct four_ints *return_sequence, int i) | ||
| 263 | +{ | ||
| 264 | + int remainder = val & 0xffffffff; | ||
| 265 | + int insns = 0; | ||
| 266 | + | ||
| 267 | + /* Try and find a way of doing the job in either two or three | ||
| 268 | + instructions. | ||
| 269 | + | ||
| 270 | + In ARM mode we can use 8-bit constants, rotated to any 2-bit aligned | ||
| 271 | + location. We start at position I. This may be the MSB, or | ||
| 272 | + optimial_immediate_sequence may have positioned it at the largest block | ||
| 273 | + of zeros that are aligned on a 2-bit boundary. We then fill up the temps, | ||
| 274 | + wrapping around to the top of the word when we drop off the bottom. | ||
| 275 | + In the worst case this code should produce no more than four insns. | ||
| 276 | + | ||
| 277 | + In Thumb2 mode, we can use 32/16-bit replicated constants, and 8-bit | ||
| 278 | + constants, shifted to any arbitrary location. We should always start | ||
| 279 | + at the MSB. */ | ||
| 280 | + do | ||
| 281 | + { | ||
| 282 | + int end; | ||
| 283 | + unsigned int b1, b2, b3, b4; | ||
| 284 | + unsigned HOST_WIDE_INT result; | ||
| 285 | + int loc; | ||
| 286 | + | ||
| 287 | + gcc_assert (insns < 4); | ||
| 288 | + | ||
| 289 | + if (i <= 0) | ||
| 290 | + i += 32; | ||
| 291 | + | ||
| 292 | + /* First, find the next normal 12/8-bit shifted/rotated immediate. */ | ||
| 293 | + if (remainder & ((TARGET_ARM ? (3 << (i - 2)) : (1 << (i - 1))))) | ||
| 294 | + { | ||
| 295 | + loc = i; | ||
| 296 | + if (i <= 12 && TARGET_THUMB2 && code == PLUS) | ||
| 297 | + /* We can use addw/subw for the last 12 bits. */ | ||
| 298 | + result = remainder; | ||
| 299 | + else | ||
| 300 | + { | ||
| 301 | + /* Use an 8-bit shifted/rotated immediate. */ | ||
| 302 | + end = i - 8; | ||
| 303 | + if (end < 0) | ||
| 304 | + end += 32; | ||
| 305 | + result = remainder & ((0x0ff << end) | ||
| 306 | + | ((i < end) ? (0xff >> (32 - end)) | ||
| 307 | + : 0)); | ||
| 308 | + i -= 8; | ||
| 309 | + } | ||
| 310 | + } | ||
| 311 | + else | ||
| 312 | + { | ||
| 313 | + /* Arm allows rotates by a multiple of two. Thumb-2 allows | ||
| 314 | + arbitrary shifts. */ | ||
| 315 | + i -= TARGET_ARM ? 2 : 1; | ||
| 316 | + continue; | ||
| 317 | + } | ||
| 318 | + | ||
| 319 | + /* Next, see if we can do a better job with a thumb2 replicated | ||
| 320 | + constant. | ||
| 321 | + | ||
| 322 | + We do it this way around to catch the cases like 0x01F001E0 where | ||
| 323 | + two 8-bit immediates would work, but a replicated constant would | ||
| 324 | + make it worse. | ||
| 325 | + | ||
| 326 | + TODO: 16-bit constants that don't clear all the bits, but still win. | ||
| 327 | + TODO: Arithmetic splitting for set/add/sub, rather than bitwise. */ | ||
| 328 | + if (TARGET_THUMB2) | ||
| 329 | + { | ||
| 330 | + b1 = (remainder & 0xff000000) >> 24; | ||
| 331 | + b2 = (remainder & 0x00ff0000) >> 16; | ||
| 332 | + b3 = (remainder & 0x0000ff00) >> 8; | ||
| 333 | + b4 = remainder & 0xff; | ||
| 334 | + | ||
| 335 | + if (loc > 24) | ||
| 336 | + { | ||
| 337 | + /* The 8-bit immediate already found clears b1 (and maybe b2), | ||
| 338 | + but must leave b3 and b4 alone. */ | ||
| 339 | + | ||
| 340 | + /* First try to find a 32-bit replicated constant that clears | ||
| 341 | + almost everything. We can assume that we can't do it in one, | ||
| 342 | + or else we wouldn't be here. */ | ||
| 343 | + unsigned int tmp = b1 & b2 & b3 & b4; | ||
| 344 | + unsigned int tmp2 = tmp + (tmp << 8) + (tmp << 16) | ||
| 345 | + + (tmp << 24); | ||
| 346 | + unsigned int matching_bytes = (tmp == b1) + (tmp == b2) | ||
| 347 | + + (tmp == b3) + (tmp == b4); | ||
| 348 | + if (tmp | ||
| 349 | + && (matching_bytes >= 3 | ||
| 350 | + || (matching_bytes == 2 | ||
| 351 | + && const_ok_for_op (remainder & ~tmp2, code)))) | ||
| 352 | + { | ||
| 353 | + /* At least 3 of the bytes match, and the fourth has at | ||
| 354 | + least as many bits set, or two of the bytes match | ||
| 355 | + and it will only require one more insn to finish. */ | ||
| 356 | + result = tmp2; | ||
| 357 | + i = tmp != b1 ? 32 | ||
| 358 | + : tmp != b2 ? 24 | ||
| 359 | + : tmp != b3 ? 16 | ||
| 360 | + : 8; | ||
| 361 | + } | ||
| 362 | + | ||
| 363 | + /* Second, try to find a 16-bit replicated constant that can | ||
| 364 | + leave three of the bytes clear. If b2 or b4 is already | ||
| 365 | + zero, then we can. If the 8-bit from above would not | ||
| 366 | + clear b2 anyway, then we still win. */ | ||
| 367 | + else if (b1 == b3 && (!b2 || !b4 | ||
| 368 | + || (remainder & 0x00ff0000 & ~result))) | ||
| 369 | + { | ||
| 370 | + result = remainder & 0xff00ff00; | ||
| 371 | + i = 24; | ||
| 372 | + } | ||
| 373 | + } | ||
| 374 | + else if (loc > 16) | ||
| 375 | + { | ||
| 376 | + /* The 8-bit immediate already found clears b2 (and maybe b3) | ||
| 377 | + and we don't get here unless b1 is alredy clear, but it will | ||
| 378 | + leave b4 unchanged. */ | ||
| 379 | + | ||
| 380 | + /* If we can clear b2 and b4 at once, then we win, since the | ||
| 381 | + 8-bits couldn't possibly reach that far. */ | ||
| 382 | + if (b2 == b4) | ||
| 383 | + { | ||
| 384 | + result = remainder & 0x00ff00ff; | ||
| 385 | + i = 16; | ||
| 386 | + } | ||
| 387 | + } | ||
| 388 | + } | ||
| 389 | + | ||
| 390 | + return_sequence->i[insns++] = result; | ||
| 391 | + remainder &= ~result; | ||
| 392 | + | ||
| 393 | + if (code == SET || code == MINUS) | ||
| 394 | + code = PLUS; | ||
| 395 | + } | ||
| 396 | + while (remainder); | ||
| 397 | + | ||
| 398 | + return insns; | ||
| 399 | } | ||
| 400 | |||
| 401 | /* Emit an instruction with the indicated PATTERN. If COND is | ||
| 402 | @@ -2760,7 +2905,6 @@ | ||
| 403 | |||
| 404 | /* As above, but extra parameter GENERATE which, if clear, suppresses | ||
| 405 | RTL generation. */ | ||
| 406 | -/* ??? This needs more work for thumb2. */ | ||
| 407 | |||
| 408 | static int | ||
| 409 | arm_gen_constant (enum rtx_code code, enum machine_mode mode, rtx cond, | ||
| 410 | @@ -2772,15 +2916,15 @@ | ||
| 411 | int final_invert = 0; | ||
| 412 | int can_negate_initial = 0; | ||
| 413 | int i; | ||
| 414 | - int num_bits_set = 0; | ||
| 415 | int set_sign_bit_copies = 0; | ||
| 416 | int clear_sign_bit_copies = 0; | ||
| 417 | int clear_zero_bit_copies = 0; | ||
| 418 | int set_zero_bit_copies = 0; | ||
| 419 | - int insns = 0; | ||
| 420 | + int insns = 0, neg_insns, inv_insns; | ||
| 421 | unsigned HOST_WIDE_INT temp1, temp2; | ||
| 422 | unsigned HOST_WIDE_INT remainder = val & 0xffffffff; | ||
| 423 | - int step_size = TARGET_ARM ? 2 : 1; | ||
| 424 | + struct four_ints *immediates; | ||
| 425 | + struct four_ints pos_immediates, neg_immediates, inv_immediates; | ||
| 426 | |||
| 427 | /* Find out which operations are safe for a given CODE. Also do a quick | ||
| 428 | check for degenerate cases; these can occur when DImode operations | ||
| 429 | @@ -2789,7 +2933,6 @@ | ||
| 430 | { | ||
| 431 | case SET: | ||
| 432 | can_invert = 1; | ||
| 433 | - can_negate = 1; | ||
| 434 | break; | ||
| 435 | |||
| 436 | case PLUS: | ||
| 437 | @@ -2817,9 +2960,6 @@ | ||
| 438 | gen_rtx_SET (VOIDmode, target, source)); | ||
| 439 | return 1; | ||
| 440 | } | ||
| 441 | - | ||
| 442 | - if (TARGET_THUMB2) | ||
| 443 | - can_invert = 1; | ||
| 444 | break; | ||
| 445 | |||
| 446 | case AND: | ||
| 447 | @@ -2861,6 +3001,7 @@ | ||
| 448 | gen_rtx_NOT (mode, source))); | ||
| 449 | return 1; | ||
| 450 | } | ||
| 451 | + final_invert = 1; | ||
| 452 | break; | ||
| 453 | |||
| 454 | case MINUS: | ||
| 455 | @@ -2883,7 +3024,6 @@ | ||
| 456 | source))); | ||
| 457 | return 1; | ||
| 458 | } | ||
| 459 | - can_negate = 1; | ||
| 460 | |||
| 461 | break; | ||
| 462 | |||
| 463 | @@ -2892,9 +3032,7 @@ | ||
| 464 | } | ||
| 465 | |||
| 466 | /* If we can do it in one insn get out quickly. */ | ||
| 467 | - if (const_ok_for_arm (val) | ||
| 468 | - || (can_negate_initial && const_ok_for_arm (-val)) | ||
| 469 | - || (can_invert && const_ok_for_arm (~val))) | ||
| 470 | + if (const_ok_for_op (val, code)) | ||
| 471 | { | ||
| 472 | if (generate) | ||
| 473 | emit_constant_insn (cond, | ||
| 474 | @@ -2947,15 +3085,6 @@ | ||
| 475 | switch (code) | ||
| 476 | { | ||
| 477 | case SET: | ||
| 478 | - /* See if we can use movw. */ | ||
| 479 | - if (arm_arch_thumb2 && (remainder & 0xffff0000) == 0) | ||
| 480 | - { | ||
| 481 | - if (generate) | ||
| 482 | - emit_constant_insn (cond, gen_rtx_SET (VOIDmode, target, | ||
| 483 | - GEN_INT (val))); | ||
| 484 | - return 1; | ||
| 485 | - } | ||
| 486 | - | ||
| 487 | /* See if we can do this by sign_extending a constant that is known | ||
| 488 | to be negative. This is a good, way of doing it, since the shift | ||
| 489 | may well merge into a subsequent insn. */ | ||
| 490 | @@ -3306,121 +3435,97 @@ | ||
| 491 | break; | ||
| 492 | } | ||
| 493 | |||
| 494 | - for (i = 0; i < 32; i++) | ||
| 495 | - if (remainder & (1 << i)) | ||
| 496 | - num_bits_set++; | ||
| 497 | - | ||
| 498 | - if ((code == AND) | ||
| 499 | - || (code != IOR && can_invert && num_bits_set > 16)) | ||
| 500 | - remainder ^= 0xffffffff; | ||
| 501 | - else if (code == PLUS && num_bits_set > 16) | ||
| 502 | - remainder = (-remainder) & 0xffffffff; | ||
| 503 | - | ||
| 504 | - /* For XOR, if more than half the bits are set and there's a sequence | ||
| 505 | - of more than 8 consecutive ones in the pattern then we can XOR by the | ||
| 506 | - inverted constant and then invert the final result; this may save an | ||
| 507 | - instruction and might also lead to the final mvn being merged with | ||
| 508 | - some other operation. */ | ||
| 509 | - else if (code == XOR && num_bits_set > 16 | ||
| 510 | - && (count_insns_for_constant (remainder ^ 0xffffffff, | ||
| 511 | - find_best_start | ||
| 512 | - (remainder ^ 0xffffffff)) | ||
| 513 | - < count_insns_for_constant (remainder, | ||
| 514 | - find_best_start (remainder)))) | ||
| 515 | - { | ||
| 516 | - remainder ^= 0xffffffff; | ||
| 517 | - final_invert = 1; | ||
| 518 | + /* Calculate what the instruction sequences would be if we generated it | ||
| 519 | + normally, negated, or inverted. */ | ||
| 520 | + if (code == AND) | ||
| 521 | + /* AND cannot be split into multiple insns, so invert and use BIC. */ | ||
| 522 | + insns = 99; | ||
| 523 | + else | ||
| 524 | + insns = optimal_immediate_sequence (code, remainder, &pos_immediates); | ||
| 525 | + | ||
| 526 | + if (can_negate) | ||
| 527 | + neg_insns = optimal_immediate_sequence (code, (-remainder) & 0xffffffff, | ||
| 528 | + &neg_immediates); | ||
| 529 | + else | ||
| 530 | + neg_insns = 99; | ||
| 531 | + | ||
| 532 | + if (can_invert || final_invert) | ||
| 533 | + inv_insns = optimal_immediate_sequence (code, remainder ^ 0xffffffff, | ||
| 534 | + &inv_immediates); | ||
| 535 | + else | ||
| 536 | + inv_insns = 99; | ||
| 537 | + | ||
| 538 | + immediates = &pos_immediates; | ||
| 539 | + | ||
| 540 | + /* Is the negated immediate sequence more efficient? */ | ||
| 541 | + if (neg_insns < insns && neg_insns <= inv_insns) | ||
| 542 | + { | ||
| 543 | + insns = neg_insns; | ||
| 544 | + immediates = &neg_immediates; | ||
| 545 | + } | ||
| 546 | + else | ||
| 547 | + can_negate = 0; | ||
| 548 | + | ||
| 549 | + /* Is the inverted immediate sequence more efficient? | ||
| 550 | + We must allow for an extra NOT instruction for XOR operations, although | ||
| 551 | + there is some chance that the final 'mvn' will get optimized later. */ | ||
| 552 | + if ((inv_insns + 1) < insns || (!final_invert && inv_insns < insns)) | ||
| 553 | + { | ||
| 554 | + insns = inv_insns; | ||
| 555 | + immediates = &inv_immediates; | ||
| 556 | } | ||
| 557 | else | ||
| 558 | { | ||
| 559 | can_invert = 0; | ||
| 560 | - can_negate = 0; | ||
| 561 | + final_invert = 0; | ||
| 562 | } | ||
| 563 | |||
| 564 | - /* Now try and find a way of doing the job in either two or three | ||
| 565 | - instructions. | ||
| 566 | - We start by looking for the largest block of zeros that are aligned on | ||
| 567 | - a 2-bit boundary, we then fill up the temps, wrapping around to the | ||
| 568 | - top of the word when we drop off the bottom. | ||
| 569 | - In the worst case this code should produce no more than four insns. | ||
| 570 | - Thumb-2 constants are shifted, not rotated, so the MSB is always the | ||
| 571 | - best place to start. */ | ||
| 572 | - | ||
| 573 | - /* ??? Use thumb2 replicated constants when the high and low halfwords are | ||
| 574 | - the same. */ | ||
| 575 | - { | ||
| 576 | - /* Now start emitting the insns. */ | ||
| 577 | - i = find_best_start (remainder); | ||
| 578 | - do | ||
| 579 | - { | ||
| 580 | - int end; | ||
| 581 | - | ||
| 582 | - if (i <= 0) | ||
| 583 | - i += 32; | ||
| 584 | - if (remainder & (3 << (i - 2))) | ||
| 585 | - { | ||
| 586 | - end = i - 8; | ||
| 587 | - if (end < 0) | ||
| 588 | - end += 32; | ||
| 589 | - temp1 = remainder & ((0x0ff << end) | ||
| 590 | - | ((i < end) ? (0xff >> (32 - end)) : 0)); | ||
| 591 | - remainder &= ~temp1; | ||
| 592 | - | ||
| 593 | - if (generate) | ||
| 594 | - { | ||
| 595 | - rtx new_src, temp1_rtx; | ||
| 596 | - | ||
| 597 | - if (code == SET || code == MINUS) | ||
| 598 | - { | ||
| 599 | - new_src = (subtargets ? gen_reg_rtx (mode) : target); | ||
| 600 | - if (can_invert && code != MINUS) | ||
| 601 | - temp1 = ~temp1; | ||
| 602 | - } | ||
| 603 | - else | ||
| 604 | - { | ||
| 605 | - if ((final_invert || remainder) && subtargets) | ||
| 606 | - new_src = gen_reg_rtx (mode); | ||
| 607 | - else | ||
| 608 | - new_src = target; | ||
| 609 | - if (can_invert) | ||
| 610 | - temp1 = ~temp1; | ||
| 611 | - else if (can_negate) | ||
| 612 | - temp1 = -temp1; | ||
| 613 | - } | ||
| 614 | - | ||
| 615 | - temp1 = trunc_int_for_mode (temp1, mode); | ||
| 616 | - temp1_rtx = GEN_INT (temp1); | ||
| 617 | - | ||
| 618 | - if (code == SET) | ||
| 619 | - ; | ||
| 620 | - else if (code == MINUS) | ||
| 621 | - temp1_rtx = gen_rtx_MINUS (mode, temp1_rtx, source); | ||
| 622 | - else | ||
| 623 | - temp1_rtx = gen_rtx_fmt_ee (code, mode, source, temp1_rtx); | ||
| 624 | - | ||
| 625 | - emit_constant_insn (cond, | ||
| 626 | - gen_rtx_SET (VOIDmode, new_src, | ||
| 627 | - temp1_rtx)); | ||
| 628 | - source = new_src; | ||
| 629 | - } | ||
| 630 | - | ||
| 631 | - if (code == SET) | ||
| 632 | - { | ||
| 633 | - can_invert = 0; | ||
| 634 | - code = PLUS; | ||
| 635 | - } | ||
| 636 | - else if (code == MINUS) | ||
| 637 | + /* Now output the chosen sequence as instructions. */ | ||
| 638 | + if (generate) | ||
| 639 | + { | ||
| 640 | + for (i = 0; i < insns; i++) | ||
| 641 | + { | ||
| 642 | + rtx new_src, temp1_rtx; | ||
| 643 | + | ||
| 644 | + temp1 = immediates->i[i]; | ||
| 645 | + | ||
| 646 | + if (code == SET || code == MINUS) | ||
| 647 | + new_src = (subtargets ? gen_reg_rtx (mode) : target); | ||
| 648 | + else if ((final_invert || i < (insns - 1)) && subtargets) | ||
| 649 | + new_src = gen_reg_rtx (mode); | ||
| 650 | + else | ||
| 651 | + new_src = target; | ||
| 652 | + | ||
| 653 | + if (can_invert) | ||
| 654 | + temp1 = ~temp1; | ||
| 655 | + else if (can_negate) | ||
| 656 | + temp1 = -temp1; | ||
| 657 | + | ||
| 658 | + temp1 = trunc_int_for_mode (temp1, mode); | ||
| 659 | + temp1_rtx = GEN_INT (temp1); | ||
| 660 | + | ||
| 661 | + if (code == SET) | ||
| 662 | + ; | ||
| 663 | + else if (code == MINUS) | ||
| 664 | + temp1_rtx = gen_rtx_MINUS (mode, temp1_rtx, source); | ||
| 665 | + else | ||
| 666 | + temp1_rtx = gen_rtx_fmt_ee (code, mode, source, temp1_rtx); | ||
| 667 | + | ||
| 668 | + emit_constant_insn (cond, | ||
| 669 | + gen_rtx_SET (VOIDmode, new_src, | ||
| 670 | + temp1_rtx)); | ||
| 671 | + source = new_src; | ||
| 672 | + | ||
| 673 | + if (code == SET) | ||
| 674 | + { | ||
| 675 | + can_negate = can_invert; | ||
| 676 | + can_invert = 0; | ||
| 677 | code = PLUS; | ||
| 678 | - | ||
| 679 | - insns++; | ||
| 680 | - i -= 8 - step_size; | ||
| 681 | - } | ||
| 682 | - /* Arm allows rotates by a multiple of two. Thumb-2 allows arbitrary | ||
| 683 | - shifts. */ | ||
| 684 | - i -= step_size; | ||
| 685 | - } | ||
| 686 | - while (remainder); | ||
| 687 | - } | ||
| 688 | + } | ||
| 689 | + else if (code == MINUS) | ||
| 690 | + code = PLUS; | ||
| 691 | + } | ||
| 692 | + } | ||
| 693 | |||
| 694 | if (final_invert) | ||
| 695 | { | ||
| 696 | |||
| 697 | === modified file 'gcc/config/arm/arm.md' | ||
| 698 | --- old/gcc/config/arm/arm.md 2011-08-25 11:42:09 +0000 | ||
| 699 | +++ new/gcc/config/arm/arm.md 2011-08-25 13:26:58 +0000 | ||
| 700 | @@ -701,21 +701,24 @@ | ||
| 701 | ;; (plus (reg rN) (reg sp)) into (reg rN). In this case reload will | ||
| 702 | ;; put the duplicated register first, and not try the commutative version. | ||
| 703 | (define_insn_and_split "*arm_addsi3" | ||
| 704 | - [(set (match_operand:SI 0 "s_register_operand" "=r, k,r,r, k,r") | ||
| 705 | - (plus:SI (match_operand:SI 1 "s_register_operand" "%rk,k,r,rk,k,rk") | ||
| 706 | - (match_operand:SI 2 "reg_or_int_operand" "rI,rI,k,L, L,?n")))] | ||
| 707 | + [(set (match_operand:SI 0 "s_register_operand" "=r, k,r,r, k, r, k,r, k, r") | ||
| 708 | + (plus:SI (match_operand:SI 1 "s_register_operand" "%rk,k,r,rk,k, rk,k,rk,k, rk") | ||
| 709 | + (match_operand:SI 2 "reg_or_int_operand" "rI,rI,k,Pj,Pj,L, L,PJ,PJ,?n")))] | ||
| 710 | "TARGET_32BIT" | ||
| 711 | "@ | ||
| 712 | add%?\\t%0, %1, %2 | ||
| 713 | add%?\\t%0, %1, %2 | ||
| 714 | add%?\\t%0, %2, %1 | ||
| 715 | - sub%?\\t%0, %1, #%n2 | ||
| 716 | - sub%?\\t%0, %1, #%n2 | ||
| 717 | + addw%?\\t%0, %1, %2 | ||
| 718 | + addw%?\\t%0, %1, %2 | ||
| 719 | + sub%?\\t%0, %1, #%n2 | ||
| 720 | + sub%?\\t%0, %1, #%n2 | ||
| 721 | + subw%?\\t%0, %1, #%n2 | ||
| 722 | + subw%?\\t%0, %1, #%n2 | ||
| 723 | #" | ||
| 724 | "TARGET_32BIT | ||
| 725 | && GET_CODE (operands[2]) == CONST_INT | ||
| 726 | - && !(const_ok_for_arm (INTVAL (operands[2])) | ||
| 727 | - || const_ok_for_arm (-INTVAL (operands[2]))) | ||
| 728 | + && !const_ok_for_op (INTVAL (operands[2]), PLUS) | ||
| 729 | && (reload_completed || !arm_eliminable_register (operands[1]))" | ||
| 730 | [(clobber (const_int 0))] | ||
| 731 | " | ||
| 732 | @@ -724,8 +727,9 @@ | ||
| 733 | operands[1], 0); | ||
| 734 | DONE; | ||
| 735 | " | ||
| 736 | - [(set_attr "length" "4,4,4,4,4,16") | ||
| 737 | - (set_attr "predicable" "yes")] | ||
| 738 | + [(set_attr "length" "4,4,4,4,4,4,4,4,4,16") | ||
| 739 | + (set_attr "predicable" "yes") | ||
| 740 | + (set_attr "arch" "*,*,*,t2,t2,*,*,t2,t2,*")] | ||
| 741 | ) | ||
| 742 | |||
| 743 | (define_insn_and_split "*thumb1_addsi3" | ||
| 744 | |||
| 745 | === modified file 'gcc/config/arm/constraints.md' | ||
| 746 | --- old/gcc/config/arm/constraints.md 2011-01-03 20:52:22 +0000 | ||
| 747 | +++ new/gcc/config/arm/constraints.md 2011-08-25 13:26:58 +0000 | ||
| 748 | @@ -31,7 +31,7 @@ | ||
| 749 | ;; The following multi-letter normal constraints have been used: | ||
| 750 | ;; in ARM/Thumb-2 state: Da, Db, Dc, Dn, Dl, DL, Dv, Dy, Di, Dz | ||
| 751 | ;; in Thumb-1 state: Pa, Pb, Pc, Pd | ||
| 752 | -;; in Thumb-2 state: Ps, Pt, Pu, Pv, Pw, Px | ||
| 753 | +;; in Thumb-2 state: Pj, PJ, Ps, Pt, Pu, Pv, Pw, Px | ||
| 754 | |||
| 755 | ;; The following memory constraints have been used: | ||
| 756 | ;; in ARM/Thumb-2 state: Q, Ut, Uv, Uy, Un, Um, Us | ||
| 757 | @@ -74,6 +74,18 @@ | ||
| 758 | (and (match_code "const_int") | ||
| 759 | (match_test "(ival & 0xffff0000) == 0"))))) | ||
| 760 | |||
| 761 | +(define_constraint "Pj" | ||
| 762 | + "@internal A 12-bit constant suitable for an ADDW or SUBW instruction. (Thumb-2)" | ||
| 763 | + (and (match_code "const_int") | ||
| 764 | + (and (match_test "TARGET_THUMB2") | ||
| 765 | + (match_test "(ival & 0xfffff000) == 0")))) | ||
| 766 | + | ||
| 767 | +(define_constraint "PJ" | ||
| 768 | + "@internal A constant that satisfies the Pj constrant if negated." | ||
| 769 | + (and (match_code "const_int") | ||
| 770 | + (and (match_test "TARGET_THUMB2") | ||
| 771 | + (match_test "((-ival) & 0xfffff000) == 0")))) | ||
| 772 | + | ||
| 773 | (define_register_constraint "k" "STACK_REG" | ||
| 774 | "@internal The stack register.") | ||
| 775 | |||
| 776 | |||
| 777 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-replicated-constant1.c' | ||
| 778 | --- old/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant1.c 1970-01-01 00:00:00 +0000 | ||
| 779 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant1.c 2011-08-25 13:31:00 +0000 | ||
| 780 | @@ -0,0 +1,27 @@ | ||
| 781 | +/* Ensure simple replicated constant immediates work. */ | ||
| 782 | +/* { dg-options "-mthumb -O2" } */ | ||
| 783 | +/* { dg-require-effective-target arm_thumb2_ok } */ | ||
| 784 | + | ||
| 785 | +int | ||
| 786 | +foo1 (int a) | ||
| 787 | +{ | ||
| 788 | + return a + 0xfefefefe; | ||
| 789 | +} | ||
| 790 | + | ||
| 791 | +/* { dg-final { scan-assembler "add.*#-16843010" } } */ | ||
| 792 | + | ||
| 793 | +int | ||
| 794 | +foo2 (int a) | ||
| 795 | +{ | ||
| 796 | + return a - 0xab00ab00; | ||
| 797 | +} | ||
| 798 | + | ||
| 799 | +/* { dg-final { scan-assembler "sub.*#-1426019584" } } */ | ||
| 800 | + | ||
| 801 | +int | ||
| 802 | +foo3 (int a) | ||
| 803 | +{ | ||
| 804 | + return a & 0x00cd00cd; | ||
| 805 | +} | ||
| 806 | + | ||
| 807 | +/* { dg-final { scan-assembler "and.*#13435085" } } */ | ||
| 808 | |||
| 809 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-replicated-constant2.c' | ||
| 810 | --- old/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant2.c 1970-01-01 00:00:00 +0000 | ||
| 811 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant2.c 2011-08-25 13:31:00 +0000 | ||
| 812 | @@ -0,0 +1,75 @@ | ||
| 813 | +/* Ensure split constants can use replicated patterns. */ | ||
| 814 | +/* { dg-options "-mthumb -O2" } */ | ||
| 815 | +/* { dg-require-effective-target arm_thumb2_ok } */ | ||
| 816 | + | ||
| 817 | +int | ||
| 818 | +foo1 (int a) | ||
| 819 | +{ | ||
| 820 | + return a + 0xfe00fe01; | ||
| 821 | +} | ||
| 822 | + | ||
| 823 | +/* { dg-final { scan-assembler "add.*#-33489408" } } */ | ||
| 824 | +/* { dg-final { scan-assembler "add.*#1" } } */ | ||
| 825 | + | ||
| 826 | +int | ||
| 827 | +foo2 (int a) | ||
| 828 | +{ | ||
| 829 | + return a + 0xdd01dd00; | ||
| 830 | +} | ||
| 831 | + | ||
| 832 | +/* { dg-final { scan-assembler "add.*#-587145984" } } */ | ||
| 833 | +/* { dg-final { scan-assembler "add.*#65536" } } */ | ||
| 834 | + | ||
| 835 | +int | ||
| 836 | +foo3 (int a) | ||
| 837 | +{ | ||
| 838 | + return a + 0x00443344; | ||
| 839 | +} | ||
| 840 | + | ||
| 841 | +/* { dg-final { scan-assembler "add.*#4456516" } } */ | ||
| 842 | +/* { dg-final { scan-assembler "add.*#13056" } } */ | ||
| 843 | + | ||
| 844 | +int | ||
| 845 | +foo4 (int a) | ||
| 846 | +{ | ||
| 847 | + return a + 0x77330033; | ||
| 848 | +} | ||
| 849 | + | ||
| 850 | +/* { dg-final { scan-assembler "add.*#1996488704" } } */ | ||
| 851 | +/* { dg-final { scan-assembler "add.*#3342387" } } */ | ||
| 852 | + | ||
| 853 | +int | ||
| 854 | +foo5 (int a) | ||
| 855 | +{ | ||
| 856 | + return a + 0x11221122; | ||
| 857 | +} | ||
| 858 | + | ||
| 859 | +/* { dg-final { scan-assembler "add.*#285217024" } } */ | ||
| 860 | +/* { dg-final { scan-assembler "add.*#2228258" } } */ | ||
| 861 | + | ||
| 862 | +int | ||
| 863 | +foo6 (int a) | ||
| 864 | +{ | ||
| 865 | + return a + 0x66666677; | ||
| 866 | +} | ||
| 867 | + | ||
| 868 | +/* { dg-final { scan-assembler "add.*#1717986918" } } */ | ||
| 869 | +/* { dg-final { scan-assembler "add.*#17" } } */ | ||
| 870 | + | ||
| 871 | +int | ||
| 872 | +foo7 (int a) | ||
| 873 | +{ | ||
| 874 | + return a + 0x99888888; | ||
| 875 | +} | ||
| 876 | + | ||
| 877 | +/* { dg-final { scan-assembler "add.*#-2004318072" } } */ | ||
| 878 | +/* { dg-final { scan-assembler "add.*#285212672" } } */ | ||
| 879 | + | ||
| 880 | +int | ||
| 881 | +foo8 (int a) | ||
| 882 | +{ | ||
| 883 | + return a + 0xdddddfff; | ||
| 884 | +} | ||
| 885 | + | ||
| 886 | +/* { dg-final { scan-assembler "add.*#-572662307" } } */ | ||
| 887 | +/* { dg-final { scan-assembler "addw.*#546" } } */ | ||
| 888 | |||
| 889 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-replicated-constant3.c' | ||
| 890 | --- old/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant3.c 1970-01-01 00:00:00 +0000 | ||
| 891 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant3.c 2011-08-25 13:31:00 +0000 | ||
| 892 | @@ -0,0 +1,28 @@ | ||
| 893 | +/* Ensure negated/inverted replicated constant immediates work. */ | ||
| 894 | +/* { dg-options "-mthumb -O2" } */ | ||
| 895 | +/* { dg-require-effective-target arm_thumb2_ok } */ | ||
| 896 | + | ||
| 897 | +int | ||
| 898 | +foo1 (int a) | ||
| 899 | +{ | ||
| 900 | + return a | 0xffffff00; | ||
| 901 | +} | ||
| 902 | + | ||
| 903 | +/* { dg-final { scan-assembler "orn.*#255" } } */ | ||
| 904 | + | ||
| 905 | +int | ||
| 906 | +foo2 (int a) | ||
| 907 | +{ | ||
| 908 | + return a & 0xffeeffee; | ||
| 909 | +} | ||
| 910 | + | ||
| 911 | +/* { dg-final { scan-assembler "bic.*#1114129" } } */ | ||
| 912 | + | ||
| 913 | +int | ||
| 914 | +foo3 (int a) | ||
| 915 | +{ | ||
| 916 | + return a & 0xaaaaaa00; | ||
| 917 | +} | ||
| 918 | + | ||
| 919 | +/* { dg-final { scan-assembler "and.*#-1431655766" } } */ | ||
| 920 | +/* { dg-final { scan-assembler "bic.*#170" } } */ | ||
| 921 | |||
| 922 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-replicated-constant4.c' | ||
| 923 | --- old/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant4.c 1970-01-01 00:00:00 +0000 | ||
| 924 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-replicated-constant4.c 2011-08-25 13:31:00 +0000 | ||
| 925 | @@ -0,0 +1,22 @@ | ||
| 926 | +/* Ensure replicated constants don't make things worse. */ | ||
| 927 | +/* { dg-options "-mthumb -O2" } */ | ||
| 928 | +/* { dg-require-effective-target arm_thumb2_ok } */ | ||
| 929 | + | ||
| 930 | +int | ||
| 931 | +foo1 (int a) | ||
| 932 | +{ | ||
| 933 | + /* It might be tempting to use 0x01000100, but it wouldn't help. */ | ||
| 934 | + return a + 0x01f001e0; | ||
| 935 | +} | ||
| 936 | + | ||
| 937 | +/* { dg-final { scan-assembler "add.*#32505856" } } */ | ||
| 938 | +/* { dg-final { scan-assembler "add.*#480" } } */ | ||
| 939 | + | ||
| 940 | +int | ||
| 941 | +foo2 (int a) | ||
| 942 | +{ | ||
| 943 | + return a + 0x0f100e10; | ||
| 944 | +} | ||
| 945 | + | ||
| 946 | +/* { dg-final { scan-assembler "add.*#252706816" } } */ | ||
| 947 | +/* { dg-final { scan-assembler "add.*#3600" } } */ | ||
| 948 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106803.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106803.patch new file mode 100644 index 0000000000..5b36959b6b --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106803.patch | |||
| @@ -0,0 +1,201 @@ | |||
| 1 | 2011-09-12 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | PR target/49030 | ||
| 5 | * config/arm/arm-protos.h (maybe_get_arm_condition_code): Declare. | ||
| 6 | * config/arm/arm.c (maybe_get_arm_condition_code): New function, | ||
| 7 | reusing the old code from get_arm_condition_code. Return ARM_NV | ||
| 8 | for invalid comparison codes. | ||
| 9 | (get_arm_condition_code): Redefine in terms of | ||
| 10 | maybe_get_arm_condition_code. | ||
| 11 | * config/arm/predicates.md (arm_comparison_operator): Use | ||
| 12 | maybe_get_arm_condition_code. | ||
| 13 | |||
| 14 | gcc/testsuite/ | ||
| 15 | PR target/49030 | ||
| 16 | * gcc.dg/torture/pr49030.c: New test. | ||
| 17 | |||
| 18 | === modified file 'gcc/config/arm/arm-protos.h' | ||
| 19 | --- old/gcc/config/arm/arm-protos.h 2011-08-25 13:26:58 +0000 | ||
| 20 | +++ new/gcc/config/arm/arm-protos.h 2011-09-12 11:03:11 +0000 | ||
| 21 | @@ -179,6 +179,7 @@ | ||
| 22 | #endif | ||
| 23 | extern int thumb_shiftable_const (unsigned HOST_WIDE_INT); | ||
| 24 | #ifdef RTX_CODE | ||
| 25 | +extern enum arm_cond_code maybe_get_arm_condition_code (rtx); | ||
| 26 | extern void thumb1_final_prescan_insn (rtx); | ||
| 27 | extern void thumb2_final_prescan_insn (rtx); | ||
| 28 | extern const char *thumb_load_double_from_address (rtx *); | ||
| 29 | |||
| 30 | === modified file 'gcc/config/arm/arm.c' | ||
| 31 | --- old/gcc/config/arm/arm.c 2011-09-06 12:57:56 +0000 | ||
| 32 | +++ new/gcc/config/arm/arm.c 2011-09-12 11:03:11 +0000 | ||
| 33 | @@ -17494,10 +17494,10 @@ | ||
| 34 | decremented/zeroed by arm_asm_output_opcode as the insns are output. */ | ||
| 35 | |||
| 36 | /* Returns the index of the ARM condition code string in | ||
| 37 | - `arm_condition_codes'. COMPARISON should be an rtx like | ||
| 38 | - `(eq (...) (...))'. */ | ||
| 39 | -static enum arm_cond_code | ||
| 40 | -get_arm_condition_code (rtx comparison) | ||
| 41 | + `arm_condition_codes', or ARM_NV if the comparison is invalid. | ||
| 42 | + COMPARISON should be an rtx like `(eq (...) (...))'. */ | ||
| 43 | +enum arm_cond_code | ||
| 44 | +maybe_get_arm_condition_code (rtx comparison) | ||
| 45 | { | ||
| 46 | enum machine_mode mode = GET_MODE (XEXP (comparison, 0)); | ||
| 47 | enum arm_cond_code code; | ||
| 48 | @@ -17521,11 +17521,11 @@ | ||
| 49 | case CC_DLTUmode: code = ARM_CC; | ||
| 50 | |||
| 51 | dominance: | ||
| 52 | - gcc_assert (comp_code == EQ || comp_code == NE); | ||
| 53 | - | ||
| 54 | if (comp_code == EQ) | ||
| 55 | return ARM_INVERSE_CONDITION_CODE (code); | ||
| 56 | - return code; | ||
| 57 | + if (comp_code == NE) | ||
| 58 | + return code; | ||
| 59 | + return ARM_NV; | ||
| 60 | |||
| 61 | case CC_NOOVmode: | ||
| 62 | switch (comp_code) | ||
| 63 | @@ -17534,7 +17534,7 @@ | ||
| 64 | case EQ: return ARM_EQ; | ||
| 65 | case GE: return ARM_PL; | ||
| 66 | case LT: return ARM_MI; | ||
| 67 | - default: gcc_unreachable (); | ||
| 68 | + default: return ARM_NV; | ||
| 69 | } | ||
| 70 | |||
| 71 | case CC_Zmode: | ||
| 72 | @@ -17542,7 +17542,7 @@ | ||
| 73 | { | ||
| 74 | case NE: return ARM_NE; | ||
| 75 | case EQ: return ARM_EQ; | ||
| 76 | - default: gcc_unreachable (); | ||
| 77 | + default: return ARM_NV; | ||
| 78 | } | ||
| 79 | |||
| 80 | case CC_Nmode: | ||
| 81 | @@ -17550,7 +17550,7 @@ | ||
| 82 | { | ||
| 83 | case NE: return ARM_MI; | ||
| 84 | case EQ: return ARM_PL; | ||
| 85 | - default: gcc_unreachable (); | ||
| 86 | + default: return ARM_NV; | ||
| 87 | } | ||
| 88 | |||
| 89 | case CCFPEmode: | ||
| 90 | @@ -17575,7 +17575,7 @@ | ||
| 91 | /* UNEQ and LTGT do not have a representation. */ | ||
| 92 | case UNEQ: /* Fall through. */ | ||
| 93 | case LTGT: /* Fall through. */ | ||
| 94 | - default: gcc_unreachable (); | ||
| 95 | + default: return ARM_NV; | ||
| 96 | } | ||
| 97 | |||
| 98 | case CC_SWPmode: | ||
| 99 | @@ -17591,7 +17591,7 @@ | ||
| 100 | case GTU: return ARM_CC; | ||
| 101 | case LEU: return ARM_CS; | ||
| 102 | case LTU: return ARM_HI; | ||
| 103 | - default: gcc_unreachable (); | ||
| 104 | + default: return ARM_NV; | ||
| 105 | } | ||
| 106 | |||
| 107 | case CC_Cmode: | ||
| 108 | @@ -17599,7 +17599,7 @@ | ||
| 109 | { | ||
| 110 | case LTU: return ARM_CS; | ||
| 111 | case GEU: return ARM_CC; | ||
| 112 | - default: gcc_unreachable (); | ||
| 113 | + default: return ARM_NV; | ||
| 114 | } | ||
| 115 | |||
| 116 | case CC_CZmode: | ||
| 117 | @@ -17611,7 +17611,7 @@ | ||
| 118 | case GTU: return ARM_HI; | ||
| 119 | case LEU: return ARM_LS; | ||
| 120 | case LTU: return ARM_CC; | ||
| 121 | - default: gcc_unreachable (); | ||
| 122 | + default: return ARM_NV; | ||
| 123 | } | ||
| 124 | |||
| 125 | case CC_NCVmode: | ||
| 126 | @@ -17621,7 +17621,7 @@ | ||
| 127 | case LT: return ARM_LT; | ||
| 128 | case GEU: return ARM_CS; | ||
| 129 | case LTU: return ARM_CC; | ||
| 130 | - default: gcc_unreachable (); | ||
| 131 | + default: return ARM_NV; | ||
| 132 | } | ||
| 133 | |||
| 134 | case CCmode: | ||
| 135 | @@ -17637,13 +17637,22 @@ | ||
| 136 | case GTU: return ARM_HI; | ||
| 137 | case LEU: return ARM_LS; | ||
| 138 | case LTU: return ARM_CC; | ||
| 139 | - default: gcc_unreachable (); | ||
| 140 | + default: return ARM_NV; | ||
| 141 | } | ||
| 142 | |||
| 143 | default: gcc_unreachable (); | ||
| 144 | } | ||
| 145 | } | ||
| 146 | |||
| 147 | +/* Like maybe_get_arm_condition_code, but never return ARM_NV. */ | ||
| 148 | +static enum arm_cond_code | ||
| 149 | +get_arm_condition_code (rtx comparison) | ||
| 150 | +{ | ||
| 151 | + enum arm_cond_code code = maybe_get_arm_condition_code (comparison); | ||
| 152 | + gcc_assert (code != ARM_NV); | ||
| 153 | + return code; | ||
| 154 | +} | ||
| 155 | + | ||
| 156 | /* Tell arm_asm_output_opcode to output IT blocks for conditionally executed | ||
| 157 | instructions. */ | ||
| 158 | void | ||
| 159 | |||
| 160 | === modified file 'gcc/config/arm/predicates.md' | ||
| 161 | --- old/gcc/config/arm/predicates.md 2011-08-13 08:40:36 +0000 | ||
| 162 | +++ new/gcc/config/arm/predicates.md 2011-09-05 09:40:19 +0000 | ||
| 163 | @@ -242,10 +242,9 @@ | ||
| 164 | ;; True for integer comparisons and, if FP is active, for comparisons | ||
| 165 | ;; other than LTGT or UNEQ. | ||
| 166 | (define_special_predicate "arm_comparison_operator" | ||
| 167 | - (ior (match_code "eq,ne,le,lt,ge,gt,geu,gtu,leu,ltu") | ||
| 168 | - (and (match_test "TARGET_32BIT && TARGET_HARD_FLOAT | ||
| 169 | - && (TARGET_FPA || TARGET_VFP)") | ||
| 170 | - (match_code "unordered,ordered,unlt,unle,unge,ungt")))) | ||
| 171 | + (and (match_code "eq,ne,le,lt,ge,gt,geu,gtu,leu,ltu, | ||
| 172 | + unordered,ordered,unlt,unle,unge,ungt") | ||
| 173 | + (match_test "maybe_get_arm_condition_code (op) != ARM_NV"))) | ||
| 174 | |||
| 175 | (define_special_predicate "lt_ge_comparison_operator" | ||
| 176 | (match_code "lt,ge")) | ||
| 177 | |||
| 178 | === added file 'gcc/testsuite/gcc.dg/torture/pr49030.c' | ||
| 179 | --- old/gcc/testsuite/gcc.dg/torture/pr49030.c 1970-01-01 00:00:00 +0000 | ||
| 180 | +++ new/gcc/testsuite/gcc.dg/torture/pr49030.c 2011-09-05 09:40:19 +0000 | ||
| 181 | @@ -0,0 +1,19 @@ | ||
| 182 | +void | ||
| 183 | +sample_move_d32u24_sS (char *dst, float *src, unsigned long nsamples, | ||
| 184 | + unsigned long dst_skip) | ||
| 185 | +{ | ||
| 186 | + long long y; | ||
| 187 | + while (nsamples--) | ||
| 188 | + { | ||
| 189 | + y = (long long) (*src * 8388608.0f) << 8; | ||
| 190 | + if (y > 2147483647) { | ||
| 191 | + *(int *) dst = 2147483647; | ||
| 192 | + } else if (y < -2147483647 - 1) { | ||
| 193 | + *(int *) dst = -2147483647 - 1; | ||
| 194 | + } else { | ||
| 195 | + *(int *) dst = (int) y; | ||
| 196 | + } | ||
| 197 | + dst += dst_skip; | ||
| 198 | + src++; | ||
| 199 | + } | ||
| 200 | +} | ||
| 201 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106804.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106804.patch new file mode 100644 index 0000000000..09d0767914 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106804.patch | |||
| @@ -0,0 +1,38 @@ | |||
| 1 | 2011-09-01 Andrew Stubbs <ams@codesourcery.com> | ||
| 2 | |||
| 3 | gcc/ | ||
| 4 | * config/arm/predicates.md (shift_amount_operand): Ensure shift | ||
| 5 | amount is positive. | ||
| 6 | |||
| 7 | gcc/testsuite/ | ||
| 8 | * gcc.dg/pr50193-1.c: New file. | ||
| 9 | |||
| 10 | === modified file 'gcc/config/arm/predicates.md' | ||
| 11 | --- old/gcc/config/arm/predicates.md 2011-09-05 09:40:19 +0000 | ||
| 12 | +++ new/gcc/config/arm/predicates.md 2011-09-12 11:24:34 +0000 | ||
| 13 | @@ -132,7 +132,8 @@ | ||
| 14 | (define_predicate "shift_amount_operand" | ||
| 15 | (ior (and (match_test "TARGET_ARM") | ||
| 16 | (match_operand 0 "s_register_operand")) | ||
| 17 | - (match_operand 0 "const_int_operand"))) | ||
| 18 | + (and (match_operand 0 "const_int_operand") | ||
| 19 | + (match_test "INTVAL (op) > 0")))) | ||
| 20 | |||
| 21 | (define_predicate "arm_add_operand" | ||
| 22 | (ior (match_operand 0 "arm_rhs_operand") | ||
| 23 | |||
| 24 | === added file 'gcc/testsuite/gcc.dg/pr50193-1.c' | ||
| 25 | --- old/gcc/testsuite/gcc.dg/pr50193-1.c 1970-01-01 00:00:00 +0000 | ||
| 26 | +++ new/gcc/testsuite/gcc.dg/pr50193-1.c 2011-09-01 12:22:14 +0000 | ||
| 27 | @@ -0,0 +1,10 @@ | ||
| 28 | +/* PR 50193: ARM: ICE on a | (b << negative-constant) */ | ||
| 29 | +/* Ensure that the compiler doesn't ICE. */ | ||
| 30 | + | ||
| 31 | +/* { dg-options "-O2" } */ | ||
| 32 | + | ||
| 33 | +int | ||
| 34 | +foo(int a, int b) | ||
| 35 | +{ | ||
| 36 | + return a | (b << -3); /* { dg-warning "left shift count is negative" } */ | ||
| 37 | +} | ||
| 38 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106805.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106805.patch new file mode 100644 index 0000000000..5dec32fa71 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106805.patch | |||
| @@ -0,0 +1,47 @@ | |||
| 1 | 2011-09-12 Andrew Stubbs <ams@codesourcery.com> | ||
| 2 | |||
| 3 | Backport from FSF mainline: | ||
| 4 | |||
| 5 | 2011-09-08 Andrew Stubbs <ams@codesourcery.com> | ||
| 6 | |||
| 7 | PR tree-optimization/50318 | ||
| 8 | |||
| 9 | gcc/ | ||
| 10 | * tree-ssa-math-opts.c (convert_plusminus_to_widen): Correct | ||
| 11 | typo in use of mult_rhs1 and mult_rhs2. | ||
| 12 | |||
| 13 | gcc/testsuite/ | ||
| 14 | * gcc.target/arm/pr50318-1.c: New file. | ||
| 15 | |||
| 16 | === added file 'gcc/testsuite/gcc.target/arm/pr50318-1.c' | ||
| 17 | --- old/gcc/testsuite/gcc.target/arm/pr50318-1.c 1970-01-01 00:00:00 +0000 | ||
| 18 | +++ new/gcc/testsuite/gcc.target/arm/pr50318-1.c 2011-09-08 20:11:43 +0000 | ||
| 19 | @@ -0,0 +1,11 @@ | ||
| 20 | +/* { dg-do compile } */ | ||
| 21 | +/* { dg-options "-O2" } */ | ||
| 22 | +/* { dg-require-effective-target arm_dsp } */ | ||
| 23 | + | ||
| 24 | +long long test (unsigned int sec, unsigned long long nsecs) | ||
| 25 | +{ | ||
| 26 | + return (long long)(long)sec * 1000000000L + (long long)(unsigned | ||
| 27 | + long)nsecs; | ||
| 28 | +} | ||
| 29 | + | ||
| 30 | +/* { dg-final { scan-assembler "umlal" } } */ | ||
| 31 | |||
| 32 | === modified file 'gcc/tree-ssa-math-opts.c' | ||
| 33 | --- old/gcc/tree-ssa-math-opts.c 2011-08-09 10:26:48 +0000 | ||
| 34 | +++ new/gcc/tree-ssa-math-opts.c 2011-09-08 20:11:43 +0000 | ||
| 35 | @@ -1699,9 +1699,9 @@ | ||
| 36 | |||
| 37 | /* Handle constants. */ | ||
| 38 | if (TREE_CODE (mult_rhs1) == INTEGER_CST) | ||
| 39 | - rhs1 = fold_convert (type1, mult_rhs1); | ||
| 40 | + mult_rhs1 = fold_convert (type1, mult_rhs1); | ||
| 41 | if (TREE_CODE (mult_rhs2) == INTEGER_CST) | ||
| 42 | - rhs2 = fold_convert (type2, mult_rhs2); | ||
| 43 | + mult_rhs2 = fold_convert (type2, mult_rhs2); | ||
| 44 | |||
| 45 | gimple_assign_set_rhs_with_ops_1 (gsi, wmult_code, mult_rhs1, mult_rhs2, | ||
| 46 | add_rhs); | ||
| 47 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106806.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106806.patch new file mode 100644 index 0000000000..2b96854c95 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106806.patch | |||
| @@ -0,0 +1,92 @@ | |||
| 1 | 2011-09-12 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 2 | |||
| 3 | gcc/testsuite/ | ||
| 4 | * gcc.target/arm/pr50099.c: Fix testcase from previous commit. | ||
| 5 | |||
| 6 | 2011-09-12 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 7 | |||
| 8 | LP:838994 | ||
| 9 | gcc/ | ||
| 10 | Backport from mainline. | ||
| 11 | |||
| 12 | 2011-09-06 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 13 | |||
| 14 | PR target/50099 | ||
| 15 | * config/arm/iterators.md (qhs_zextenddi_cstr): New. | ||
| 16 | (qhs_zextenddi_op): New. | ||
| 17 | * config/arm/arm.md ("zero_extend<mode>di2"): Use them. | ||
| 18 | * config/arm/predicates.md ("arm_extendqisi_mem_op"): | ||
| 19 | Distinguish between ARM and Thumb2 states. | ||
| 20 | |||
| 21 | gcc/testsuite/ | ||
| 22 | * gcc.target/arm/pr50099.c: New test. | ||
| 23 | |||
| 24 | === modified file 'gcc/config/arm/arm.md' | ||
| 25 | --- old/gcc/config/arm/arm.md 2011-08-25 13:26:58 +0000 | ||
| 26 | +++ new/gcc/config/arm/arm.md 2011-09-12 12:32:29 +0000 | ||
| 27 | @@ -4136,8 +4136,8 @@ | ||
| 28 | |||
| 29 | (define_insn "zero_extend<mode>di2" | ||
| 30 | [(set (match_operand:DI 0 "s_register_operand" "=r") | ||
| 31 | - (zero_extend:DI (match_operand:QHSI 1 "<qhs_extenddi_op>" | ||
| 32 | - "<qhs_extenddi_cstr>")))] | ||
| 33 | + (zero_extend:DI (match_operand:QHSI 1 "<qhs_zextenddi_op>" | ||
| 34 | + "<qhs_zextenddi_cstr>")))] | ||
| 35 | "TARGET_32BIT <qhs_zextenddi_cond>" | ||
| 36 | "#" | ||
| 37 | [(set_attr "length" "8") | ||
| 38 | |||
| 39 | === modified file 'gcc/config/arm/iterators.md' | ||
| 40 | --- old/gcc/config/arm/iterators.md 2011-05-03 15:14:56 +0000 | ||
| 41 | +++ new/gcc/config/arm/iterators.md 2011-09-06 14:29:24 +0000 | ||
| 42 | @@ -379,10 +379,14 @@ | ||
| 43 | (define_mode_attr qhs_zextenddi_cond [(SI "") (HI "&& arm_arch6") (QI "")]) | ||
| 44 | (define_mode_attr qhs_sextenddi_cond [(SI "") (HI "&& arm_arch6") | ||
| 45 | (QI "&& arm_arch6")]) | ||
| 46 | +(define_mode_attr qhs_zextenddi_op [(SI "s_register_operand") | ||
| 47 | + (HI "nonimmediate_operand") | ||
| 48 | + (QI "nonimmediate_operand")]) | ||
| 49 | (define_mode_attr qhs_extenddi_op [(SI "s_register_operand") | ||
| 50 | (HI "nonimmediate_operand") | ||
| 51 | - (QI "nonimmediate_operand")]) | ||
| 52 | -(define_mode_attr qhs_extenddi_cstr [(SI "r") (HI "rm") (QI "rm")]) | ||
| 53 | + (QI "arm_reg_or_extendqisi_mem_op")]) | ||
| 54 | +(define_mode_attr qhs_extenddi_cstr [(SI "r") (HI "rm") (QI "rUq")]) | ||
| 55 | +(define_mode_attr qhs_zextenddi_cstr [(SI "r") (HI "rm") (QI "rm")]) | ||
| 56 | |||
| 57 | ;;---------------------------------------------------------------------------- | ||
| 58 | ;; Code attributes | ||
| 59 | |||
| 60 | === modified file 'gcc/config/arm/predicates.md' | ||
| 61 | --- old/gcc/config/arm/predicates.md 2011-09-12 11:24:34 +0000 | ||
| 62 | +++ new/gcc/config/arm/predicates.md 2011-09-12 12:32:29 +0000 | ||
| 63 | @@ -289,8 +289,11 @@ | ||
| 64 | |||
| 65 | (define_special_predicate "arm_extendqisi_mem_op" | ||
| 66 | (and (match_operand 0 "memory_operand") | ||
| 67 | - (match_test "arm_legitimate_address_outer_p (mode, XEXP (op, 0), | ||
| 68 | - SIGN_EXTEND, 0)"))) | ||
| 69 | + (match_test "TARGET_ARM ? arm_legitimate_address_outer_p (mode, | ||
| 70 | + XEXP (op, 0), | ||
| 71 | + SIGN_EXTEND, | ||
| 72 | + 0) | ||
| 73 | + : memory_address_p (QImode, XEXP (op, 0))"))) | ||
| 74 | |||
| 75 | (define_special_predicate "arm_reg_or_extendqisi_mem_op" | ||
| 76 | (ior (match_operand 0 "arm_extendqisi_mem_op") | ||
| 77 | |||
| 78 | === added file 'gcc/testsuite/gcc.target/arm/pr50099.c' | ||
| 79 | --- old/gcc/testsuite/gcc.target/arm/pr50099.c 1970-01-01 00:00:00 +0000 | ||
| 80 | +++ new/gcc/testsuite/gcc.target/arm/pr50099.c 2011-09-09 16:42:45 +0000 | ||
| 81 | @@ -0,0 +1,10 @@ | ||
| 82 | +/* { dg-do compile } */ | ||
| 83 | +/* { dg-options "-O2" } */ | ||
| 84 | + | ||
| 85 | +long long foo (signed char * arg) | ||
| 86 | +{ | ||
| 87 | + long long temp_1; | ||
| 88 | + | ||
| 89 | + temp_1 = arg[256]; | ||
| 90 | + return temp_1; | ||
| 91 | +} | ||
| 92 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106807.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106807.patch new file mode 100644 index 0000000000..9474030f57 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106807.patch | |||
| @@ -0,0 +1,767 @@ | |||
| 1 | 2011-08-26 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 2 | |||
| 3 | Backport from FSF mainline: | ||
| 4 | 2011-04-06 Wei Guozhi <carrot@google.com> | ||
| 5 | |||
| 6 | PR target/47855 | ||
| 7 | gcc/ | ||
| 8 | * config/arm/arm.md (arm_cmpsi_insn): Compute attr "length". | ||
| 9 | (arm_cond_branch): Likewise. | ||
| 10 | (arm_cond_branch_reversed): Likewise. | ||
| 11 | (arm_jump): Likewise. | ||
| 12 | (push_multi): Likewise. | ||
| 13 | * config/arm/constraints.md (Py): New constraint. | ||
| 14 | |||
| 15 | 2011-04-08 Wei Guozhi <carrot@google.com> | ||
| 16 | |||
| 17 | PR target/47855 | ||
| 18 | * config/arm/arm-protos.h (arm_attr_length_push_multi): New prototype. | ||
| 19 | * config/arm/arm.c (arm_attr_length_push_multi): New function. | ||
| 20 | * config/arm/arm.md (*push_multi): Change the length computation to | ||
| 21 | call a C function. | ||
| 22 | |||
| 23 | 2011-08-26 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> | ||
| 24 | |||
| 25 | Backport from FSF mainline: | ||
| 26 | |||
| 27 | 2011-08-18 Jiangning Liu <jiangning.liu@arm.com> | ||
| 28 | |||
| 29 | gcc/ | ||
| 30 | * config/arm/arm.md (*ior_scc_scc): Enable for Thumb2 as well. | ||
| 31 | (*ior_scc_scc_cmp): Likewise | ||
| 32 | (*and_scc_scc): Likewise. | ||
| 33 | (*and_scc_scc_cmp): Likewise. | ||
| 34 | (*and_scc_scc_nodom): Likewise. | ||
| 35 | (*cmp_ite0, *cmp_ite1, *cmp_and, *cmp_ior): Handle Thumb2. | ||
| 36 | |||
| 37 | gcc/testsuite | ||
| 38 | * gcc.target/arm/thumb2-cond-cmp-1.c: New. Make sure conditional | ||
| 39 | compare can be generated. | ||
| 40 | * gcc.target/arm/thumb2-cond-cmp-2.c: Likewise. | ||
| 41 | * gcc.target/arm/thumb2-cond-cmp-3.c: Likewise. | ||
| 42 | * gcc.target/arm/thumb2-cond-cmp-4.c: Likewise. | ||
| 43 | |||
| 44 | === modified file 'gcc/config/arm/arm-protos.h' | ||
| 45 | --- old/gcc/config/arm/arm-protos.h 2011-09-12 11:03:11 +0000 | ||
| 46 | +++ new/gcc/config/arm/arm-protos.h 2011-09-12 14:14:00 +0000 | ||
| 47 | @@ -156,6 +156,7 @@ | ||
| 48 | extern const char *arm_output_memory_barrier (rtx *); | ||
| 49 | extern const char *arm_output_sync_insn (rtx, rtx *); | ||
| 50 | extern unsigned int arm_sync_loop_insns (rtx , rtx *); | ||
| 51 | +extern int arm_attr_length_push_multi(rtx, rtx); | ||
| 52 | |||
| 53 | #if defined TREE_CODE | ||
| 54 | extern void arm_init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx, tree); | ||
| 55 | |||
| 56 | === modified file 'gcc/config/arm/arm.c' | ||
| 57 | --- old/gcc/config/arm/arm.c 2011-09-12 11:03:11 +0000 | ||
| 58 | +++ new/gcc/config/arm/arm.c 2011-09-12 14:14:00 +0000 | ||
| 59 | @@ -24391,4 +24391,30 @@ | ||
| 60 | return NO_REGS; | ||
| 61 | } | ||
| 62 | |||
| 63 | +/* Compute the atrribute "length" of insn "*push_multi". | ||
| 64 | + So this function MUST be kept in sync with that insn pattern. */ | ||
| 65 | +int | ||
| 66 | +arm_attr_length_push_multi(rtx parallel_op, rtx first_op) | ||
| 67 | +{ | ||
| 68 | + int i, regno, hi_reg; | ||
| 69 | + int num_saves = XVECLEN (parallel_op, 0); | ||
| 70 | + | ||
| 71 | + /* ARM mode. */ | ||
| 72 | + if (TARGET_ARM) | ||
| 73 | + return 4; | ||
| 74 | + | ||
| 75 | + /* Thumb2 mode. */ | ||
| 76 | + regno = REGNO (first_op); | ||
| 77 | + hi_reg = (REGNO_REG_CLASS (regno) == HI_REGS) && (regno != LR_REGNUM); | ||
| 78 | + for (i = 1; i < num_saves && !hi_reg; i++) | ||
| 79 | + { | ||
| 80 | + regno = REGNO (XEXP (XVECEXP (parallel_op, 0, i), 0)); | ||
| 81 | + hi_reg |= (REGNO_REG_CLASS (regno) == HI_REGS) && (regno != LR_REGNUM); | ||
| 82 | + } | ||
| 83 | + | ||
| 84 | + if (!hi_reg) | ||
| 85 | + return 2; | ||
| 86 | + return 4; | ||
| 87 | +} | ||
| 88 | + | ||
| 89 | #include "gt-arm.h" | ||
| 90 | |||
| 91 | === modified file 'gcc/config/arm/arm.md' | ||
| 92 | --- old/gcc/config/arm/arm.md 2011-09-12 12:32:29 +0000 | ||
| 93 | +++ new/gcc/config/arm/arm.md 2011-09-12 14:14:00 +0000 | ||
| 94 | @@ -48,6 +48,15 @@ | ||
| 95 | (DOM_CC_X_OR_Y 2) | ||
| 96 | ] | ||
| 97 | ) | ||
| 98 | +;; conditional compare combination | ||
| 99 | +(define_constants | ||
| 100 | + [(CMP_CMP 0) | ||
| 101 | + (CMN_CMP 1) | ||
| 102 | + (CMP_CMN 2) | ||
| 103 | + (CMN_CMN 3) | ||
| 104 | + (NUM_OF_COND_CMP 4) | ||
| 105 | + ] | ||
| 106 | +) | ||
| 107 | |||
| 108 | ;; UNSPEC Usage: | ||
| 109 | ;; Note: sin and cos are no-longer used. | ||
| 110 | @@ -7198,13 +7207,17 @@ | ||
| 111 | |||
| 112 | (define_insn "*arm_cmpsi_insn" | ||
| 113 | [(set (reg:CC CC_REGNUM) | ||
| 114 | - (compare:CC (match_operand:SI 0 "s_register_operand" "r,r") | ||
| 115 | - (match_operand:SI 1 "arm_add_operand" "rI,L")))] | ||
| 116 | + (compare:CC (match_operand:SI 0 "s_register_operand" "l,r,r,r") | ||
| 117 | + (match_operand:SI 1 "arm_add_operand" "Py,r,rI,L")))] | ||
| 118 | "TARGET_32BIT" | ||
| 119 | "@ | ||
| 120 | cmp%?\\t%0, %1 | ||
| 121 | + cmp%?\\t%0, %1 | ||
| 122 | + cmp%?\\t%0, %1 | ||
| 123 | cmn%?\\t%0, #%n1" | ||
| 124 | - [(set_attr "conds" "set")] | ||
| 125 | + [(set_attr "conds" "set") | ||
| 126 | + (set_attr "arch" "t2,t2,any,any") | ||
| 127 | + (set_attr "length" "2,2,4,4")] | ||
| 128 | ) | ||
| 129 | |||
| 130 | (define_insn "*cmpsi_shiftsi" | ||
| 131 | @@ -7375,7 +7388,14 @@ | ||
| 132 | return \"b%d1\\t%l0\"; | ||
| 133 | " | ||
| 134 | [(set_attr "conds" "use") | ||
| 135 | - (set_attr "type" "branch")] | ||
| 136 | + (set_attr "type" "branch") | ||
| 137 | + (set (attr "length") | ||
| 138 | + (if_then_else | ||
| 139 | + (and (ne (symbol_ref "TARGET_THUMB2") (const_int 0)) | ||
| 140 | + (and (ge (minus (match_dup 0) (pc)) (const_int -250)) | ||
| 141 | + (le (minus (match_dup 0) (pc)) (const_int 256)))) | ||
| 142 | + (const_int 2) | ||
| 143 | + (const_int 4)))] | ||
| 144 | ) | ||
| 145 | |||
| 146 | (define_insn "*arm_cond_branch_reversed" | ||
| 147 | @@ -7394,7 +7414,14 @@ | ||
| 148 | return \"b%D1\\t%l0\"; | ||
| 149 | " | ||
| 150 | [(set_attr "conds" "use") | ||
| 151 | - (set_attr "type" "branch")] | ||
| 152 | + (set_attr "type" "branch") | ||
| 153 | + (set (attr "length") | ||
| 154 | + (if_then_else | ||
| 155 | + (and (ne (symbol_ref "TARGET_THUMB2") (const_int 0)) | ||
| 156 | + (and (ge (minus (match_dup 0) (pc)) (const_int -250)) | ||
| 157 | + (le (minus (match_dup 0) (pc)) (const_int 256)))) | ||
| 158 | + (const_int 2) | ||
| 159 | + (const_int 4)))] | ||
| 160 | ) | ||
| 161 | |||
| 162 | |||
| 163 | @@ -7846,7 +7873,14 @@ | ||
| 164 | return \"b%?\\t%l0\"; | ||
| 165 | } | ||
| 166 | " | ||
| 167 | - [(set_attr "predicable" "yes")] | ||
| 168 | + [(set_attr "predicable" "yes") | ||
| 169 | + (set (attr "length") | ||
| 170 | + (if_then_else | ||
| 171 | + (and (ne (symbol_ref "TARGET_THUMB2") (const_int 0)) | ||
| 172 | + (and (ge (minus (match_dup 0) (pc)) (const_int -2044)) | ||
| 173 | + (le (minus (match_dup 0) (pc)) (const_int 2048)))) | ||
| 174 | + (const_int 2) | ||
| 175 | + (const_int 4)))] | ||
| 176 | ) | ||
| 177 | |||
| 178 | (define_insn "*thumb_jump" | ||
| 179 | @@ -8931,40 +8965,85 @@ | ||
| 180 | (set_attr "length" "8,12")] | ||
| 181 | ) | ||
| 182 | |||
| 183 | -;; ??? Is it worth using these conditional patterns in Thumb-2 mode? | ||
| 184 | (define_insn "*cmp_ite0" | ||
| 185 | [(set (match_operand 6 "dominant_cc_register" "") | ||
| 186 | (compare | ||
| 187 | (if_then_else:SI | ||
| 188 | (match_operator 4 "arm_comparison_operator" | ||
| 189 | - [(match_operand:SI 0 "s_register_operand" "r,r,r,r") | ||
| 190 | - (match_operand:SI 1 "arm_add_operand" "rI,L,rI,L")]) | ||
| 191 | + [(match_operand:SI 0 "s_register_operand" | ||
| 192 | + "l,l,l,r,r,r,r,r,r") | ||
| 193 | + (match_operand:SI 1 "arm_add_operand" | ||
| 194 | + "lPy,lPy,lPy,rI,L,rI,L,rI,L")]) | ||
| 195 | (match_operator:SI 5 "arm_comparison_operator" | ||
| 196 | - [(match_operand:SI 2 "s_register_operand" "r,r,r,r") | ||
| 197 | - (match_operand:SI 3 "arm_add_operand" "rI,rI,L,L")]) | ||
| 198 | + [(match_operand:SI 2 "s_register_operand" | ||
| 199 | + "l,r,r,l,l,r,r,r,r") | ||
| 200 | + (match_operand:SI 3 "arm_add_operand" | ||
| 201 | + "lPy,rI,L,lPy,lPy,rI,rI,L,L")]) | ||
| 202 | (const_int 0)) | ||
| 203 | (const_int 0)))] | ||
| 204 | - "TARGET_ARM" | ||
| 205 | + "TARGET_32BIT" | ||
| 206 | "* | ||
| 207 | { | ||
| 208 | - static const char * const opcodes[4][2] = | ||
| 209 | - { | ||
| 210 | - {\"cmp\\t%2, %3\;cmp%d5\\t%0, %1\", | ||
| 211 | - \"cmp\\t%0, %1\;cmp%d4\\t%2, %3\"}, | ||
| 212 | - {\"cmp\\t%2, %3\;cmn%d5\\t%0, #%n1\", | ||
| 213 | - \"cmn\\t%0, #%n1\;cmp%d4\\t%2, %3\"}, | ||
| 214 | - {\"cmn\\t%2, #%n3\;cmp%d5\\t%0, %1\", | ||
| 215 | - \"cmp\\t%0, %1\;cmn%d4\\t%2, #%n3\"}, | ||
| 216 | - {\"cmn\\t%2, #%n3\;cmn%d5\\t%0, #%n1\", | ||
| 217 | - \"cmn\\t%0, #%n1\;cmn%d4\\t%2, #%n3\"} | ||
| 218 | - }; | ||
| 219 | + static const char * const cmp1[NUM_OF_COND_CMP][2] = | ||
| 220 | + { | ||
| 221 | + {\"cmp%d5\\t%0, %1\", | ||
| 222 | + \"cmp%d4\\t%2, %3\"}, | ||
| 223 | + {\"cmn%d5\\t%0, #%n1\", | ||
| 224 | + \"cmp%d4\\t%2, %3\"}, | ||
| 225 | + {\"cmp%d5\\t%0, %1\", | ||
| 226 | + \"cmn%d4\\t%2, #%n3\"}, | ||
| 227 | + {\"cmn%d5\\t%0, #%n1\", | ||
| 228 | + \"cmn%d4\\t%2, #%n3\"} | ||
| 229 | + }; | ||
| 230 | + static const char * const cmp2[NUM_OF_COND_CMP][2] = | ||
| 231 | + { | ||
| 232 | + {\"cmp\\t%2, %3\", | ||
| 233 | + \"cmp\\t%0, %1\"}, | ||
| 234 | + {\"cmp\\t%2, %3\", | ||
| 235 | + \"cmn\\t%0, #%n1\"}, | ||
| 236 | + {\"cmn\\t%2, #%n3\", | ||
| 237 | + \"cmp\\t%0, %1\"}, | ||
| 238 | + {\"cmn\\t%2, #%n3\", | ||
| 239 | + \"cmn\\t%0, #%n1\"} | ||
| 240 | + }; | ||
| 241 | + static const char * const ite[2] = | ||
| 242 | + { | ||
| 243 | + \"it\\t%d5\", | ||
| 244 | + \"it\\t%d4\" | ||
| 245 | + }; | ||
| 246 | + static const int cmp_idx[9] = {CMP_CMP, CMP_CMP, CMP_CMN, | ||
| 247 | + CMP_CMP, CMN_CMP, CMP_CMP, | ||
| 248 | + CMN_CMP, CMP_CMN, CMN_CMN}; | ||
| 249 | int swap = | ||
| 250 | comparison_dominates_p (GET_CODE (operands[5]), GET_CODE (operands[4])); | ||
| 251 | |||
| 252 | - return opcodes[which_alternative][swap]; | ||
| 253 | + output_asm_insn (cmp2[cmp_idx[which_alternative]][swap], operands); | ||
| 254 | + if (TARGET_THUMB2) { | ||
| 255 | + output_asm_insn (ite[swap], operands); | ||
| 256 | + } | ||
| 257 | + output_asm_insn (cmp1[cmp_idx[which_alternative]][swap], operands); | ||
| 258 | + return \"\"; | ||
| 259 | }" | ||
| 260 | [(set_attr "conds" "set") | ||
| 261 | - (set_attr "length" "8")] | ||
| 262 | + (set_attr "arch" "t2,t2,t2,t2,t2,any,any,any,any") | ||
| 263 | + (set_attr_alternative "length" | ||
| 264 | + [(const_int 6) | ||
| 265 | + (const_int 8) | ||
| 266 | + (const_int 8) | ||
| 267 | + (const_int 8) | ||
| 268 | + (const_int 8) | ||
| 269 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 270 | + (const_int 8) | ||
| 271 | + (const_int 10)) | ||
| 272 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 273 | + (const_int 8) | ||
| 274 | + (const_int 10)) | ||
| 275 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 276 | + (const_int 8) | ||
| 277 | + (const_int 10)) | ||
| 278 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 279 | + (const_int 8) | ||
| 280 | + (const_int 10))])] | ||
| 281 | ) | ||
| 282 | |||
| 283 | (define_insn "*cmp_ite1" | ||
| 284 | @@ -8972,35 +9051,81 @@ | ||
| 285 | (compare | ||
| 286 | (if_then_else:SI | ||
| 287 | (match_operator 4 "arm_comparison_operator" | ||
| 288 | - [(match_operand:SI 0 "s_register_operand" "r,r,r,r") | ||
| 289 | - (match_operand:SI 1 "arm_add_operand" "rI,L,rI,L")]) | ||
| 290 | + [(match_operand:SI 0 "s_register_operand" | ||
| 291 | + "l,l,l,r,r,r,r,r,r") | ||
| 292 | + (match_operand:SI 1 "arm_add_operand" | ||
| 293 | + "lPy,lPy,lPy,rI,L,rI,L,rI,L")]) | ||
| 294 | (match_operator:SI 5 "arm_comparison_operator" | ||
| 295 | - [(match_operand:SI 2 "s_register_operand" "r,r,r,r") | ||
| 296 | - (match_operand:SI 3 "arm_add_operand" "rI,rI,L,L")]) | ||
| 297 | + [(match_operand:SI 2 "s_register_operand" | ||
| 298 | + "l,r,r,l,l,r,r,r,r") | ||
| 299 | + (match_operand:SI 3 "arm_add_operand" | ||
| 300 | + "lPy,rI,L,lPy,lPy,rI,rI,L,L")]) | ||
| 301 | (const_int 1)) | ||
| 302 | (const_int 0)))] | ||
| 303 | - "TARGET_ARM" | ||
| 304 | + "TARGET_32BIT" | ||
| 305 | "* | ||
| 306 | { | ||
| 307 | - static const char * const opcodes[4][2] = | ||
| 308 | - { | ||
| 309 | - {\"cmp\\t%0, %1\;cmp%d4\\t%2, %3\", | ||
| 310 | - \"cmp\\t%2, %3\;cmp%D5\\t%0, %1\"}, | ||
| 311 | - {\"cmn\\t%0, #%n1\;cmp%d4\\t%2, %3\", | ||
| 312 | - \"cmp\\t%2, %3\;cmn%D5\\t%0, #%n1\"}, | ||
| 313 | - {\"cmp\\t%0, %1\;cmn%d4\\t%2, #%n3\", | ||
| 314 | - \"cmn\\t%2, #%n3\;cmp%D5\\t%0, %1\"}, | ||
| 315 | - {\"cmn\\t%0, #%n1\;cmn%d4\\t%2, #%n3\", | ||
| 316 | - \"cmn\\t%2, #%n3\;cmn%D5\\t%0, #%n1\"} | ||
| 317 | - }; | ||
| 318 | + static const char * const cmp1[NUM_OF_COND_CMP][2] = | ||
| 319 | + { | ||
| 320 | + {\"cmp\\t%0, %1\", | ||
| 321 | + \"cmp\\t%2, %3\"}, | ||
| 322 | + {\"cmn\\t%0, #%n1\", | ||
| 323 | + \"cmp\\t%2, %3\"}, | ||
| 324 | + {\"cmp\\t%0, %1\", | ||
| 325 | + \"cmn\\t%2, #%n3\"}, | ||
| 326 | + {\"cmn\\t%0, #%n1\", | ||
| 327 | + \"cmn\\t%2, #%n3\"} | ||
| 328 | + }; | ||
| 329 | + static const char * const cmp2[NUM_OF_COND_CMP][2] = | ||
| 330 | + { | ||
| 331 | + {\"cmp%d4\\t%2, %3\", | ||
| 332 | + \"cmp%D5\\t%0, %1\"}, | ||
| 333 | + {\"cmp%d4\\t%2, %3\", | ||
| 334 | + \"cmn%D5\\t%0, #%n1\"}, | ||
| 335 | + {\"cmn%d4\\t%2, #%n3\", | ||
| 336 | + \"cmp%D5\\t%0, %1\"}, | ||
| 337 | + {\"cmn%d4\\t%2, #%n3\", | ||
| 338 | + \"cmn%D5\\t%0, #%n1\"} | ||
| 339 | + }; | ||
| 340 | + static const char * const ite[2] = | ||
| 341 | + { | ||
| 342 | + \"it\\t%d4\", | ||
| 343 | + \"it\\t%D5\" | ||
| 344 | + }; | ||
| 345 | + static const int cmp_idx[9] = {CMP_CMP, CMP_CMP, CMP_CMN, | ||
| 346 | + CMP_CMP, CMN_CMP, CMP_CMP, | ||
| 347 | + CMN_CMP, CMP_CMN, CMN_CMN}; | ||
| 348 | int swap = | ||
| 349 | comparison_dominates_p (GET_CODE (operands[5]), | ||
| 350 | reverse_condition (GET_CODE (operands[4]))); | ||
| 351 | |||
| 352 | - return opcodes[which_alternative][swap]; | ||
| 353 | + output_asm_insn (cmp1[cmp_idx[which_alternative]][swap], operands); | ||
| 354 | + if (TARGET_THUMB2) { | ||
| 355 | + output_asm_insn (ite[swap], operands); | ||
| 356 | + } | ||
| 357 | + output_asm_insn (cmp2[cmp_idx[which_alternative]][swap], operands); | ||
| 358 | + return \"\"; | ||
| 359 | }" | ||
| 360 | [(set_attr "conds" "set") | ||
| 361 | - (set_attr "length" "8")] | ||
| 362 | + (set_attr "arch" "t2,t2,t2,t2,t2,any,any,any,any") | ||
| 363 | + (set_attr_alternative "length" | ||
| 364 | + [(const_int 6) | ||
| 365 | + (const_int 8) | ||
| 366 | + (const_int 8) | ||
| 367 | + (const_int 8) | ||
| 368 | + (const_int 8) | ||
| 369 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 370 | + (const_int 8) | ||
| 371 | + (const_int 10)) | ||
| 372 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 373 | + (const_int 8) | ||
| 374 | + (const_int 10)) | ||
| 375 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 376 | + (const_int 8) | ||
| 377 | + (const_int 10)) | ||
| 378 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 379 | + (const_int 8) | ||
| 380 | + (const_int 10))])] | ||
| 381 | ) | ||
| 382 | |||
| 383 | (define_insn "*cmp_and" | ||
| 384 | @@ -9008,34 +9133,80 @@ | ||
| 385 | (compare | ||
| 386 | (and:SI | ||
| 387 | (match_operator 4 "arm_comparison_operator" | ||
| 388 | - [(match_operand:SI 0 "s_register_operand" "r,r,r,r") | ||
| 389 | - (match_operand:SI 1 "arm_add_operand" "rI,L,rI,L")]) | ||
| 390 | + [(match_operand:SI 0 "s_register_operand" | ||
| 391 | + "l,l,l,r,r,r,r,r,r") | ||
| 392 | + (match_operand:SI 1 "arm_add_operand" | ||
| 393 | + "lPy,lPy,lPy,rI,L,rI,L,rI,L")]) | ||
| 394 | (match_operator:SI 5 "arm_comparison_operator" | ||
| 395 | - [(match_operand:SI 2 "s_register_operand" "r,r,r,r") | ||
| 396 | - (match_operand:SI 3 "arm_add_operand" "rI,rI,L,L")])) | ||
| 397 | + [(match_operand:SI 2 "s_register_operand" | ||
| 398 | + "l,r,r,l,l,r,r,r,r") | ||
| 399 | + (match_operand:SI 3 "arm_add_operand" | ||
| 400 | + "lPy,rI,L,lPy,lPy,rI,rI,L,L")])) | ||
| 401 | (const_int 0)))] | ||
| 402 | - "TARGET_ARM" | ||
| 403 | + "TARGET_32BIT" | ||
| 404 | "* | ||
| 405 | { | ||
| 406 | - static const char *const opcodes[4][2] = | ||
| 407 | - { | ||
| 408 | - {\"cmp\\t%2, %3\;cmp%d5\\t%0, %1\", | ||
| 409 | - \"cmp\\t%0, %1\;cmp%d4\\t%2, %3\"}, | ||
| 410 | - {\"cmp\\t%2, %3\;cmn%d5\\t%0, #%n1\", | ||
| 411 | - \"cmn\\t%0, #%n1\;cmp%d4\\t%2, %3\"}, | ||
| 412 | - {\"cmn\\t%2, #%n3\;cmp%d5\\t%0, %1\", | ||
| 413 | - \"cmp\\t%0, %1\;cmn%d4\\t%2, #%n3\"}, | ||
| 414 | - {\"cmn\\t%2, #%n3\;cmn%d5\\t%0, #%n1\", | ||
| 415 | - \"cmn\\t%0, #%n1\;cmn%d4\\t%2, #%n3\"} | ||
| 416 | - }; | ||
| 417 | + static const char *const cmp1[NUM_OF_COND_CMP][2] = | ||
| 418 | + { | ||
| 419 | + {\"cmp%d5\\t%0, %1\", | ||
| 420 | + \"cmp%d4\\t%2, %3\"}, | ||
| 421 | + {\"cmn%d5\\t%0, #%n1\", | ||
| 422 | + \"cmp%d4\\t%2, %3\"}, | ||
| 423 | + {\"cmp%d5\\t%0, %1\", | ||
| 424 | + \"cmn%d4\\t%2, #%n3\"}, | ||
| 425 | + {\"cmn%d5\\t%0, #%n1\", | ||
| 426 | + \"cmn%d4\\t%2, #%n3\"} | ||
| 427 | + }; | ||
| 428 | + static const char *const cmp2[NUM_OF_COND_CMP][2] = | ||
| 429 | + { | ||
| 430 | + {\"cmp\\t%2, %3\", | ||
| 431 | + \"cmp\\t%0, %1\"}, | ||
| 432 | + {\"cmp\\t%2, %3\", | ||
| 433 | + \"cmn\\t%0, #%n1\"}, | ||
| 434 | + {\"cmn\\t%2, #%n3\", | ||
| 435 | + \"cmp\\t%0, %1\"}, | ||
| 436 | + {\"cmn\\t%2, #%n3\", | ||
| 437 | + \"cmn\\t%0, #%n1\"} | ||
| 438 | + }; | ||
| 439 | + static const char *const ite[2] = | ||
| 440 | + { | ||
| 441 | + \"it\\t%d5\", | ||
| 442 | + \"it\\t%d4\" | ||
| 443 | + }; | ||
| 444 | + static const int cmp_idx[9] = {CMP_CMP, CMP_CMP, CMP_CMN, | ||
| 445 | + CMP_CMP, CMN_CMP, CMP_CMP, | ||
| 446 | + CMN_CMP, CMP_CMN, CMN_CMN}; | ||
| 447 | int swap = | ||
| 448 | comparison_dominates_p (GET_CODE (operands[5]), GET_CODE (operands[4])); | ||
| 449 | |||
| 450 | - return opcodes[which_alternative][swap]; | ||
| 451 | + output_asm_insn (cmp2[cmp_idx[which_alternative]][swap], operands); | ||
| 452 | + if (TARGET_THUMB2) { | ||
| 453 | + output_asm_insn (ite[swap], operands); | ||
| 454 | + } | ||
| 455 | + output_asm_insn (cmp1[cmp_idx[which_alternative]][swap], operands); | ||
| 456 | + return \"\"; | ||
| 457 | }" | ||
| 458 | [(set_attr "conds" "set") | ||
| 459 | (set_attr "predicable" "no") | ||
| 460 | - (set_attr "length" "8")] | ||
| 461 | + (set_attr "arch" "t2,t2,t2,t2,t2,any,any,any,any") | ||
| 462 | + (set_attr_alternative "length" | ||
| 463 | + [(const_int 6) | ||
| 464 | + (const_int 8) | ||
| 465 | + (const_int 8) | ||
| 466 | + (const_int 8) | ||
| 467 | + (const_int 8) | ||
| 468 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 469 | + (const_int 8) | ||
| 470 | + (const_int 10)) | ||
| 471 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 472 | + (const_int 8) | ||
| 473 | + (const_int 10)) | ||
| 474 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 475 | + (const_int 8) | ||
| 476 | + (const_int 10)) | ||
| 477 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 478 | + (const_int 8) | ||
| 479 | + (const_int 10))])] | ||
| 480 | ) | ||
| 481 | |||
| 482 | (define_insn "*cmp_ior" | ||
| 483 | @@ -9043,34 +9214,80 @@ | ||
| 484 | (compare | ||
| 485 | (ior:SI | ||
| 486 | (match_operator 4 "arm_comparison_operator" | ||
| 487 | - [(match_operand:SI 0 "s_register_operand" "r,r,r,r") | ||
| 488 | - (match_operand:SI 1 "arm_add_operand" "rI,L,rI,L")]) | ||
| 489 | + [(match_operand:SI 0 "s_register_operand" | ||
| 490 | + "l,l,l,r,r,r,r,r,r") | ||
| 491 | + (match_operand:SI 1 "arm_add_operand" | ||
| 492 | + "lPy,lPy,lPy,rI,L,rI,L,rI,L")]) | ||
| 493 | (match_operator:SI 5 "arm_comparison_operator" | ||
| 494 | - [(match_operand:SI 2 "s_register_operand" "r,r,r,r") | ||
| 495 | - (match_operand:SI 3 "arm_add_operand" "rI,rI,L,L")])) | ||
| 496 | + [(match_operand:SI 2 "s_register_operand" | ||
| 497 | + "l,r,r,l,l,r,r,r,r") | ||
| 498 | + (match_operand:SI 3 "arm_add_operand" | ||
| 499 | + "lPy,rI,L,lPy,lPy,rI,rI,L,L")])) | ||
| 500 | (const_int 0)))] | ||
| 501 | - "TARGET_ARM" | ||
| 502 | + "TARGET_32BIT" | ||
| 503 | "* | ||
| 504 | -{ | ||
| 505 | - static const char *const opcodes[4][2] = | ||
| 506 | { | ||
| 507 | - {\"cmp\\t%0, %1\;cmp%D4\\t%2, %3\", | ||
| 508 | - \"cmp\\t%2, %3\;cmp%D5\\t%0, %1\"}, | ||
| 509 | - {\"cmn\\t%0, #%n1\;cmp%D4\\t%2, %3\", | ||
| 510 | - \"cmp\\t%2, %3\;cmn%D5\\t%0, #%n1\"}, | ||
| 511 | - {\"cmp\\t%0, %1\;cmn%D4\\t%2, #%n3\", | ||
| 512 | - \"cmn\\t%2, #%n3\;cmp%D5\\t%0, %1\"}, | ||
| 513 | - {\"cmn\\t%0, #%n1\;cmn%D4\\t%2, #%n3\", | ||
| 514 | - \"cmn\\t%2, #%n3\;cmn%D5\\t%0, #%n1\"} | ||
| 515 | - }; | ||
| 516 | - int swap = | ||
| 517 | - comparison_dominates_p (GET_CODE (operands[5]), GET_CODE (operands[4])); | ||
| 518 | + static const char *const cmp1[NUM_OF_COND_CMP][2] = | ||
| 519 | + { | ||
| 520 | + {\"cmp\\t%0, %1\", | ||
| 521 | + \"cmp\\t%2, %3\"}, | ||
| 522 | + {\"cmn\\t%0, #%n1\", | ||
| 523 | + \"cmp\\t%2, %3\"}, | ||
| 524 | + {\"cmp\\t%0, %1\", | ||
| 525 | + \"cmn\\t%2, #%n3\"}, | ||
| 526 | + {\"cmn\\t%0, #%n1\", | ||
| 527 | + \"cmn\\t%2, #%n3\"} | ||
| 528 | + }; | ||
| 529 | + static const char *const cmp2[NUM_OF_COND_CMP][2] = | ||
| 530 | + { | ||
| 531 | + {\"cmp%D4\\t%2, %3\", | ||
| 532 | + \"cmp%D5\\t%0, %1\"}, | ||
| 533 | + {\"cmp%D4\\t%2, %3\", | ||
| 534 | + \"cmn%D5\\t%0, #%n1\"}, | ||
| 535 | + {\"cmn%D4\\t%2, #%n3\", | ||
| 536 | + \"cmp%D5\\t%0, %1\"}, | ||
| 537 | + {\"cmn%D4\\t%2, #%n3\", | ||
| 538 | + \"cmn%D5\\t%0, #%n1\"} | ||
| 539 | + }; | ||
| 540 | + static const char *const ite[2] = | ||
| 541 | + { | ||
| 542 | + \"it\\t%D4\", | ||
| 543 | + \"it\\t%D5\" | ||
| 544 | + }; | ||
| 545 | + static const int cmp_idx[9] = {CMP_CMP, CMP_CMP, CMP_CMN, | ||
| 546 | + CMP_CMP, CMN_CMP, CMP_CMP, | ||
| 547 | + CMN_CMP, CMP_CMN, CMN_CMN}; | ||
| 548 | + int swap = | ||
| 549 | + comparison_dominates_p (GET_CODE (operands[5]), GET_CODE (operands[4])); | ||
| 550 | |||
| 551 | - return opcodes[which_alternative][swap]; | ||
| 552 | -} | ||
| 553 | -" | ||
| 554 | + output_asm_insn (cmp1[cmp_idx[which_alternative]][swap], operands); | ||
| 555 | + if (TARGET_THUMB2) { | ||
| 556 | + output_asm_insn (ite[swap], operands); | ||
| 557 | + } | ||
| 558 | + output_asm_insn (cmp2[cmp_idx[which_alternative]][swap], operands); | ||
| 559 | + return \"\"; | ||
| 560 | + } | ||
| 561 | + " | ||
| 562 | [(set_attr "conds" "set") | ||
| 563 | - (set_attr "length" "8")] | ||
| 564 | + (set_attr "arch" "t2,t2,t2,t2,t2,any,any,any,any") | ||
| 565 | + (set_attr_alternative "length" | ||
| 566 | + [(const_int 6) | ||
| 567 | + (const_int 8) | ||
| 568 | + (const_int 8) | ||
| 569 | + (const_int 8) | ||
| 570 | + (const_int 8) | ||
| 571 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 572 | + (const_int 8) | ||
| 573 | + (const_int 10)) | ||
| 574 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 575 | + (const_int 8) | ||
| 576 | + (const_int 10)) | ||
| 577 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 578 | + (const_int 8) | ||
| 579 | + (const_int 10)) | ||
| 580 | + (if_then_else (eq_attr "is_thumb" "no") | ||
| 581 | + (const_int 8) | ||
| 582 | + (const_int 10))])] | ||
| 583 | ) | ||
| 584 | |||
| 585 | (define_insn_and_split "*ior_scc_scc" | ||
| 586 | @@ -9082,11 +9299,11 @@ | ||
| 587 | [(match_operand:SI 4 "s_register_operand" "r") | ||
| 588 | (match_operand:SI 5 "arm_add_operand" "rIL")]))) | ||
| 589 | (clobber (reg:CC CC_REGNUM))] | ||
| 590 | - "TARGET_ARM | ||
| 591 | + "TARGET_32BIT | ||
| 592 | && (arm_select_dominance_cc_mode (operands[3], operands[6], DOM_CC_X_OR_Y) | ||
| 593 | != CCmode)" | ||
| 594 | "#" | ||
| 595 | - "TARGET_ARM && reload_completed" | ||
| 596 | + "TARGET_32BIT && reload_completed" | ||
| 597 | [(set (match_dup 7) | ||
| 598 | (compare | ||
| 599 | (ior:SI | ||
| 600 | @@ -9115,9 +9332,9 @@ | ||
| 601 | (set (match_operand:SI 7 "s_register_operand" "=r") | ||
| 602 | (ior:SI (match_op_dup 3 [(match_dup 1) (match_dup 2)]) | ||
| 603 | (match_op_dup 6 [(match_dup 4) (match_dup 5)])))] | ||
| 604 | - "TARGET_ARM" | ||
| 605 | + "TARGET_32BIT" | ||
| 606 | "#" | ||
| 607 | - "TARGET_ARM && reload_completed" | ||
| 608 | + "TARGET_32BIT && reload_completed" | ||
| 609 | [(set (match_dup 0) | ||
| 610 | (compare | ||
| 611 | (ior:SI | ||
| 612 | @@ -9138,11 +9355,11 @@ | ||
| 613 | [(match_operand:SI 4 "s_register_operand" "r") | ||
| 614 | (match_operand:SI 5 "arm_add_operand" "rIL")]))) | ||
| 615 | (clobber (reg:CC CC_REGNUM))] | ||
| 616 | - "TARGET_ARM | ||
| 617 | + "TARGET_32BIT | ||
| 618 | && (arm_select_dominance_cc_mode (operands[3], operands[6], DOM_CC_X_AND_Y) | ||
| 619 | != CCmode)" | ||
| 620 | "#" | ||
| 621 | - "TARGET_ARM && reload_completed | ||
| 622 | + "TARGET_32BIT && reload_completed | ||
| 623 | && (arm_select_dominance_cc_mode (operands[3], operands[6], DOM_CC_X_AND_Y) | ||
| 624 | != CCmode)" | ||
| 625 | [(set (match_dup 7) | ||
| 626 | @@ -9173,9 +9390,9 @@ | ||
| 627 | (set (match_operand:SI 7 "s_register_operand" "=r") | ||
| 628 | (and:SI (match_op_dup 3 [(match_dup 1) (match_dup 2)]) | ||
| 629 | (match_op_dup 6 [(match_dup 4) (match_dup 5)])))] | ||
| 630 | - "TARGET_ARM" | ||
| 631 | + "TARGET_32BIT" | ||
| 632 | "#" | ||
| 633 | - "TARGET_ARM && reload_completed" | ||
| 634 | + "TARGET_32BIT && reload_completed" | ||
| 635 | [(set (match_dup 0) | ||
| 636 | (compare | ||
| 637 | (and:SI | ||
| 638 | @@ -9200,11 +9417,11 @@ | ||
| 639 | [(match_operand:SI 4 "s_register_operand" "r,r,r") | ||
| 640 | (match_operand:SI 5 "arm_add_operand" "rIL,rIL,rIL")]))) | ||
| 641 | (clobber (reg:CC CC_REGNUM))] | ||
| 642 | - "TARGET_ARM | ||
| 643 | + "TARGET_32BIT | ||
| 644 | && (arm_select_dominance_cc_mode (operands[3], operands[6], DOM_CC_X_AND_Y) | ||
| 645 | == CCmode)" | ||
| 646 | "#" | ||
| 647 | - "TARGET_ARM && reload_completed" | ||
| 648 | + "TARGET_32BIT && reload_completed" | ||
| 649 | [(parallel [(set (match_dup 0) | ||
| 650 | (match_op_dup 3 [(match_dup 1) (match_dup 2)])) | ||
| 651 | (clobber (reg:CC CC_REGNUM))]) | ||
| 652 | @@ -10314,6 +10531,8 @@ | ||
| 653 | ;; Push multiple registers to the stack. Registers are in parallel (use ...) | ||
| 654 | ;; expressions. For simplicity, the first register is also in the unspec | ||
| 655 | ;; part. | ||
| 656 | +;; To avoid the usage of GNU extension, the length attribute is computed | ||
| 657 | +;; in a C function arm_attr_length_push_multi. | ||
| 658 | (define_insn "*push_multi" | ||
| 659 | [(match_parallel 2 "multi_register_push" | ||
| 660 | [(set (match_operand:BLK 0 "memory_operand" "=m") | ||
| 661 | @@ -10353,7 +10572,9 @@ | ||
| 662 | |||
| 663 | return \"\"; | ||
| 664 | }" | ||
| 665 | - [(set_attr "type" "store4")] | ||
| 666 | + [(set_attr "type" "store4") | ||
| 667 | + (set (attr "length") | ||
| 668 | + (symbol_ref "arm_attr_length_push_multi (operands[2], operands[1])"))] | ||
| 669 | ) | ||
| 670 | |||
| 671 | (define_insn "stack_tie" | ||
| 672 | |||
| 673 | === modified file 'gcc/config/arm/constraints.md' | ||
| 674 | --- old/gcc/config/arm/constraints.md 2011-08-25 13:26:58 +0000 | ||
| 675 | +++ new/gcc/config/arm/constraints.md 2011-09-12 14:14:00 +0000 | ||
| 676 | @@ -31,7 +31,7 @@ | ||
| 677 | ;; The following multi-letter normal constraints have been used: | ||
| 678 | ;; in ARM/Thumb-2 state: Da, Db, Dc, Dn, Dl, DL, Dv, Dy, Di, Dz | ||
| 679 | ;; in Thumb-1 state: Pa, Pb, Pc, Pd | ||
| 680 | -;; in Thumb-2 state: Pj, PJ, Ps, Pt, Pu, Pv, Pw, Px | ||
| 681 | +;; in Thumb-2 state: Pj, PJ, Ps, Pt, Pu, Pv, Pw, Px, Py | ||
| 682 | |||
| 683 | ;; The following memory constraints have been used: | ||
| 684 | ;; in ARM/Thumb-2 state: Q, Ut, Uv, Uy, Un, Um, Us | ||
| 685 | @@ -201,6 +201,11 @@ | ||
| 686 | (and (match_code "const_int") | ||
| 687 | (match_test "TARGET_THUMB2 && ival >= -7 && ival <= -1"))) | ||
| 688 | |||
| 689 | +(define_constraint "Py" | ||
| 690 | + "@internal In Thumb-2 state a constant in the range 0 to 255" | ||
| 691 | + (and (match_code "const_int") | ||
| 692 | + (match_test "TARGET_THUMB2 && ival >= 0 && ival <= 255"))) | ||
| 693 | + | ||
| 694 | (define_constraint "G" | ||
| 695 | "In ARM/Thumb-2 state a valid FPA immediate constant." | ||
| 696 | (and (match_code "const_double") | ||
| 697 | |||
| 698 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-1.c' | ||
| 699 | --- old/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-1.c 1970-01-01 00:00:00 +0000 | ||
| 700 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-1.c 2011-09-12 14:14:00 +0000 | ||
| 701 | @@ -0,0 +1,13 @@ | ||
| 702 | +/* Use conditional compare */ | ||
| 703 | +/* { dg-options "-O2" } */ | ||
| 704 | +/* { dg-skip-if "" { arm_thumb1_ok } } */ | ||
| 705 | +/* { dg-final { scan-assembler "cmpne" } } */ | ||
| 706 | + | ||
| 707 | +int f(int i, int j) | ||
| 708 | +{ | ||
| 709 | + if ( (i == '+') || (j == '-') ) { | ||
| 710 | + return 1; | ||
| 711 | + } else { | ||
| 712 | + return 0; | ||
| 713 | + } | ||
| 714 | +} | ||
| 715 | |||
| 716 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-2.c' | ||
| 717 | --- old/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-2.c 1970-01-01 00:00:00 +0000 | ||
| 718 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-2.c 2011-09-12 14:14:00 +0000 | ||
| 719 | @@ -0,0 +1,13 @@ | ||
| 720 | +/* Use conditional compare */ | ||
| 721 | +/* { dg-options "-O2" } */ | ||
| 722 | +/* { dg-skip-if "" { arm_thumb1_ok } } */ | ||
| 723 | +/* { dg-final { scan-assembler "cmpeq" } } */ | ||
| 724 | + | ||
| 725 | +int f(int i, int j) | ||
| 726 | +{ | ||
| 727 | + if ( (i == '+') && (j == '-') ) { | ||
| 728 | + return 1; | ||
| 729 | + } else { | ||
| 730 | + return 0; | ||
| 731 | + } | ||
| 732 | +} | ||
| 733 | |||
| 734 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-3.c' | ||
| 735 | --- old/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-3.c 1970-01-01 00:00:00 +0000 | ||
| 736 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-3.c 2011-09-12 14:14:00 +0000 | ||
| 737 | @@ -0,0 +1,12 @@ | ||
| 738 | +/* Use conditional compare */ | ||
| 739 | +/* { dg-options "-O2" } */ | ||
| 740 | +/* { dg-skip-if "" { arm_thumb1_ok } } */ | ||
| 741 | +/* { dg-final { scan-assembler "cmpgt" } } */ | ||
| 742 | + | ||
| 743 | +int f(int i, int j) | ||
| 744 | +{ | ||
| 745 | + if ( (i >= '+') ? (j > '-') : 0) | ||
| 746 | + return 1; | ||
| 747 | + else | ||
| 748 | + return 0; | ||
| 749 | +} | ||
| 750 | |||
| 751 | === added file 'gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-4.c' | ||
| 752 | --- old/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-4.c 1970-01-01 00:00:00 +0000 | ||
| 753 | +++ new/gcc/testsuite/gcc.target/arm/thumb2-cond-cmp-4.c 2011-09-12 14:14:00 +0000 | ||
| 754 | @@ -0,0 +1,12 @@ | ||
| 755 | +/* Use conditional compare */ | ||
| 756 | +/* { dg-options "-O2" } */ | ||
| 757 | +/* { dg-skip-if "" { arm_thumb1_ok } } */ | ||
| 758 | +/* { dg-final { scan-assembler "cmpgt" } } */ | ||
| 759 | + | ||
| 760 | +int f(int i, int j) | ||
| 761 | +{ | ||
| 762 | + if ( (i >= '+') ? (j <= '-') : 1) | ||
| 763 | + return 1; | ||
| 764 | + else | ||
| 765 | + return 0; | ||
| 766 | +} | ||
| 767 | |||
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106811.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106811.patch new file mode 100644 index 0000000000..41b5c6dbf9 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106811.patch | |||
| @@ -0,0 +1,203 @@ | |||
| 1 | 2011-09-15 Richard Sandiford <richard.sandiford@linaro.org> | ||
| 2 | |||
| 3 | Revert: | ||
| 4 | |||
| 5 | gcc/ | ||
| 6 | PR target/49030 | ||
| 7 | * config/arm/arm-protos.h (maybe_get_arm_condition_code): Declare. | ||
| 8 | * config/arm/arm.c (maybe_get_arm_condition_code): New function, | ||
| 9 | reusing the old code from get_arm_condition_code. Return ARM_NV | ||
| 10 | for invalid comparison codes. | ||
| 11 | (get_arm_condition_code): Redefine in terms of | ||
| 12 | maybe_get_arm_condition_code. | ||
| 13 | * config/arm/predicates.md (arm_comparison_operator): Use | ||
| 14 | maybe_get_arm_condition_code. | ||
| 15 | |||
| 16 | gcc/testsuite/ | ||
| 17 | PR target/49030 | ||
| 18 | * gcc.dg/torture/pr49030.c: New test. | ||
| 19 | |||
| 20 | === modified file 'gcc/config/arm/arm-protos.h' | ||
| 21 | --- old/gcc/config/arm/arm-protos.h 2011-09-12 14:14:00 +0000 | ||
| 22 | +++ new/gcc/config/arm/arm-protos.h 2011-09-15 09:45:31 +0000 | ||
| 23 | @@ -180,7 +180,6 @@ | ||
| 24 | #endif | ||
| 25 | extern int thumb_shiftable_const (unsigned HOST_WIDE_INT); | ||
| 26 | #ifdef RTX_CODE | ||
| 27 | -extern enum arm_cond_code maybe_get_arm_condition_code (rtx); | ||
| 28 | extern void thumb1_final_prescan_insn (rtx); | ||
| 29 | extern void thumb2_final_prescan_insn (rtx); | ||
| 30 | extern const char *thumb_load_double_from_address (rtx *); | ||
| 31 | |||
| 32 | === modified file 'gcc/config/arm/arm.c' | ||
| 33 | --- old/gcc/config/arm/arm.c 2011-09-12 14:14:00 +0000 | ||
| 34 | +++ new/gcc/config/arm/arm.c 2011-09-15 09:45:31 +0000 | ||
| 35 | @@ -17494,10 +17494,10 @@ | ||
| 36 | decremented/zeroed by arm_asm_output_opcode as the insns are output. */ | ||
| 37 | |||
| 38 | /* Returns the index of the ARM condition code string in | ||
| 39 | - `arm_condition_codes', or ARM_NV if the comparison is invalid. | ||
| 40 | - COMPARISON should be an rtx like `(eq (...) (...))'. */ | ||
| 41 | -enum arm_cond_code | ||
| 42 | -maybe_get_arm_condition_code (rtx comparison) | ||
| 43 | + `arm_condition_codes'. COMPARISON should be an rtx like | ||
| 44 | + `(eq (...) (...))'. */ | ||
| 45 | +static enum arm_cond_code | ||
| 46 | +get_arm_condition_code (rtx comparison) | ||
| 47 | { | ||
| 48 | enum machine_mode mode = GET_MODE (XEXP (comparison, 0)); | ||
| 49 | enum arm_cond_code code; | ||
| 50 | @@ -17521,11 +17521,11 @@ | ||
| 51 | case CC_DLTUmode: code = ARM_CC; | ||
| 52 | |||
| 53 | dominance: | ||
| 54 | + gcc_assert (comp_code == EQ || comp_code == NE); | ||
| 55 | + | ||
| 56 | if (comp_code == EQ) | ||
| 57 | return ARM_INVERSE_CONDITION_CODE (code); | ||
| 58 | - if (comp_code == NE) | ||
| 59 | - return code; | ||
| 60 | - return ARM_NV; | ||
| 61 | + return code; | ||
| 62 | |||
| 63 | case CC_NOOVmode: | ||
| 64 | switch (comp_code) | ||
| 65 | @@ -17534,7 +17534,7 @@ | ||
| 66 | case EQ: return ARM_EQ; | ||
| 67 | case GE: return ARM_PL; | ||
| 68 | case LT: return ARM_MI; | ||
| 69 | - default: return ARM_NV; | ||
| 70 | + default: gcc_unreachable (); | ||
| 71 | } | ||
| 72 | |||
| 73 | case CC_Zmode: | ||
| 74 | @@ -17542,7 +17542,7 @@ | ||
| 75 | { | ||
| 76 | case NE: return ARM_NE; | ||
| 77 | case EQ: return ARM_EQ; | ||
| 78 | - default: return ARM_NV; | ||
| 79 | + default: gcc_unreachable (); | ||
| 80 | } | ||
| 81 | |||
| 82 | case CC_Nmode: | ||
| 83 | @@ -17550,7 +17550,7 @@ | ||
| 84 | { | ||
| 85 | case NE: return ARM_MI; | ||
| 86 | case EQ: return ARM_PL; | ||
| 87 | - default: return ARM_NV; | ||
| 88 | + default: gcc_unreachable (); | ||
| 89 | } | ||
| 90 | |||
| 91 | case CCFPEmode: | ||
| 92 | @@ -17575,7 +17575,7 @@ | ||
| 93 | /* UNEQ and LTGT do not have a representation. */ | ||
| 94 | case UNEQ: /* Fall through. */ | ||
| 95 | case LTGT: /* Fall through. */ | ||
| 96 | - default: return ARM_NV; | ||
| 97 | + default: gcc_unreachable (); | ||
| 98 | } | ||
| 99 | |||
| 100 | case CC_SWPmode: | ||
| 101 | @@ -17591,7 +17591,7 @@ | ||
| 102 | case GTU: return ARM_CC; | ||
| 103 | case LEU: return ARM_CS; | ||
| 104 | case LTU: return ARM_HI; | ||
| 105 | - default: return ARM_NV; | ||
| 106 | + default: gcc_unreachable (); | ||
| 107 | } | ||
| 108 | |||
| 109 | case CC_Cmode: | ||
| 110 | @@ -17599,7 +17599,7 @@ | ||
| 111 | { | ||
| 112 | case LTU: return ARM_CS; | ||
| 113 | case GEU: return ARM_CC; | ||
| 114 | - default: return ARM_NV; | ||
| 115 | + default: gcc_unreachable (); | ||
| 116 | } | ||
| 117 | |||
| 118 | case CC_CZmode: | ||
| 119 | @@ -17611,7 +17611,7 @@ | ||
| 120 | case GTU: return ARM_HI; | ||
| 121 | case LEU: return ARM_LS; | ||
| 122 | case LTU: return ARM_CC; | ||
| 123 | - default: return ARM_NV; | ||
| 124 | + default: gcc_unreachable (); | ||
| 125 | } | ||
| 126 | |||
| 127 | case CC_NCVmode: | ||
| 128 | @@ -17621,7 +17621,7 @@ | ||
| 129 | case LT: return ARM_LT; | ||
| 130 | case GEU: return ARM_CS; | ||
| 131 | case LTU: return ARM_CC; | ||
| 132 | - default: return ARM_NV; | ||
| 133 | + default: gcc_unreachable (); | ||
| 134 | } | ||
| 135 | |||
| 136 | case CCmode: | ||
| 137 | @@ -17637,22 +17637,13 @@ | ||
| 138 | case GTU: return ARM_HI; | ||
| 139 | case LEU: return ARM_LS; | ||
| 140 | case LTU: return ARM_CC; | ||
| 141 | - default: return ARM_NV; | ||
| 142 | + default: gcc_unreachable (); | ||
| 143 | } | ||
| 144 | |||
| 145 | default: gcc_unreachable (); | ||
| 146 | } | ||
| 147 | } | ||
| 148 | |||
| 149 | -/* Like maybe_get_arm_condition_code, but never return ARM_NV. */ | ||
| 150 | -static enum arm_cond_code | ||
| 151 | -get_arm_condition_code (rtx comparison) | ||
| 152 | -{ | ||
| 153 | - enum arm_cond_code code = maybe_get_arm_condition_code (comparison); | ||
| 154 | - gcc_assert (code != ARM_NV); | ||
| 155 | - return code; | ||
| 156 | -} | ||
| 157 | - | ||
| 158 | /* Tell arm_asm_output_opcode to output IT blocks for conditionally executed | ||
| 159 | instructions. */ | ||
| 160 | void | ||
| 161 | |||
| 162 | === modified file 'gcc/config/arm/predicates.md' | ||
| 163 | --- old/gcc/config/arm/predicates.md 2011-09-12 12:32:29 +0000 | ||
| 164 | +++ new/gcc/config/arm/predicates.md 2011-09-15 09:45:31 +0000 | ||
| 165 | @@ -243,9 +243,10 @@ | ||
| 166 | ;; True for integer comparisons and, if FP is active, for comparisons | ||
| 167 | ;; other than LTGT or UNEQ. | ||
| 168 | (define_special_predicate "arm_comparison_operator" | ||
| 169 | - (and (match_code "eq,ne,le,lt,ge,gt,geu,gtu,leu,ltu, | ||
| 170 | - unordered,ordered,unlt,unle,unge,ungt") | ||
| 171 | - (match_test "maybe_get_arm_condition_code (op) != ARM_NV"))) | ||
| 172 | + (ior (match_code "eq,ne,le,lt,ge,gt,geu,gtu,leu,ltu") | ||
| 173 | + (and (match_test "TARGET_32BIT && TARGET_HARD_FLOAT | ||
| 174 | + && (TARGET_FPA || TARGET_VFP)") | ||
| 175 | + (match_code "unordered,ordered,unlt,unle,unge,ungt")))) | ||
| 176 | |||
| 177 | (define_special_predicate "lt_ge_comparison_operator" | ||
| 178 | (match_code "lt,ge")) | ||
| 179 | |||
| 180 | === removed file 'gcc/testsuite/gcc.dg/torture/pr49030.c' | ||
| 181 | --- old/gcc/testsuite/gcc.dg/torture/pr49030.c 2011-09-05 09:40:19 +0000 | ||
| 182 | +++ new/gcc/testsuite/gcc.dg/torture/pr49030.c 1970-01-01 00:00:00 +0000 | ||
| 183 | @@ -1,19 +0,0 @@ | ||
| 184 | -void | ||
| 185 | -sample_move_d32u24_sS (char *dst, float *src, unsigned long nsamples, | ||
| 186 | - unsigned long dst_skip) | ||
| 187 | -{ | ||
| 188 | - long long y; | ||
| 189 | - while (nsamples--) | ||
| 190 | - { | ||
| 191 | - y = (long long) (*src * 8388608.0f) << 8; | ||
| 192 | - if (y > 2147483647) { | ||
| 193 | - *(int *) dst = 2147483647; | ||
| 194 | - } else if (y < -2147483647 - 1) { | ||
| 195 | - *(int *) dst = -2147483647 - 1; | ||
| 196 | - } else { | ||
| 197 | - *(int *) dst = (int) y; | ||
| 198 | - } | ||
| 199 | - dst += dst_skip; | ||
| 200 | - src++; | ||
| 201 | - } | ||
| 202 | -} | ||
| 203 | |||
