public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH v5 0/19] Support early break/return auto-vectorization
@ 2023-06-28 13:40 Tamar Christina
  2023-06-28 13:41 ` [PATCH 1/19]middle-end ifcvt: Support bitfield lowering of multiple-exit loops Tamar Christina
                   ` (42 more replies)
  0 siblings, 43 replies; 200+ messages in thread
From: Tamar Christina @ 2023-06-28 13:40 UTC (permalink / raw)
  To: gcc-patches; +Cc: nd, rguenther, jlaw

[-- Attachment #1: Type: text/plain, Size: 10897 bytes --]

Hi All,

This patch adds initial support for early break vectorization in GCC.
The support is added for any target that implements a vector cbranch optab,
this includes both fully masked and non-masked targets.

Depending on the operation, the vectorizer may also require support for boolean
mask reductions using Inclusive OR.  This is however only checked then the
comparison would produce multiple statements.

Concretely the kind of loops supported are of the forms:

 for (int i = 0; i < N; i++)
 {
   <statements1>
   if (<condition>)
     {
       ...
       <action>;
     }
   <statements2>
 }

where <action> can be:
 - break
 - return
 - goto

Any number of statements can be used before the <action> occurs.

Since this is an initial version for GCC 14 it has the following limitations and
features:

- Only fixed sized iterations and buffers are supported.  That is to say any
  vectors loaded or stored must be to statically allocated arrays with known
  sizes. N must also be known.  This limitation is because our primary target
  for this optimization is SVE.  For VLA SVE we can't easily do cross page
  iteraion checks. The result is likely to also not be beneficial. For that
  reason we punt support for variable buffers till we have First-Faulting
  support in GCC.
- any stores in <statements1> should not be to the same objects as in
  <condition>.  Loads are fine as long as they don't have the possibility to
  alias.  More concretely, we block RAW dependencies when the intermediate value
  can't be separated fromt the store, or the store itself can't be moved.
- The number of loop iterations must be known,  this is just a temporarily
  limitation that I intend to address in GCC 14 itself as follow on patches.
- Prologue peeling, alignment peelinig and loop versioning are supported.
- Fully masked loops, unmasked loops and partially masked loops are supported
- Any number of loop early exits are supported.
- The early exit must be before the natural loop exit/latch.  The vectorizer is
  designed in way to propage phi-nodes downwards.  As such supporting this
  inverted control flow is hard.
- No support for epilogue vectorization.  The only epilogue supported is the
  scalar final one.  Epilogue vectorization would also not be profitable.
- Early breaks are only supported for inner loop vectorization.

I have pushed a branch to refs/users/tnfchris/heads/gcc-14-early-break

With the help of IPA and LTO this still gets hit quite often.  During bootstrap
it hit rather frequently.  Additionally TSVC s332, s481 and s482 all pass now
since these are tests for support for early exit vectorization.

This implementation does not support completely handling the early break inside
the vector loop itself but instead supports adding checks such that if we know
that we have to exit in the current iteration then we branch to scalar code to
actually do the final VF iterations which handles all the code in <action>.

niters analysis and the majority of the vectorizer with hardcoded single_exit
have been updated with the use of a new function vec_loop_iv value which returns
the exit the vectorizer wants to use as the main IV exit.

for niters the this exit is what determines the overall iterations as
that is the O(iters) for the loop.

For the scalar loop we know that whatever exit you take you have to perform at
most VF iterations.  For vector code we only case about the state of fully
performed iteration and reset the scalar code to the (partially) remaining loop.

This new version of the patch does the majority of the work in a new rewritten
loop peeling.  This new function maintains LCSSA all the way through and no
longer requires the touch up functions the vectorized used to incrementally
adjust them later on.  This means that aside from IV updates and guard edge
updates the early exit code is identical to the single exit cases.

When the loop is peeled during the copying I have to go through great lengths to
keep the dominators up to date.  All exits from the first loop are rewired to the
loop header of the second loop.  But this can change the immediate dominator.

The dominators can change again when we wire in the loop guard, as such peeling
now returns a list of dominators that need to be updated if a new guard edge is
added.

For the loop peeling we rewrite the loop form:


                     Header
                      ---
                      |x|
                       2
                       |
                       v
                -------3<------
     early exit |      |      |
                v      v      | latch
                7      4----->6
                |      |
                |      v
                |      8
                |      |
                |      v
                ------>5

into

                     Header
                      ---
                      |x|
                       2
                       |
                       v
                -------3<------
     early exit |      |      |
                v      v      | latch
                7      4----->6
                |      |
                |      v
                |      8
                |      |
                |      v
                |  New Header
                |     ---
                ----->|x|
                       9
                       |
                       v
                ------10<-----
     early exit |      |      |
                v      v      | latch
                14     11---->13
                |      |
                |      v
                |      12
                |      |
                |      v
                ------> 5

That is to say, the first vector loop executes so long as the early exit isn't
needed.  Once the exit is taken, the scalar code will perform at most VF extra
iterations.  The exact number depending on peeling and iteration start and which
exit was taken (natural or early).   For this scalar loop, all early exits are
treated the same.

When we vectorize we move any statement not related to the early break itself
and that would be incorrect to execute before the break (i.e. has side effects)
to after the break.  If this is not possible we decline to vectorize.

This means that we check at the start of iterations whether we are going to exit
or not.  During the analyis phase we check whether we are allowed to do this
moving of statements.  Also note that we only move the scalar statements, but
only do so after peeling but just before we start transforming statements.

Codegen:

for e.g.

#define N 803
unsigned vect_a[N];
unsigned vect_b[N];

unsigned test4(unsigned x)
{
 unsigned ret = 0;
 for (int i = 0; i < N; i++)
 {
   vect_b[i] = x + i;
   if (vect_a[i] > x)
     break;
   vect_a[i] = x;

 }
 return ret;
}

We generate for Adv. SIMD:

test4:
        adrp    x2, .LC0
        adrp    x3, .LANCHOR0
        dup     v2.4s, w0
        add     x3, x3, :lo12:.LANCHOR0
        movi    v4.4s, 0x4
        add     x4, x3, 3216
        ldr     q1, [x2, #:lo12:.LC0]
        mov     x1, 0
        mov     w2, 0
        .p2align 3,,7
.L3:
        ldr     q0, [x3, x1]
        add     v3.4s, v1.4s, v2.4s
        add     v1.4s, v1.4s, v4.4s
        cmhi    v0.4s, v0.4s, v2.4s
        umaxp   v0.4s, v0.4s, v0.4s
        fmov    x5, d0
        cbnz    x5, .L6
        add     w2, w2, 1
        str     q3, [x1, x4]
        str     q2, [x3, x1]
        add     x1, x1, 16
        cmp     w2, 200
        bne     .L3
        mov     w7, 3
.L2:
        lsl     w2, w2, 2
        add     x5, x3, 3216
        add     w6, w2, w0
        sxtw    x4, w2
        ldr     w1, [x3, x4, lsl 2]
        str     w6, [x5, x4, lsl 2]
        cmp     w0, w1
        bcc     .L4
        add     w1, w2, 1
        str     w0, [x3, x4, lsl 2]
        add     w6, w1, w0
        sxtw    x1, w1
        ldr     w4, [x3, x1, lsl 2]
        str     w6, [x5, x1, lsl 2]
        cmp     w0, w4
        bcc     .L4
        add     w4, w2, 2
        str     w0, [x3, x1, lsl 2]
        sxtw    x1, w4
        add     w6, w1, w0
        ldr     w4, [x3, x1, lsl 2]
        str     w6, [x5, x1, lsl 2]
        cmp     w0, w4
        bcc     .L4
        str     w0, [x3, x1, lsl 2]
        add     w2, w2, 3
        cmp     w7, 3
        beq     .L4
        sxtw    x1, w2
        add     w2, w2, w0
        ldr     w4, [x3, x1, lsl 2]
        str     w2, [x5, x1, lsl 2]
        cmp     w0, w4
        bcc     .L4
        str     w0, [x3, x1, lsl 2]
.L4:
        mov     w0, 0
        ret
        .p2align 2,,3
.L6:
        mov     w7, 4
        b       .L2

and for SVE:

test4:
        adrp    x2, .LANCHOR0
        add     x2, x2, :lo12:.LANCHOR0
        add     x5, x2, 3216
        mov     x3, 0
        mov     w1, 0
        cntw    x4
        mov     z1.s, w0
        index   z0.s, #0, #1
        ptrue   p1.b, all
        ptrue   p0.s, all
        .p2align 3,,7
.L3:
        ld1w    z2.s, p1/z, [x2, x3, lsl 2]
        add     z3.s, z0.s, z1.s
        cmplo   p2.s, p0/z, z1.s, z2.s
        b.any   .L2
        st1w    z3.s, p1, [x5, x3, lsl 2]
        add     w1, w1, 1
        st1w    z1.s, p1, [x2, x3, lsl 2]
        add     x3, x3, x4
        incw    z0.s
        cmp     w3, 803
        bls     .L3
.L5:
        mov     w0, 0
        ret
        .p2align 2,,3
.L2:
        cntw    x5
        mul     w1, w1, w5
        cbz     w5, .L5
        sxtw    x1, w1
        sub     w5, w5, #1
        add     x5, x5, x1
        add     x6, x2, 3216
        b       .L6
        .p2align 2,,3
.L14:
        str     w0, [x2, x1, lsl 2]
        cmp     x1, x5
        beq     .L5
        mov     x1, x4
.L6:
        ldr     w3, [x2, x1, lsl 2]
        add     w4, w0, w1
        str     w4, [x6, x1, lsl 2]
        add     x4, x1, 1
        cmp     w0, w3
        bcs     .L14
        mov     w0, 0
        ret

On the workloads this work is based on we see between 2-3x performance uplift
using this patch.

Follow up plan:
 - Boolean vectorization has several shortcomings.  I've filed PR110223 with the
   bigger ones that cause vectorization to fail with this patch.
 - SLP support.  This is planned for GCC 15 as for majority of the cases build
   SLP itself fails.  This means I'll need to spend time in making this more
   robust first.  Additionally it requires:
     * Adding support for vectorizing CFG (gconds)
     * Support for CFG to differ between vector and scalar loops.
   Both of which would be disruptive to the tree and I suspect I'll be handling
   fallouts from this patch for a while.  So I plan to work on the surrounding
   building blocks first for the remainder of the year.

Bootstrapped Regtested on aarch64-none-linux-gnu and no issues.
Also ran across various workloads and no issues.

When closer to acceptance I will run on other targets as well and clean up
related testsuite fallouts there.

--- inline copy of patch -- 

-- 

[-- Attachment #2: rb17494.patch --]
[-- Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 200+ messages in thread

* [PATCH 1/19]middle-end ifcvt: Support bitfield lowering of multiple-exit loops
  2023-06-28 13:40 [PATCH v5 0/19] Support early break/return auto-vectorization Tamar Christina
@ 2023-06-28 13:41 ` Tamar Christina
  2023-07-04 11:29   ` Richard Biener
  2023-06-28 13:41 ` [PATCH 2/19][front-end] C/C++ front-end: add pragma GCC novector Tamar Christina
                   ` (41 subsequent siblings)
  42 siblings, 1 reply; 200+ messages in thread
From: Tamar Christina @ 2023-06-28 13:41 UTC (permalink / raw)
  To: gcc-patches; +Cc: nd, rguenther, jlaw

[-- Attachment #1: Type: text/plain, Size: 12284 bytes --]

Hi,

With the patch enabling the vectorization of early-breaks, we'd like to allow
bitfield lowering in such loops, which requires the relaxation of allowing
multiple exits when doing so.  In order to avoid a similar issue to PR107275,
the code that rejects loops with certain types of gimple_stmts was hoisted from
'if_convertible_loop_p_1' to 'get_loop_body_in_if_conv_order', to avoid trying
to lower bitfields in loops we are not going to vectorize anyway.

This also ensures 'ifcvt_local_dec' doesn't accidentally remove statements it
shouldn't as it will never come across them.  I made sure to add a comment to
make clear that there is a direct connection between the two and if we were to
enable vectorization of any other gimple statement we should make sure both
handle it.

NOTE: This patch accepted before but never committed because it is a no-op
without the early break patch.   This is a respun version of Andre's patch and
rebased to changes in ifcvt and updated to handle multiple exits.

Bootstrappend and regression tested on aarch64-none-linux-gnu and
x86_64-pc-linux-gnu and no issues.

gcc/ChangeLog:

	* tree-if-conv.cc (if_convertible_loop_p_1): Move check from here ...
	(get_loop_body_if_conv_order): ... to here.
	(if_convertible_loop_p): Remove single_exit check.
	(tree_if_conversion): Move single_exit check to if-conversion part and
	support multiple exits.

gcc/testsuite/ChangeLog:

	* gcc.dg/vect/vect-bitfield-read-1-not.c: New test.
	* gcc.dg/vect/vect-bitfield-read-2-not.c: New test.
	* gcc.dg/vect/vect-bitfield-read-8.c: New test.
	* gcc.dg/vect/vect-bitfield-read-9.c: New test.

Co-Authored-By:  Andre Vieira <andre.simoesdiasvieira@arm.com>

--- inline copy of patch -- 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-1-not.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-1-not.c
new file mode 100644
index 0000000000000000000000000000000000000000..0d91067ebb27b1db2b2352975c43bce8b4171e3f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-1-not.c
@@ -0,0 +1,60 @@
+/* { dg-require-effective-target vect_shift } */
+/* { dg-require-effective-target vect_long_long } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s {
+    char a : 4;
+};
+
+#define N 32
+#define ELT0 {0}
+#define ELT1 {1}
+#define ELT2 {2}
+#define ELT3 {3}
+#define RES 56
+struct s A[N]
+  = { ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	switch (ptr[i].a)
+	  {
+	  case 0:
+	    res += ptr[i].a + 1;
+	    break;
+	  case 1:
+	  case 2:
+	  case 3:
+	    res += ptr[i].a;
+	    break;
+	  default:
+	    return 0;
+	  }
+      }
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump-not "Bitfield OK to lower." "ifcvt" } } */
+
+
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-2-not.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-2-not.c
new file mode 100644
index 0000000000000000000000000000000000000000..4ac7b3fc0dfd1c9d0b5e94a2ba6a745545577ec1
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-2-not.c
@@ -0,0 +1,49 @@
+/* { dg-require-effective-target vect_shift } */
+/* { dg-require-effective-target vect_long_long } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s {
+    char a : 4;
+};
+
+#define N 32
+#define ELT0 {0}
+#define ELT1 {1}
+#define ELT2 {2}
+#define ELT3 {3}
+#define RES 48
+struct s A[N]
+  = { ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	asm volatile ("" ::: "memory");
+	res += ptr[i].a;
+      }
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump-not "Bitfield OK to lower." "ifcvt" } } */
+
+
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-8.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-8.c
new file mode 100644
index 0000000000000000000000000000000000000000..52cfd33d937ae90f3fe9556716c90e098b768ac8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-8.c
@@ -0,0 +1,49 @@
+/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target vect_shift } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s { int i : 31; };
+
+#define ELT0 {0}
+#define ELT1 {1}
+#define ELT2 {2}
+#define ELT3 {3}
+#define ELT4 {4}
+#define N 32
+#define RES 25
+struct s A[N]
+  = { ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT4, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	if (ptr[i].i == 4)
+	  return res;
+	res += ptr[i].i;
+      }
+
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump "Bitfield OK to lower." "ifcvt" } } */
+
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-9.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-9.c
new file mode 100644
index 0000000000000000000000000000000000000000..ab814698131a5905def181eeed85d8a3c62b924b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-9.c
@@ -0,0 +1,51 @@
+/* { dg-require-effective-target vect_shift } */
+/* { dg-require-effective-target vect_long_long } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s {
+    unsigned i : 31;
+    char a : 4;
+};
+
+#define N 32
+#define ELT0 {0x7FFFFFFFUL, 0}
+#define ELT1 {0x7FFFFFFFUL, 1}
+#define ELT2 {0x7FFFFFFFUL, 2}
+#define ELT3 {0x7FFFFFFFUL, 3}
+#define ELT4 {0x7FFFFFFFUL, 4}
+#define RES 9
+struct s A[N]
+  = { ELT0, ELT4, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	if (ptr[i].a)
+	  return 9;
+	res += ptr[i].a;
+      }
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump "Bitfield OK to lower." "ifcvt" } } */
+
diff --git a/gcc/tree-if-conv.cc b/gcc/tree-if-conv.cc
index e342532a343a3c066142adeec5fdfaf736a653e5..cdb0fe4c29dfa531e3277925022d127b13ffcc16 100644
--- a/gcc/tree-if-conv.cc
+++ b/gcc/tree-if-conv.cc
@@ -586,7 +586,7 @@ add_to_dst_predicate_list (class loop *loop, edge e,
 /* Return true if one of the successor edges of BB exits LOOP.  */
 
 static bool
-bb_with_exit_edge_p (class loop *loop, basic_block bb)
+bb_with_exit_edge_p (const class loop *loop, basic_block bb)
 {
   edge e;
   edge_iterator ei;
@@ -1268,6 +1268,44 @@ get_loop_body_in_if_conv_order (const class loop *loop)
     }
   free (blocks_in_bfs_order);
   BITMAP_FREE (visited);
+
+  /* Go through loop and reject if-conversion or lowering of bitfields if we
+     encounter statements we do not believe the vectorizer will be able to
+     handle.  If adding a new type of statement here, make sure
+     'ifcvt_local_dce' is also able to handle it propertly.  */
+  for (index = 0; index < loop->num_nodes; index++)
+    {
+      basic_block bb = blocks[index];
+      gimple_stmt_iterator gsi;
+
+      bool may_have_nonlocal_labels
+	= bb_with_exit_edge_p (loop, bb) || bb == loop->latch;
+      for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
+	switch (gimple_code (gsi_stmt (gsi)))
+	  {
+	  case GIMPLE_LABEL:
+	    if (!may_have_nonlocal_labels)
+	      {
+		tree label
+		  = gimple_label_label (as_a <glabel *> (gsi_stmt (gsi)));
+		if (DECL_NONLOCAL (label) || FORCED_LABEL (label))
+		  {
+		    free (blocks);
+		    return NULL;
+		  }
+	      }
+	    /* Fallthru.  */
+	  case GIMPLE_ASSIGN:
+	  case GIMPLE_CALL:
+	  case GIMPLE_DEBUG:
+	  case GIMPLE_COND:
+	    gimple_set_uid (gsi_stmt (gsi), 0);
+	    break;
+	  default:
+	    free (blocks);
+	    return NULL;
+	  }
+    }
   return blocks;
 }
 
@@ -1438,36 +1476,6 @@ if_convertible_loop_p_1 (class loop *loop, vec<data_reference_p> *refs)
 	exit_bb = bb;
     }
 
-  for (i = 0; i < loop->num_nodes; i++)
-    {
-      basic_block bb = ifc_bbs[i];
-      gimple_stmt_iterator gsi;
-
-      bool may_have_nonlocal_labels
-	= bb_with_exit_edge_p (loop, bb) || bb == loop->latch;
-      for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
-	switch (gimple_code (gsi_stmt (gsi)))
-	  {
-	  case GIMPLE_LABEL:
-	    if (!may_have_nonlocal_labels)
-	      {
-		tree label
-		  = gimple_label_label (as_a <glabel *> (gsi_stmt (gsi)));
-		if (DECL_NONLOCAL (label) || FORCED_LABEL (label))
-		  return false;
-	      }
-	    /* Fallthru.  */
-	  case GIMPLE_ASSIGN:
-	  case GIMPLE_CALL:
-	  case GIMPLE_DEBUG:
-	  case GIMPLE_COND:
-	    gimple_set_uid (gsi_stmt (gsi), 0);
-	    break;
-	  default:
-	    return false;
-	  }
-    }
-
   data_reference_p dr;
 
   innermost_DR_map
@@ -1579,14 +1587,6 @@ if_convertible_loop_p (class loop *loop, vec<data_reference_p> *refs)
       return false;
     }
 
-  /* More than one loop exit is too much to handle.  */
-  if (!single_exit (loop))
-    {
-      if (dump_file && (dump_flags & TDF_DETAILS))
-	fprintf (dump_file, "multiple exits\n");
-      return false;
-    }
-
   /* If one of the loop header's edge is an exit edge then do not
      apply if-conversion.  */
   FOR_EACH_EDGE (e, ei, loop->header->succs)
@@ -3566,9 +3566,6 @@ tree_if_conversion (class loop *loop, vec<gimple *> *preds)
 	aggressive_if_conv = true;
     }
 
-  if (!single_exit (loop))
-    goto cleanup;
-
   /* If there are more than two BBs in the loop then there is at least one if
      to convert.  */
   if (loop->num_nodes > 2
@@ -3588,15 +3585,25 @@ tree_if_conversion (class loop *loop, vec<gimple *> *preds)
 
   if (loop->num_nodes > 2)
     {
-      need_to_ifcvt = true;
+      /* More than one loop exit is too much to handle.  */
+      if (!single_exit (loop))
+	{
+	  if (dump_file && (dump_flags & TDF_DETAILS))
+	    fprintf (dump_file, "Can not ifcvt due to multiple exits\n");
+	}
+      else
+	{
+	  need_to_ifcvt = true;
 
-      if (!if_convertible_loop_p (loop, &refs) || !dbg_cnt (if_conversion_tree))
-	goto cleanup;
+	  if (!if_convertible_loop_p (loop, &refs)
+	      || !dbg_cnt (if_conversion_tree))
+	    goto cleanup;
 
-      if ((need_to_predicate || any_complicated_phi)
-	  && ((!flag_tree_loop_vectorize && !loop->force_vectorize)
-	      || loop->dont_vectorize))
-	goto cleanup;
+	  if ((need_to_predicate || any_complicated_phi)
+	      && ((!flag_tree_loop_vectorize && !loop->force_vectorize)
+		  || loop->dont_vectorize))
+	    goto cleanup;
+	}
     }
 
   if ((flag_tree_loop_vectorize || loop->force_vectorize)
@@ -3687,7 +3694,8 @@ tree_if_conversion (class loop *loop, vec<gimple *> *preds)
      PHIs, those are to be kept in sync with the non-if-converted copy.
      ???  We'll still keep dead stores though.  */
   exit_bbs = BITMAP_ALLOC (NULL);
-  bitmap_set_bit (exit_bbs, single_exit (loop)->dest->index);
+  for (edge exit : get_loop_exit_edges (loop))
+    bitmap_set_bit (exit_bbs, exit->dest->index);
   bitmap_set_bit (exit_bbs, loop->latch->index);
 
   std::pair <tree, tree> *name_pair;




-- 

[-- Attachment #2: rb17495.patch --]
[-- Type: text/plain, Size: 10565 bytes --]

diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-1-not.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-1-not.c
new file mode 100644
index 0000000000000000000000000000000000000000..0d91067ebb27b1db2b2352975c43bce8b4171e3f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-1-not.c
@@ -0,0 +1,60 @@
+/* { dg-require-effective-target vect_shift } */
+/* { dg-require-effective-target vect_long_long } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s {
+    char a : 4;
+};
+
+#define N 32
+#define ELT0 {0}
+#define ELT1 {1}
+#define ELT2 {2}
+#define ELT3 {3}
+#define RES 56
+struct s A[N]
+  = { ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	switch (ptr[i].a)
+	  {
+	  case 0:
+	    res += ptr[i].a + 1;
+	    break;
+	  case 1:
+	  case 2:
+	  case 3:
+	    res += ptr[i].a;
+	    break;
+	  default:
+	    return 0;
+	  }
+      }
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump-not "Bitfield OK to lower." "ifcvt" } } */
+
+
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-2-not.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-2-not.c
new file mode 100644
index 0000000000000000000000000000000000000000..4ac7b3fc0dfd1c9d0b5e94a2ba6a745545577ec1
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-2-not.c
@@ -0,0 +1,49 @@
+/* { dg-require-effective-target vect_shift } */
+/* { dg-require-effective-target vect_long_long } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s {
+    char a : 4;
+};
+
+#define N 32
+#define ELT0 {0}
+#define ELT1 {1}
+#define ELT2 {2}
+#define ELT3 {3}
+#define RES 48
+struct s A[N]
+  = { ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	asm volatile ("" ::: "memory");
+	res += ptr[i].a;
+      }
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump-not "Bitfield OK to lower." "ifcvt" } } */
+
+
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-8.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-8.c
new file mode 100644
index 0000000000000000000000000000000000000000..52cfd33d937ae90f3fe9556716c90e098b768ac8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-8.c
@@ -0,0 +1,49 @@
+/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target vect_shift } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s { int i : 31; };
+
+#define ELT0 {0}
+#define ELT1 {1}
+#define ELT2 {2}
+#define ELT3 {3}
+#define ELT4 {4}
+#define N 32
+#define RES 25
+struct s A[N]
+  = { ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT4, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	if (ptr[i].i == 4)
+	  return res;
+	res += ptr[i].i;
+      }
+
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump "Bitfield OK to lower." "ifcvt" } } */
+
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-9.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-9.c
new file mode 100644
index 0000000000000000000000000000000000000000..ab814698131a5905def181eeed85d8a3c62b924b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-read-9.c
@@ -0,0 +1,51 @@
+/* { dg-require-effective-target vect_shift } */
+/* { dg-require-effective-target vect_long_long } */
+/* { dg-additional-options { "-fdump-tree-ifcvt-all" } } */
+
+#include <stdarg.h>
+#include "tree-vect.h"
+
+extern void abort(void);
+
+struct s {
+    unsigned i : 31;
+    char a : 4;
+};
+
+#define N 32
+#define ELT0 {0x7FFFFFFFUL, 0}
+#define ELT1 {0x7FFFFFFFUL, 1}
+#define ELT2 {0x7FFFFFFFUL, 2}
+#define ELT3 {0x7FFFFFFFUL, 3}
+#define ELT4 {0x7FFFFFFFUL, 4}
+#define RES 9
+struct s A[N]
+  = { ELT0, ELT4, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3,
+      ELT0, ELT1, ELT2, ELT3, ELT0, ELT1, ELT2, ELT3};
+
+int __attribute__ ((noipa))
+f(struct s *ptr, unsigned n) {
+    int res = 0;
+    for (int i = 0; i < n; ++i)
+      {
+	if (ptr[i].a)
+	  return 9;
+	res += ptr[i].a;
+      }
+    return res;
+}
+
+int main (void)
+{
+  check_vect ();
+
+  if (f(&A[0], N) != RES)
+    abort ();
+
+  return 0;
+}
+
+/* { dg-final { scan-tree-dump "Bitfield OK to lower." "ifcvt" } } */
+
diff --git a/gcc/tree-if-conv.cc b/gcc/tree-if-conv.cc
index e342532a343a3c066142adeec5fdfaf736a653e5..cdb0fe4c29dfa531e3277925022d127b13ffcc16 100644
--- a/gcc/tree-if-conv.cc
+++ b/gcc/tree-if-conv.cc
@@ -586,7 +586,7 @@ add_to_dst_predicate_list (class loop *loop, edge e,
 /* Return true if one of the successor edges of BB exits LOOP.  */
 
 static bool
-bb_with_exit_edge_p (class loop *loop, basic_block bb)
+bb_with_exit_edge_p (const class loop *loop, basic_block bb)
 {
   edge e;
   edge_iterator ei;
@@ -1268,6 +1268,44 @@ get_loop_body_in_if_conv_order (const class loop *loop)
     }
   free (blocks_in_bfs_order);
   BITMAP_FREE (visited);
+
+  /* Go through loop and reject if-conversion or lowering of bitfields if we
+     encounter statements we do not believe the vectorizer will be able to
+     handle.  If adding a new type of statement here, make sure
+     'ifcvt_local_dce' is also able to handle it propertly.  */
+  for (index = 0; index < loop->num_nodes; index++)
+    {
+      basic_block bb = blocks[index];
+      gimple_stmt_iterator gsi;
+
+      bool may_have_nonlocal_labels
+	= bb_with_exit_edge_p (loop, bb) || bb == loop->latch;
+      for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
+	switch (gimple_code (gsi_stmt (gsi)))
+	  {
+	  case GIMPLE_LABEL:
+	    if (!may_have_nonlocal_labels)
+	      {
+		tree label
+		  = gimple_label_label (as_a <glabel *> (gsi_stmt (gsi)));
+		if (DECL_NONLOCAL (label) || FORCED_LABEL (label))
+		  {
+		    free (blocks);
+		    return NULL;
+		  }
+	      }
+	    /* Fallthru.  */
+	  case GIMPLE_ASSIGN:
+	  case GIMPLE_CALL:
+	  case GIMPLE_DEBUG:
+	  case GIMPLE_COND:
+	    gimple_set_uid (gsi_stmt (gsi), 0);
+	    break;
+	  default:
+	    free (blocks);
+	    return NULL;
+	  }
+    }
   return blocks;
 }
 
@@ -1438,36 +1476,6 @@ if_convertible_loop_p_1 (class loop *loop, vec<data_reference_p> *refs)
 	exit_bb = bb;
     }
 
-  for (i = 0; i < loop->num_nodes; i++)
-    {
-      basic_block bb = ifc_bbs[i];
-      gimple_stmt_iterator gsi;
-
-      bool may_have_nonlocal_labels
-	= bb_with_exit_edge_p (loop, bb) || bb == loop->latch;
-      for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
-	switch (gimple_code (gsi_stmt (gsi)))
-	  {
-	  case GIMPLE_LABEL:
-	    if (!may_have_nonlocal_labels)
-	      {
-		tree label
-		  = gimple_label_label (as_a <glabel *> (gsi_stmt (gsi)));
-		if (DECL_NONLOCAL (label) || FORCED_LABEL (label))
-		  return false;
-	      }
-	    /* Fallthru.  */
-	  case GIMPLE_ASSIGN:
-	  case GIMPLE_CALL:
-	  case GIMPLE_DEBUG:
-	  case GIMPLE_COND:
-	    gimple_set_uid (gsi_stmt (gsi), 0);
-	    break;
-	  default:
-	    return false;
-	  }
-    }
-
   data_reference_p dr;
 
   innermost_DR_map
@@ -1579,14 +1587,6 @@ if_convertible_loop_p (class loop *loop, vec<data_reference_p> *refs)
       return false;
     }
 
-  /* More than one loop exit is too much to handle.  */
-  if (!single_exit (loop))
-    {
-      if (dump_file && (dump_flags & TDF_DETAILS))
-	fprintf (dump_file, "multiple exits\n");
-      return false;
-    }
-
   /* If one of the loop header's edge is an exit edge then do not
      apply if-conversion.  */
   FOR_EACH_EDGE (e, ei, loop->header->succs)
@@ -3566,9 +3566,6 @@ tree_if_conversion (class loop *loop, vec<gimple *> *preds)
 	aggressive_if_conv = true;
     }
 
-  if (!single_exit (loop))
-    goto cleanup;
-
   /* If there are more than two BBs in the loop then there is at least one if
      to convert.  */
   if (loop->num_nodes > 2
@@ -3588,15 +3585,25 @@ tree_if_conversion (class loop *loop, vec<gimple *> *preds)
 
   if (loop->num_nodes > 2)
     {
-      need_to_ifcvt = true;
+      /* More than one loop exit is too much to handle.  */
+      if (!single_exit (loop))
+	{
+	  if (dump_file && (dump_flags & TDF_DETAILS))
+	    fprintf (dump_file, "Can not ifcvt due to multiple exits\n");
+	}
+      else
+	{
+	  need_to_ifcvt = true;
 
-      if (!if_convertible_loop_p (loop, &refs) || !dbg_cnt (if_conversion_tree))
-	goto cleanup;
+	  if (!if_convertible_loop_p (loop, &refs)
+	      || !dbg_cnt (if_conversion_tree))
+	    goto cleanup;
 
-      if ((need_to_predicate || any_complicated_phi)
-	  && ((!flag_tree_loop_vectorize && !loop->force_vectorize)
-	      || loop->dont_vectorize))
-	goto cleanup;
+	  if ((need_to_predicate || any_complicated_phi)
+	      && ((!flag_tree_loop_vectorize && !loop->force_vectorize)
+		  || loop->dont_vectorize))
+	    goto cleanup;
+	}
     }
 
   if ((flag_tree_loop_vectorize || loop->force_vectorize)
@@ -3687,7 +3694,8 @@ tree_if_conversion (class loop *loop, vec<gimple *> *preds)
      PHIs, those are to be kept in sync with the non-if-converted copy.
      ???  We'll still keep dead stores though.  */
   exit_bbs = BITMAP_ALLOC (NULL);
-  bitmap_set_bit (exit_bbs, single_exit (loop)->dest->index);
+  for (edge exit : get_loop_exit_edges (loop))
+    bitmap_set_bit (exit_bbs, exit->dest->index);
   bitmap_set_bit (exit_bbs, loop->latch->index);
 
   std::pair <tree, tree> *name_pair;




^ permalink raw reply	[flat|nested] 200+ messages in thread

* [PATCH 2/19][front-end] C/C++ front-end: add pragma GCC novector
  2023-06-28 13:40 [PATCH v5 0/19] Support early break/return auto-vectorization Tamar Christina
  2023-06-28 13:41 ` [PATCH 1/19]middle-end ifcvt: Support bitfield lowering of multiple-exit loops Tamar Christina
@ 2023-06-28 13:41 ` Tamar Christina
  2023-06-29 22:17   ` Jason Merrill
  2023-06-28 13:42 ` [PATCH 3/19]middle-end clean up vect testsuite using pragma novector Tamar Christina
                   ` (40 subsequent siblings)
  42 siblings, 1 reply; 200+ messages in thread
From: Tamar Christina @ 2023-06-28 13:41 UTC (permalink / raw)
  To: gcc-patches; +Cc: nd, joseph, rguenther, nathan, jason

[-- Attachment #1: Type: text/plain, Size: 36404 bytes --]

Hi All,

FORTRAN currently has a pragma NOVECTOR for indicating that vectorization should
not be applied to a particular loop.

ICC/ICX also has such a pragma for C and C++ called #pragma novector.

As part of this patch series I need a way to easily turn off vectorization of
particular loops, particularly for testsuite reasons.

This patch proposes a #pragma GCC novector that does the same for C and C++
as gfortan does for FORTRAN and what ICX/ICX does for C and C++.

I added only some basic tests here, but the next patch in the series uses this
in the testsuite in about ~800 tests.

Bootstrapped Regtested on aarch64-none-linux-gnu and no issues.

Ok for master?

Thanks,
Tamar

gcc/c-family/ChangeLog:

	* c-pragma.h (enum pragma_kind): Add PRAGMA_NOVECTOR.
	* c-pragma.cc (init_pragma): Use it.

gcc/c/ChangeLog:

	* c-parser.cc (c_parser_while_statement, c_parser_do_statement,
	c_parser_for_statement, c_parser_statement_after_labels,
	c_parse_pragma_novector, c_parser_pragma): Wire through novector and
	default to false.

gcc/cp/ChangeLog:

	* cp-tree.def (RANGE_FOR_STMT): Update comment.
	* cp-tree.h (RANGE_FOR_NOVECTOR): New.
	(cp_convert_range_for, finish_while_stmt_cond, finish_do_stmt,
	finish_for_cond): Add novector param.
	* init.cc (build_vec_init): Default novector to false.
	* method.cc (build_comparison_op): Likewise.
	* parser.cc (cp_parser_statement): Likewise.
	(cp_parser_for, cp_parser_c_for, cp_parser_range_for,
	cp_convert_range_for, cp_parser_iteration_statement,
	cp_parser_omp_for_loop, cp_parser_pragma): Support novector.
	(cp_parser_pragma_novector): New.
	* pt.cc (tsubst_expr): Likewise.
	* semantics.cc (finish_while_stmt_cond, finish_do_stmt,
	finish_for_cond): Likewise.

gcc/ChangeLog:

	* doc/extend.texi: Document it.
	* tree-core.h (struct tree_base): Add lang_flag_7 and reduce spare0.
	* tree.h (TREE_LANG_FLAG_7): New.

gcc/testsuite/ChangeLog:

	* g++.dg/vect/vect-novector-pragma.cc: New test.
	* gcc.dg/vect/vect-novector-pragma.c: New test.

--- inline copy of patch -- 
diff --git a/gcc/c-family/c-pragma.h b/gcc/c-family/c-pragma.h
index 9cc95ab3ee376628dbef2485b84e6008210fa8fc..99cf2e8bd1c05537c198470f1aaa0a5a9da4e576 100644
--- a/gcc/c-family/c-pragma.h
+++ b/gcc/c-family/c-pragma.h
@@ -87,6 +87,7 @@ enum pragma_kind {
   PRAGMA_GCC_PCH_PREPROCESS,
   PRAGMA_IVDEP,
   PRAGMA_UNROLL,
+  PRAGMA_NOVECTOR,
 
   PRAGMA_FIRST_EXTERNAL
 };
diff --git a/gcc/c-family/c-pragma.cc b/gcc/c-family/c-pragma.cc
index 0d2b333cebbed32423d5dc6fd2a3ac0ce0bf8b94..848a850b8e123ff1c6ae1ec4b7f8ccbd599b1a88 100644
--- a/gcc/c-family/c-pragma.cc
+++ b/gcc/c-family/c-pragma.cc
@@ -1862,6 +1862,10 @@ init_pragma (void)
     cpp_register_deferred_pragma (parse_in, "GCC", "unroll", PRAGMA_UNROLL,
 				  false, false);
 
+  if (!flag_preprocess_only)
+    cpp_register_deferred_pragma (parse_in, "GCC", "novector", PRAGMA_NOVECTOR,
+				  false, false);
+
 #ifdef HANDLE_PRAGMA_PACK_WITH_EXPANSION
   c_register_pragma_with_expansion (0, "pack", handle_pragma_pack);
 #else
diff --git a/gcc/c/c-parser.cc b/gcc/c/c-parser.cc
index 24a6eb6e4596f32c477e3f1c3f98b9792f7bc92c..9d35fe68704c8aca197bcd4805a146c655959621 100644
--- a/gcc/c/c-parser.cc
+++ b/gcc/c/c-parser.cc
@@ -1572,9 +1572,11 @@ static tree c_parser_c99_block_statement (c_parser *, bool *,
 					  location_t * = NULL);
 static void c_parser_if_statement (c_parser *, bool *, vec<tree> *);
 static void c_parser_switch_statement (c_parser *, bool *);
-static void c_parser_while_statement (c_parser *, bool, unsigned short, bool *);
-static void c_parser_do_statement (c_parser *, bool, unsigned short);
-static void c_parser_for_statement (c_parser *, bool, unsigned short, bool *);
+static void c_parser_while_statement (c_parser *, bool, unsigned short, bool,
+				      bool *);
+static void c_parser_do_statement (c_parser *, bool, unsigned short, bool);
+static void c_parser_for_statement (c_parser *, bool, unsigned short, bool,
+				    bool *);
 static tree c_parser_asm_statement (c_parser *);
 static tree c_parser_asm_operands (c_parser *);
 static tree c_parser_asm_goto_operands (c_parser *);
@@ -6644,13 +6646,13 @@ c_parser_statement_after_labels (c_parser *parser, bool *if_p,
 	  c_parser_switch_statement (parser, if_p);
 	  break;
 	case RID_WHILE:
-	  c_parser_while_statement (parser, false, 0, if_p);
+	  c_parser_while_statement (parser, false, 0, false, if_p);
 	  break;
 	case RID_DO:
-	  c_parser_do_statement (parser, false, 0);
+	  c_parser_do_statement (parser, false, 0, false);
 	  break;
 	case RID_FOR:
-	  c_parser_for_statement (parser, false, 0, if_p);
+	  c_parser_for_statement (parser, false, 0, false, if_p);
 	  break;
 	case RID_GOTO:
 	  c_parser_consume_token (parser);
@@ -7146,7 +7148,7 @@ c_parser_switch_statement (c_parser *parser, bool *if_p)
 
 static void
 c_parser_while_statement (c_parser *parser, bool ivdep, unsigned short unroll,
-			  bool *if_p)
+			  bool novector, bool *if_p)
 {
   tree block, cond, body;
   unsigned char save_in_statement;
@@ -7168,6 +7170,11 @@ c_parser_while_statement (c_parser *parser, bool ivdep, unsigned short unroll,
 		   build_int_cst (integer_type_node,
 				  annot_expr_unroll_kind),
 		   build_int_cst (integer_type_node, unroll));
+  if (novector && cond != error_mark_node)
+    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+		   build_int_cst (integer_type_node,
+				  annot_expr_no_vector_kind),
+		   integer_zero_node);
   save_in_statement = in_statement;
   in_statement = IN_ITERATION_STMT;
 
@@ -7199,7 +7206,8 @@ c_parser_while_statement (c_parser *parser, bool ivdep, unsigned short unroll,
 */
 
 static void
-c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll)
+c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll,
+		       bool novector)
 {
   tree block, cond, body;
   unsigned char save_in_statement;
@@ -7228,6 +7236,11 @@ c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll)
 		   build_int_cst (integer_type_node,
 				  annot_expr_unroll_kind),
  		   build_int_cst (integer_type_node, unroll));
+  if (novector && cond != error_mark_node)
+    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+		   build_int_cst (integer_type_node,
+				  annot_expr_no_vector_kind),
+		   integer_zero_node);
   if (!c_parser_require (parser, CPP_SEMICOLON, "expected %<;%>"))
     c_parser_skip_to_end_of_block_or_statement (parser);
 
@@ -7296,7 +7309,7 @@ c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll)
 
 static void
 c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll,
-			bool *if_p)
+			bool novector, bool *if_p)
 {
   tree block, cond, incr, body;
   unsigned char save_in_statement;
@@ -7430,6 +7443,12 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll,
 					  "with %<GCC unroll%> pragma");
 		  cond = error_mark_node;
 		}
+	      else if (novector)
+		{
+		  c_parser_error (parser, "missing loop condition in loop "
+					  "with %<GCC novector%> pragma");
+		  cond = error_mark_node;
+		}
 	      else
 		{
 		  c_parser_consume_token (parser);
@@ -7452,6 +7471,11 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll,
  			   build_int_cst (integer_type_node,
 					  annot_expr_unroll_kind),
 			   build_int_cst (integer_type_node, unroll));
+	  if (novector && cond != error_mark_node)
+	    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+			   build_int_cst (integer_type_node,
+					  annot_expr_no_vector_kind),
+			   integer_zero_node);
 	}
       /* Parse the increment expression (the third expression in a
 	 for-statement).  In the case of a foreach-statement, this is
@@ -13037,6 +13061,16 @@ c_parse_pragma_ivdep (c_parser *parser)
   return true;
 }
 
+/* Parse a pragma GCC novector.  */
+
+static bool
+c_parse_pragma_novector (c_parser *parser)
+{
+  c_parser_consume_pragma (parser);
+  c_parser_skip_to_pragma_eol (parser);
+  return true;
+}
+
 /* Parse a pragma GCC unroll.  */
 
 static unsigned short
@@ -13264,11 +13298,12 @@ c_parser_pragma (c_parser *parser, enum pragma_context context, bool *if_p)
     case PRAGMA_IVDEP:
       {
 	const bool ivdep = c_parse_pragma_ivdep (parser);
-	unsigned short unroll;
+	unsigned short unroll = 0;
+	bool novector = false;
 	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_UNROLL)
 	  unroll = c_parser_pragma_unroll (parser);
-	else
-	  unroll = 0;
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_NOVECTOR)
+	  novector = c_parse_pragma_novector (parser);
 	if (!c_parser_next_token_is_keyword (parser, RID_FOR)
 	    && !c_parser_next_token_is_keyword (parser, RID_WHILE)
 	    && !c_parser_next_token_is_keyword (parser, RID_DO))
@@ -13277,22 +13312,48 @@ c_parser_pragma (c_parser *parser, enum pragma_context context, bool *if_p)
 	    return false;
 	  }
 	if (c_parser_next_token_is_keyword (parser, RID_FOR))
-	  c_parser_for_statement (parser, ivdep, unroll, if_p);
+	  c_parser_for_statement (parser, ivdep, unroll, novector, if_p);
 	else if (c_parser_next_token_is_keyword (parser, RID_WHILE))
-	  c_parser_while_statement (parser, ivdep, unroll, if_p);
+	  c_parser_while_statement (parser, ivdep, unroll, novector, if_p);
 	else
-	  c_parser_do_statement (parser, ivdep, unroll);
+	  c_parser_do_statement (parser, ivdep, unroll, novector);
       }
       return true;
 
     case PRAGMA_UNROLL:
       {
 	unsigned short unroll = c_parser_pragma_unroll (parser);
-	bool ivdep;
+	bool ivdep = false;
+	bool novector = false;
 	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_IVDEP)
 	  ivdep = c_parse_pragma_ivdep (parser);
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_NOVECTOR)
+	  novector = c_parse_pragma_novector (parser);
+	if (!c_parser_next_token_is_keyword (parser, RID_FOR)
+	    && !c_parser_next_token_is_keyword (parser, RID_WHILE)
+	    && !c_parser_next_token_is_keyword (parser, RID_DO))
+	  {
+	    c_parser_error (parser, "for, while or do statement expected");
+	    return false;
+	  }
+	if (c_parser_next_token_is_keyword (parser, RID_FOR))
+	  c_parser_for_statement (parser, ivdep, unroll, novector, if_p);
+	else if (c_parser_next_token_is_keyword (parser, RID_WHILE))
+	  c_parser_while_statement (parser, ivdep, unroll, novector, if_p);
 	else
-	  ivdep = false;
+	  c_parser_do_statement (parser, ivdep, unroll, novector);
+      }
+      return true;
+
+    case PRAGMA_NOVECTOR:
+      {
+	bool novector = c_parse_pragma_novector (parser);
+	unsigned short unroll = 0;
+	bool ivdep = false;
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_IVDEP)
+	  ivdep = c_parse_pragma_ivdep (parser);
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_UNROLL)
+	  unroll = c_parser_pragma_unroll (parser);
 	if (!c_parser_next_token_is_keyword (parser, RID_FOR)
 	    && !c_parser_next_token_is_keyword (parser, RID_WHILE)
 	    && !c_parser_next_token_is_keyword (parser, RID_DO))
@@ -13301,11 +13362,11 @@ c_parser_pragma (c_parser *parser, enum pragma_context context, bool *if_p)
 	    return false;
 	  }
 	if (c_parser_next_token_is_keyword (parser, RID_FOR))
-	  c_parser_for_statement (parser, ivdep, unroll, if_p);
+	  c_parser_for_statement (parser, ivdep, unroll, novector, if_p);
 	else if (c_parser_next_token_is_keyword (parser, RID_WHILE))
-	  c_parser_while_statement (parser, ivdep, unroll, if_p);
+	  c_parser_while_statement (parser, ivdep, unroll, novector, if_p);
 	else
-	  c_parser_do_statement (parser, ivdep, unroll);
+	  c_parser_do_statement (parser, ivdep, unroll, novector);
       }
       return true;
 
diff --git a/gcc/cp/cp-tree.def b/gcc/cp/cp-tree.def
index 0e66ca70e00caa1dc4beada1024ace32954e2aaf..c13c8ea98a523c4ef1c55a11e02d5da9db7e367e 100644
--- a/gcc/cp/cp-tree.def
+++ b/gcc/cp/cp-tree.def
@@ -305,8 +305,8 @@ DEFTREECODE (IF_STMT, "if_stmt", tcc_statement, 4)
 
 /* Used to represent a range-based `for' statement. The operands are
    RANGE_FOR_DECL, RANGE_FOR_EXPR, RANGE_FOR_BODY, RANGE_FOR_SCOPE,
-   RANGE_FOR_UNROLL, and RANGE_FOR_INIT_STMT, respectively.  Only used in
-   templates.  */
+   RANGE_FOR_UNROLL, RANGE_FOR_NOVECTOR and RANGE_FOR_INIT_STMT,
+   respectively.  Only used in templates.  */
 DEFTREECODE (RANGE_FOR_STMT, "range_for_stmt", tcc_statement, 6)
 
 /* Used to represent an expression statement.  Use `EXPR_STMT_EXPR' to
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 8398223311194837441107cb335d497ff5f5ec1c..50b0f20817a168b5e9ac58db59ad44233f079e11 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -5377,6 +5377,7 @@ get_vec_init_expr (tree t)
 #define RANGE_FOR_UNROLL(NODE)	TREE_OPERAND (RANGE_FOR_STMT_CHECK (NODE), 4)
 #define RANGE_FOR_INIT_STMT(NODE) TREE_OPERAND (RANGE_FOR_STMT_CHECK (NODE), 5)
 #define RANGE_FOR_IVDEP(NODE)	TREE_LANG_FLAG_6 (RANGE_FOR_STMT_CHECK (NODE))
+#define RANGE_FOR_NOVECTOR(NODE) TREE_LANG_FLAG_7 (RANGE_FOR_STMT_CHECK (NODE))
 
 /* STMT_EXPR accessor.  */
 #define STMT_EXPR_STMT(NODE)	TREE_OPERAND (STMT_EXPR_CHECK (NODE), 0)
@@ -7286,7 +7287,7 @@ extern bool maybe_clone_body			(tree);
 
 /* In parser.cc */
 extern tree cp_convert_range_for (tree, tree, tree, tree, unsigned int, bool,
-				  unsigned short);
+				  unsigned short, bool);
 extern void cp_convert_omp_range_for (tree &, vec<tree, va_gc> *, tree &,
 				      tree &, tree &, tree &, tree &, tree &);
 extern void cp_finish_omp_range_for (tree, tree);
@@ -7609,16 +7610,19 @@ extern void begin_else_clause			(tree);
 extern void finish_else_clause			(tree);
 extern void finish_if_stmt			(tree);
 extern tree begin_while_stmt			(void);
-extern void finish_while_stmt_cond	(tree, tree, bool, unsigned short);
+extern void finish_while_stmt_cond	(tree, tree, bool, unsigned short,
+					 bool);
 extern void finish_while_stmt			(tree);
 extern tree begin_do_stmt			(void);
 extern void finish_do_body			(tree);
-extern void finish_do_stmt		(tree, tree, bool, unsigned short);
+extern void finish_do_stmt		(tree, tree, bool, unsigned short,
+					 bool);
 extern tree finish_return_stmt			(tree);
 extern tree begin_for_scope			(tree *);
 extern tree begin_for_stmt			(tree, tree);
 extern void finish_init_stmt			(tree);
-extern void finish_for_cond		(tree, tree, bool, unsigned short);
+extern void finish_for_cond		(tree, tree, bool, unsigned short,
+					 bool);
 extern void finish_for_expr			(tree, tree);
 extern void finish_for_stmt			(tree);
 extern tree begin_range_for_stmt		(tree, tree);
diff --git a/gcc/cp/init.cc b/gcc/cp/init.cc
index af6e30f511e142c7a594e742d128b2bf0aa8fb8d..5b735b27e6f5bc6b439ae64665902f4f1ca76f95 100644
--- a/gcc/cp/init.cc
+++ b/gcc/cp/init.cc
@@ -4846,7 +4846,7 @@ build_vec_init (tree base, tree maxindex, tree init,
       finish_init_stmt (for_stmt);
       finish_for_cond (build2 (GT_EXPR, boolean_type_node, iterator,
 			       build_int_cst (TREE_TYPE (iterator), -1)),
-		       for_stmt, false, 0);
+		       for_stmt, false, 0, false);
       /* We used to pass this decrement to finish_for_expr; now we add it to
 	 elt_init below so it's part of the same full-expression as the
 	 initialization, and thus happens before any potentially throwing
diff --git a/gcc/cp/method.cc b/gcc/cp/method.cc
index 91cf943f11089c0e6bcbe8377daa4e016f956d56..fce49c796199c2c65cd70684e2942fea1b6b2ebd 100644
--- a/gcc/cp/method.cc
+++ b/gcc/cp/method.cc
@@ -1645,7 +1645,8 @@ build_comparison_op (tree fndecl, bool defining, tsubst_flags_t complain)
 		      add_stmt (idx);
 		      finish_init_stmt (for_stmt);
 		      finish_for_cond (build2 (LE_EXPR, boolean_type_node, idx,
-					       maxval), for_stmt, false, 0);
+					       maxval), for_stmt, false, 0,
+					       false);
 		      finish_for_expr (cp_build_unary_op (PREINCREMENT_EXPR,
 							  TARGET_EXPR_SLOT (idx),
 							  false, complain),
diff --git a/gcc/cp/parser.cc b/gcc/cp/parser.cc
index dd3665c8ccf48a8a0b1ba2c06400fe50999ea240..0bc110121d51ee13258b7ff0e4ad7851b4eae78e 100644
--- a/gcc/cp/parser.cc
+++ b/gcc/cp/parser.cc
@@ -2324,15 +2324,15 @@ static tree cp_parser_selection_statement
 static tree cp_parser_condition
   (cp_parser *);
 static tree cp_parser_iteration_statement
-  (cp_parser *, bool *, bool, unsigned short);
+  (cp_parser *, bool *, bool, unsigned short, bool);
 static bool cp_parser_init_statement
   (cp_parser *, tree *decl);
 static tree cp_parser_for
-  (cp_parser *, bool, unsigned short);
+  (cp_parser *, bool, unsigned short, bool);
 static tree cp_parser_c_for
-  (cp_parser *, tree, tree, bool, unsigned short);
+  (cp_parser *, tree, tree, bool, unsigned short, bool);
 static tree cp_parser_range_for
-  (cp_parser *, tree, tree, tree, bool, unsigned short, bool);
+  (cp_parser *, tree, tree, tree, bool, unsigned short, bool, bool);
 static void do_range_for_auto_deduction
   (tree, tree, tree, unsigned int);
 static tree cp_parser_perform_range_for_lookup
@@ -12414,7 +12414,8 @@ cp_parser_statement (cp_parser* parser, tree in_statement_expr,
 	case RID_DO:
 	case RID_FOR:
 	  std_attrs = process_stmt_hotness_attribute (std_attrs, attrs_loc);
-	  statement = cp_parser_iteration_statement (parser, if_p, false, 0);
+	  statement = cp_parser_iteration_statement (parser, if_p, false, 0,
+						     false);
 	  break;
 
 	case RID_BREAK:
@@ -13594,7 +13595,8 @@ cp_parser_condition (cp_parser* parser)
    not included. */
 
 static tree
-cp_parser_for (cp_parser *parser, bool ivdep, unsigned short unroll)
+cp_parser_for (cp_parser *parser, bool ivdep, unsigned short unroll,
+	       bool novector)
 {
   tree init, scope, decl;
   bool is_range_for;
@@ -13624,14 +13626,14 @@ cp_parser_for (cp_parser *parser, bool ivdep, unsigned short unroll)
 
   if (is_range_for)
     return cp_parser_range_for (parser, scope, init, decl, ivdep, unroll,
-				false);
+				novector, false);
   else
-    return cp_parser_c_for (parser, scope, init, ivdep, unroll);
+    return cp_parser_c_for (parser, scope, init, ivdep, unroll, novector);
 }
 
 static tree
 cp_parser_c_for (cp_parser *parser, tree scope, tree init, bool ivdep,
-		 unsigned short unroll)
+		 unsigned short unroll, bool novector)
 {
   /* Normal for loop */
   tree condition = NULL_TREE;
@@ -13658,7 +13660,13 @@ cp_parser_c_for (cp_parser *parser, tree scope, tree init, bool ivdep,
 		       "%<GCC unroll%> pragma");
       condition = error_mark_node;
     }
-  finish_for_cond (condition, stmt, ivdep, unroll);
+  else if (novector)
+    {
+      cp_parser_error (parser, "missing loop condition in loop with "
+		       "%<GCC novector%> pragma");
+      condition = error_mark_node;
+    }
+  finish_for_cond (condition, stmt, ivdep, unroll, novector);
   /* Look for the `;'.  */
   cp_parser_require (parser, CPP_SEMICOLON, RT_SEMICOLON);
 
@@ -13682,7 +13690,8 @@ cp_parser_c_for (cp_parser *parser, tree scope, tree init, bool ivdep,
 
 static tree
 cp_parser_range_for (cp_parser *parser, tree scope, tree init, tree range_decl,
-		     bool ivdep, unsigned short unroll, bool is_omp)
+		     bool ivdep, unsigned short unroll, bool novector,
+		     bool is_omp)
 {
   tree stmt, range_expr;
   auto_vec <cxx_binding *, 16> bindings;
@@ -13758,6 +13767,8 @@ cp_parser_range_for (cp_parser *parser, tree scope, tree init, tree range_decl,
 	RANGE_FOR_IVDEP (stmt) = 1;
       if (unroll)
 	RANGE_FOR_UNROLL (stmt) = build_int_cst (integer_type_node, unroll);
+      if (novector)
+	RANGE_FOR_NOVECTOR (stmt) = 1;
       finish_range_for_decl (stmt, range_decl, range_expr);
       if (!type_dependent_expression_p (range_expr)
 	  /* do_auto_deduction doesn't mess with template init-lists.  */
@@ -13770,7 +13781,7 @@ cp_parser_range_for (cp_parser *parser, tree scope, tree init, tree range_decl,
       stmt = begin_for_stmt (scope, init);
       stmt = cp_convert_range_for (stmt, range_decl, range_expr,
 				   decomp_first_name, decomp_cnt, ivdep,
-				   unroll);
+				   unroll, novector);
     }
   return stmt;
 }
@@ -13948,7 +13959,7 @@ warn_for_range_copy (tree decl, tree expr)
 tree
 cp_convert_range_for (tree statement, tree range_decl, tree range_expr,
 		      tree decomp_first_name, unsigned int decomp_cnt,
-		      bool ivdep, unsigned short unroll)
+		      bool ivdep, unsigned short unroll, bool novector)
 {
   tree begin, end;
   tree iter_type, begin_expr, end_expr;
@@ -14008,7 +14019,7 @@ cp_convert_range_for (tree statement, tree range_decl, tree range_expr,
 				 begin, ERROR_MARK,
 				 end, ERROR_MARK,
 				 NULL_TREE, NULL, tf_warning_or_error);
-  finish_for_cond (condition, statement, ivdep, unroll);
+  finish_for_cond (condition, statement, ivdep, unroll, novector);
 
   /* The new increment expression.  */
   expression = finish_unary_op_expr (input_location,
@@ -14175,7 +14186,7 @@ cp_parser_range_for_member_function (tree range, tree identifier)
 
 static tree
 cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
-			       unsigned short unroll)
+			       unsigned short unroll, bool novector)
 {
   cp_token *token;
   enum rid keyword;
@@ -14209,7 +14220,7 @@ cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
 	parens.require_open (parser);
 	/* Parse the condition.  */
 	condition = cp_parser_condition (parser);
-	finish_while_stmt_cond (condition, statement, ivdep, unroll);
+	finish_while_stmt_cond (condition, statement, ivdep, unroll, novector);
 	/* Look for the `)'.  */
 	parens.require_close (parser);
 	/* Parse the dependent statement.  */
@@ -14244,7 +14255,7 @@ cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
 	/* Parse the expression.  */
 	expression = cp_parser_expression (parser);
 	/* We're done with the do-statement.  */
-	finish_do_stmt (expression, statement, ivdep, unroll);
+	finish_do_stmt (expression, statement, ivdep, unroll, novector);
 	/* Look for the `)'.  */
 	parens.require_close (parser);
 	/* Look for the `;'.  */
@@ -14258,7 +14269,7 @@ cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
 	matching_parens parens;
 	parens.require_open (parser);
 
-	statement = cp_parser_for (parser, ivdep, unroll);
+	statement = cp_parser_for (parser, ivdep, unroll, novector);
 
 	/* Look for the `)'.  */
 	parens.require_close (parser);
@@ -43815,7 +43826,7 @@ cp_parser_omp_for_loop (cp_parser *parser, enum tree_code code, tree clauses,
 	      cp_parser_require (parser, CPP_COLON, RT_COLON);
 
 	      init = cp_parser_range_for (parser, NULL_TREE, NULL_TREE, decl,
-					  false, 0, true);
+					  false, 0, true, false);
 
 	      cp_convert_omp_range_for (this_pre_body, for_block, decl,
 					orig_decl, init, orig_init,
@@ -49300,6 +49311,15 @@ cp_parser_pragma_unroll (cp_parser *parser, cp_token *pragma_tok)
   return unroll;
 }
 
+/* Parse a pragma GCC novector.  */
+
+static bool
+cp_parser_pragma_novector (cp_parser *parser, cp_token *pragma_tok)
+{
+  cp_parser_skip_to_pragma_eol (parser, pragma_tok);
+  return true;
+}
+
 /* Normal parsing of a pragma token.  Here we can (and must) use the
    regular lexer.  */
 
@@ -49613,17 +49633,33 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	    break;
 	  }
 	const bool ivdep = cp_parser_pragma_ivdep (parser, pragma_tok);
-	unsigned short unroll;
+	unsigned short unroll = 0;
+	bool novector = false;
 	cp_token *tok = cp_lexer_peek_token (the_parser->lexer);
-	if (tok->type == CPP_PRAGMA
-	    && cp_parser_pragma_kind (tok) == PRAGMA_UNROLL)
+
+	while (tok->type == CPP_PRAGMA)
 	  {
-	    tok = cp_lexer_consume_token (parser->lexer);
-	    unroll = cp_parser_pragma_unroll (parser, tok);
-	    tok = cp_lexer_peek_token (the_parser->lexer);
+	    switch (cp_parser_pragma_kind (tok))
+	      {
+		case PRAGMA_UNROLL:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    unroll = cp_parser_pragma_unroll (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		case PRAGMA_NOVECTOR:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    novector = cp_parser_pragma_novector (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		default:
+		  gcc_unreachable ();
+	      }
 	  }
-	else
-	  unroll = 0;
+
 	if (tok->type != CPP_KEYWORD
 	    || (tok->keyword != RID_FOR
 		&& tok->keyword != RID_WHILE
@@ -49632,7 +49668,7 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	    cp_parser_error (parser, "for, while or do statement expected");
 	    return false;
 	  }
-	cp_parser_iteration_statement (parser, if_p, ivdep, unroll);
+	cp_parser_iteration_statement (parser, if_p, ivdep, unroll, novector);
 	return true;
       }
 
@@ -49646,17 +49682,82 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	  }
 	const unsigned short unroll
 	  = cp_parser_pragma_unroll (parser, pragma_tok);
-	bool ivdep;
+	bool ivdep = false;
+	bool novector = false;
 	cp_token *tok = cp_lexer_peek_token (the_parser->lexer);
-	if (tok->type == CPP_PRAGMA
-	    && cp_parser_pragma_kind (tok) == PRAGMA_IVDEP)
+
+	while (tok->type == CPP_PRAGMA)
 	  {
-	    tok = cp_lexer_consume_token (parser->lexer);
-	    ivdep = cp_parser_pragma_ivdep (parser, tok);
-	    tok = cp_lexer_peek_token (the_parser->lexer);
+	    switch (cp_parser_pragma_kind (tok))
+	      {
+		case PRAGMA_IVDEP:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    ivdep = cp_parser_pragma_ivdep (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		case PRAGMA_NOVECTOR:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    novector = cp_parser_pragma_novector (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		default:
+		  gcc_unreachable ();
+	      }
 	  }
-	else
-	  ivdep = false;
+
+	if (tok->type != CPP_KEYWORD
+	    || (tok->keyword != RID_FOR
+		&& tok->keyword != RID_WHILE
+		&& tok->keyword != RID_DO))
+	  {
+	    cp_parser_error (parser, "for, while or do statement expected");
+	    return false;
+	  }
+	cp_parser_iteration_statement (parser, if_p, ivdep, unroll, novector);
+	return true;
+      }
+
+    case PRAGMA_NOVECTOR:
+      {
+	if (context == pragma_external)
+	  {
+	    error_at (pragma_tok->location,
+		      "%<#pragma GCC novector%> must be inside a function");
+	    break;
+	  }
+	const bool novector
+	  = cp_parser_pragma_novector (parser, pragma_tok);
+	bool ivdep = false;
+	unsigned short unroll;
+	cp_token *tok = cp_lexer_peek_token (the_parser->lexer);
+
+	while (tok->type == CPP_PRAGMA)
+	  {
+	    switch (cp_parser_pragma_kind (tok))
+	      {
+		case PRAGMA_IVDEP:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    ivdep = cp_parser_pragma_ivdep (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		case PRAGMA_UNROLL:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    unroll = cp_parser_pragma_unroll (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		default:
+		  gcc_unreachable ();
+	      }
+	  }
+
 	if (tok->type != CPP_KEYWORD
 	    || (tok->keyword != RID_FOR
 		&& tok->keyword != RID_WHILE
@@ -49665,7 +49766,7 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	    cp_parser_error (parser, "for, while or do statement expected");
 	    return false;
 	  }
-	cp_parser_iteration_statement (parser, if_p, ivdep, unroll);
+	cp_parser_iteration_statement (parser, if_p, ivdep, unroll, novector);
 	return true;
       }
 
diff --git a/gcc/cp/pt.cc b/gcc/cp/pt.cc
index 2345a18becc1160b9d12f3d88cccb66c8917373c..7b0d01a90e3c4012ec603ebe04cbbb31a7dd1570 100644
--- a/gcc/cp/pt.cc
+++ b/gcc/cp/pt.cc
@@ -19036,7 +19036,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
       RECUR (FOR_INIT_STMT (t));
       finish_init_stmt (stmt);
       tmp = RECUR (FOR_COND (t));
-      finish_for_cond (tmp, stmt, false, 0);
+      finish_for_cond (tmp, stmt, false, 0, false);
       tmp = RECUR (FOR_EXPR (t));
       finish_for_expr (tmp, stmt);
       {
@@ -19073,6 +19073,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
 	  {
 	    RANGE_FOR_IVDEP (stmt) = RANGE_FOR_IVDEP (t);
 	    RANGE_FOR_UNROLL (stmt) = RANGE_FOR_UNROLL (t);
+	    RANGE_FOR_NOVECTOR (stmt) = RANGE_FOR_NOVECTOR (t);
 	    finish_range_for_decl (stmt, decl, expr);
 	    if (decomp_first && decl != error_mark_node)
 	      cp_finish_decomp (decl, decomp_first, decomp_cnt);
@@ -19083,7 +19084,8 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
 				     ? tree_to_uhwi (RANGE_FOR_UNROLL (t)) : 0);
 	    stmt = cp_convert_range_for (stmt, decl, expr,
 					 decomp_first, decomp_cnt,
-					 RANGE_FOR_IVDEP (t), unroll);
+					 RANGE_FOR_IVDEP (t), unroll,
+					 RANGE_FOR_NOVECTOR (t));
 	  }
 
 	bool prev = note_iteration_stmt_body_start ();
@@ -19096,7 +19098,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
     case WHILE_STMT:
       stmt = begin_while_stmt ();
       tmp = RECUR (WHILE_COND (t));
-      finish_while_stmt_cond (tmp, stmt, false, 0);
+      finish_while_stmt_cond (tmp, stmt, false, 0, false);
       {
 	bool prev = note_iteration_stmt_body_start ();
 	RECUR (WHILE_BODY (t));
@@ -19114,7 +19116,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
       }
       finish_do_body (stmt);
       tmp = RECUR (DO_COND (t));
-      finish_do_stmt (tmp, stmt, false, 0);
+      finish_do_stmt (tmp, stmt, false, 0, false);
       break;
 
     case IF_STMT:
diff --git a/gcc/cp/semantics.cc b/gcc/cp/semantics.cc
index 8fb47fd179eb2af2e82bf31d188023e9b9d41de9..b79975109c22ebcfcb060b4f20f32f69f3c3c444 100644
--- a/gcc/cp/semantics.cc
+++ b/gcc/cp/semantics.cc
@@ -1148,7 +1148,7 @@ begin_while_stmt (void)
 
 void
 finish_while_stmt_cond (tree cond, tree while_stmt, bool ivdep,
-			unsigned short unroll)
+			unsigned short unroll, bool novector)
 {
   cond = maybe_convert_cond (cond);
   finish_cond (&WHILE_COND (while_stmt), cond);
@@ -1168,6 +1168,13 @@ finish_while_stmt_cond (tree cond, tree while_stmt, bool ivdep,
 						     annot_expr_unroll_kind),
 				      build_int_cst (integer_type_node,
 						     unroll));
+  if (novector && cond != error_mark_node)
+    WHILE_COND (while_stmt) = build3 (ANNOTATE_EXPR,
+				      TREE_TYPE (WHILE_COND (while_stmt)),
+				      WHILE_COND (while_stmt),
+				      build_int_cst (integer_type_node,
+						     annot_expr_no_vector_kind),
+				      integer_zero_node);
   simplify_loop_decl_cond (&WHILE_COND (while_stmt), WHILE_BODY (while_stmt));
 }
 
@@ -1212,7 +1219,8 @@ finish_do_body (tree do_stmt)
    COND is as indicated.  */
 
 void
-finish_do_stmt (tree cond, tree do_stmt, bool ivdep, unsigned short unroll)
+finish_do_stmt (tree cond, tree do_stmt, bool ivdep, unsigned short unroll,
+		bool novector)
 {
   cond = maybe_convert_cond (cond);
   end_maybe_infinite_loop (cond);
@@ -1229,6 +1237,10 @@ finish_do_stmt (tree cond, tree do_stmt, bool ivdep, unsigned short unroll)
     cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
 		   build_int_cst (integer_type_node, annot_expr_unroll_kind),
 		   build_int_cst (integer_type_node, unroll));
+  if (novector && cond != error_mark_node)
+    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+		   build_int_cst (integer_type_node, annot_expr_no_vector_kind),
+		   integer_zero_node);
   DO_COND (do_stmt) = cond;
 }
 
@@ -1325,7 +1337,7 @@ finish_init_stmt (tree for_stmt)
    FOR_STMT.  */
 
 void
-finish_for_cond (tree cond, tree for_stmt, bool ivdep, unsigned short unroll)
+finish_for_cond (tree cond, tree for_stmt, bool ivdep, unsigned short unroll, bool novector)
 {
   cond = maybe_convert_cond (cond);
   finish_cond (&FOR_COND (for_stmt), cond);
@@ -1345,6 +1357,13 @@ finish_for_cond (tree cond, tree for_stmt, bool ivdep, unsigned short unroll)
 						 annot_expr_unroll_kind),
 				  build_int_cst (integer_type_node,
 						 unroll));
+  if (novector && cond != error_mark_node)
+    FOR_COND (for_stmt) = build3 (ANNOTATE_EXPR,
+				  TREE_TYPE (FOR_COND (for_stmt)),
+				  FOR_COND (for_stmt),
+				  build_int_cst (integer_type_node,
+						 annot_expr_no_vector_kind),
+				  integer_zero_node);
   simplify_loop_decl_cond (&FOR_COND (for_stmt), FOR_BODY (for_stmt));
 }
 
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 3040a9bdea65d27f8d20572b4ed37375f5fe949b..baac6643d1abbf33d592e68aca49ac83e3c29188 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -24349,6 +24349,25 @@ void ignore_vec_dep (int *a, int k, int c, int m)
 @}
 @end smallexample
 
+@cindex pragma GCC novector
+@item #pragma GCC novector
+
+With this pragma, the programmer asserts that the following loop should be
+prevented from executing concurrently with SIMD (single instruction multiple
+data) instructions.
+
+For example, the compiler cannot vectorize the following loop with the pragma:
+
+@smallexample
+void foo (int n, int *a, int *b, int *c)
+@{
+  int i, j;
+#pragma GCC novector
+  for (i = 0; i < n; ++i)
+    a[i] = b[i] + c[i];
+@}
+@end smallexample
+
 @cindex pragma GCC unroll @var{n}
 @item #pragma GCC unroll @var{n}
 
diff --git a/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc b/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc
new file mode 100644
index 0000000000000000000000000000000000000000..4667935b641a06e3004904dc86c4513a78736f04
--- /dev/null
+++ b/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc
@@ -0,0 +1,29 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+
+#include <vector>
+
+void f4 (std::vector<int> a, std::vector<int> b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    while (i < (n & -8))
+      {
+        a[i] += b[i];
+        i++;
+      }
+}
+
+
+void f5 (std::vector<int> a, std::vector<int> b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    for (auto x : b)
+      {
+        a[i] += x;
+        i++;
+      }
+}
+
+/* { dg-final { scan-tree-dump-not "LOOP VECTORIZED" "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-novector-pragma.c b/gcc/testsuite/gcc.dg/vect/vect-novector-pragma.c
new file mode 100644
index 0000000000000000000000000000000000000000..c4b3957711db8f78d26a32634e9bbfdc11a33302
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-novector-pragma.c
@@ -0,0 +1,34 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+
+void f1 (int * restrict a, int * restrict b, int n)
+{
+#pragma GCC novector
+    for (int i = 0; i < (n & -8); i++)
+      a[i] += b[i];
+}
+
+void f2 (int * restrict a, int * restrict b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    do
+      {
+        a[i] += b[i];
+        i++;
+      }
+    while (i < (n & -8));
+}
+
+void f3 (int * restrict a, int * restrict b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    while (i < (n & -8))
+      {
+        a[i] += b[i];
+        i++;
+      }
+}
+
+/* { dg-final { scan-tree-dump-not "LOOP VECTORIZED" "vect" } } */
diff --git a/gcc/tree-core.h b/gcc/tree-core.h
index c48a12b378f0b3086747bee43b38e2da3f90b24d..9268a0668390192caac9efaade0a53d9359cf9a7 100644
--- a/gcc/tree-core.h
+++ b/gcc/tree-core.h
@@ -1063,6 +1063,7 @@ struct GTY(()) tree_base {
       unsigned lang_flag_4 : 1;
       unsigned lang_flag_5 : 1;
       unsigned lang_flag_6 : 1;
+      unsigned lang_flag_7 : 1;
       unsigned saturating_flag : 1;
 
       unsigned unsigned_flag : 1;
@@ -1071,7 +1072,7 @@ struct GTY(()) tree_base {
       unsigned nameless_flag : 1;
       unsigned atomic_flag : 1;
       unsigned unavailable_flag : 1;
-      unsigned spare0 : 2;
+      unsigned spare0 : 1;
 
       unsigned spare1 : 8;
 
diff --git a/gcc/tree.h b/gcc/tree.h
index 1854fe4a7d4d25b0cb55ee70402d5721f8b629ba..e96e8884bf68de77d19c95a87ae1c147460c23df 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1112,6 +1112,8 @@ extern void omp_clause_range_check_failed (const_tree, const char *, int,
   (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)->base.u.bits.lang_flag_5)
 #define TREE_LANG_FLAG_6(NODE) \
   (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)->base.u.bits.lang_flag_6)
+#define TREE_LANG_FLAG_7(NODE) \
+  (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)->base.u.bits.lang_flag_7)
 
 /* Define additional fields and accessors for nodes representing constants.  */
 




-- 

[-- Attachment #2: rb17496.patch --]
[-- Type: text/plain, Size: 34365 bytes --]

diff --git a/gcc/c-family/c-pragma.h b/gcc/c-family/c-pragma.h
index 9cc95ab3ee376628dbef2485b84e6008210fa8fc..99cf2e8bd1c05537c198470f1aaa0a5a9da4e576 100644
--- a/gcc/c-family/c-pragma.h
+++ b/gcc/c-family/c-pragma.h
@@ -87,6 +87,7 @@ enum pragma_kind {
   PRAGMA_GCC_PCH_PREPROCESS,
   PRAGMA_IVDEP,
   PRAGMA_UNROLL,
+  PRAGMA_NOVECTOR,
 
   PRAGMA_FIRST_EXTERNAL
 };
diff --git a/gcc/c-family/c-pragma.cc b/gcc/c-family/c-pragma.cc
index 0d2b333cebbed32423d5dc6fd2a3ac0ce0bf8b94..848a850b8e123ff1c6ae1ec4b7f8ccbd599b1a88 100644
--- a/gcc/c-family/c-pragma.cc
+++ b/gcc/c-family/c-pragma.cc
@@ -1862,6 +1862,10 @@ init_pragma (void)
     cpp_register_deferred_pragma (parse_in, "GCC", "unroll", PRAGMA_UNROLL,
 				  false, false);
 
+  if (!flag_preprocess_only)
+    cpp_register_deferred_pragma (parse_in, "GCC", "novector", PRAGMA_NOVECTOR,
+				  false, false);
+
 #ifdef HANDLE_PRAGMA_PACK_WITH_EXPANSION
   c_register_pragma_with_expansion (0, "pack", handle_pragma_pack);
 #else
diff --git a/gcc/c/c-parser.cc b/gcc/c/c-parser.cc
index 24a6eb6e4596f32c477e3f1c3f98b9792f7bc92c..9d35fe68704c8aca197bcd4805a146c655959621 100644
--- a/gcc/c/c-parser.cc
+++ b/gcc/c/c-parser.cc
@@ -1572,9 +1572,11 @@ static tree c_parser_c99_block_statement (c_parser *, bool *,
 					  location_t * = NULL);
 static void c_parser_if_statement (c_parser *, bool *, vec<tree> *);
 static void c_parser_switch_statement (c_parser *, bool *);
-static void c_parser_while_statement (c_parser *, bool, unsigned short, bool *);
-static void c_parser_do_statement (c_parser *, bool, unsigned short);
-static void c_parser_for_statement (c_parser *, bool, unsigned short, bool *);
+static void c_parser_while_statement (c_parser *, bool, unsigned short, bool,
+				      bool *);
+static void c_parser_do_statement (c_parser *, bool, unsigned short, bool);
+static void c_parser_for_statement (c_parser *, bool, unsigned short, bool,
+				    bool *);
 static tree c_parser_asm_statement (c_parser *);
 static tree c_parser_asm_operands (c_parser *);
 static tree c_parser_asm_goto_operands (c_parser *);
@@ -6644,13 +6646,13 @@ c_parser_statement_after_labels (c_parser *parser, bool *if_p,
 	  c_parser_switch_statement (parser, if_p);
 	  break;
 	case RID_WHILE:
-	  c_parser_while_statement (parser, false, 0, if_p);
+	  c_parser_while_statement (parser, false, 0, false, if_p);
 	  break;
 	case RID_DO:
-	  c_parser_do_statement (parser, false, 0);
+	  c_parser_do_statement (parser, false, 0, false);
 	  break;
 	case RID_FOR:
-	  c_parser_for_statement (parser, false, 0, if_p);
+	  c_parser_for_statement (parser, false, 0, false, if_p);
 	  break;
 	case RID_GOTO:
 	  c_parser_consume_token (parser);
@@ -7146,7 +7148,7 @@ c_parser_switch_statement (c_parser *parser, bool *if_p)
 
 static void
 c_parser_while_statement (c_parser *parser, bool ivdep, unsigned short unroll,
-			  bool *if_p)
+			  bool novector, bool *if_p)
 {
   tree block, cond, body;
   unsigned char save_in_statement;
@@ -7168,6 +7170,11 @@ c_parser_while_statement (c_parser *parser, bool ivdep, unsigned short unroll,
 		   build_int_cst (integer_type_node,
 				  annot_expr_unroll_kind),
 		   build_int_cst (integer_type_node, unroll));
+  if (novector && cond != error_mark_node)
+    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+		   build_int_cst (integer_type_node,
+				  annot_expr_no_vector_kind),
+		   integer_zero_node);
   save_in_statement = in_statement;
   in_statement = IN_ITERATION_STMT;
 
@@ -7199,7 +7206,8 @@ c_parser_while_statement (c_parser *parser, bool ivdep, unsigned short unroll,
 */
 
 static void
-c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll)
+c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll,
+		       bool novector)
 {
   tree block, cond, body;
   unsigned char save_in_statement;
@@ -7228,6 +7236,11 @@ c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll)
 		   build_int_cst (integer_type_node,
 				  annot_expr_unroll_kind),
  		   build_int_cst (integer_type_node, unroll));
+  if (novector && cond != error_mark_node)
+    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+		   build_int_cst (integer_type_node,
+				  annot_expr_no_vector_kind),
+		   integer_zero_node);
   if (!c_parser_require (parser, CPP_SEMICOLON, "expected %<;%>"))
     c_parser_skip_to_end_of_block_or_statement (parser);
 
@@ -7296,7 +7309,7 @@ c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll)
 
 static void
 c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll,
-			bool *if_p)
+			bool novector, bool *if_p)
 {
   tree block, cond, incr, body;
   unsigned char save_in_statement;
@@ -7430,6 +7443,12 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll,
 					  "with %<GCC unroll%> pragma");
 		  cond = error_mark_node;
 		}
+	      else if (novector)
+		{
+		  c_parser_error (parser, "missing loop condition in loop "
+					  "with %<GCC novector%> pragma");
+		  cond = error_mark_node;
+		}
 	      else
 		{
 		  c_parser_consume_token (parser);
@@ -7452,6 +7471,11 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll,
  			   build_int_cst (integer_type_node,
 					  annot_expr_unroll_kind),
 			   build_int_cst (integer_type_node, unroll));
+	  if (novector && cond != error_mark_node)
+	    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+			   build_int_cst (integer_type_node,
+					  annot_expr_no_vector_kind),
+			   integer_zero_node);
 	}
       /* Parse the increment expression (the third expression in a
 	 for-statement).  In the case of a foreach-statement, this is
@@ -13037,6 +13061,16 @@ c_parse_pragma_ivdep (c_parser *parser)
   return true;
 }
 
+/* Parse a pragma GCC novector.  */
+
+static bool
+c_parse_pragma_novector (c_parser *parser)
+{
+  c_parser_consume_pragma (parser);
+  c_parser_skip_to_pragma_eol (parser);
+  return true;
+}
+
 /* Parse a pragma GCC unroll.  */
 
 static unsigned short
@@ -13264,11 +13298,12 @@ c_parser_pragma (c_parser *parser, enum pragma_context context, bool *if_p)
     case PRAGMA_IVDEP:
       {
 	const bool ivdep = c_parse_pragma_ivdep (parser);
-	unsigned short unroll;
+	unsigned short unroll = 0;
+	bool novector = false;
 	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_UNROLL)
 	  unroll = c_parser_pragma_unroll (parser);
-	else
-	  unroll = 0;
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_NOVECTOR)
+	  novector = c_parse_pragma_novector (parser);
 	if (!c_parser_next_token_is_keyword (parser, RID_FOR)
 	    && !c_parser_next_token_is_keyword (parser, RID_WHILE)
 	    && !c_parser_next_token_is_keyword (parser, RID_DO))
@@ -13277,22 +13312,48 @@ c_parser_pragma (c_parser *parser, enum pragma_context context, bool *if_p)
 	    return false;
 	  }
 	if (c_parser_next_token_is_keyword (parser, RID_FOR))
-	  c_parser_for_statement (parser, ivdep, unroll, if_p);
+	  c_parser_for_statement (parser, ivdep, unroll, novector, if_p);
 	else if (c_parser_next_token_is_keyword (parser, RID_WHILE))
-	  c_parser_while_statement (parser, ivdep, unroll, if_p);
+	  c_parser_while_statement (parser, ivdep, unroll, novector, if_p);
 	else
-	  c_parser_do_statement (parser, ivdep, unroll);
+	  c_parser_do_statement (parser, ivdep, unroll, novector);
       }
       return true;
 
     case PRAGMA_UNROLL:
       {
 	unsigned short unroll = c_parser_pragma_unroll (parser);
-	bool ivdep;
+	bool ivdep = false;
+	bool novector = false;
 	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_IVDEP)
 	  ivdep = c_parse_pragma_ivdep (parser);
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_NOVECTOR)
+	  novector = c_parse_pragma_novector (parser);
+	if (!c_parser_next_token_is_keyword (parser, RID_FOR)
+	    && !c_parser_next_token_is_keyword (parser, RID_WHILE)
+	    && !c_parser_next_token_is_keyword (parser, RID_DO))
+	  {
+	    c_parser_error (parser, "for, while or do statement expected");
+	    return false;
+	  }
+	if (c_parser_next_token_is_keyword (parser, RID_FOR))
+	  c_parser_for_statement (parser, ivdep, unroll, novector, if_p);
+	else if (c_parser_next_token_is_keyword (parser, RID_WHILE))
+	  c_parser_while_statement (parser, ivdep, unroll, novector, if_p);
 	else
-	  ivdep = false;
+	  c_parser_do_statement (parser, ivdep, unroll, novector);
+      }
+      return true;
+
+    case PRAGMA_NOVECTOR:
+      {
+	bool novector = c_parse_pragma_novector (parser);
+	unsigned short unroll = 0;
+	bool ivdep = false;
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_IVDEP)
+	  ivdep = c_parse_pragma_ivdep (parser);
+	if (c_parser_peek_token (parser)->pragma_kind == PRAGMA_UNROLL)
+	  unroll = c_parser_pragma_unroll (parser);
 	if (!c_parser_next_token_is_keyword (parser, RID_FOR)
 	    && !c_parser_next_token_is_keyword (parser, RID_WHILE)
 	    && !c_parser_next_token_is_keyword (parser, RID_DO))
@@ -13301,11 +13362,11 @@ c_parser_pragma (c_parser *parser, enum pragma_context context, bool *if_p)
 	    return false;
 	  }
 	if (c_parser_next_token_is_keyword (parser, RID_FOR))
-	  c_parser_for_statement (parser, ivdep, unroll, if_p);
+	  c_parser_for_statement (parser, ivdep, unroll, novector, if_p);
 	else if (c_parser_next_token_is_keyword (parser, RID_WHILE))
-	  c_parser_while_statement (parser, ivdep, unroll, if_p);
+	  c_parser_while_statement (parser, ivdep, unroll, novector, if_p);
 	else
-	  c_parser_do_statement (parser, ivdep, unroll);
+	  c_parser_do_statement (parser, ivdep, unroll, novector);
       }
       return true;
 
diff --git a/gcc/cp/cp-tree.def b/gcc/cp/cp-tree.def
index 0e66ca70e00caa1dc4beada1024ace32954e2aaf..c13c8ea98a523c4ef1c55a11e02d5da9db7e367e 100644
--- a/gcc/cp/cp-tree.def
+++ b/gcc/cp/cp-tree.def
@@ -305,8 +305,8 @@ DEFTREECODE (IF_STMT, "if_stmt", tcc_statement, 4)
 
 /* Used to represent a range-based `for' statement. The operands are
    RANGE_FOR_DECL, RANGE_FOR_EXPR, RANGE_FOR_BODY, RANGE_FOR_SCOPE,
-   RANGE_FOR_UNROLL, and RANGE_FOR_INIT_STMT, respectively.  Only used in
-   templates.  */
+   RANGE_FOR_UNROLL, RANGE_FOR_NOVECTOR and RANGE_FOR_INIT_STMT,
+   respectively.  Only used in templates.  */
 DEFTREECODE (RANGE_FOR_STMT, "range_for_stmt", tcc_statement, 6)
 
 /* Used to represent an expression statement.  Use `EXPR_STMT_EXPR' to
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 8398223311194837441107cb335d497ff5f5ec1c..50b0f20817a168b5e9ac58db59ad44233f079e11 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -5377,6 +5377,7 @@ get_vec_init_expr (tree t)
 #define RANGE_FOR_UNROLL(NODE)	TREE_OPERAND (RANGE_FOR_STMT_CHECK (NODE), 4)
 #define RANGE_FOR_INIT_STMT(NODE) TREE_OPERAND (RANGE_FOR_STMT_CHECK (NODE), 5)
 #define RANGE_FOR_IVDEP(NODE)	TREE_LANG_FLAG_6 (RANGE_FOR_STMT_CHECK (NODE))
+#define RANGE_FOR_NOVECTOR(NODE) TREE_LANG_FLAG_7 (RANGE_FOR_STMT_CHECK (NODE))
 
 /* STMT_EXPR accessor.  */
 #define STMT_EXPR_STMT(NODE)	TREE_OPERAND (STMT_EXPR_CHECK (NODE), 0)
@@ -7286,7 +7287,7 @@ extern bool maybe_clone_body			(tree);
 
 /* In parser.cc */
 extern tree cp_convert_range_for (tree, tree, tree, tree, unsigned int, bool,
-				  unsigned short);
+				  unsigned short, bool);
 extern void cp_convert_omp_range_for (tree &, vec<tree, va_gc> *, tree &,
 				      tree &, tree &, tree &, tree &, tree &);
 extern void cp_finish_omp_range_for (tree, tree);
@@ -7609,16 +7610,19 @@ extern void begin_else_clause			(tree);
 extern void finish_else_clause			(tree);
 extern void finish_if_stmt			(tree);
 extern tree begin_while_stmt			(void);
-extern void finish_while_stmt_cond	(tree, tree, bool, unsigned short);
+extern void finish_while_stmt_cond	(tree, tree, bool, unsigned short,
+					 bool);
 extern void finish_while_stmt			(tree);
 extern tree begin_do_stmt			(void);
 extern void finish_do_body			(tree);
-extern void finish_do_stmt		(tree, tree, bool, unsigned short);
+extern void finish_do_stmt		(tree, tree, bool, unsigned short,
+					 bool);
 extern tree finish_return_stmt			(tree);
 extern tree begin_for_scope			(tree *);
 extern tree begin_for_stmt			(tree, tree);
 extern void finish_init_stmt			(tree);
-extern void finish_for_cond		(tree, tree, bool, unsigned short);
+extern void finish_for_cond		(tree, tree, bool, unsigned short,
+					 bool);
 extern void finish_for_expr			(tree, tree);
 extern void finish_for_stmt			(tree);
 extern tree begin_range_for_stmt		(tree, tree);
diff --git a/gcc/cp/init.cc b/gcc/cp/init.cc
index af6e30f511e142c7a594e742d128b2bf0aa8fb8d..5b735b27e6f5bc6b439ae64665902f4f1ca76f95 100644
--- a/gcc/cp/init.cc
+++ b/gcc/cp/init.cc
@@ -4846,7 +4846,7 @@ build_vec_init (tree base, tree maxindex, tree init,
       finish_init_stmt (for_stmt);
       finish_for_cond (build2 (GT_EXPR, boolean_type_node, iterator,
 			       build_int_cst (TREE_TYPE (iterator), -1)),
-		       for_stmt, false, 0);
+		       for_stmt, false, 0, false);
       /* We used to pass this decrement to finish_for_expr; now we add it to
 	 elt_init below so it's part of the same full-expression as the
 	 initialization, and thus happens before any potentially throwing
diff --git a/gcc/cp/method.cc b/gcc/cp/method.cc
index 91cf943f11089c0e6bcbe8377daa4e016f956d56..fce49c796199c2c65cd70684e2942fea1b6b2ebd 100644
--- a/gcc/cp/method.cc
+++ b/gcc/cp/method.cc
@@ -1645,7 +1645,8 @@ build_comparison_op (tree fndecl, bool defining, tsubst_flags_t complain)
 		      add_stmt (idx);
 		      finish_init_stmt (for_stmt);
 		      finish_for_cond (build2 (LE_EXPR, boolean_type_node, idx,
-					       maxval), for_stmt, false, 0);
+					       maxval), for_stmt, false, 0,
+					       false);
 		      finish_for_expr (cp_build_unary_op (PREINCREMENT_EXPR,
 							  TARGET_EXPR_SLOT (idx),
 							  false, complain),
diff --git a/gcc/cp/parser.cc b/gcc/cp/parser.cc
index dd3665c8ccf48a8a0b1ba2c06400fe50999ea240..0bc110121d51ee13258b7ff0e4ad7851b4eae78e 100644
--- a/gcc/cp/parser.cc
+++ b/gcc/cp/parser.cc
@@ -2324,15 +2324,15 @@ static tree cp_parser_selection_statement
 static tree cp_parser_condition
   (cp_parser *);
 static tree cp_parser_iteration_statement
-  (cp_parser *, bool *, bool, unsigned short);
+  (cp_parser *, bool *, bool, unsigned short, bool);
 static bool cp_parser_init_statement
   (cp_parser *, tree *decl);
 static tree cp_parser_for
-  (cp_parser *, bool, unsigned short);
+  (cp_parser *, bool, unsigned short, bool);
 static tree cp_parser_c_for
-  (cp_parser *, tree, tree, bool, unsigned short);
+  (cp_parser *, tree, tree, bool, unsigned short, bool);
 static tree cp_parser_range_for
-  (cp_parser *, tree, tree, tree, bool, unsigned short, bool);
+  (cp_parser *, tree, tree, tree, bool, unsigned short, bool, bool);
 static void do_range_for_auto_deduction
   (tree, tree, tree, unsigned int);
 static tree cp_parser_perform_range_for_lookup
@@ -12414,7 +12414,8 @@ cp_parser_statement (cp_parser* parser, tree in_statement_expr,
 	case RID_DO:
 	case RID_FOR:
 	  std_attrs = process_stmt_hotness_attribute (std_attrs, attrs_loc);
-	  statement = cp_parser_iteration_statement (parser, if_p, false, 0);
+	  statement = cp_parser_iteration_statement (parser, if_p, false, 0,
+						     false);
 	  break;
 
 	case RID_BREAK:
@@ -13594,7 +13595,8 @@ cp_parser_condition (cp_parser* parser)
    not included. */
 
 static tree
-cp_parser_for (cp_parser *parser, bool ivdep, unsigned short unroll)
+cp_parser_for (cp_parser *parser, bool ivdep, unsigned short unroll,
+	       bool novector)
 {
   tree init, scope, decl;
   bool is_range_for;
@@ -13624,14 +13626,14 @@ cp_parser_for (cp_parser *parser, bool ivdep, unsigned short unroll)
 
   if (is_range_for)
     return cp_parser_range_for (parser, scope, init, decl, ivdep, unroll,
-				false);
+				novector, false);
   else
-    return cp_parser_c_for (parser, scope, init, ivdep, unroll);
+    return cp_parser_c_for (parser, scope, init, ivdep, unroll, novector);
 }
 
 static tree
 cp_parser_c_for (cp_parser *parser, tree scope, tree init, bool ivdep,
-		 unsigned short unroll)
+		 unsigned short unroll, bool novector)
 {
   /* Normal for loop */
   tree condition = NULL_TREE;
@@ -13658,7 +13660,13 @@ cp_parser_c_for (cp_parser *parser, tree scope, tree init, bool ivdep,
 		       "%<GCC unroll%> pragma");
       condition = error_mark_node;
     }
-  finish_for_cond (condition, stmt, ivdep, unroll);
+  else if (novector)
+    {
+      cp_parser_error (parser, "missing loop condition in loop with "
+		       "%<GCC novector%> pragma");
+      condition = error_mark_node;
+    }
+  finish_for_cond (condition, stmt, ivdep, unroll, novector);
   /* Look for the `;'.  */
   cp_parser_require (parser, CPP_SEMICOLON, RT_SEMICOLON);
 
@@ -13682,7 +13690,8 @@ cp_parser_c_for (cp_parser *parser, tree scope, tree init, bool ivdep,
 
 static tree
 cp_parser_range_for (cp_parser *parser, tree scope, tree init, tree range_decl,
-		     bool ivdep, unsigned short unroll, bool is_omp)
+		     bool ivdep, unsigned short unroll, bool novector,
+		     bool is_omp)
 {
   tree stmt, range_expr;
   auto_vec <cxx_binding *, 16> bindings;
@@ -13758,6 +13767,8 @@ cp_parser_range_for (cp_parser *parser, tree scope, tree init, tree range_decl,
 	RANGE_FOR_IVDEP (stmt) = 1;
       if (unroll)
 	RANGE_FOR_UNROLL (stmt) = build_int_cst (integer_type_node, unroll);
+      if (novector)
+	RANGE_FOR_NOVECTOR (stmt) = 1;
       finish_range_for_decl (stmt, range_decl, range_expr);
       if (!type_dependent_expression_p (range_expr)
 	  /* do_auto_deduction doesn't mess with template init-lists.  */
@@ -13770,7 +13781,7 @@ cp_parser_range_for (cp_parser *parser, tree scope, tree init, tree range_decl,
       stmt = begin_for_stmt (scope, init);
       stmt = cp_convert_range_for (stmt, range_decl, range_expr,
 				   decomp_first_name, decomp_cnt, ivdep,
-				   unroll);
+				   unroll, novector);
     }
   return stmt;
 }
@@ -13948,7 +13959,7 @@ warn_for_range_copy (tree decl, tree expr)
 tree
 cp_convert_range_for (tree statement, tree range_decl, tree range_expr,
 		      tree decomp_first_name, unsigned int decomp_cnt,
-		      bool ivdep, unsigned short unroll)
+		      bool ivdep, unsigned short unroll, bool novector)
 {
   tree begin, end;
   tree iter_type, begin_expr, end_expr;
@@ -14008,7 +14019,7 @@ cp_convert_range_for (tree statement, tree range_decl, tree range_expr,
 				 begin, ERROR_MARK,
 				 end, ERROR_MARK,
 				 NULL_TREE, NULL, tf_warning_or_error);
-  finish_for_cond (condition, statement, ivdep, unroll);
+  finish_for_cond (condition, statement, ivdep, unroll, novector);
 
   /* The new increment expression.  */
   expression = finish_unary_op_expr (input_location,
@@ -14175,7 +14186,7 @@ cp_parser_range_for_member_function (tree range, tree identifier)
 
 static tree
 cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
-			       unsigned short unroll)
+			       unsigned short unroll, bool novector)
 {
   cp_token *token;
   enum rid keyword;
@@ -14209,7 +14220,7 @@ cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
 	parens.require_open (parser);
 	/* Parse the condition.  */
 	condition = cp_parser_condition (parser);
-	finish_while_stmt_cond (condition, statement, ivdep, unroll);
+	finish_while_stmt_cond (condition, statement, ivdep, unroll, novector);
 	/* Look for the `)'.  */
 	parens.require_close (parser);
 	/* Parse the dependent statement.  */
@@ -14244,7 +14255,7 @@ cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
 	/* Parse the expression.  */
 	expression = cp_parser_expression (parser);
 	/* We're done with the do-statement.  */
-	finish_do_stmt (expression, statement, ivdep, unroll);
+	finish_do_stmt (expression, statement, ivdep, unroll, novector);
 	/* Look for the `)'.  */
 	parens.require_close (parser);
 	/* Look for the `;'.  */
@@ -14258,7 +14269,7 @@ cp_parser_iteration_statement (cp_parser* parser, bool *if_p, bool ivdep,
 	matching_parens parens;
 	parens.require_open (parser);
 
-	statement = cp_parser_for (parser, ivdep, unroll);
+	statement = cp_parser_for (parser, ivdep, unroll, novector);
 
 	/* Look for the `)'.  */
 	parens.require_close (parser);
@@ -43815,7 +43826,7 @@ cp_parser_omp_for_loop (cp_parser *parser, enum tree_code code, tree clauses,
 	      cp_parser_require (parser, CPP_COLON, RT_COLON);
 
 	      init = cp_parser_range_for (parser, NULL_TREE, NULL_TREE, decl,
-					  false, 0, true);
+					  false, 0, true, false);
 
 	      cp_convert_omp_range_for (this_pre_body, for_block, decl,
 					orig_decl, init, orig_init,
@@ -49300,6 +49311,15 @@ cp_parser_pragma_unroll (cp_parser *parser, cp_token *pragma_tok)
   return unroll;
 }
 
+/* Parse a pragma GCC novector.  */
+
+static bool
+cp_parser_pragma_novector (cp_parser *parser, cp_token *pragma_tok)
+{
+  cp_parser_skip_to_pragma_eol (parser, pragma_tok);
+  return true;
+}
+
 /* Normal parsing of a pragma token.  Here we can (and must) use the
    regular lexer.  */
 
@@ -49613,17 +49633,33 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	    break;
 	  }
 	const bool ivdep = cp_parser_pragma_ivdep (parser, pragma_tok);
-	unsigned short unroll;
+	unsigned short unroll = 0;
+	bool novector = false;
 	cp_token *tok = cp_lexer_peek_token (the_parser->lexer);
-	if (tok->type == CPP_PRAGMA
-	    && cp_parser_pragma_kind (tok) == PRAGMA_UNROLL)
+
+	while (tok->type == CPP_PRAGMA)
 	  {
-	    tok = cp_lexer_consume_token (parser->lexer);
-	    unroll = cp_parser_pragma_unroll (parser, tok);
-	    tok = cp_lexer_peek_token (the_parser->lexer);
+	    switch (cp_parser_pragma_kind (tok))
+	      {
+		case PRAGMA_UNROLL:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    unroll = cp_parser_pragma_unroll (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		case PRAGMA_NOVECTOR:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    novector = cp_parser_pragma_novector (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		default:
+		  gcc_unreachable ();
+	      }
 	  }
-	else
-	  unroll = 0;
+
 	if (tok->type != CPP_KEYWORD
 	    || (tok->keyword != RID_FOR
 		&& tok->keyword != RID_WHILE
@@ -49632,7 +49668,7 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	    cp_parser_error (parser, "for, while or do statement expected");
 	    return false;
 	  }
-	cp_parser_iteration_statement (parser, if_p, ivdep, unroll);
+	cp_parser_iteration_statement (parser, if_p, ivdep, unroll, novector);
 	return true;
       }
 
@@ -49646,17 +49682,82 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	  }
 	const unsigned short unroll
 	  = cp_parser_pragma_unroll (parser, pragma_tok);
-	bool ivdep;
+	bool ivdep = false;
+	bool novector = false;
 	cp_token *tok = cp_lexer_peek_token (the_parser->lexer);
-	if (tok->type == CPP_PRAGMA
-	    && cp_parser_pragma_kind (tok) == PRAGMA_IVDEP)
+
+	while (tok->type == CPP_PRAGMA)
 	  {
-	    tok = cp_lexer_consume_token (parser->lexer);
-	    ivdep = cp_parser_pragma_ivdep (parser, tok);
-	    tok = cp_lexer_peek_token (the_parser->lexer);
+	    switch (cp_parser_pragma_kind (tok))
+	      {
+		case PRAGMA_IVDEP:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    ivdep = cp_parser_pragma_ivdep (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		case PRAGMA_NOVECTOR:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    novector = cp_parser_pragma_novector (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		default:
+		  gcc_unreachable ();
+	      }
 	  }
-	else
-	  ivdep = false;
+
+	if (tok->type != CPP_KEYWORD
+	    || (tok->keyword != RID_FOR
+		&& tok->keyword != RID_WHILE
+		&& tok->keyword != RID_DO))
+	  {
+	    cp_parser_error (parser, "for, while or do statement expected");
+	    return false;
+	  }
+	cp_parser_iteration_statement (parser, if_p, ivdep, unroll, novector);
+	return true;
+      }
+
+    case PRAGMA_NOVECTOR:
+      {
+	if (context == pragma_external)
+	  {
+	    error_at (pragma_tok->location,
+		      "%<#pragma GCC novector%> must be inside a function");
+	    break;
+	  }
+	const bool novector
+	  = cp_parser_pragma_novector (parser, pragma_tok);
+	bool ivdep = false;
+	unsigned short unroll;
+	cp_token *tok = cp_lexer_peek_token (the_parser->lexer);
+
+	while (tok->type == CPP_PRAGMA)
+	  {
+	    switch (cp_parser_pragma_kind (tok))
+	      {
+		case PRAGMA_IVDEP:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    ivdep = cp_parser_pragma_ivdep (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		case PRAGMA_UNROLL:
+		  {
+		    tok = cp_lexer_consume_token (parser->lexer);
+		    unroll = cp_parser_pragma_unroll (parser, tok);
+		    tok = cp_lexer_peek_token (the_parser->lexer);
+		    break;
+		  }
+		default:
+		  gcc_unreachable ();
+	      }
+	  }
+
 	if (tok->type != CPP_KEYWORD
 	    || (tok->keyword != RID_FOR
 		&& tok->keyword != RID_WHILE
@@ -49665,7 +49766,7 @@ cp_parser_pragma (cp_parser *parser, enum pragma_context context, bool *if_p)
 	    cp_parser_error (parser, "for, while or do statement expected");
 	    return false;
 	  }
-	cp_parser_iteration_statement (parser, if_p, ivdep, unroll);
+	cp_parser_iteration_statement (parser, if_p, ivdep, unroll, novector);
 	return true;
       }
 
diff --git a/gcc/cp/pt.cc b/gcc/cp/pt.cc
index 2345a18becc1160b9d12f3d88cccb66c8917373c..7b0d01a90e3c4012ec603ebe04cbbb31a7dd1570 100644
--- a/gcc/cp/pt.cc
+++ b/gcc/cp/pt.cc
@@ -19036,7 +19036,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
       RECUR (FOR_INIT_STMT (t));
       finish_init_stmt (stmt);
       tmp = RECUR (FOR_COND (t));
-      finish_for_cond (tmp, stmt, false, 0);
+      finish_for_cond (tmp, stmt, false, 0, false);
       tmp = RECUR (FOR_EXPR (t));
       finish_for_expr (tmp, stmt);
       {
@@ -19073,6 +19073,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
 	  {
 	    RANGE_FOR_IVDEP (stmt) = RANGE_FOR_IVDEP (t);
 	    RANGE_FOR_UNROLL (stmt) = RANGE_FOR_UNROLL (t);
+	    RANGE_FOR_NOVECTOR (stmt) = RANGE_FOR_NOVECTOR (t);
 	    finish_range_for_decl (stmt, decl, expr);
 	    if (decomp_first && decl != error_mark_node)
 	      cp_finish_decomp (decl, decomp_first, decomp_cnt);
@@ -19083,7 +19084,8 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
 				     ? tree_to_uhwi (RANGE_FOR_UNROLL (t)) : 0);
 	    stmt = cp_convert_range_for (stmt, decl, expr,
 					 decomp_first, decomp_cnt,
-					 RANGE_FOR_IVDEP (t), unroll);
+					 RANGE_FOR_IVDEP (t), unroll,
+					 RANGE_FOR_NOVECTOR (t));
 	  }
 
 	bool prev = note_iteration_stmt_body_start ();
@@ -19096,7 +19098,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
     case WHILE_STMT:
       stmt = begin_while_stmt ();
       tmp = RECUR (WHILE_COND (t));
-      finish_while_stmt_cond (tmp, stmt, false, 0);
+      finish_while_stmt_cond (tmp, stmt, false, 0, false);
       {
 	bool prev = note_iteration_stmt_body_start ();
 	RECUR (WHILE_BODY (t));
@@ -19114,7 +19116,7 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
       }
       finish_do_body (stmt);
       tmp = RECUR (DO_COND (t));
-      finish_do_stmt (tmp, stmt, false, 0);
+      finish_do_stmt (tmp, stmt, false, 0, false);
       break;
 
     case IF_STMT:
diff --git a/gcc/cp/semantics.cc b/gcc/cp/semantics.cc
index 8fb47fd179eb2af2e82bf31d188023e9b9d41de9..b79975109c22ebcfcb060b4f20f32f69f3c3c444 100644
--- a/gcc/cp/semantics.cc
+++ b/gcc/cp/semantics.cc
@@ -1148,7 +1148,7 @@ begin_while_stmt (void)
 
 void
 finish_while_stmt_cond (tree cond, tree while_stmt, bool ivdep,
-			unsigned short unroll)
+			unsigned short unroll, bool novector)
 {
   cond = maybe_convert_cond (cond);
   finish_cond (&WHILE_COND (while_stmt), cond);
@@ -1168,6 +1168,13 @@ finish_while_stmt_cond (tree cond, tree while_stmt, bool ivdep,
 						     annot_expr_unroll_kind),
 				      build_int_cst (integer_type_node,
 						     unroll));
+  if (novector && cond != error_mark_node)
+    WHILE_COND (while_stmt) = build3 (ANNOTATE_EXPR,
+				      TREE_TYPE (WHILE_COND (while_stmt)),
+				      WHILE_COND (while_stmt),
+				      build_int_cst (integer_type_node,
+						     annot_expr_no_vector_kind),
+				      integer_zero_node);
   simplify_loop_decl_cond (&WHILE_COND (while_stmt), WHILE_BODY (while_stmt));
 }
 
@@ -1212,7 +1219,8 @@ finish_do_body (tree do_stmt)
    COND is as indicated.  */
 
 void
-finish_do_stmt (tree cond, tree do_stmt, bool ivdep, unsigned short unroll)
+finish_do_stmt (tree cond, tree do_stmt, bool ivdep, unsigned short unroll,
+		bool novector)
 {
   cond = maybe_convert_cond (cond);
   end_maybe_infinite_loop (cond);
@@ -1229,6 +1237,10 @@ finish_do_stmt (tree cond, tree do_stmt, bool ivdep, unsigned short unroll)
     cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
 		   build_int_cst (integer_type_node, annot_expr_unroll_kind),
 		   build_int_cst (integer_type_node, unroll));
+  if (novector && cond != error_mark_node)
+    cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond,
+		   build_int_cst (integer_type_node, annot_expr_no_vector_kind),
+		   integer_zero_node);
   DO_COND (do_stmt) = cond;
 }
 
@@ -1325,7 +1337,7 @@ finish_init_stmt (tree for_stmt)
    FOR_STMT.  */
 
 void
-finish_for_cond (tree cond, tree for_stmt, bool ivdep, unsigned short unroll)
+finish_for_cond (tree cond, tree for_stmt, bool ivdep, unsigned short unroll, bool novector)
 {
   cond = maybe_convert_cond (cond);
   finish_cond (&FOR_COND (for_stmt), cond);
@@ -1345,6 +1357,13 @@ finish_for_cond (tree cond, tree for_stmt, bool ivdep, unsigned short unroll)
 						 annot_expr_unroll_kind),
 				  build_int_cst (integer_type_node,
 						 unroll));
+  if (novector && cond != error_mark_node)
+    FOR_COND (for_stmt) = build3 (ANNOTATE_EXPR,
+				  TREE_TYPE (FOR_COND (for_stmt)),
+				  FOR_COND (for_stmt),
+				  build_int_cst (integer_type_node,
+						 annot_expr_no_vector_kind),
+				  integer_zero_node);
   simplify_loop_decl_cond (&FOR_COND (for_stmt), FOR_BODY (for_stmt));
 }
 
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 3040a9bdea65d27f8d20572b4ed37375f5fe949b..baac6643d1abbf33d592e68aca49ac83e3c29188 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -24349,6 +24349,25 @@ void ignore_vec_dep (int *a, int k, int c, int m)
 @}
 @end smallexample
 
+@cindex pragma GCC novector
+@item #pragma GCC novector
+
+With this pragma, the programmer asserts that the following loop should be
+prevented from executing concurrently with SIMD (single instruction multiple
+data) instructions.
+
+For example, the compiler cannot vectorize the following loop with the pragma:
+
+@smallexample
+void foo (int n, int *a, int *b, int *c)
+@{
+  int i, j;
+#pragma GCC novector
+  for (i = 0; i < n; ++i)
+    a[i] = b[i] + c[i];
+@}
+@end smallexample
+
 @cindex pragma GCC unroll @var{n}
 @item #pragma GCC unroll @var{n}
 
diff --git a/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc b/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc
new file mode 100644
index 0000000000000000000000000000000000000000..4667935b641a06e3004904dc86c4513a78736f04
--- /dev/null
+++ b/gcc/testsuite/g++.dg/vect/vect-novector-pragma.cc
@@ -0,0 +1,29 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+
+#include <vector>
+
+void f4 (std::vector<int> a, std::vector<int> b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    while (i < (n & -8))
+      {
+        a[i] += b[i];
+        i++;
+      }
+}
+
+
+void f5 (std::vector<int> a, std::vector<int> b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    for (auto x : b)
+      {
+        a[i] += x;
+        i++;
+      }
+}
+
+/* { dg-final { scan-tree-dump-not "LOOP VECTORIZED" "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-novector-pragma.c b/gcc/testsuite/gcc.dg/vect/vect-novector-pragma.c
new file mode 100644
index 0000000000000000000000000000000000000000..c4b3957711db8f78d26a32634e9bbfdc11a33302
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-novector-pragma.c
@@ -0,0 +1,34 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+
+void f1 (int * restrict a, int * restrict b, int n)
+{
+#pragma GCC novector
+    for (int i = 0; i < (n & -8); i++)
+      a[i] += b[i];
+}
+
+void f2 (int * restrict a, int * restrict b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    do
+      {
+        a[i] += b[i];
+        i++;
+      }
+    while (i < (n & -8));
+}
+
+void f3 (int * restrict a, int * restrict b, int n)
+{
+    int i = 0;
+#pragma GCC novector
+    while (i < (n & -8))
+      {
+        a[i] += b[i];
+        i++;
+      }
+}
+
+/* { dg-final { scan-tree-dump-not "LOOP VECTORIZED" "vect" } } */
diff --git a/gcc/tree-core.h b/gcc/tree-core.h
index c48a12b378f0b3086747bee43b38e2da3f90b24d..9268a0668390192caac9efaade0a53d9359cf9a7 100644
--- a/gcc/tree-core.h
+++ b/gcc/tree-core.h
@@ -1063,6 +1063,7 @@ struct GTY(()) tree_base {
       unsigned lang_flag_4 : 1;
       unsigned lang_flag_5 : 1;
       unsigned lang_flag_6 : 1;
+      unsigned lang_flag_7 : 1;
       unsigned saturating_flag : 1;
 
       unsigned unsigned_flag : 1;
@@ -1071,7 +1072,7 @@ struct GTY(()) tree_base {
       unsigned nameless_flag : 1;
       unsigned atomic_flag : 1;
       unsigned unavailable_flag : 1;
-      unsigned spare0 : 2;
+      unsigned spare0 : 1;
 
       unsigned spare1 : 8;
 
diff --git a/gcc/tree.h b/gcc/tree.h
index 1854fe4a7d4d25b0cb55ee70402d5721f8b629ba..e96e8884bf68de77d19c95a87ae1c147460c23df 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1112,6 +1112,8 @@ extern void omp_clause_range_check_failed (const_tree, const char *, int,
   (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)->base.u.bits.lang_flag_5)
 #define TREE_LANG_FLAG_6(NODE) \
   (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)->base.u.bits.lang_flag_6)
+#define TREE_LANG_FLAG_7(NODE) \
+  (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)->base.u.bits.lang_flag_7)
 
 /* Define additional fields and accessors for nodes representing constants.  */
 




^ permalink raw reply	[flat|nested] 200+ messages in thread

* [PATCH 3/19]middle-end clean up vect testsuite using pragma novector
  2023-06-28 13:40 [PATCH v5 0/19] Support early break/return auto-vectorization Tamar Christina
  2023-06-28 13:41 ` [PATCH 1/19]middle-end ifcvt: Support bitfield lowering of multiple-exit loops Tamar Christina
  2023-06-28 13:41 ` [PATCH 2/19][front-end] C/C++ front-end: add pragma GCC novector Tamar Christina
@ 2023-06-28 13:42 ` Tamar Christina
  2023-06-28 13:54   ` Tamar Christina
  2023-07-04 11:31   ` Richard Biener
  2023-06-28 13:43 ` [PATCH 4/19]middle-end: Fix scale_loop_frequencies segfault on multiple-exits Tamar Christina
                   ` (39 subsequent siblings)
  42 siblings, 2 replies; 200+ messages in thread
From: Tamar Christina @ 2023-06-28 13:42 UTC (permalink / raw)
  To: gcc-patches; +Cc: nd, rguenther, jlaw

[-- Attachment #1: Type: text/plain, Size: 406562 bytes --]

Hi All,

The support for early break vectorization breaks lots of scan vect and slp
testcases because they assume that loops with abort () in them cannot be
vectorized.  Additionally it breaks the point of having a scalar loop to check
the output of the vectorizer if that loop is also vectorized.

For that reason this adds

#pragma GCC novector to all tests which have a scalar loop that we would have
vectorized using this patch series.

FWIW, none of these tests were failing to vectorize or run before the pragma.
The tests that did point to some issues were copies to the early break test
suit as well.

Bootstrapped Regtested on aarch64-none-linux-gnu and no issues.

Ok for master?

Thanks,
Tamar

gcc/testsuite/ChangeLog:

	* g++.dg/vect/pr84556.cc: Add novector pragma.
	* g++.dg/vect/simd-1.cc: Add novector pragma.
	* g++.dg/vect/simd-2.cc: Add novector pragma.
	* g++.dg/vect/simd-3.cc: Add novector pragma.
	* g++.dg/vect/simd-4.cc: Add novector pragma.
	* g++.dg/vect/simd-5.cc: Add novector pragma.
	* g++.dg/vect/simd-6.cc: Add novector pragma.
	* g++.dg/vect/simd-7.cc: Add novector pragma.
	* g++.dg/vect/simd-8.cc: Add novector pragma.
	* g++.dg/vect/simd-9.cc: Add novector pragma.
	* g++.dg/vect/simd-clone-6.cc: Add novector pragma.
	* gcc.dg/vect/O3-pr70130.c: Add novector pragma.
	* gcc.dg/vect/Os-vect-95.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-1.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-16.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-2.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-24.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-25.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-26.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-27.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-28.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-29.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-42.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-cond-1.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-over-widen-1.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-over-widen-2.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-pattern-1.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-pattern-2.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-pow-1.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-pr101615-2.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-pr65935.c: Add novector pragma.
	* gcc.dg/vect/bb-slp-subgroups-1.c: Add novector pragma.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-31.c: Add novector pragma.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-33.c: Add novector pragma.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-68.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c: Add novector pragma.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c: Add novector pragma.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c: Add novector pragma.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c: Add novector pragma.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c: Add novector pragma.
	* gcc.dg/vect/fast-math-bb-slp-call-1.c: Add novector pragma.
	* gcc.dg/vect/fast-math-bb-slp-call-2.c: Add novector pragma.
	* gcc.dg/vect/fast-math-vect-call-1.c: Add novector pragma.
	* gcc.dg/vect/fast-math-vect-call-2.c: Add novector pragma.
	* gcc.dg/vect/fast-math-vect-complex-3.c: Add novector pragma.
	* gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-1.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-2.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-3.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-5.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-10.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-10a.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-10b.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-11.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-12.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-15.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-16.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-17.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-18.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-19.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-20.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-21.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-22.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-3.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-4.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-5.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-6-global.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-6.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-7.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-8.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-9.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-9a.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-outer-9b.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-slp-30.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-slp-31.c: Add novector pragma.
	* gcc.dg/vect/no-scevccp-vect-iv-2.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-31.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-34.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-36.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-64.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-65.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-66.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-68.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-69.c: Add novector pragma.
	* gcc.dg/vect/no-section-anchors-vect-outer-4h.c: Add novector pragma.
	* gcc.dg/vect/no-trapping-math-2.c: Add novector pragma.
	* gcc.dg/vect/no-trapping-math-vect-111.c: Add novector pragma.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c: Add novector pragma.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c: Add novector pragma.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c: Add novector pragma.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c: Add novector pragma.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c: Add novector pragma.
	* gcc.dg/vect/no-tree-dom-vect-bug.c: Add novector pragma.
	* gcc.dg/vect/no-tree-pre-slp-29.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-pr29145.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-101.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-102.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-102a.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-37.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-43.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-45.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-49.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-51.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-53.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-57.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-61.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-79.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-depend-1.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-depend-2.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-depend-3.c: Add novector pragma.
	* gcc.dg/vect/no-vfa-vect-dv-2.c: Add novector pragma.
	* gcc.dg/vect/pr101445.c: Add novector pragma.
	* gcc.dg/vect/pr103581.c: Add novector pragma.
	* gcc.dg/vect/pr105219.c: Add novector pragma.
	* gcc.dg/vect/pr108608.c: Add novector pragma.
	* gcc.dg/vect/pr18400.c: Add novector pragma.
	* gcc.dg/vect/pr18536.c: Add novector pragma.
	* gcc.dg/vect/pr20122.c: Add novector pragma.
	* gcc.dg/vect/pr25413.c: Add novector pragma.
	* gcc.dg/vect/pr30784.c: Add novector pragma.
	* gcc.dg/vect/pr37539.c: Add novector pragma.
	* gcc.dg/vect/pr40074.c: Add novector pragma.
	* gcc.dg/vect/pr45752.c: Add novector pragma.
	* gcc.dg/vect/pr45902.c: Add novector pragma.
	* gcc.dg/vect/pr46009.c: Add novector pragma.
	* gcc.dg/vect/pr48172.c: Add novector pragma.
	* gcc.dg/vect/pr51074.c: Add novector pragma.
	* gcc.dg/vect/pr51581-3.c: Add novector pragma.
	* gcc.dg/vect/pr51581-4.c: Add novector pragma.
	* gcc.dg/vect/pr53185-2.c: Add novector pragma.
	* gcc.dg/vect/pr56826.c: Add novector pragma.
	* gcc.dg/vect/pr56918.c: Add novector pragma.
	* gcc.dg/vect/pr56920.c: Add novector pragma.
	* gcc.dg/vect/pr56933.c: Add novector pragma.
	* gcc.dg/vect/pr57705.c: Add novector pragma.
	* gcc.dg/vect/pr57741-2.c: Add novector pragma.
	* gcc.dg/vect/pr57741-3.c: Add novector pragma.
	* gcc.dg/vect/pr59591-1.c: Add novector pragma.
	* gcc.dg/vect/pr59591-2.c: Add novector pragma.
	* gcc.dg/vect/pr59594.c: Add novector pragma.
	* gcc.dg/vect/pr59984.c: Add novector pragma.
	* gcc.dg/vect/pr60276.c: Add novector pragma.
	* gcc.dg/vect/pr61194.c: Add novector pragma.
	* gcc.dg/vect/pr61680.c: Add novector pragma.
	* gcc.dg/vect/pr62021.c: Add novector pragma.
	* gcc.dg/vect/pr63341-2.c: Add novector pragma.
	* gcc.dg/vect/pr64252.c: Add novector pragma.
	* gcc.dg/vect/pr64404.c: Add novector pragma.
	* gcc.dg/vect/pr64421.c: Add novector pragma.
	* gcc.dg/vect/pr64493.c: Add novector pragma.
	* gcc.dg/vect/pr64495.c: Add novector pragma.
	* gcc.dg/vect/pr66251.c: Add novector pragma.
	* gcc.dg/vect/pr66253.c: Add novector pragma.
	* gcc.dg/vect/pr68502-1.c: Add novector pragma.
	* gcc.dg/vect/pr68502-2.c: Add novector pragma.
	* gcc.dg/vect/pr69820.c: Add novector pragma.
	* gcc.dg/vect/pr70021.c: Add novector pragma.
	* gcc.dg/vect/pr70354-1.c: Add novector pragma.
	* gcc.dg/vect/pr70354-2.c: Add novector pragma.
	* gcc.dg/vect/pr71259.c: Add novector pragma.
	* gcc.dg/vect/pr78005.c: Add novector pragma.
	* gcc.dg/vect/pr78558.c: Add novector pragma.
	* gcc.dg/vect/pr80815-2.c: Add novector pragma.
	* gcc.dg/vect/pr80815-3.c: Add novector pragma.
	* gcc.dg/vect/pr80928.c: Add novector pragma.
	* gcc.dg/vect/pr81410.c: Add novector pragma.
	* gcc.dg/vect/pr81633.c: Add novector pragma.
	* gcc.dg/vect/pr81740-1.c: Add novector pragma.
	* gcc.dg/vect/pr81740-2.c: Add novector pragma.
	* gcc.dg/vect/pr85586.c: Add novector pragma.
	* gcc.dg/vect/pr87288-1.c: Add novector pragma.
	* gcc.dg/vect/pr87288-2.c: Add novector pragma.
	* gcc.dg/vect/pr87288-3.c: Add novector pragma.
	* gcc.dg/vect/pr88903-1.c: Add novector pragma.
	* gcc.dg/vect/pr88903-2.c: Add novector pragma.
	* gcc.dg/vect/pr90018.c: Add novector pragma.
	* gcc.dg/vect/pr92420.c: Add novector pragma.
	* gcc.dg/vect/pr94994.c: Add novector pragma.
	* gcc.dg/vect/pr96783-1.c: Add novector pragma.
	* gcc.dg/vect/pr96783-2.c: Add novector pragma.
	* gcc.dg/vect/pr97081-2.c: Add novector pragma.
	* gcc.dg/vect/pr97558-2.c: Add novector pragma.
	* gcc.dg/vect/pr97678.c: Add novector pragma.
	* gcc.dg/vect/section-anchors-pr27770.c: Add novector pragma.
	* gcc.dg/vect/section-anchors-vect-69.c: Add novector pragma.
	* gcc.dg/vect/slp-1.c: Add novector pragma.
	* gcc.dg/vect/slp-10.c: Add novector pragma.
	* gcc.dg/vect/slp-11a.c: Add novector pragma.
	* gcc.dg/vect/slp-11b.c: Add novector pragma.
	* gcc.dg/vect/slp-11c.c: Add novector pragma.
	* gcc.dg/vect/slp-12a.c: Add novector pragma.
	* gcc.dg/vect/slp-12b.c: Add novector pragma.
	* gcc.dg/vect/slp-12c.c: Add novector pragma.
	* gcc.dg/vect/slp-13-big-array.c: Add novector pragma.
	* gcc.dg/vect/slp-13.c: Add novector pragma.
	* gcc.dg/vect/slp-14.c: Add novector pragma.
	* gcc.dg/vect/slp-15.c: Add novector pragma.
	* gcc.dg/vect/slp-16.c: Add novector pragma.
	* gcc.dg/vect/slp-17.c: Add novector pragma.
	* gcc.dg/vect/slp-18.c: Add novector pragma.
	* gcc.dg/vect/slp-19a.c: Add novector pragma.
	* gcc.dg/vect/slp-19b.c: Add novector pragma.
	* gcc.dg/vect/slp-19c.c: Add novector pragma.
	* gcc.dg/vect/slp-2.c: Add novector pragma.
	* gcc.dg/vect/slp-20.c: Add novector pragma.
	* gcc.dg/vect/slp-21.c: Add novector pragma.
	* gcc.dg/vect/slp-22.c: Add novector pragma.
	* gcc.dg/vect/slp-23.c: Add novector pragma.
	* gcc.dg/vect/slp-24-big-array.c: Add novector pragma.
	* gcc.dg/vect/slp-24.c: Add novector pragma.
	* gcc.dg/vect/slp-25.c: Add novector pragma.
	* gcc.dg/vect/slp-26.c: Add novector pragma.
	* gcc.dg/vect/slp-28.c: Add novector pragma.
	* gcc.dg/vect/slp-3-big-array.c: Add novector pragma.
	* gcc.dg/vect/slp-3.c: Add novector pragma.
	* gcc.dg/vect/slp-33.c: Add novector pragma.
	* gcc.dg/vect/slp-34-big-array.c: Add novector pragma.
	* gcc.dg/vect/slp-34.c: Add novector pragma.
	* gcc.dg/vect/slp-35.c: Add novector pragma.
	* gcc.dg/vect/slp-37.c: Add novector pragma.
	* gcc.dg/vect/slp-4-big-array.c: Add novector pragma.
	* gcc.dg/vect/slp-4.c: Add novector pragma.
	* gcc.dg/vect/slp-41.c: Add novector pragma.
	* gcc.dg/vect/slp-43.c: Add novector pragma.
	* gcc.dg/vect/slp-45.c: Add novector pragma.
	* gcc.dg/vect/slp-46.c: Add novector pragma.
	* gcc.dg/vect/slp-47.c: Add novector pragma.
	* gcc.dg/vect/slp-48.c: Add novector pragma.
	* gcc.dg/vect/slp-49.c: Add novector pragma.
	* gcc.dg/vect/slp-5.c: Add novector pragma.
	* gcc.dg/vect/slp-6.c: Add novector pragma.
	* gcc.dg/vect/slp-7.c: Add novector pragma.
	* gcc.dg/vect/slp-8.c: Add novector pragma.
	* gcc.dg/vect/slp-9.c: Add novector pragma.
	* gcc.dg/vect/slp-cond-1.c: Add novector pragma.
	* gcc.dg/vect/slp-cond-2-big-array.c: Add novector pragma.
	* gcc.dg/vect/slp-cond-2.c: Add novector pragma.
	* gcc.dg/vect/slp-cond-3.c: Add novector pragma.
	* gcc.dg/vect/slp-cond-4.c: Add novector pragma.
	* gcc.dg/vect/slp-cond-5.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-1.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-10.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-11-big-array.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-11.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-12.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-2.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-3.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-4.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-5.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-6.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-7.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-8.c: Add novector pragma.
	* gcc.dg/vect/slp-multitypes-9.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-1.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-10.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-11.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-12.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-2.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-3.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-4.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-5.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-6.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-7.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-8.c: Add novector pragma.
	* gcc.dg/vect/slp-perm-9.c: Add novector pragma.
	* gcc.dg/vect/slp-widen-mult-half.c: Add novector pragma.
	* gcc.dg/vect/slp-widen-mult-s16.c: Add novector pragma.
	* gcc.dg/vect/slp-widen-mult-u8.c: Add novector pragma.
	* gcc.dg/vect/vect-100.c: Add novector pragma.
	* gcc.dg/vect/vect-103.c: Add novector pragma.
	* gcc.dg/vect/vect-104.c: Add novector pragma.
	* gcc.dg/vect/vect-105-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-105.c: Add novector pragma.
	* gcc.dg/vect/vect-106.c: Add novector pragma.
	* gcc.dg/vect/vect-107.c: Add novector pragma.
	* gcc.dg/vect/vect-108.c: Add novector pragma.
	* gcc.dg/vect/vect-109.c: Add novector pragma.
	* gcc.dg/vect/vect-11.c: Add novector pragma.
	* gcc.dg/vect/vect-110.c: Add novector pragma.
	* gcc.dg/vect/vect-113.c: Add novector pragma.
	* gcc.dg/vect/vect-114.c: Add novector pragma.
	* gcc.dg/vect/vect-115.c: Add novector pragma.
	* gcc.dg/vect/vect-116.c: Add novector pragma.
	* gcc.dg/vect/vect-117.c: Add novector pragma.
	* gcc.dg/vect/vect-11a.c: Add novector pragma.
	* gcc.dg/vect/vect-12.c: Add novector pragma.
	* gcc.dg/vect/vect-122.c: Add novector pragma.
	* gcc.dg/vect/vect-124.c: Add novector pragma.
	* gcc.dg/vect/vect-13.c: Add novector pragma.
	* gcc.dg/vect/vect-14.c: Add novector pragma.
	* gcc.dg/vect/vect-15-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-15.c: Add novector pragma.
	* gcc.dg/vect/vect-17.c: Add novector pragma.
	* gcc.dg/vect/vect-18.c: Add novector pragma.
	* gcc.dg/vect/vect-19.c: Add novector pragma.
	* gcc.dg/vect/vect-2-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-2.c: Add novector pragma.
	* gcc.dg/vect/vect-20.c: Add novector pragma.
	* gcc.dg/vect/vect-21.c: Add novector pragma.
	* gcc.dg/vect/vect-22.c: Add novector pragma.
	* gcc.dg/vect/vect-23.c: Add novector pragma.
	* gcc.dg/vect/vect-24.c: Add novector pragma.
	* gcc.dg/vect/vect-25.c: Add novector pragma.
	* gcc.dg/vect/vect-26.c: Add novector pragma.
	* gcc.dg/vect/vect-27.c: Add novector pragma.
	* gcc.dg/vect/vect-28.c: Add novector pragma.
	* gcc.dg/vect/vect-29.c: Add novector pragma.
	* gcc.dg/vect/vect-3.c: Add novector pragma.
	* gcc.dg/vect/vect-30.c: Add novector pragma.
	* gcc.dg/vect/vect-31-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-31.c: Add novector pragma.
	* gcc.dg/vect/vect-32-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-32.c: Add novector pragma.
	* gcc.dg/vect/vect-33-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-33.c: Add novector pragma.
	* gcc.dg/vect/vect-34-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-34.c: Add novector pragma.
	* gcc.dg/vect/vect-35-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-35.c: Add novector pragma.
	* gcc.dg/vect/vect-36-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-36.c: Add novector pragma.
	* gcc.dg/vect/vect-38.c: Add novector pragma.
	* gcc.dg/vect/vect-4.c: Add novector pragma.
	* gcc.dg/vect/vect-40.c: Add novector pragma.
	* gcc.dg/vect/vect-42.c: Add novector pragma.
	* gcc.dg/vect/vect-44.c: Add novector pragma.
	* gcc.dg/vect/vect-46.c: Add novector pragma.
	* gcc.dg/vect/vect-48.c: Add novector pragma.
	* gcc.dg/vect/vect-5.c: Add novector pragma.
	* gcc.dg/vect/vect-50.c: Add novector pragma.
	* gcc.dg/vect/vect-52.c: Add novector pragma.
	* gcc.dg/vect/vect-54.c: Add novector pragma.
	* gcc.dg/vect/vect-56.c: Add novector pragma.
	* gcc.dg/vect/vect-58.c: Add novector pragma.
	* gcc.dg/vect/vect-6-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-6.c: Add novector pragma.
	* gcc.dg/vect/vect-60.c: Add novector pragma.
	* gcc.dg/vect/vect-62.c: Add novector pragma.
	* gcc.dg/vect/vect-63.c: Add novector pragma.
	* gcc.dg/vect/vect-64.c: Add novector pragma.
	* gcc.dg/vect/vect-65.c: Add novector pragma.
	* gcc.dg/vect/vect-66.c: Add novector pragma.
	* gcc.dg/vect/vect-67.c: Add novector pragma.
	* gcc.dg/vect/vect-68.c: Add novector pragma.
	* gcc.dg/vect/vect-7.c: Add novector pragma.
	* gcc.dg/vect/vect-70.c: Add novector pragma.
	* gcc.dg/vect/vect-71.c: Add novector pragma.
	* gcc.dg/vect/vect-72.c: Add novector pragma.
	* gcc.dg/vect/vect-73-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-73.c: Add novector pragma.
	* gcc.dg/vect/vect-74-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-74.c: Add novector pragma.
	* gcc.dg/vect/vect-75-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-75.c: Add novector pragma.
	* gcc.dg/vect/vect-76-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-76.c: Add novector pragma.
	* gcc.dg/vect/vect-77-alignchecks.c: Add novector pragma.
	* gcc.dg/vect/vect-77-global.c: Add novector pragma.
	* gcc.dg/vect/vect-77.c: Add novector pragma.
	* gcc.dg/vect/vect-78-alignchecks.c: Add novector pragma.
	* gcc.dg/vect/vect-78-global.c: Add novector pragma.
	* gcc.dg/vect/vect-78.c: Add novector pragma.
	* gcc.dg/vect/vect-8.c: Add novector pragma.
	* gcc.dg/vect/vect-80-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-80.c: Add novector pragma.
	* gcc.dg/vect/vect-82.c: Add novector pragma.
	* gcc.dg/vect/vect-82_64.c: Add novector pragma.
	* gcc.dg/vect/vect-83.c: Add novector pragma.
	* gcc.dg/vect/vect-83_64.c: Add novector pragma.
	* gcc.dg/vect/vect-85-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-85.c: Add novector pragma.
	* gcc.dg/vect/vect-86.c: Add novector pragma.
	* gcc.dg/vect/vect-87.c: Add novector pragma.
	* gcc.dg/vect/vect-88.c: Add novector pragma.
	* gcc.dg/vect/vect-89-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-89.c: Add novector pragma.
	* gcc.dg/vect/vect-9.c: Add novector pragma.
	* gcc.dg/vect/vect-92.c: Add novector pragma.
	* gcc.dg/vect/vect-93.c: Add novector pragma.
	* gcc.dg/vect/vect-95.c: Add novector pragma.
	* gcc.dg/vect/vect-96.c: Add novector pragma.
	* gcc.dg/vect/vect-97-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-97.c: Add novector pragma.
	* gcc.dg/vect/vect-98-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-98.c: Add novector pragma.
	* gcc.dg/vect/vect-99.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-10.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-11.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-12.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-14.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-15.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-16.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-18.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-19.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-20.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-8.c: Add novector pragma.
	* gcc.dg/vect/vect-alias-check-9.c: Add novector pragma.
	* gcc.dg/vect/vect-align-1.c: Add novector pragma.
	* gcc.dg/vect/vect-align-2.c: Add novector pragma.
	* gcc.dg/vect/vect-all-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-all.c: Add novector pragma.
	* gcc.dg/vect/vect-avg-1.c: Add novector pragma.
	* gcc.dg/vect/vect-avg-11.c: Add novector pragma.
	* gcc.dg/vect/vect-avg-15.c: Add novector pragma.
	* gcc.dg/vect/vect-avg-16.c: Add novector pragma.
	* gcc.dg/vect/vect-avg-5.c: Add novector pragma.
	* gcc.dg/vect/vect-bitfield-write-1.c: Add novector pragma.
	* gcc.dg/vect/vect-bitfield-write-2.c: Add novector pragma.
	* gcc.dg/vect/vect-bitfield-write-3.c: Add novector pragma.
	* gcc.dg/vect/vect-bitfield-write-4.c: Add novector pragma.
	* gcc.dg/vect/vect-bitfield-write-5.c: Add novector pragma.
	* gcc.dg/vect/vect-bool-cmp.c: Add novector pragma.
	* gcc.dg/vect/vect-bswap16.c: Add novector pragma.
	* gcc.dg/vect/vect-bswap32.c: Add novector pragma.
	* gcc.dg/vect/vect-bswap64.c: Add novector pragma.
	* gcc.dg/vect/vect-complex-1.c: Add novector pragma.
	* gcc.dg/vect/vect-complex-2.c: Add novector pragma.
	* gcc.dg/vect/vect-complex-4.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-1.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-10.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-11.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-3.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-4.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-5.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-6.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-7.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-8.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-9.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-arith-1.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-arith-3.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-arith-4.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-arith-5.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-arith-6.c: Add novector pragma.
	* gcc.dg/vect/vect-cond-arith-7.c: Add novector pragma.
	* gcc.dg/vect/vect-cselim-1.c: Add novector pragma.
	* gcc.dg/vect/vect-cselim-2.c: Add novector pragma.
	* gcc.dg/vect/vect-div-bitmask-4.c: Add novector pragma.
	* gcc.dg/vect/vect-div-bitmask-5.c: Add novector pragma.
	* gcc.dg/vect/vect-div-bitmask.h: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-1.c: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-2.c: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-3.c: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-4.c: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-5.c: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-6-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-6.c: Add novector pragma.
	* gcc.dg/vect/vect-double-reduc-7.c: Add novector pragma.
	* gcc.dg/vect/vect-float-extend-1.c: Add novector pragma.
	* gcc.dg/vect/vect-float-truncate-1.c: Add novector pragma.
	* gcc.dg/vect/vect-floatint-conversion-1.c: Add novector pragma.
	* gcc.dg/vect/vect-floatint-conversion-2.c: Add novector pragma.
	* gcc.dg/vect/vect-fma-1.c: Add novector pragma.
	* gcc.dg/vect/vect-gather-1.c: Add novector pragma.
	* gcc.dg/vect/vect-gather-3.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-11.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-16.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-17.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-2.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-3.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-4.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-5.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-6.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-7.c: Add novector pragma.
	* gcc.dg/vect/vect-ifcvt-9.c: Add novector pragma.
	* gcc.dg/vect/vect-intfloat-conversion-1.c: Add novector pragma.
	* gcc.dg/vect/vect-intfloat-conversion-2.c: Add novector pragma.
	* gcc.dg/vect/vect-intfloat-conversion-3.c: Add novector pragma.
	* gcc.dg/vect/vect-intfloat-conversion-4a.c: Add novector pragma.
	* gcc.dg/vect/vect-intfloat-conversion-4b.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-1.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-10.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-2.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-3.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-4.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-5.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-6.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-7.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-8-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-8.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-8a-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-iv-8a.c: Add novector pragma.
	* gcc.dg/vect/vect-live-1.c: Add novector pragma.
	* gcc.dg/vect/vect-live-2.c: Add novector pragma.
	* gcc.dg/vect/vect-live-3.c: Add novector pragma.
	* gcc.dg/vect/vect-live-4.c: Add novector pragma.
	* gcc.dg/vect/vect-live-5.c: Add novector pragma.
	* gcc.dg/vect/vect-live-slp-1.c: Add novector pragma.
	* gcc.dg/vect/vect-live-slp-2.c: Add novector pragma.
	* gcc.dg/vect/vect-live-slp-3.c: Add novector pragma.
	* gcc.dg/vect/vect-mask-load-1.c: Add novector pragma.
	* gcc.dg/vect/vect-mask-loadstore-1.c: Add novector pragma.
	* gcc.dg/vect/vect-mulhrs-1.c: Add novector pragma.
	* gcc.dg/vect/vect-mult-const-pattern-1.c: Add novector pragma.
	* gcc.dg/vect/vect-mult-const-pattern-2.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-1.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-10.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-11.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-12.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-13.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-14.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-16.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-17.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-2.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-3.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-4.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-5.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-6.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-8.c: Add novector pragma.
	* gcc.dg/vect/vect-multitypes-9.c: Add novector pragma.
	* gcc.dg/vect/vect-nb-iter-ub-1.c: Add novector pragma.
	* gcc.dg/vect/vect-nb-iter-ub-2.c: Add novector pragma.
	* gcc.dg/vect/vect-nb-iter-ub-3.c: Add novector pragma.
	* gcc.dg/vect/vect-neg-store-1.c: Add novector pragma.
	* gcc.dg/vect/vect-neg-store-2.c: Add novector pragma.
	* gcc.dg/vect/vect-nest-cycle-1.c: Add novector pragma.
	* gcc.dg/vect/vect-nest-cycle-2.c: Add novector pragma.
	* gcc.dg/vect/vect-nest-cycle-3.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2a-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2a.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2b.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2c-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2c.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-2d.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-3-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-3.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-3a-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-3a.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-3b.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-3c.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-4.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-4d-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-4d.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-5.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-6.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-fir-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-fir-lb-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-fir-lb.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-fir.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-simd-1.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-simd-2.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-simd-3.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-slp-2.c: Add novector pragma.
	* gcc.dg/vect/vect-outer-slp-3.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-1-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-1.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-11.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-13.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-15.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-17.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-18.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-19.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-2-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-2.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-20.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-21.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-22.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-3-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-3.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-4-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-4.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-5.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-7.c: Add novector pragma.
	* gcc.dg/vect/vect-over-widen-9.c: Add novector pragma.
	* gcc.dg/vect/vect-peel-1-src.c: Add novector pragma.
	* gcc.dg/vect/vect-peel-2-src.c: Add novector pragma.
	* gcc.dg/vect/vect-peel-4-src.c: Add novector pragma.
	* gcc.dg/vect/vect-recurr-1.c: Add novector pragma.
	* gcc.dg/vect/vect-recurr-2.c: Add novector pragma.
	* gcc.dg/vect/vect-recurr-3.c: Add novector pragma.
	* gcc.dg/vect/vect-recurr-4.c: Add novector pragma.
	* gcc.dg/vect/vect-recurr-5.c: Add novector pragma.
	* gcc.dg/vect/vect-recurr-6.c: Add novector pragma.
	* gcc.dg/vect/vect-sdiv-pow2-1.c: Add novector pragma.
	* gcc.dg/vect/vect-sdivmod-1.c: Add novector pragma.
	* gcc.dg/vect/vect-shift-1.c: Add novector pragma.
	* gcc.dg/vect/vect-shift-3.c: Add novector pragma.
	* gcc.dg/vect/vect-shift-4.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-1.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-10.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-11.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-12.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-13.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-14.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-15.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-16.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-17.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-18.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-19.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-20.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-8.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-9.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-1.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-10.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-11.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-15.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-2.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-3.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-4.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-5.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-6.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-7.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-8.c: Add novector pragma.
	* gcc.dg/vect/vect-simd-clone-9.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-mult.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u16-i2.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u16-i4.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u16-mult.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u32-mult.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-float.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-mult-char-ls.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-mult.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-same-dr.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-shift-1.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-store-a-u8-i2.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-store-u16-i4.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-store-u32-i2.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-store.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u16-i2.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u16-i3.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u16-i4.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u32-i4.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u32-i8.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u32-mult.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i2-gap.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i2.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Add novector pragma.
	* gcc.dg/vect/vect-strided-u8-i8.c: Add novector pragma.
	* gcc.dg/vect/vect-vfa-01.c: Add novector pragma.
	* gcc.dg/vect/vect-vfa-02.c: Add novector pragma.
	* gcc.dg/vect/vect-vfa-03.c: Add novector pragma.
	* gcc.dg/vect/vect-vfa-04.c: Add novector pragma.
	* gcc.dg/vect/vect-vfa-slp.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-1.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-const-s16.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-const-u16.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-half-u8.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-half.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-s16.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-s8.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-u16.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-u8-s16-s32.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-u8-u32.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-mult-u8.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-shift-s16.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-shift-s8.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-shift-u16.c: Add novector pragma.
	* gcc.dg/vect/vect-widen-shift-u8.c: Add novector pragma.
	* gcc.dg/vect/wrapv-vect-7.c: Add novector pragma.

--- inline copy of patch -- 
diff --git a/gcc/testsuite/g++.dg/vect/pr84556.cc b/gcc/testsuite/g++.dg/vect/pr84556.cc
index e0655536f7a0a1c32a918f4b112604a7e6b5e389..e2c97e917bed3e7c5e709f61384d75588f522308 100644
--- a/gcc/testsuite/g++.dg/vect/pr84556.cc
+++ b/gcc/testsuite/g++.dg/vect/pr84556.cc
@@ -15,6 +15,7 @@ main ()
   };
   x ();
   x ();
+#pragma GCC novector
   for (int i = 0; i < 8; ++i)
     if (y[i] != i + 3)
       __builtin_abort ();
diff --git a/gcc/testsuite/g++.dg/vect/simd-1.cc b/gcc/testsuite/g++.dg/vect/simd-1.cc
index 76ce45d939dca8ddbc4953885ac71cf9f6ad298b..991db1d5dfee2a8d89de4aeae659b797629406c1 100644
--- a/gcc/testsuite/g++.dg/vect/simd-1.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-1.cc
@@ -88,12 +88,14 @@ main ()
   s.foo (x, y);
   if (x != 1024 || s.s != 2051 || s.t != 2054)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 2 * i)
       abort ();
   s.bar (x, y);
   if (x != 2049 || s.s != 4101 || s.t != 4104)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 4 * i)
       abort ();
@@ -102,12 +104,14 @@ main ()
   s.baz (x, y);
   if (x != 1024 || s.s != 2051 || s.t != 2054)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 2 * i)
       abort ();
   s.qux (x, y);
   if (x != 2049 || s.s != 4101 || s.t != 4104)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 4 * i)
       abort ();
diff --git a/gcc/testsuite/g++.dg/vect/simd-2.cc b/gcc/testsuite/g++.dg/vect/simd-2.cc
index 6f5737b7e40b5c2889f26cb4e4c3445e1c3822dd..0ff57e3178d1d79393120529ceea282498015d09 100644
--- a/gcc/testsuite/g++.dg/vect/simd-2.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-2.cc
@@ -110,6 +110,7 @@ main ()
   foo (a, b);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -121,6 +122,7 @@ main ()
   if (bar ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
@@ -132,6 +134,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -143,6 +146,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-3.cc b/gcc/testsuite/g++.dg/vect/simd-3.cc
index d9981719f58ced487c4ffbbecb7c8a5564165bc7..47148f050ed056a2b3340f1e60604606f6cc1311 100644
--- a/gcc/testsuite/g++.dg/vect/simd-3.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-3.cc
@@ -75,6 +75,7 @@ main ()
   foo (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -86,6 +87,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -99,6 +101,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -110,6 +113,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-4.cc b/gcc/testsuite/g++.dg/vect/simd-4.cc
index 8f3198943a7427ae3d4800bfbc5575c5849627ff..15b1bc1c99d5d42ecca330e063fed19a50fb3276 100644
--- a/gcc/testsuite/g++.dg/vect/simd-4.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-4.cc
@@ -77,6 +77,7 @@ main ()
   foo (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-5.cc b/gcc/testsuite/g++.dg/vect/simd-5.cc
index dd817b8888b1b17d822f576d6d6b123f338e984f..31c2ce8e7129983e02237cdd32e41ef0a8f25f90 100644
--- a/gcc/testsuite/g++.dg/vect/simd-5.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-5.cc
@@ -110,6 +110,7 @@ main ()
   foo (a, b, r);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -121,6 +122,7 @@ main ()
   if (bar ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
@@ -132,6 +134,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -143,6 +146,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-6.cc b/gcc/testsuite/g++.dg/vect/simd-6.cc
index 883b769a9b854bd8c1915648d15ea8996d461f05..7de41a90cae3d80c0ccafad8a9b041bee89764d3 100644
--- a/gcc/testsuite/g++.dg/vect/simd-6.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-6.cc
@@ -118,6 +118,7 @@ main ()
   foo (a, b);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -129,6 +130,7 @@ main ()
   if (bar<int> ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -140,6 +142,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -151,6 +154,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-7.cc b/gcc/testsuite/g++.dg/vect/simd-7.cc
index 1467849e0c6baa791016b039ca21cfa2cc63ce7f..b543efb191cfbf9c561b243996cdd3a4b66b7533 100644
--- a/gcc/testsuite/g++.dg/vect/simd-7.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-7.cc
@@ -79,6 +79,7 @@ main ()
   foo<int *, int &> (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -90,6 +91,7 @@ main ()
   if (bar<int> () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -103,6 +105,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -114,6 +117,7 @@ main ()
   if (qux<int &> () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-8.cc b/gcc/testsuite/g++.dg/vect/simd-8.cc
index 8e297e246bd41a2f63469260f4fdcfcb5a68a62e..4d76a97a97233cecd4d35797a4cc52f70a4c5e3b 100644
--- a/gcc/testsuite/g++.dg/vect/simd-8.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-8.cc
@@ -77,6 +77,7 @@ main ()
   foo (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-9.cc b/gcc/testsuite/g++.dg/vect/simd-9.cc
index 4c5b0508fbd79f0e6aa311072062725536d8e2a3..5d1a174e0fc5425f33769fd017b4fd6a51a2fb14 100644
--- a/gcc/testsuite/g++.dg/vect/simd-9.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-9.cc
@@ -110,6 +110,7 @@ main ()
   foo (a, b, r);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -121,6 +122,7 @@ main ()
   if (bar ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -132,6 +134,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -143,6 +146,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-clone-6.cc b/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
index fb00e8816a5fc157b780edd1d7064804a67d6373..2d9bb62555ff6c9473db2d1b754aed0123f2cb62 100644
--- a/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
@@ -30,6 +30,7 @@ do_main ()
   #pragma omp simd
   for (i = 0; i < N; i++)
     e[i] = foo (c[i], d[i], f[i]);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != 6 * i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/O3-pr70130.c b/gcc/testsuite/gcc.dg/vect/O3-pr70130.c
index f8b84405140e87a2244ae9f5db6136af2fe9cf57..17ce6c392546f7e46a6db9f30f76dcaedb96d08c 100644
--- a/gcc/testsuite/gcc.dg/vect/O3-pr70130.c
+++ b/gcc/testsuite/gcc.dg/vect/O3-pr70130.c
@@ -90,6 +90,7 @@ main (void)
   for (i = 0; i < 8; i++)
     Loop_err (images + i, s, -1);
 
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (__builtin_memcmp (&expected, images + i, sizeof (expected)))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/Os-vect-95.c b/gcc/testsuite/gcc.dg/vect/Os-vect-95.c
index 97e516ed68e6166eb5f0631004d89f8eedde1cc4..8039be89febdb150226b513ffe267f6065613ccb 100644
--- a/gcc/testsuite/gcc.dg/vect/Os-vect-95.c
+++ b/gcc/testsuite/gcc.dg/vect/Os-vect-95.c
@@ -10,6 +10,7 @@ void bar (float *pd, float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-1.c
index 793c41f6b724d2b6f5ecca6511ea8504e1731a8c..3dc5e746cd0d5c99dcb0c88a05b94c73b44b0e65 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-1.c
@@ -29,6 +29,7 @@ main1 (int dummy)
     }
 
   /* check results: */ 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-16.c b/gcc/testsuite/gcc.dg/vect/bb-slp-16.c
index 82fae06e3244a9bbb4a471faecdc5f1174970229..76430e0915e2d6ad342dae602fd22337f4559b63 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-16.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-16.c
@@ -37,6 +37,7 @@ main1 (int dummy)
 
   a = 0;
   /* check results: */ 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + a
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-2.c
index fcf1cd327e0b20582e3512faacfebfe6b7db7278..cb1b38dda14785c6755d311683fbe9703355b39a 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-2.c
@@ -28,6 +28,7 @@ main1 (int dummy)
     }
 
   /* check results:  */ 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-24.c b/gcc/testsuite/gcc.dg/vect/bb-slp-24.c
index ca049c81ba05482813dbab50ab3f4c6df94570e4..6de8dd8affce8e6f6ad40a36d6a163fc25b3fcf9 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-24.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-24.c
@@ -44,6 +44,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (dst[i] != A * i)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-25.c b/gcc/testsuite/gcc.dg/vect/bb-slp-25.c
index 7a9cf955e3e540e08b42cd80872bb99b53cabcb2..d44d585ff25aed7394945cff64f20923b5600061 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-25.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-25.c
@@ -45,6 +45,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (dst[i] != A * i + i + 8)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-26.c b/gcc/testsuite/gcc.dg/vect/bb-slp-26.c
index df529673f6c817620a8423ab14724fe4e72bca49..fde062e86c7a01ca29d6e7eb8367414bd734500b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-26.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-26.c
@@ -45,6 +45,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (dst[i] != A * src[i] + src[i+8])
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-27.c b/gcc/testsuite/gcc.dg/vect/bb-slp-27.c
index bc27f2fca04de8f837ce51090657c8f2cc250c24..3647dd97c69df8a36fc66ca8e9988e215dad71eb 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-27.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-27.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo (A);
 
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     {
       if (dst[i] != A * i)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-28.c b/gcc/testsuite/gcc.dg/vect/bb-slp-28.c
index 8749a1f22a6cc1e62a15bd988c50f6f63f26a0a2..c92b687aa44705118f21421a817ac3067e2023c6 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-28.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-28.c
@@ -56,6 +56,7 @@ int main (void)
 
   foo (A);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (dst[i] != A * i
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-29.c b/gcc/testsuite/gcc.dg/vect/bb-slp-29.c
index b531350ff3073b7f54b9c03609d6c8279e0374db..9272f02b2aa14f52b04e3d6bb08f15be17ce6a2f 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-29.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-29.c
@@ -45,6 +45,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (dst[i] != A * src[i] + B * src[i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-42.c b/gcc/testsuite/gcc.dg/vect/bb-slp-42.c
index 1dfa301184aad4c8edf00af80fb861562c941049..69fd0968491544f98d1406ff8a166b723714dd23 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-42.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-42.c
@@ -36,6 +36,7 @@ main ()
   foo (a, b);
 
   for (int i = 0; i < 4; ++i)
+#pragma GCC novector
     for (int j = 0; j < ARR_SIZE; ++j)
       if (a[i][j] != (i + 1) * ARR_SIZE - j + 20 * i)
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c
index ccb4ef659e47e3524d0dd602fa9d1291847dee3c..c8024429e9c44d924f5bb2af2fcc6b5eaa1b7db7 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c
@@ -35,6 +35,7 @@ int main ()
 
   foo (a, 4);
 
+#pragma GCC novector
   for (i = 1; i < N; i++)
     if (a[i] != i%4 + 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c
index 5a9fe423691e549ea877c42e46e9ba70d6ab5b00..b556a1d627865f5425e644df11f98661e6a85c29 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c
@@ -45,6 +45,7 @@ DEF_LOOP (unsigned)
 	asm volatile ("" ::: "memory");			\
       }							\
     f_##SIGNEDNESS (a, b, c);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       if (a[i] != (BASE_B + BASE_C + i * 29) >> 1)	\
 	__builtin_abort ();				\
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c
index 15a94e680be4568232e31956732d7416549a18ff..d1aa161c3adcfad1d916de486a04c075f0aaf958 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c
@@ -44,6 +44,7 @@ DEF_LOOP (unsigned)
 	asm volatile ("" ::: "memory");			\
       }							\
     f_##SIGNEDNESS (a, b, C);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       if (a[i] != (BASE_B + C + i * 15) >> 1)		\
 	__builtin_abort ();				\
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c
index 47b1a43665130e11f902f5aea11b01faf307101b..a3ff0f5b3da2f25ce62a5e9fabe5b38e9b952fa9 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c
@@ -37,6 +37,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c
index c50560b53696c340b0c071296f002f65bcb91631..05fde3a7feba81caf54acff82870079b87b7cf53 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c
@@ -39,6 +39,7 @@ int main ()
 
   foo (a, b, 8);
 
+#pragma GCC novector
   for (i = 1; i < N; i++)
     if (a[i] != i%8 + 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c
index fc76700ced3d4f439b0f12eaf9dbc2b1fec72c20..c186c7b66c65e5f62edee25a924fdcfb25b252ab 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c
@@ -16,6 +16,7 @@ int
 main (void)
 {
   f (a);
+#pragma GCC novector
   for (int i = 0; i < 4; ++i)
     {
       if (a[i] != (i + 1) * (i + 1))
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c
index ac89883de22c9f647041fb373618dae5b7c036f3..dda74ebe03c35811ee991a181379e688430d8412 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c
@@ -16,6 +16,8 @@ int main()
 	for (int e = 0; e <= 4; e++)
 	  a[e + 1] |= 3;
     }
+
+#pragma GCC novector
   for (int d = 0; d < 6; d++)
     if (a[d] != res[d])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c
index ee12136491071c6bfd7678c164df7a1c0a71818f..77d3ae7d424e208409c5baf18c6f39f294f7e351 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c
@@ -51,6 +51,7 @@ int main()
   rephase ();
   for (i = 0; i < 32; ++i)
     for (j = 0; j < 3; ++j)
+#pragma GCC novector
       for (k = 0; k < 3; ++k)
 	if (lattice->link[i].e[j][k].real != i
 	    || lattice->link[i].e[j][k].imag != i)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c
index 40a02ed1309e2b6b4dc44cf56018a4bb71cc519f..bea3b92ba775a4e8b547d4edccf3ae4a4aa50b40 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c
@@ -31,9 +31,11 @@ main (int argc, char **argv)
   __asm__ volatile ("" : : : "memory");
   test (a, b);
   __asm__ volatile ("" : : : "memory");
+#pragma GCC novector
   for (int i = 0; i < 4; i++)
     if (a[i] != i+4)
       abort ();
+#pragma GCC novector
   for (int i = 4; i < 8; i++)
     if (a[i] != 0)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c
index cc50a5bde01315be13058ac3409db07f4ce6de5f..085cb986b99c00cb1449db61bb68ccec4e7aa0ba 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -45,6 +46,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -58,6 +60,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -71,6 +74,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c
index b82b8916be125b194a02aa74cef74f821796de7f..f07893458b658fc728703ffc8897a7f7aeafdbb3 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c
index 51847599fa62a88ecc090673ab670f7c0a8ac711..cfe7b8536892caa5455e9440505187f21fa09e63 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -42,6 +43,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -55,6 +57,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -68,6 +71,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c
index c00a5bec6d5f9c325beb7e79a4520b76843f0a43..9e57cae9751d7231a2156acbb4c63c49dc0e8b95 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c
@@ -48,6 +48,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
@@ -73,6 +74,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
@@ -92,6 +94,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out2[i*2] !=  (float) (in[i*2] * 2 + 11)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c
index e27152eb91ef2feb6e547e5a00b0fc8fe40e2cee..4afbeea9927676b7dbdf78480671056e8777b183 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/4; i++)
     {
       if (tmp.b[2*i] != 5
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c
index c092848dfc9d093e6fc78ce171bb4c1f59a0cf85..9cfae91534f38248a06fb60ebbe05c84a4baccd2 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c
@@ -58,6 +58,7 @@ main (void)
   foo ();
 
   /* Check resiults. */ 
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     {
       if (cf[i].f1 != res1[i])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c
index c57f065cccdd6cba4f96efe777318310415863c9..454a714a309163a39128bf20ef7e8426bd26da15 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c
index 9bb81e371725ea0714f91eee1f5683c7c014e64c..f69e5c2ee5383abb0a242938426ef09621e54043 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c
@@ -31,6 +31,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c
index d062d659ffb0138859333f3d7e375bd83fc1c99a..cab6842f72d150b83d525abf7a23971817b9082e 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c
index dc170a0530c564c884bc739e6d82874ccddad12c..05c28fe75e6dc67acba59e73d2b8d3363cd47c9b 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c
@@ -22,6 +22,7 @@ __attribute__((noipa)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c
index ce27e4f082151b630376bd9cfbbabb78e80e4387..648e19f1071f844cc9f968414952897c12897688 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c
index dae5a78808f1d6a5754adb8e7ff4b22608ea33b4..badf5dff70225104207b65a6fe4a2a79223ff1ff 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c
index 8221f9e49f8875f453dbc12ca0da4a226e7cf62d..d71a202d8d2b6edaee8b71a485fa68ff56e983ba 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c
index 2fc751ce70da35b055c64d9e8bec222a4b4feb8b..f18da3fc1f0c0df27c5bd9dd7995deae19352620 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c
@@ -26,6 +26,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
index 5da4343198c10e3d35c9f446bc96f1b97d123f84..cbbfbb24658f8a11d4695fe5e16de4e4cfbdbc7e 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
@@ -28,6 +28,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (pib[i - OFF] != ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
index 1fc14666f286c1f1170d66120d734647db7686cf..2a672122bcc549029c95563745b56d74f41d9a82 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
@@ -26,6 +26,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != ic[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c
index 1a1a86878405bd3bf240e1417ad68970a585c562..9c659f83928046df2b40c2dcc20cdc12fad6c4fe 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c
@@ -59,6 +59,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c
index cc50a5bde01315be13058ac3409db07f4ce6de5f..085cb986b99c00cb1449db61bb68ccec4e7aa0ba 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -45,6 +46,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -58,6 +60,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -71,6 +74,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c
index 5e4affae7db61a0a07568603f1c80aefaf819adb..2f48955caa19f61c12e4c178f60f564c2e277bee 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c
index 51847599fa62a88ecc090673ab670f7c0a8ac711..cfe7b8536892caa5455e9440505187f21fa09e63 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -42,6 +43,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -55,6 +57,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -68,6 +71,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c
index cfea8723ba2731c334c1fffd749dc157d8f68e36..d9f19d90431ab1e458de738411d7d903445cd04d 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c
@@ -32,6 +32,7 @@ main1 ()
       d[i] = i * i;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + i + i - a[i]) >= 0.0001f)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c
index 6d67d12f9961f5cbc53d6f7df5240ac2178a08ac..76bb044914f462cf6d76b559b751f1338a3fc0f8 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c
@@ -44,12 +44,14 @@ main1 ()
       b[i] = ((i & 1) ? -4 * i : 4 * i) + 0.25;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1 + i)
       abort ();
     else
       a[i] = 131.25;
   f2 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c
index 495c0319c9dabd65436b5f6180114dfa8967f071..ad22f6e82b3c3312c9f10522377c4749e87ce3aa 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c
@@ -65,24 +65,28 @@ main1 ()
       d[i] = i * i;
     }
   f1 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + (i & 3) + i - a[i]) >= 0.0001f)
       abort ();
     else
       a[i] = 131.25;
   f2 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + (i & 1) + i - a[i]) >= 0.0001f)
       abort ();
     else
       a[i] = 131.25;
   f3 ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + i - a[i]) >= 0.0001f)
       abort ();
     else
       a[i] = 131.25;
   f4 (10);
+#pragma GCC novector
   for (i = 0; i < 60; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + (i % 3) + i - a[i]) >= 0.0001f)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c
index 274ff0f9942c5aff6c6aaca5243ef21bd8708856..d51e17ff656b7cc7ef3d87d207f78aae8eec9373 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c
@@ -82,36 +82,42 @@ main1 ()
       b[i] = ((i & 1) ? -4 * i : 4 * i) + 0.25;
     }
   f1 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1 + (i & 3))
       abort ();
     else
       a[i] = 131.25;
   f2 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1 + (i & 1))
       abort ();
     else
       a[i] = 131.25;
   f3 ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1)
       abort ();
     else
       a[i] = 131.25;
   f4 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
     else
       a[i] = 131.25;
   f5 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
     else
       a[i] = 131.25;
   f6 ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c b/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c
index 893e521ed8b83768699bc9b70f7d33b91dd89c9b..07992cf72dcfa4da5211a7a160fb146cf0b7ba5c 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c
@@ -47,6 +47,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
   {
     if (c[i] != res[i])
diff --git a/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c b/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
index 71f2db3e0f281c4cdb1bf89315cc959382459e83..fc710637ac8142778b18810cefadf00dda3f39a6 100644
--- a/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
+++ b/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
@@ -56,6 +56,7 @@ main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a != result[2*i] || out[i].b != result[2*i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c
index 82b37d4ca71344d15e00e0453dae6470c8d5ba9b..aeaf8146b1a817379a09dc3bf09f542524522f99 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c
@@ -32,6 +32,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c
index cafb96f52849c2a9b51591753898207beac9bdd0..635df4573c7cc0d4005421ce12d87b0c6511a228 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c
@@ -31,6 +31,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<200*N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c
index b376fb1d13ec533eebdbcb8092f03b4790de379a..494ff0b6f8f14f3d3b6aba1ada60d6442ce10811 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c
@@ -31,6 +31,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c
index 64c8dfc470ab02f3ea323f13b6477d6370210937..ba766a3f157db3f1a3d174ca6062fe7ddc60812c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c
@@ -38,6 +38,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c
index 277b73b4934a7bd689f8b2856b7813567dd762bc..d2eee349a42cd1061917c828895e45af5f730eb1 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c
@@ -38,6 +38,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c
index 325e201e2dac7aff88f4cb7aff53a7ee25b18631..cf7d605f23ba94b7a0a71526db02b59b517cbacc 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c
@@ -42,6 +42,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c
index d9cf28b22d9712f4e7f16ed18b89b0875d94daee..cfb837dced894ad8a885dcb392f489be381a3065 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c
@@ -41,6 +41,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c
index f5aeac981870d0e58679d5574dd12e2c4b40d23a..d650a9d1cdc7af778a2dac8e3e251527b825487d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c
@@ -34,6 +34,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c
index b5f8c3c88e4d0a6562ba867ae83c1ab120077111..e9ec4ca0da316be7d4d02138b0313a9ab087a601 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c
@@ -33,6 +33,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c
index 9d642415a133eefb420ced6642ac6d32a0e7e33f..13aac4a939846f05826f2b8628258c0fbd2e413a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c
@@ -32,6 +32,7 @@ int main (void)
   foo (3);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c
index f00132ede83134eb10639b77f5617487356e2ef1..c7c2fa8a5041fbc67747b4d4b98571f71f9599b6 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c
@@ -41,6 +41,7 @@ int main (void)
   res = foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum += i;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c
index 2dfdd59e14ef9685d22b2b8c34d55052ee747e7e..ba904a6c03e5a94f4a2b225f180bfe6a384f21d1 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c
@@ -47,6 +47,7 @@ int main (void)
   res = foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum += (b[i] - c[i]);
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c
index 49dd5207d862fd1de81b59013a07ea74ee9b5beb..464fcb1fc310a7366ef6a55c5ed491a7410720f8 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c
@@ -35,6 +35,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c
index 934eadd3e326b950bf33eac03136868089fa1371..5cd4049d08c84ab9f3503a3f1577d170df8ce6c3 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c
@@ -36,6 +36,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c
index 42e218924fdbeb7c21830537a55364ad5ca822ac..a9ef1c04c70510797006d8782dcc6abf2908e4f4 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c
@@ -38,6 +38,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c
index 75b7f066abae1496caa98080cdf4355ca1383091..72e53c2bfb0338a48def620159e384d423399d0b 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c
@@ -41,6 +41,7 @@ int main (void)
   res = foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum += i;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c
index ec04bc28f6279c0cd6a6c174698aedc4312c7ab5..b41b2c322b91ab0a9a06ab93acd335b53f654a6d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c
@@ -38,6 +38,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c
index ee39891efea2231362dc776efc4193898f06a02c..91e57a5963ac81964fb0c98a28f7586bf98df059 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c
@@ -35,6 +35,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c
index f8ef02d25190a29315e6909b9d89642f699b6c6a..a6c29956f3b84ee0def117bdc886219bf07ec2d0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c
@@ -39,6 +39,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c
index 2ef43cd146bdbbe6e7a8b8f0a66a11a1b8b7ec08..f01fcfb5c34906dbb96d050068b528192aa0f79a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c
@@ -37,6 +37,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c
index 7ac4e1ed949caecd6d2aaa7bf6d33d459ff74f8c..cf529efa31d6a10d3aaad69570f3f3ae102d327c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c
@@ -39,6 +39,7 @@ int main (void)
     a[i] = foo (b,i);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = b[i];
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c
index ad2f472f1ed100912386d51ef999353baf50dd93..9c1e251f6a79fd34a820d64393696722c508e671 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c
@@ -38,6 +38,7 @@ int main (void)
     a[i] = foo (b,i);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = b[i];
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c
index f56bd2e50af42f20f57791b2e3f0227dac13ee82..543ee98b5a44c91c2c249df0ece304dd3282cc1a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c
@@ -63,6 +63,7 @@ int main (void)
   res = foo (2);
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       if (a[i] != bar ())
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c
index 7c9113bc0f0425139c6723105c78cc8306d82f8c..0ed589b47e6bc722386a9db83e6397377f0e2069 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c
@@ -34,6 +34,7 @@ int main (void)
   foo (a);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c
index cea495c44808373543242d8998cdbfb9691499ca..62fa559e6ce064065b3191f673962a63e874055f 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c
@@ -34,6 +34,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c
index 9e1f7890dd1ebc14b4a9a88488625347dcabd38a..96ffb4ce7b4a8a06cb6966acc15924512ad00f31 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c
@@ -38,6 +38,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c
index ee65ceb6f92a185ca476afcc0b82295ab0034ba5..d76752c0dba3bbedb2913f87ed4b95f7d48ed2cf 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c
@@ -37,6 +37,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c
index fe9e7e7ab4038acfe02d3e6ea9c4fc37ba207043..00d0eca56eeca6aee6f11567629dc955c0924c74 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c
@@ -24,6 +24,7 @@ main1 ()
    }
 
   /* check results:  */
+#pragma GCC novector
    for (j = 0; j < N; j++)
    {
     for (i = 0; i < N; i++)
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c
index dc5f16fcfd2c269a719f7dcc5d2d0d4f9dbbf556..48b6a9b0681cf1fe410755c3e639b825b27895b0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c
@@ -24,6 +24,7 @@ main1 ()
    }
 
   /* check results:  */
+#pragma GCC novector
  for (i = 0; i < N; i++)
    {
     for (j = 0; j < N; j++) 
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c
index 131d2d9e03f44ed680cb49c71673908511c9236f..57ebd5c92a4297940bbdfc051c8a08d99a3b184e 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c
@@ -22,6 +22,7 @@ int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c
index d2ae7976781e20c6e4257e0ad4141ceb21ed711b..a1311504d2f8e67c275e8738b3c201187cd02bc0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c
@@ -39,6 +39,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -52,6 +53,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -65,6 +67,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -78,6 +81,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c
index 1edad1ca30eeca0a224a61b5035546615a360fef..604d4b1bc6772f7bf9466b204ebf43e639642a02 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c
index 7663ca7281aacc0ba3e685887e3c20be97322148..3eada6057dd91995709f313d706b6d94b8fb99eb 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != s.cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c
index 243e01e6dadf48d976fdd72bedd9547746cf73b5..19fbe331b57fde1412bfdaf7024e8c108f913da5 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c
@@ -54,6 +54,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[i])
@@ -64,6 +65,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[i][1][1][j] != ib[i])
@@ -74,6 +76,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (id[i][1][j+1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c
index 581554064b572b7eb26d5f9852d4d13622317c7e..d51ef31aeac0d910a69d0959cc0da46d92bd7af9 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c
@@ -44,6 +44,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[2][i][j])
@@ -64,6 +65,7 @@ int main1 ()
   /* check results: */
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[j] != ib[2][i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c
index e339590bacb494569558bfe9536c43f0d6339b8e..23cd3d5c11157f6735ed219c16075007f26034e5 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c
@@ -29,6 +29,7 @@ int main1 ()
     {
       for (j = 0; j < N; j++)
         {
+#pragma GCC novector
            if (ia[2][6][j] != 5)
                 abort();
         }
@@ -45,6 +46,7 @@ int main1 ()
     {
       for (j = 2; j < N+2; j++)
         {
+#pragma GCC novector
            if (ia[3][6][j] != 5)
                 abort();
         }
@@ -62,6 +64,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[2][1][6][j+1] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c
index c403a8302d842a8eda96d2ee0fb25a94e8323254..36b79c2907cc1b41664cdca5074d458e36bdee98 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c
@@ -35,6 +35,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -48,6 +49,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -61,6 +63,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -74,6 +77,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c
index 34317ccb624a4ca75c612c70a5b5105bb85e272b..a0e53d5fef91868dfdbd542dd0a98dff92bd265b 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c
@@ -52,6 +52,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 5)
@@ -65,6 +66,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = NINTS; i < N - 1; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 6)
@@ -81,6 +83,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       for (j = 0; j < N; j++)
@@ -100,6 +103,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N - NINTS; i++)
     {
       for (j = 0; j < N - NINTS; j++)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c
index 2199d11e2faee58663484a4d4e6ed06be508188b..f79b74d15700ccd86fc268e039efc8d7b8d245c2 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c
@@ -31,7 +31,9 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < M; j++) {
       if (a[j][i] != 4)
         abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c
index d0e4ec2373b66b76235f53522c50ac1067ece4d2..8358b6e54328336f1bd0f6c618c58e96b19401d5 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c
@@ -21,6 +21,7 @@ main1 (void)
     a[i] = (b[i] > 0 ? b[i] : 0);
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
   {
     if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c
index d718b5923b11aaee4d259c62cab1a82c714cc934..ae5d23fab86a4dd363e3df7310571ac93fc93f81 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c
@@ -20,6 +20,7 @@ main1 (void)
     a[i] = (b[i] > 0 ? b[i] : 0);
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
   {
     if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c
index 7316985829f589dbbbe782b037096b2c5bd2be3c..4aaff3430a4cb110d586da83e2db410ae88bc977 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] >= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c
index e87bcb8b43d3b82d30f8d3c2340b4968c8dd8da4..c644523a0047a6dfaa0ec8f3d74db79f71b82ec7 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c
@@ -21,6 +21,7 @@ int main ()
     A[i] = ( A[i] > MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c
index 9bd583fde6e71096b9cfd07d2668a9f32b50bf17..5902f61f954c5f65929616b0f924b8941cac847c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] <= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c
index 9bd583fde6e71096b9cfd07d2668a9f32b50bf17..5902f61f954c5f65929616b0f924b8941cac847c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] <= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c
index dcb09b7e7c7a3c983763fb3e57ea036e26d2d1ba..7f436a69e99bff6cebbc19a35c2dbbe5dce94c5a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] < MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c b/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c
index ebde13167c863d91376d7c17d65191c047a7c9e7..d31157713bf3d0f0fadf305053dfae0612712b8d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c
+++ b/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c
@@ -21,6 +21,7 @@ int main ()
   check_vect ();
   main1 (32);
 
+#pragma GCC novector
   for (si = 0; si < 32; ++si)
     if (stack_vars_sorted[si] != si)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c b/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c
index e965910d66d06434a367f08553fde8a733a53e41..8491d5f0070233af5c0baf64f9123d270fe1d51c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c
+++ b/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c
@@ -22,6 +22,7 @@ main1 (unsigned short *in)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -48,6 +49,7 @@ main2 (unsigned short * __restrict__ in, unsigned short * __restrict__ out)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] !=  in[i*4]
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c b/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c
index a92ec9c1656275e1b0e31cfe1dcde3be78dfac7e..45cca1d1991c126fdef29bb129c443aae249a295 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c
@@ -41,6 +41,7 @@ int main(void)
   with_restrict(a + 1);
   without_restrict(b + 1);
 
+#pragma GCC novector
   for (i = 0; i < 1002; ++i) {
     if (a[i] != b[i])
       abort();
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c
index ce934279ddfe073a96ef8cd7e0d383ca979bda7a..73b92177dabf5193d9d158a92e0383d389b67c82 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c
@@ -30,6 +30,7 @@ int main1 (int x, int y) {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != a[i] || p->b[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c
index d9e0529e73f0a566220020ad671f432f3e72299f..9a3fdab128a3bf2609018f92a38a7a6de8b7270b 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c
@@ -35,6 +35,7 @@ int main1 (int x, int y) {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != 1) 
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c
index 581438823fd2d1fa83ae4cb770995ff30c18abf8..439347c3bb10711911485a9c1f3bc6abf1c7798c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c
@@ -34,6 +34,7 @@ int main1 (int x, int y) {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != 1)
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c
index 6f4c84b4cd2b928c5df21a44e910620c1937e863..f59eb69d99fbe2794f3f6c6822cc87b209e8295f 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c
@@ -24,6 +24,7 @@ int main1 (char *y)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != cb[i])
@@ -38,6 +39,7 @@ int main1 (char *y)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != s.q[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c
index 18d4d1bbe6d0fdd357a95ab997437ab6b9a46ded..6b4542f5948bc32ca736ad92328a0fd37e44334c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c
@@ -11,6 +11,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
@@ -66,6 +67,7 @@ main2 (float *pa, float *pb, float *pc)
     }   
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (b[i] * c[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c
index cad507a708f3079f36e2c85c594513514a1e172b..5db05288c81bf5c4c158efbc50f6d4862bf3f335 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c
@@ -11,6 +11,7 @@ void bar (const float *pa, const float *pb, const float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c
index a364c7b0d6f1f19292b937eedf0854163c1f549a..a33375f94fec55183493f96c84099224b7f4af6f 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c
@@ -11,6 +11,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c
index 69e921b95031b9275e6f4edeb120f247e93646a3..5ebb8fea0b7cb101f73fa2b079f4a37092eb6f2d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c
@@ -11,6 +11,7 @@ void bar (const float *pa, const float *pb, const float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c
index b1c1d86587e5bd9b1dcd364ad495ee7a52ccfb2b..b6d251ec48950dacdecc4d141ebceb4cedaa0755 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c
@@ -11,6 +11,7 @@ void bar (const float *pa, const float *pb, const float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c
index 83dc628f0b0803eab9489101c6f3c26f87cf429c..6291dd9d53c33160a0aacf05aeb6febb79fdadf0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c
@@ -12,6 +12,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c
index 9524454d367db2a45ab744d55a9d32a32e773140..d0334e3ba90f511fd6c0bc5faa72d78c07510cd9 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c
index 6e9ddcfa5ce61f7a53829e81cab277165ecd1d91..37e474f8a06f1f7df7e9a83290e865d1baa12fce 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c
@@ -23,6 +23,7 @@ main1 (float *pa, float *pb, float *pc)
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c
index da3506a4cecdce11bf929a98c533026d31fc5f96..e808c87158076d3430eac124df9fdd55192821a8 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N - 1; i++)
     {
       if (ia[i] != 0)
@@ -34,6 +35,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N - 1; i++)
     {
       if (ib[i] != res[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c
index 89958378fca009fba6b59509c2ea7f96fa53805b..25a3409ae5e2ebdb6f7ebabc7974cd49ac7b7d47 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != 0)
@@ -34,6 +35,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ib[i] != res[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c
index e5914d970e3596a082e015725ba99369670db4e7..d1d70dda2eb9b3d7b462ebe0c30536a1f2744af4 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c
@@ -130,6 +130,7 @@ main1 (void)
 	case 7: f8 (); break;
 	}
 
+#pragma GCC novector
       for (i = 0; i <= N; i++)
 	{
 	  int ea = i + 3;
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c
index 8cc69ab22c5ab7cc193eeba1aa50365db640b254..407b683961ff0f5caaa1f168913fb7011b7fd2a3 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c
@@ -37,6 +37,7 @@ int main ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N-20; i++)
     {
       if (A[i] != D[i+20])
@@ -50,6 +51,7 @@ int main ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     {
       if (B[i] != C[i] + 5)
@@ -63,6 +65,7 @@ int main ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 4; i++)
     {
       if (C[i] != E[i])
diff --git a/gcc/testsuite/gcc.dg/vect/pr101445.c b/gcc/testsuite/gcc.dg/vect/pr101445.c
index f8a6e9ce6f7fa514cacd8b58d9263636d1d28eff..143156f2464e84e392c04231e4717ef9ec7d8a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/pr101445.c
+++ b/gcc/testsuite/gcc.dg/vect/pr101445.c
@@ -21,6 +21,7 @@ int main()
 {
   check_vect ();
   foo ();
+#pragma GCC novector
   for (int d = 0; d < 25; d++)
     if (a[d] != 0)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr103581.c b/gcc/testsuite/gcc.dg/vect/pr103581.c
index d072748de31d2c6beb5d6dd86bf762ee1f4d0182..92695c83d99bf048b52c8978634027bcfd71c13d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr103581.c
+++ b/gcc/testsuite/gcc.dg/vect/pr103581.c
@@ -39,6 +39,7 @@ main()
   unsigned int *resusiusi = maskgatherusiusi (16, idx4, data4);
   unsigned long long *resudiudi = maskgatherudiudi (16, idx8, data8);
   unsigned int *resusiudi = maskgatherusiudi (16, idx8, data4);
+#pragma GCC novector
   for (int i = 0; i < 16; ++i)
     {
       unsigned int d = idx4[i];
diff --git a/gcc/testsuite/gcc.dg/vect/pr105219.c b/gcc/testsuite/gcc.dg/vect/pr105219.c
index 4bca5bbba30a9740a54e6205bc0d0c8011070977..2289f5e1a633b56218d089d81528599d4f1f282b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr105219.c
+++ b/gcc/testsuite/gcc.dg/vect/pr105219.c
@@ -22,6 +22,7 @@ int main()
       {
         __builtin_memset (data, 0, sizeof (data));
         foo (&data[start], n);
+#pragma GCC novector
         for (int j = 0; j < n; ++j)
           if (data[start + j] != j)
             __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr108608.c b/gcc/testsuite/gcc.dg/vect/pr108608.c
index e968141ba03639ab86ccf77e5e9ad5dd56a66e0d..fff5c1a89365665edc3478263ee909b2b260e178 100644
--- a/gcc/testsuite/gcc.dg/vect/pr108608.c
+++ b/gcc/testsuite/gcc.dg/vect/pr108608.c
@@ -13,6 +13,7 @@ main (void)
 {
   check_vect ();
   float ptr[256];
+#pragma GCC novector
   for (int j = 0; j < 16; ++j)
     {
       for (int i = 0; i < 256; ++i)
diff --git a/gcc/testsuite/gcc.dg/vect/pr18400.c b/gcc/testsuite/gcc.dg/vect/pr18400.c
index 012086138f7199fdf2b4b40666795f7df03a89d2..dd96d87be99287da19df4634578e2e073ab42455 100644
--- a/gcc/testsuite/gcc.dg/vect/pr18400.c
+++ b/gcc/testsuite/gcc.dg/vect/pr18400.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/pr18536.c b/gcc/testsuite/gcc.dg/vect/pr18536.c
index 6d02675913b68c811f4e3bc1f71df830d7f4e2aa..33ee3a5ddcfa296672924678b40474bea947b9ea 100644
--- a/gcc/testsuite/gcc.dg/vect/pr18536.c
+++ b/gcc/testsuite/gcc.dg/vect/pr18536.c
@@ -22,6 +22,7 @@ int main (void)
   main1 (0, x);
 
   /* check results:  */
+#pragma GCC novector
   while (++i < 4)
     {
       if (x[i-1] != 2)
diff --git a/gcc/testsuite/gcc.dg/vect/pr20122.c b/gcc/testsuite/gcc.dg/vect/pr20122.c
index 4f1b7bd6c1e723405b6625f7c7c890a46d3272bc..3a0387e7728fedc9872cb385dd7817f7f5cf07ac 100644
--- a/gcc/testsuite/gcc.dg/vect/pr20122.c
+++ b/gcc/testsuite/gcc.dg/vect/pr20122.c
@@ -27,6 +27,7 @@ static void VecBug2(short Kernel[8][24])
             Kernshort2[i] = Kernel[k][i];
 
     for (k = 0; k<8; k++)
+#pragma GCC novector
         for (i = 0; i<24; i++)
             if (Kernshort2[i] != Kernel[k][i])
                 abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr25413.c b/gcc/testsuite/gcc.dg/vect/pr25413.c
index e80d6970933e675b6056e5d119c6eb0e817a40f9..266ef3109f20df7615e85079a5d2330f26cf540d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr25413.c
+++ b/gcc/testsuite/gcc.dg/vect/pr25413.c
@@ -26,6 +26,7 @@ int main (void)
   check_vect ();
   
   main1 ();
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (a.d[i] != 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr30784.c b/gcc/testsuite/gcc.dg/vect/pr30784.c
index 840dbc5f1f139aafe012904a774c1e5b9739b653..ad1fa05d8edae5e28a3308f39ff304de3b1d60c1 100644
--- a/gcc/testsuite/gcc.dg/vect/pr30784.c
+++ b/gcc/testsuite/gcc.dg/vect/pr30784.c
@@ -21,6 +21,7 @@ int main ()
   check_vect ();
   main1 (32);
 
+#pragma GCC novector
   for (si = 0; si < 32; ++si)
     if (stack_vars_sorted[si] != si)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr37539.c b/gcc/testsuite/gcc.dg/vect/pr37539.c
index dfbfc20c5cbca0cfa7158423ee4a42e5976b56fe..c7934eb384739778a841271841fd8b7777ee19be 100644
--- a/gcc/testsuite/gcc.dg/vect/pr37539.c
+++ b/gcc/testsuite/gcc.dg/vect/pr37539.c
@@ -17,6 +17,7 @@ ayuv2yuyv_ref (int *d, int *src, int n)
   }
 
   /* Check results.  */
+#pragma GCC novector
   for(i=0;i<n/2;i++){
    if (dest[i*4 + 0] != (src[i*2 + 0])>>16
        || dest[i*4 + 1] != (src[i*2 + 1])>>8
diff --git a/gcc/testsuite/gcc.dg/vect/pr40074.c b/gcc/testsuite/gcc.dg/vect/pr40074.c
index 143ee05b1fda4b0f858e31cad2ecd4211530e7b6..b75061a8116c34f609eb9ed59256b6eea87976a4 100644
--- a/gcc/testsuite/gcc.dg/vect/pr40074.c
+++ b/gcc/testsuite/gcc.dg/vect/pr40074.c
@@ -30,6 +30,7 @@ main1 ()
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N-1; i++)
     {
       if (res[i] != arr[i].b + arr[i].d + arr[i+1].b)
diff --git a/gcc/testsuite/gcc.dg/vect/pr45752.c b/gcc/testsuite/gcc.dg/vect/pr45752.c
index 4ddac7ad5097c72f08b948f64caa54421d4f55d0..e8b364f29eb0c4b20bb2b2be5d49db3aab5ac39b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr45752.c
+++ b/gcc/testsuite/gcc.dg/vect/pr45752.c
@@ -146,6 +146,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (output[i] != check_results[i]
         || output2[i] != check_results2[i])
diff --git a/gcc/testsuite/gcc.dg/vect/pr45902.c b/gcc/testsuite/gcc.dg/vect/pr45902.c
index ac8e1ca6d38159d3c26497a414b638f49846381e..74510bf94b82850b6492c6d1ed0abacb73f65a16 100644
--- a/gcc/testsuite/gcc.dg/vect/pr45902.c
+++ b/gcc/testsuite/gcc.dg/vect/pr45902.c
@@ -34,6 +34,7 @@ main ()
 
   main1 ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i] != a[i] >> 8)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr46009.c b/gcc/testsuite/gcc.dg/vect/pr46009.c
index 9649e2fb4bbfd74e134a9ef3d068d50b9bcb86c0..fe73dbf5db08732cc74115281dcf6a020f893cb6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr46009.c
+++ b/gcc/testsuite/gcc.dg/vect/pr46009.c
@@ -49,6 +49,7 @@ main (void)
       e[i] = -1;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     {
       int g;
@@ -59,6 +60,7 @@ main (void)
       e[i] = -1;
     }
   bar ();
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     {
       int g;
diff --git a/gcc/testsuite/gcc.dg/vect/pr48172.c b/gcc/testsuite/gcc.dg/vect/pr48172.c
index a7fc05cae9119076efad4ca13a0f6fd0aff004b7..850e9b92bc15ac5f51fee8ac7fd2c9122def66b6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr48172.c
+++ b/gcc/testsuite/gcc.dg/vect/pr48172.c
@@ -25,6 +25,7 @@ int main() {
     array[HALF+i] = array[2*i] + array[2*i + 1];
 
   /* see if we have any failures */
+#pragma GCC novector
   for (i = 0; i < HALF - 1; i++)
     if (array[HALF+i] != array[2*i] + array[2*i + 1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr51074.c b/gcc/testsuite/gcc.dg/vect/pr51074.c
index 4144572126e9de36f5b2e85bb56ff9fdff372bce..d6c8cea1f842e08436a3d04af513307d3e980d27 100644
--- a/gcc/testsuite/gcc.dg/vect/pr51074.c
+++ b/gcc/testsuite/gcc.dg/vect/pr51074.c
@@ -15,6 +15,7 @@ main ()
       s[i].a = i;
     }
   asm volatile ("" : : : "memory");
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (s[i].b != 0 || s[i].a != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr51581-3.c b/gcc/testsuite/gcc.dg/vect/pr51581-3.c
index 76c156adf9d0dc083b7eb5fb2e6f056398e2b845..25acceef0e5ca6f8c180a41131cd190b9c84b533 100644
--- a/gcc/testsuite/gcc.dg/vect/pr51581-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr51581-3.c
@@ -97,17 +97,20 @@ main ()
     }
   f1 ();
   f2 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (a[i] != b[i] / 8 || c[i] != d[i] / 3)
       abort ();
   f3 ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < 8; i+= 2)
     if (a[i] != b[i] / 8 || a[i + 1] != b[i + 1] / 4
 	|| c[i] != d[i] / 3 || c[i + 1] != d[i + 1] / 5)
       abort ();
   f5 ();
   f6 ();
+#pragma GCC novector
   for (i = 0; i < 8; i+= 2)
     if (a[i] != b[i] / 14 || a[i + 1] != b[i + 1] / 15
 	|| c[i] != d[i] / (i == 6 ? 13 : 6) || c[i + 1] != d[i + 1] / 5)
diff --git a/gcc/testsuite/gcc.dg/vect/pr51581-4.c b/gcc/testsuite/gcc.dg/vect/pr51581-4.c
index 632c96e7481339a6dfac92913a519ad5501d34c4..f6234f3e7c09194dba54af08832171798c7d9c09 100644
--- a/gcc/testsuite/gcc.dg/vect/pr51581-4.c
+++ b/gcc/testsuite/gcc.dg/vect/pr51581-4.c
@@ -145,17 +145,20 @@ main ()
     }
   f1 ();
   f2 ();
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     if (a[i] != b[i] / 8 || c[i] != d[i] / 3)
       abort ();
   f3 ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < 16; i+= 2)
     if (a[i] != b[i] / 8 || a[i + 1] != b[i + 1] / 4
 	|| c[i] != d[i] / 3 || c[i + 1] != d[i + 1] / 5)
       abort ();
   f5 ();
   f6 ();
+#pragma GCC novector
   for (i = 0; i < 16; i+= 2)
     if (a[i] != b[i] / 14 || a[i + 1] != b[i + 1] / 15
 	|| c[i] != d[i] / ((i & 7) == 6 ? 13 : 6) || c[i + 1] != d[i + 1] / 5)
diff --git a/gcc/testsuite/gcc.dg/vect/pr53185-2.c b/gcc/testsuite/gcc.dg/vect/pr53185-2.c
index 6057c69a24a81be20ecc5582685fb4516f47803d..51614e70d8feac0004644b2e6bb7deb52eeeefea 100644
--- a/gcc/testsuite/gcc.dg/vect/pr53185-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr53185-2.c
@@ -20,6 +20,7 @@ int main ()
   for (off = 0; off < 8; ++off)
     {
       fn1 (&a[off], &b[off], 32 - off, 3);
+#pragma GCC novector
       for (i = 0; i < 32 - off; ++i)
 	if (a[off+i] != b[off+i*3])
 	  abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56826.c b/gcc/testsuite/gcc.dg/vect/pr56826.c
index e8223808184e6b7b37a6d458bdb440566314e959..2f2da458b89ac04634cb809873d7a60e55484499 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56826.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56826.c
@@ -35,6 +35,7 @@ int main()
       __asm__ volatile ("");
     }
   bar (&A[0], &B[0], 100);
+#pragma GCC novector
   for (i=0; i<300; i++)
     if (A[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56918.c b/gcc/testsuite/gcc.dg/vect/pr56918.c
index 1c88d324b902e9389afe4c5c729f20b2ad790dbf..4941453bbe9940b4e775239c4c2c9606435ea20a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56918.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56918.c
@@ -22,6 +22,7 @@ main ()
   foo ();
   if (data[0] != 3 || data[7] != 1)
     abort ();
+#pragma GCC novector
   for (i = 1; i < 4; ++i)
     if (data[i] != i || data[i + 3] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56920.c b/gcc/testsuite/gcc.dg/vect/pr56920.c
index 865cfda760d1978eb1f3f063c75e2bac558254bd..ef73471468392b573e999a59e282b4d796556b8d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56920.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56920.c
@@ -12,6 +12,7 @@ main ()
   check_vect ();
   for (i = 0; i < 15; ++i)
     a[i] = (i * 2) % 15;
+#pragma GCC novector
   for (i = 0; i < 15; ++i)
     if (a[i] != (i * 2) % 15)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56933.c b/gcc/testsuite/gcc.dg/vect/pr56933.c
index 7206682d7935a0436aaf502537bb56642d5e4648..2f2afe6df134163d2e7761be4906d778dbd6b670 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56933.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56933.c
@@ -25,6 +25,7 @@ int main()
   for (i = 0; i < 2*1024; i++)
     d[i] = 1.;
   foo (b, d, f);
+#pragma GCC novector
   for (i = 0; i < 1024; i+= 2)
     {
       if (d[2*i] != 2.)
@@ -32,6 +33,7 @@ int main()
       if (d[2*i+1] != 4.)
 	abort ();
     }
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     {
       if (b[i] != 1.)
diff --git a/gcc/testsuite/gcc.dg/vect/pr57705.c b/gcc/testsuite/gcc.dg/vect/pr57705.c
index e17ae09beb68051637c3ece69ac2f29e1433008d..39c32946d74ef01efce6fbc2f23c72dd0b33091d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr57705.c
+++ b/gcc/testsuite/gcc.dg/vect/pr57705.c
@@ -47,14 +47,17 @@ main ()
   int i;
   check_vect ();
   foo (5, 3);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != 5 + 4 * i)
       abort ();
   bar (5, 3);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != 9 + 4 * i)
       abort ();
   baz (5, 3);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != 5 + 4 * i || b[i] != (unsigned char) i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr57741-2.c b/gcc/testsuite/gcc.dg/vect/pr57741-2.c
index df63a49927d38badb2503787bcd828b796116199..6addd76b422614a2e28272f4d696e3cba4bb0376 100644
--- a/gcc/testsuite/gcc.dg/vect/pr57741-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr57741-2.c
@@ -34,6 +34,7 @@ main ()
   int i;
   check_vect ();
   foo (p, q, 1.5f);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (p[i] != 1.0f + i * 1.5f || q[i] != 2.0f + i * 0.5f)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr57741-3.c b/gcc/testsuite/gcc.dg/vect/pr57741-3.c
index 2e4954ac7f14b21463b0ef0ca97e05c4eb96e8fd..916fa131513b88321d36cdbe46f101361b4f8244 100644
--- a/gcc/testsuite/gcc.dg/vect/pr57741-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr57741-3.c
@@ -33,6 +33,7 @@ main ()
   check_vect ();
   r[0] = 0;
   foo (1.5f);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (p[i] != 1.0f + i * 1.5f || q[i] != 2.0f + i * 0.5f || r[i] != 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr59591-1.c b/gcc/testsuite/gcc.dg/vect/pr59591-1.c
index 892fce58e36b37e5412cc6c100f82b6077ace77e..e768fb3e1de48cf43b389cf83b4f7f1f030c4f91 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59591-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59591-1.c
@@ -31,6 +31,7 @@ bar (void)
       t[i] = i * 13;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 256; i++)
     if ((i >> 2) & (1 << (i & 3)))
       {
diff --git a/gcc/testsuite/gcc.dg/vect/pr59591-2.c b/gcc/testsuite/gcc.dg/vect/pr59591-2.c
index bd82d765794a32af6509ffd60d1f552ce10570a3..3bdf4252cffe63830b5b47cd17fa29a3c65afc73 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59591-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59591-2.c
@@ -32,6 +32,7 @@ bar (void)
       t[i] = i * 13;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 256; i++)
     if ((i >> 2) & (1 << (i & 3)))
       {
diff --git a/gcc/testsuite/gcc.dg/vect/pr59594.c b/gcc/testsuite/gcc.dg/vect/pr59594.c
index 947fa4c0c301d98cbdfeb5da541482858b69180f..e3ece8abf7131aa4ed0a2d5af79d4bdea90bd8c1 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59594.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59594.c
@@ -22,6 +22,7 @@ main ()
     }
   if (b[0] != 1)
     __builtin_abort ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (b[i + 1] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr59984.c b/gcc/testsuite/gcc.dg/vect/pr59984.c
index d6977f0020878c043376b7e7bfdc6a0e85ac2663..c00c2267158667784fb084b0ade19e2ab763c6a3 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59984.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59984.c
@@ -37,6 +37,7 @@ test (void)
       foo (a[i], &v1, &v2);
       a[i] = v1 * v2;
     }
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * i * i * i - 1)
       __builtin_abort ();
@@ -49,6 +50,7 @@ test (void)
       bar (a[i], &v1, &v2);
       a[i] = v1 * v2;
     }
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * i * i * i - 1)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr60276.c b/gcc/testsuite/gcc.dg/vect/pr60276.c
index 9fc18ac7428cf71903b6ebb04b90eb21b2e8b3c7..824e2a336b6d9fad2e7a72c445ec2edf80be8138 100644
--- a/gcc/testsuite/gcc.dg/vect/pr60276.c
+++ b/gcc/testsuite/gcc.dg/vect/pr60276.c
@@ -44,6 +44,7 @@ int main(void)
   foo (out + 2, lp + 1, 48);
   foo_novec (out2 + 2, lp + 1, 48);
 
+#pragma GCC novector
   for (s = 0; s < 49; s++)
     if (out[s] != out2[s])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr61194.c b/gcc/testsuite/gcc.dg/vect/pr61194.c
index 8421367577278cdf5762327d83cdc4a0e65c9411..8cd38b3d5da616d65ba131d048280b1d5644339d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr61194.c
+++ b/gcc/testsuite/gcc.dg/vect/pr61194.c
@@ -32,6 +32,7 @@ int main()
 
   barX();
 
+#pragma GCC novector
   for (i = 0; i < 1024; ++i)
     if (z[i] != ((x[i]>0 && w[i]<0) ? 0. : 1.))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr61680.c b/gcc/testsuite/gcc.dg/vect/pr61680.c
index e25bf78090ce49d68cb3694233253b403709331a..bb24014bdf045f22a0c9c5234481f07153c25d41 100644
--- a/gcc/testsuite/gcc.dg/vect/pr61680.c
+++ b/gcc/testsuite/gcc.dg/vect/pr61680.c
@@ -8,6 +8,7 @@ bar (double p[][4])
 {
   int i;
   double d = 172.0;
+#pragma GCC novector
   for (i = 0; i < 4096; i++)
     {
       if (p[i][0] != 6.0 || p[i][1] != 6.0 || p[i][2] != 10.0)
diff --git a/gcc/testsuite/gcc.dg/vect/pr62021.c b/gcc/testsuite/gcc.dg/vect/pr62021.c
index 40c64429d6382821af4a31b3569c696ea0e5fa2a..460fadb3f6cd73c7cac2bbba65cc09d4211396e8 100644
--- a/gcc/testsuite/gcc.dg/vect/pr62021.c
+++ b/gcc/testsuite/gcc.dg/vect/pr62021.c
@@ -24,6 +24,7 @@ main ()
   #pragma omp simd
   for (i = 0; i < 1024; i++)
     b[i] = foo (b[i], i);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (b[i] != &a[1023])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr63341-2.c b/gcc/testsuite/gcc.dg/vect/pr63341-2.c
index 2004a79b80ef4081136ade20df9b6acd5b6428c1..aa338263a7584b06f10e4cb4a6baf19dea20f40a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr63341-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr63341-2.c
@@ -16,6 +16,7 @@ foo ()
   int i;
   for (i = 0; i < 32; i++)
     d[i] = t.s[i].s + 4;
+#pragma GCC novector
   for (i = 0; i < 32; i++)
     if (d[i] != t.s[i].s + 4)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr64252.c b/gcc/testsuite/gcc.dg/vect/pr64252.c
index b82ad017c16fda6e031b503a9b11fe39a3691a6c..89070c27ff0f9763bd8eaff4a81b5b0197ae12dc 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64252.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64252.c
@@ -57,6 +57,7 @@ int main()
   int i;
   check_vect ();
   bar(2, q);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (q[0].a[i].f != 0 || q[0].a[i].c != i || q[0].a[i].p != -1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr64404.c b/gcc/testsuite/gcc.dg/vect/pr64404.c
index 26fceb6cd8936f7300fb0067c0f18c3d35ac4595..6fecf9ecae18e49808a58fe17a6b912786bdbad3 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64404.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64404.c
@@ -42,6 +42,7 @@ main (void)
 
   Compute ();
 
+#pragma GCC novector
   for (d = 0; d < 1024; d++)
     {
       if (Y[d].l != X[d].l + X[d].h
diff --git a/gcc/testsuite/gcc.dg/vect/pr64421.c b/gcc/testsuite/gcc.dg/vect/pr64421.c
index 3b5ab2d980c207c1d5e7fff73cd403ac38790080..47afd22d93e5ed8fbfff034cd2a03d8d70f7e422 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64421.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64421.c
@@ -27,6 +27,7 @@ main ()
     a[i] = foo (a[i], i);
   if (a[0] != 1 || a[1] != 3)
     abort ();
+#pragma GCC novector
   for (i = 2; i < 1024; i++)
     if (a[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr64493.c b/gcc/testsuite/gcc.dg/vect/pr64493.c
index 6fb13eb6d96fe67471fdfafd2eed2a897ae8b670..d3faf84bcc16d31fc11dd2d0cd7242972fdbafdc 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64493.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64493.c
@@ -9,6 +9,7 @@ main ()
 
   for (; a; a--)
     for (d = 1; d <= 0; d++)
+#pragma GCC novector
       for (; d;)
 	if (h)
 	  {
diff --git a/gcc/testsuite/gcc.dg/vect/pr64495.c b/gcc/testsuite/gcc.dg/vect/pr64495.c
index 5cbaeff8389dafd3444f90240a910e7d5e4f2431..c48f9389aa325a8b8ceb5697684f563b8c13a72d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64495.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64495.c
@@ -11,6 +11,7 @@ main ()
 
   for (; a;)
     for (; g; g++)
+#pragma GCC novector
       for (; f; f++)
 	if (j)
 	  {
diff --git a/gcc/testsuite/gcc.dg/vect/pr66251.c b/gcc/testsuite/gcc.dg/vect/pr66251.c
index 26afbc96a5d57a49fbbac95753f4df006cb36018..355590e69a98687084fee2c5486d14c2a20f3fcb 100644
--- a/gcc/testsuite/gcc.dg/vect/pr66251.c
+++ b/gcc/testsuite/gcc.dg/vect/pr66251.c
@@ -51,6 +51,7 @@ int main ()
 
       test1(da, ia, stride, 256/stride);
 
+#pragma GCC novector
       for (i = 0; i < 256/stride; i++)
 	{
 	  if (da[i*stride] != ia[i*stride])
@@ -66,6 +67,7 @@ int main ()
 
       test2(ia, da, stride, 256/stride);
 
+#pragma GCC novector
       for (i = 0; i < 256/stride; i++)
 	{
 	  if (da[i*stride] != ia[i*stride])
diff --git a/gcc/testsuite/gcc.dg/vect/pr66253.c b/gcc/testsuite/gcc.dg/vect/pr66253.c
index bdf3ff9ca51f7f656fad687fd8c77c6ee053794f..6b99b4f3b872cbeab14e035f2e2d40aab6e438e4 100644
--- a/gcc/testsuite/gcc.dg/vect/pr66253.c
+++ b/gcc/testsuite/gcc.dg/vect/pr66253.c
@@ -39,6 +39,7 @@ int main ()
 
       test1(da, ia, ca, stride, 256/stride);
 
+#pragma GCC novector
       for (i = 0; i < 256/stride; i++)
 	{
 	  if (da[i*stride] != 0.5 * ia[i*stride] * ca[i*stride])
diff --git a/gcc/testsuite/gcc.dg/vect/pr68502-1.c b/gcc/testsuite/gcc.dg/vect/pr68502-1.c
index 4f7d0bfca38693877ff080842d6ef7abf3d3e17b..cc6e6cd9a2be0e921382bda3c653f6a6b730b905 100644
--- a/gcc/testsuite/gcc.dg/vect/pr68502-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr68502-1.c
@@ -41,6 +41,7 @@ int main ()
   for (i = 0; i < numf1s; i++)
     f1_layer[i].I = (double *)-1;
   reset_nodes ();
+#pragma GCC novector
   for (i = 0; i < numf1s; i++)
     if (f1_layer[i].I != (double *)-1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr68502-2.c b/gcc/testsuite/gcc.dg/vect/pr68502-2.c
index a3eddafc7ca76cbe4c21f6ed873249cb2c94b7a6..11f87125b75df9db29669aa55cdc3c202b0fedda 100644
--- a/gcc/testsuite/gcc.dg/vect/pr68502-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr68502-2.c
@@ -41,6 +41,7 @@ int main ()
   for (i = 0; i < numf1s; i++)
     f1_layer[i].I = -1;
   reset_nodes ();
+#pragma GCC novector
   for (i = 0; i < numf1s; i++)
     if (f1_layer[i].I != -1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr69820.c b/gcc/testsuite/gcc.dg/vect/pr69820.c
index be24e4fa9a1343e4308bfd967f1ccfdd3549db5c..72d10b65c16b54764aac0cf271138ffa187f4052 100644
--- a/gcc/testsuite/gcc.dg/vect/pr69820.c
+++ b/gcc/testsuite/gcc.dg/vect/pr69820.c
@@ -28,6 +28,7 @@ main ()
       c[i] = 38364;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 100; ++i)
     if (b[i] != 0xed446af8U)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr70021.c b/gcc/testsuite/gcc.dg/vect/pr70021.c
index 988fc53216d12908bbbc564c9efc4d63a5c057d7..d4d5db12bc0e646413ba393b57edc60ba1189059 100644
--- a/gcc/testsuite/gcc.dg/vect/pr70021.c
+++ b/gcc/testsuite/gcc.dg/vect/pr70021.c
@@ -32,6 +32,7 @@ main ()
       e[i] = 14234165565810642243ULL;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     if (e[i] != ((i & 3) ? 14234165565810642243ULL : 1ULL))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr70354-1.c b/gcc/testsuite/gcc.dg/vect/pr70354-1.c
index 9d601dc9d4a92922e4114b8b4d1b7ef2f49c0c44..2687758b022b01af3eb7b444fee25be8bc1f8b3c 100644
--- a/gcc/testsuite/gcc.dg/vect/pr70354-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr70354-1.c
@@ -41,6 +41,7 @@ main ()
       h[i] = 8193845517487445944ULL;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (d[i] != 8193845517487445944ULL || e[i] != 1
 	|| g[i] != 4402992416302558097ULL)
diff --git a/gcc/testsuite/gcc.dg/vect/pr70354-2.c b/gcc/testsuite/gcc.dg/vect/pr70354-2.c
index 160e1e083e03e0652d06bf29df060192cbe75fd5..cb4cdaae30ba5760fc32e255b651072ca397a499 100644
--- a/gcc/testsuite/gcc.dg/vect/pr70354-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr70354-2.c
@@ -29,6 +29,7 @@ main ()
       b[i] = 0x1200000000ULL + (i % 54);
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != (0x1234ULL << (i % 54)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr71259.c b/gcc/testsuite/gcc.dg/vect/pr71259.c
index 587a8e3c8f378f3c57f8a9a2e9fa5aee3a968860..6cb22f622ee2ce2d6de51c440472e36fe7294362 100644
--- a/gcc/testsuite/gcc.dg/vect/pr71259.c
+++ b/gcc/testsuite/gcc.dg/vect/pr71259.c
@@ -20,6 +20,7 @@ main ()
   asm volatile ("" : : : "memory");
   for (i = 0; i < 44; i++) 
     for (j = 0; j < 17; j++)
+#pragma GCC novector
       for (k = 0; k < 2; k++)
 	if (c[i][j][k] != -5105075050047261684)
 	  __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr78005.c b/gcc/testsuite/gcc.dg/vect/pr78005.c
index 7cefe73fe1b3d0050befeb5e25aec169867fd96a..6da7acf50c2a1237b817abf8e6b9191b3c3e1378 100644
--- a/gcc/testsuite/gcc.dg/vect/pr78005.c
+++ b/gcc/testsuite/gcc.dg/vect/pr78005.c
@@ -22,6 +22,7 @@ foo (int n, int d)
 
 #define check_u(x)		\
   foo (x, 2);			\
+  _Pragma("GCC novector")	\
   for (i = 0; i < N; i++)	\
     {				\
       if (u[i] != res##x[i])	\
diff --git a/gcc/testsuite/gcc.dg/vect/pr78558.c b/gcc/testsuite/gcc.dg/vect/pr78558.c
index 2606d4ec10d3fa18a4c0e4b8e9dd02131cb57ba7..2c28426eb85fc6663625c542e84860fa7bcfd3c2 100644
--- a/gcc/testsuite/gcc.dg/vect/pr78558.c
+++ b/gcc/testsuite/gcc.dg/vect/pr78558.c
@@ -37,6 +37,7 @@ main ()
   asm volatile ("" : : "g" (s), "g" (d) : "memory");
   foo ();
   asm volatile ("" : : "g" (s), "g" (d) : "memory");
+#pragma GCC novector
   for (i = 0; i < 50; ++i)
     if (d[i].q != i || d[i].r != 50 * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr80815-2.c b/gcc/testsuite/gcc.dg/vect/pr80815-2.c
index 83557daa6963632ccf2cf0a641a4106b4dc833f5..3ffff0be3be96df4c3e6a3d5caa68b7d4b6bad9a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr80815-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr80815-2.c
@@ -38,6 +38,7 @@ int main (void)
 
   foo (a, b);
 
+#pragma GCC novector
   for (i = 973; i < 1020; i++)
     if (arr[i] != res[i - 973])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr80815-3.c b/gcc/testsuite/gcc.dg/vect/pr80815-3.c
index 50392ab1a417de2af81af6473bf0a85bd9eb7279..5e2be5262ebb639d4bd771e326f9a07ed2ee0680 100644
--- a/gcc/testsuite/gcc.dg/vect/pr80815-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr80815-3.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo (a, b, 50);
 
+#pragma GCC novector
   for (i = 975; i < 1025; i++)
     if (arr[i] != res[i - 975])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr80928.c b/gcc/testsuite/gcc.dg/vect/pr80928.c
index e6c1f1ab5a7f4ca7eac98cf91fccffbff2dcfc7a..34566c4535247d2fa39c5d856d1e0c32687e9a2a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr80928.c
+++ b/gcc/testsuite/gcc.dg/vect/pr80928.c
@@ -25,6 +25,7 @@ int main ()
   foo ();
 
   /* check results */
+#pragma GCC novector
   for (int i = 0; i < 1020; ++i)
     if (a[i] != ((i + 4) / 5) * 5)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81410.c b/gcc/testsuite/gcc.dg/vect/pr81410.c
index 9c91c08d33c729d8ff26cae72f4651081850b550..6b7586992fe46918aab537a06f166ce2e25f90d8 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81410.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81410.c
@@ -26,6 +26,7 @@ int main()
       __asm__ volatile ("" : : : "memory");
     }
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 8; ++i)
     if (y[2*i] != 3*i || y[2*i+1] != 3*i + 1)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81633.c b/gcc/testsuite/gcc.dg/vect/pr81633.c
index 9689ab3959cd9df8234b89ec307b7cd5d6f9d795..2ad144a60444eb82b8e8575efd8fcec94fcd6f01 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81633.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81633.c
@@ -24,6 +24,7 @@ int main(void)
   double A[4][4] = {{0.0}};
   kernel(A);
   for ( int i = 0; i < 4; i++ )
+#pragma GCC novector
     for ( int j = 0; j < 4; j++ )
       if (A[i][j] != expected[i][j])
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81740-1.c b/gcc/testsuite/gcc.dg/vect/pr81740-1.c
index f6fd43c7c87e0aad951ba092796f0aae39b80d54..b01e1994834934bbd50f3fc1cbcf494ecc62c315 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81740-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81740-1.c
@@ -14,6 +14,7 @@ main ()
     for (c = 0; c <= 6; c++)
       a[c + 1][b + 2] = a[c][b + 1];
   for (i = 0; i < 8; i++)
+#pragma GCC novector
     for (d = 0; d < 10; d++)
       if (a[i][d] != (i == 3 && d == 6) * 4)
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81740-2.c b/gcc/testsuite/gcc.dg/vect/pr81740-2.c
index 1e0d6645a03f77c9c042313fd5377b71ba75c4d6..7b2bfe139f20fb66c90cfd643b65df3edb9b536e 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81740-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81740-2.c
@@ -15,6 +15,7 @@ main ()
     for (c = 6; c >= 0; c--)
       a[c + 1][b + 2] = a[c][b + 1];
   for (i = 0; i < 8; i++)
+#pragma GCC novector
     for (d = 0; d < 10; d++)
       if (a[i][d] != (i == 3 && d == 6) * 4)
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr85586.c b/gcc/testsuite/gcc.dg/vect/pr85586.c
index 3d075bfcec83bab119f77bad7b642eb3d634fb4c..a4a170a1fcd130d84da3be9f897889ff4cfc717c 100644
--- a/gcc/testsuite/gcc.dg/vect/pr85586.c
+++ b/gcc/testsuite/gcc.dg/vect/pr85586.c
@@ -24,6 +24,7 @@ main (void)
     }
 
   foo (out, in, 1);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (out[i] != in[i])
       __builtin_abort ();
@@ -33,6 +34,7 @@ main (void)
   foo (out + N - 1, in, -1);
   if (out[0] != in[N - 1])
     __builtin_abort ();
+#pragma GCC novector
   for (int i = 1; i <= N; ++i)
     if (out[i] != 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr87288-1.c b/gcc/testsuite/gcc.dg/vect/pr87288-1.c
index 0d0a70dff6f21b2f07fecd937d4fe26c0df61513..ec968dfcd0153cdb001e8e282146dbdb67d23c65 100644
--- a/gcc/testsuite/gcc.dg/vect/pr87288-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr87288-1.c
@@ -16,6 +16,7 @@ run (int *restrict a, int *restrict b, int count)
 void __attribute__ ((noipa))
 check (int *restrict a, int count)
 {
+#pragma GCC novector
   for (int i = 0; i < count * N; ++i)
     if (a[i * 2] != i * 41 + count || a[i * 2 + 1] != count)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr87288-2.c b/gcc/testsuite/gcc.dg/vect/pr87288-2.c
index e9ff9a0be7c08a9755972717a63025f2825e95cf..03c7f88a6a48507bbbfbf2e177425d28605a3aa6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr87288-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr87288-2.c
@@ -22,6 +22,7 @@ RUN_COUNT (4)
 void __attribute__ ((noipa))
 check (int *restrict a, int count)
 {
+#pragma GCC novector
   for (int i = 0; i < count * N; ++i)
     if (a[i * 2] != i * 41 + count || a[i * 2 + 1] != count)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr87288-3.c b/gcc/testsuite/gcc.dg/vect/pr87288-3.c
index 23f574ccb53268b59b933ec59a5eadaa890007ff..0475990992e58451de8649b735fa16f0e32ed657 100644
--- a/gcc/testsuite/gcc.dg/vect/pr87288-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr87288-3.c
@@ -22,6 +22,7 @@ RUN_COUNT (4)
 void __attribute__ ((noipa))
 check (int *restrict a, int count)
 {
+#pragma GCC novector
   for (int i = 0; i < count * N + 1; ++i)
     if (a[i * 2] != i * 41 + count || a[i * 2 + 1] != count)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr88903-1.c b/gcc/testsuite/gcc.dg/vect/pr88903-1.c
index 77dbfd47c91be8cce0edde8b09b7b90d40268306..0f78ccc995d5dcd35d5d7ba0f35afdc8bb5a1b2b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr88903-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr88903-1.c
@@ -19,6 +19,7 @@ main()
   for (int i = 0; i < 1024; ++i)
     x[i] = i;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != i << ((i/2+1) & 31))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr88903-2.c b/gcc/testsuite/gcc.dg/vect/pr88903-2.c
index cd88a99c6045c6a3eb848f053386d22b9cbe46ce..8a1cf9c523632f392d95aa2d6ec8332fa50fec5b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr88903-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr88903-2.c
@@ -21,6 +21,7 @@ int main()
   for (int i = 0; i < 1024; ++i)
     x[i] = i, y[i] = i % 8;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != i << ((i & ~1) % 8))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr90018.c b/gcc/testsuite/gcc.dg/vect/pr90018.c
index 52640f5aa6f02d6deed3b2790482a2d2d01ddd5b..08ca326f7ebfab1a42813bc121f1e5a46394e983 100644
--- a/gcc/testsuite/gcc.dg/vect/pr90018.c
+++ b/gcc/testsuite/gcc.dg/vect/pr90018.c
@@ -41,6 +41,7 @@ int main(int argc, char **argv)
       a42[i*4+n*4+1] = tem4 + a42[i*4+n*4+1];
       __asm__ volatile ("": : : "memory");
     }
+#pragma GCC novector
   for (int i = 0; i < 4 * n * 3; ++i)
     if (a4[i] != a42[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr92420.c b/gcc/testsuite/gcc.dg/vect/pr92420.c
index e43539fbbd7202b3ae2e9f71bfd82a3fcdf8bde3..e56eb0e12fbec55b16785e244f3a24b889af784d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr92420.c
+++ b/gcc/testsuite/gcc.dg/vect/pr92420.c
@@ -41,6 +41,7 @@ main ()
     }
   foo (a, b + N, d, N);
   bar (a, c, e, N);
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     if (d[i].r != e[i].r || d[i].i != e[i].i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr94994.c b/gcc/testsuite/gcc.dg/vect/pr94994.c
index e98aeb090d8cbcfc9628052b553b7a7d226069d1..2f598eacd541eafaef02f9aee34fc769dac2a4c6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr94994.c
+++ b/gcc/testsuite/gcc.dg/vect/pr94994.c
@@ -41,6 +41,7 @@ main (void)
       for (unsigned int j = 0; j < INPUT_SIZE + MAX_STEP; ++j)
 	x[j] = j + 10;
       copy (x + i, x, INPUT_SIZE);
+#pragma GCC novector
       for (int j = 0; j < INPUT_SIZE + i; ++j)
 	{
 	  int expected;
diff --git a/gcc/testsuite/gcc.dg/vect/pr96783-1.c b/gcc/testsuite/gcc.dg/vect/pr96783-1.c
index 55d1364f056febd86c49272ede488bd37867dbe8..2de222d2ae6491054b6c7a6cf5891580abf5c6f7 100644
--- a/gcc/testsuite/gcc.dg/vect/pr96783-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr96783-1.c
@@ -31,6 +31,7 @@ int main ()
     a[i] = i;
   foo (a + 3 * 5, 6-1, 5);
   const long b[3 * 8] = { 0, 1, 2, 21, 22, 23, 18, 19, 20, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 };
+#pragma GCC novector
   for (int i = 0; i < 3 * 8; ++i)
     if (a[i] != b[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr96783-2.c b/gcc/testsuite/gcc.dg/vect/pr96783-2.c
index 33c37109e3a8de646edd8339b0c98300bed25b51..bcdcfac072cf564d965edd4be7fbd9b23302e759 100644
--- a/gcc/testsuite/gcc.dg/vect/pr96783-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr96783-2.c
@@ -20,6 +20,7 @@ int main()
   for (int i = 0; i < 1024; ++i)
     b[i] = i;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 256; ++i)
     if (a[3*i] != 1023 - 3*i - 2
 	|| a[3*i+1] != 1023 - 3*i - 1
diff --git a/gcc/testsuite/gcc.dg/vect/pr97081-2.c b/gcc/testsuite/gcc.dg/vect/pr97081-2.c
index 98ad3c3fe17e4556985cb6a0392de72a19911a97..436e897cd2e6a8bb41228cec14480bac88e98952 100644
--- a/gcc/testsuite/gcc.dg/vect/pr97081-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr97081-2.c
@@ -24,6 +24,7 @@ main ()
       c[i] = i;
     }
   foo (3);
+#pragma GCC novector
   for (int i = 0; i < 1024; i++)
     if (s[i] != (unsigned short) ((i << 3) | (i >> (__SIZEOF_SHORT__ * __CHAR_BIT__ - 3)))
         || c[i] != (unsigned char) ((((unsigned char) i) << 3) | (((unsigned char) i) >> (__CHAR_BIT__ - 3))))
diff --git a/gcc/testsuite/gcc.dg/vect/pr97558-2.c b/gcc/testsuite/gcc.dg/vect/pr97558-2.c
index 8f0808686fbad0b5b5ec11471fd38f53ebd81bde..5dff065f2e220b1ff31027c271c07c9670b98f9c 100644
--- a/gcc/testsuite/gcc.dg/vect/pr97558-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr97558-2.c
@@ -41,6 +41,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/pr97678.c b/gcc/testsuite/gcc.dg/vect/pr97678.c
index 7fb6c93515e41257f173f664d9304755a8dc0de2..1fa56326422e832e82bb6f1739f14ea1a1cb4955 100644
--- a/gcc/testsuite/gcc.dg/vect/pr97678.c
+++ b/gcc/testsuite/gcc.dg/vect/pr97678.c
@@ -19,6 +19,7 @@ main ()
       b[i * 2 + 1] = i * 8;
     }
 
+#pragma GCC novector
   for (i = 0; i < 158; ++i)
     if (b[i*2] != (unsigned short)(i*7)
         || b[i*2+1] != (unsigned short)(i*8))
diff --git a/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c b/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c
index 4373dce917f9d7916e128a639e81179fe1250ada..1154b40d4855b5a42187134e9d5f08a98a160744 100644
--- a/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c
+++ b/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c
@@ -22,6 +22,7 @@ int main (void)
   int i;
   check_vect ();
   foo ();
+#pragma GCC novector
   for (i = 0; i < 100; i++)
     if (f[i]!=1) 
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c b/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c
index e3466d0da1de6207b8583f42aad412b2c2000dcc..dbf65605e91c4219b6f5c6de220384ed09e999a7 100644
--- a/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c
+++ b/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c
@@ -50,6 +50,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 5)
@@ -63,6 +64,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = NINTS - 1; i < N - 1; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 6)
@@ -81,6 +83,7 @@ int main1 ()
   /* check results:  */
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
 	{
           if (tmp1[2].e.n[1][i][j] != 8)
@@ -100,6 +103,7 @@ int main1 ()
   /* check results:  */
   for (i = 0; i < N - NINTS; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N - NINTS; j++)
 	{
           if (tmp2[2].e.n[1][i][j] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-1.c b/gcc/testsuite/gcc.dg/vect/slp-1.c
index 26b71d654252bcd2e4591f11a78a4c0a3dad5d85..82e4f6469fb9484f84c5c832d0461576b63ba8fe 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-1.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != 8 
@@ -42,6 +43,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] != 8
@@ -66,6 +68,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*5] != 8
@@ -91,6 +94,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*9] != 8
diff --git a/gcc/testsuite/gcc.dg/vect/slp-10.c b/gcc/testsuite/gcc.dg/vect/slp-10.c
index da44f26601a9ba8ea52417ec5a160dc4bedfc315..2759b66f7772cb1af508622a3099bdfb524cba56 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-10.c
@@ -46,6 +46,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
@@ -68,6 +69,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
@@ -84,6 +86,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out2[i*2] !=  (float) (in[i*2] * 2 + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-11a.c b/gcc/testsuite/gcc.dg/vect/slp-11a.c
index e6632fa77be8092524a202d6a322354b45e1794d..fcb7cf6c7a2c5d42ec7ce8bc081db7394ba2bd96 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-11a.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-11a.c
@@ -44,6 +44,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-11b.c b/gcc/testsuite/gcc.dg/vect/slp-11b.c
index d0b972f720be1c965207ded917f979957c76ee67..df64c8db350dbb12295c61e84d32d5a5c20a1ebe 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-11b.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-11b.c
@@ -22,6 +22,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
diff --git a/gcc/testsuite/gcc.dg/vect/slp-11c.c b/gcc/testsuite/gcc.dg/vect/slp-11c.c
index bdcf434ce31ebc1df5f7cfecb5051ebc71af3aed..0f680cd4e60c41624992e4fb68d2c3664ff1722e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-11c.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-11c.c
@@ -21,6 +21,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i*2] !=  ((float) in[i*2] * 2 + 6)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-12a.c b/gcc/testsuite/gcc.dg/vect/slp-12a.c
index 08a8f55bab0b3d09e7eae14354c515203146b3d8..f0dda55acaea38e463044c7495af1f57ac121ce0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-12a.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-12a.c
@@ -47,6 +47,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-12b.c b/gcc/testsuite/gcc.dg/vect/slp-12b.c
index 48e78651a6dca24de91a1f36d0cd757e18f7c1b8..e2ea24d6c535c60ba903ce2411290e603414009a 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-12b.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-12b.c
@@ -23,6 +23,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out2[i*2] !=  (float) (in[i*2] * 2 + 11)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-12c.c b/gcc/testsuite/gcc.dg/vect/slp-12c.c
index 6650b8bd94ece71dd9ccb9adcc3d17be2f2bc07a..9c48dff3bf486a8cd1843876975dfba40a055a23 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-12c.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-12c.c
@@ -24,6 +24,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
diff --git a/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c
index a16656ace00a6a31d0c056056ec2e3e1f050c09f..ca70856c1dd54f106c9f1c3cde6b0ff5f7994e74 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + i
@@ -65,6 +66,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + i
@@ -100,6 +102,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-13.c b/gcc/testsuite/gcc.dg/vect/slp-13.c
index 8769d62cfd4d975a063ad953344855091a1cd129..b7f947e6dbe1fb7d9a8aa8b5f6ac1edfc89d33a2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-13.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-13.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + i
@@ -59,6 +60,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + i
@@ -94,6 +96,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-14.c b/gcc/testsuite/gcc.dg/vect/slp-14.c
index 6af70815dd43c13fc9abfcebd70c562268dea86f..ccf23c1e44b78ac62dc78eef0ff6c6bc26e99fc1 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-14.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-14.c
@@ -64,6 +64,7 @@ main1 (int n)
 }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-15.c b/gcc/testsuite/gcc.dg/vect/slp-15.c
index dbced88c98d1fc8d289e6ac32a84dc9f4072e49f..13a0f3e3014d84a16a68a807e6a2730cbe8e6840 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-15.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-15.c
@@ -64,6 +64,7 @@ main1 (int n)
 }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-16.c b/gcc/testsuite/gcc.dg/vect/slp-16.c
index a7da9932c54c28669875d46e3e3945962d5e2dee..d053a64276db5c306749969cca7f336ba6a19b0b 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-16.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-16.c
@@ -38,6 +38,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*2] !=  (in[i*2] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-17.c b/gcc/testsuite/gcc.dg/vect/slp-17.c
index 6fa11e4c53ad73735af9ee74f56ddff0b777b99b..c759a5f0145ac239eb2a12efa89c4865fdbf703e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-17.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-17.c
@@ -27,6 +27,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*2] != in[i*2] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-18.c b/gcc/testsuite/gcc.dg/vect/slp-18.c
index ed426a344985d1e205f7a94f72f86954a77b3d92..f31088cb76b4cdd80460c0d6a24568430e595ea0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-18.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-18.c
@@ -57,6 +57,7 @@ main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-19a.c b/gcc/testsuite/gcc.dg/vect/slp-19a.c
index 0f92de92cd396227cc668396cd567ca965e9784b..ca7a0a8e456b1b787ad82e910ea5e3c5e5048c80 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-19a.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-19a.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-19b.c b/gcc/testsuite/gcc.dg/vect/slp-19b.c
index 237b36dd227186c8f0cb78b703351fdae6fef27c..4d53ac698dbd164d20271c4fe9ccc2c20f3c4eaa 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-19b.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-19b.c
@@ -29,6 +29,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-19c.c b/gcc/testsuite/gcc.dg/vect/slp-19c.c
index 32566cb5e1320de2ce9c83867c05902a24036de4..188ab37a0b61ba33ff4c19115e5c54e0f7bac500 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-19c.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-19c.c
@@ -47,6 +47,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*12] !=  in[i*12]
@@ -79,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*6] !=  in[i*6]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-2.c b/gcc/testsuite/gcc.dg/vect/slp-2.c
index 8d374d724539a47930fc951888471a7b367cd845..d0de3577eb6a1b8219e8a79a1a684f6b1b7baf52 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-2.c
@@ -25,6 +25,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != a8 
@@ -55,6 +56,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*16] != a8
@@ -85,6 +87,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*3] != a8
@@ -110,6 +113,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*11] != a8
diff --git a/gcc/testsuite/gcc.dg/vect/slp-20.c b/gcc/testsuite/gcc.dg/vect/slp-20.c
index dc5eab669ea9eaf7db83606b4c426921a6a5da15..ea19095f9fa06db508cfedda68ca2c65769b35b0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-20.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-20.c
@@ -34,6 +34,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
@@ -77,6 +78,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-21.c b/gcc/testsuite/gcc.dg/vect/slp-21.c
index 4b83adb9807fc29fb9f2d618d15e8eb15290dd67..712a73b69d730fd27cb75d3ebb3624809317f841 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-21.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-21.c
@@ -45,6 +45,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       a0 = in[i*4];
@@ -101,6 +102,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       a0 = in[i*4];
@@ -158,6 +160,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       a0 = in[i*4];
diff --git a/gcc/testsuite/gcc.dg/vect/slp-22.c b/gcc/testsuite/gcc.dg/vect/slp-22.c
index e2a0002ffaf363fc12b76deaaee3067c9a0a186b..2c083dc4ea3b1d7d3c6b56508cc7465b76060aa1 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-22.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-22.c
@@ -39,6 +39,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
@@ -92,6 +93,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-23.c b/gcc/testsuite/gcc.dg/vect/slp-23.c
index d7c67fe2c6e9c6ecf94a2ddc8c1d7a4c234933c8..d32ee5ba73becb9e0b53bfc2af27a64571c56899 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-23.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-23.c
@@ -39,6 +39,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].c + arr[i].c
@@ -67,6 +68,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].c + arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c
index abd3a878f1ac36a7c8cde58743496f79b71f4476..5eaea9600acb2b8ffe674730bcf9514b51ae105f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c
@@ -42,6 +42,7 @@ main1 (unsigned char x, unsigned char max_result, unsigned char min_result, s *a
     pIn++;
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (ua1[2*i] != ub[2*i]
         || ua1[2*i+1] != ub[2*i+1]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-24.c b/gcc/testsuite/gcc.dg/vect/slp-24.c
index a45ce7de71fa6a8595b611dd47507df4e91e3b36..59178f2c0f28bdbf657ad68658d373e75d076f79 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-24.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-24.c
@@ -41,6 +41,7 @@ main1 (unsigned char x, unsigned char max_result, unsigned char min_result, s *a
     pIn++;
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (ua1[2*i] != ub[2*i]
         || ua1[2*i+1] != ub[2*i+1]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-25.c b/gcc/testsuite/gcc.dg/vect/slp-25.c
index 1c33927c4342e01f80765d0ea723e01cec5fe2e6..9e3b5bbc9469fd0dc8631332643c1eb496652218 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-25.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-25.c
@@ -24,6 +24,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N/2; i++)
     {
       if (ia[2*i] != 25
@@ -38,6 +39,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= n/2; i++)
     {
       if (sa[2*i] != 25
diff --git a/gcc/testsuite/gcc.dg/vect/slp-26.c b/gcc/testsuite/gcc.dg/vect/slp-26.c
index f8b49ff603c16127694e599137b1f48ea665c4db..d398a5acb0cdb337b442f071c96f3ce62fe84cff 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-26.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-26.c
@@ -24,6 +24,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] !=  in[i*4]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-28.c b/gcc/testsuite/gcc.dg/vect/slp-28.c
index 0bb5f0eb0e40307558dc3ab826d583ea004891cd..67b7be29b22bb646b4bea2e0448e919319b11c98 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-28.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-28.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (in[i] != i+5)
@@ -51,6 +52,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (in2[i] != (i % 4) + (i / 4) * 5)
@@ -69,6 +71,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (in3[i] != (i % 12) + (i / 12) * 5)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c
index 4cf0e7a0ece17204221c483bcac8fe9bdab3c85c..615a79f4a30f8002a989047c99eea13dd9f9e1a6 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c
@@ -32,6 +32,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -54,6 +55,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -84,6 +86,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
@@ -120,6 +123,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       if (out[i*9] !=  in[i*9]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-3.c b/gcc/testsuite/gcc.dg/vect/slp-3.c
index 760b3fa35a2a2018a103b344c329464ca8cb52fe..183c7e65c57ae7dfe3994757385d9968b1de45e5 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-3.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -48,6 +49,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -78,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
@@ -114,6 +117,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       if (out[i*9] !=  in[i*9]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-33.c b/gcc/testsuite/gcc.dg/vect/slp-33.c
index 2404a5f19b407ef47d4ed6e597da9381629530ff..c382093c2329b09d3ef9e78abadd1f7ffe22dfda 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-33.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-33.c
@@ -43,6 +43,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*7] !=  (in[i*7] + 5) * 3 - 2
@@ -64,6 +65,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*3] !=  (in[i*3] + 2) * 3
@@ -81,6 +83,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out2[i*3] !=  (float) (in[i*3] * 2 + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c
index 9e9c8207f7bbb0235e5864b529869b6db3768087..0baaff7dc6e6b8eeb958655f964f234512cc4500 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c
@@ -36,6 +36,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*3] != in[i*3] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-34.c b/gcc/testsuite/gcc.dg/vect/slp-34.c
index 1fd09069247f546a9614c47fca529da4bc465497..41832d7f5191bfe7f82159cde69c1787cfdc6d8c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-34.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-34.c
@@ -30,6 +30,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*3] != in[i*3] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-35.c b/gcc/testsuite/gcc.dg/vect/slp-35.c
index 76dd7456d89859108440eb0be2374215a16cfa57..5e9f6739e1f25d109319da1db349a4063f5aaa1b 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-35.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-35.c
@@ -32,6 +32,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].c + arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/slp-37.c b/gcc/testsuite/gcc.dg/vect/slp-37.c
index a765cd70a09c2eb69df6d85b2056f0d90fc4120f..caee2bb508f1824fa549568dd09911c8624222f4 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-37.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-37.c
@@ -28,6 +28,7 @@ foo1 (s1 *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
        if (arr[i].a != 6 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c
index 98ac3f1f2839c717d66c04ba4e0179d4497be33e..fcda45ff368511b350b25857f21b2eaeb721561a 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -59,6 +60,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -92,6 +94,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-4.c b/gcc/testsuite/gcc.dg/vect/slp-4.c
index e4f65bc37f8c5e45c1673d2218bf75a2a98b3daf..29e741df02ba0ef6874cde2a4410b79d1d7608ee 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-4.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -53,6 +54,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -86,6 +88,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-41.c b/gcc/testsuite/gcc.dg/vect/slp-41.c
index 2ad9fd2077231a0124c7fe2aaf37570a3a10f849..b96de4fbcb7f9a3c60b884a47bbfc52ebbe1dd44 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-41.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-41.c
@@ -48,6 +48,7 @@ int main()
        __asm__ volatile ("");
     }
   testi (ia, sa, 8, 32);
+#pragma GCC novector
   for (i = 0; i < 128; ++i)
     if (sa[i] != ia[(i / 4) * 8 + i % 4])
       abort ();
@@ -58,6 +59,7 @@ int main()
        __asm__ volatile ("");
     }
   testi2 (ia, sa, 8, 32);
+#pragma GCC novector
   for (i = 0; i < 128; ++i)
     if (ia[i] != sa[(i / 4) * 8 + i % 4])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-43.c b/gcc/testsuite/gcc.dg/vect/slp-43.c
index 3cee613bdbed4b7ca7a796d45776b833cff2d1a2..3d8ffb113276c3b244436b98048fe78112340e0c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-43.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-43.c
@@ -23,11 +23,13 @@ foo_ ## T ## _ ## N (T * __restrict__ in_, T * __restrict__ out_, int s) \
 }
 
 #define TEST(T,N) \
+ _Pragma("GCC novector") \
  do { \
   memset (out, 0, 4096); \
   foo_ ## T ## _ ## N ((T *)in, (T *)out, 1); \
   if (memcmp (in, out, sizeof (T) * MAX_VEC_ELEMENTS * N) != 0) \
     __builtin_abort (); \
+  _Pragma("GCC novector") \
   for (int i = sizeof (T) * MAX_VEC_ELEMENTS * N; i < 4096; ++i) \
     if (out[i] != 0) \
       __builtin_abort (); \
diff --git a/gcc/testsuite/gcc.dg/vect/slp-45.c b/gcc/testsuite/gcc.dg/vect/slp-45.c
index fadc4e5924308d46aaac81a0d5b42564285d58ff..f34033004520f106240fd4a7f6a6538cb22622ff 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-45.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-45.c
@@ -23,11 +23,13 @@ foo_ ## T ## _ ## N (T * __restrict__ in_, T * __restrict__ out_, int s) \
 }
 
 #define TEST(T,N) \
+ _Pragma("GCC novector") \
  do { \
   memset (out, 0, 4096); \
   foo_ ## T ## _ ## N ((T *)in, (T *)out, 1); \
   if (memcmp (in, out, sizeof (T) * MAX_VEC_ELEMENTS * N) != 0) \
     __builtin_abort (); \
+  _Pragma("GCC novector") \
   for (int i = sizeof (T) * MAX_VEC_ELEMENTS * N; i < 4096; ++i) \
     if (out[i] != 0) \
       __builtin_abort (); \
diff --git a/gcc/testsuite/gcc.dg/vect/slp-46.c b/gcc/testsuite/gcc.dg/vect/slp-46.c
index 18476a43d3f61c07aede8d90ca69817b0e0b5342..2d5534430b39f10c15ab4d0bdab47bf68af86376 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-46.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-46.c
@@ -54,6 +54,7 @@ main ()
     }
 
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[i/2])
       abort ();
@@ -65,6 +66,7 @@ main ()
     }
 
   bar ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[2*(i/2)])
       abort ();
@@ -76,6 +78,7 @@ main ()
     }
 
   baz ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[511 - i/2])
       abort ();
@@ -87,6 +90,7 @@ main ()
     }
 
   boo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[2*(511 - i/2)])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-47.c b/gcc/testsuite/gcc.dg/vect/slp-47.c
index 7b2ddf664dfefa97ac80f9f9eb7993e18980c411..7772bb71c8d013b8699bee644a3bb471ff41678f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-47.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-47.c
@@ -35,6 +35,7 @@ main ()
     }
 
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i])
       abort ();
@@ -46,6 +47,7 @@ main ()
     }
 
   bar ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i^1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-48.c b/gcc/testsuite/gcc.dg/vect/slp-48.c
index 0b327aede8e6bb53d01315553ed9f2c3c3dc3290..38f533233d657189851a8942e8fa8133a9d2eb91 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-48.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-48.c
@@ -35,6 +35,7 @@ main ()
     }
 
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i^1])
       abort ();
@@ -46,6 +47,7 @@ main ()
     }
 
   bar ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-49.c b/gcc/testsuite/gcc.dg/vect/slp-49.c
index 4141a09ed97a9ceadf89d394d18c0b0226eb55d7..b2433c920793c34fb316cba925d7659db356af28 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-49.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-49.c
@@ -24,6 +24,7 @@ main()
 
   foo (17);
 
+#pragma GCC novector
   for (int i = 0; i < 512; ++i)
     {
       if (a[2*i] != 5 + i
diff --git a/gcc/testsuite/gcc.dg/vect/slp-5.c b/gcc/testsuite/gcc.dg/vect/slp-5.c
index 989e05ac8be6bdd1fb36c4bdc079866ce101e017..6d51f6a73234ac41eb2cc4d2fcedc8928d9932b2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-5.c
@@ -30,6 +30,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -55,6 +56,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -86,6 +88,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-6.c b/gcc/testsuite/gcc.dg/vect/slp-6.c
index ec85eb77236e4b8bf5e0c6a8d07abf44a28e2a5c..ea9f7889734dca9bfa3b28747c382e94bb2c1c84 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-6.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-6.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + 5
@@ -50,6 +51,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4] + 2
@@ -80,6 +82,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out2[i*16] !=  in2[i*16] * 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-7.c b/gcc/testsuite/gcc.dg/vect/slp-7.c
index e836a1ae9b5b60685e8ec2d15ca5005ff35a895e..2845a99dedf5c99032b099a136acd96f37fc5295 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-7.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-7.c
@@ -30,6 +30,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + 5
@@ -55,6 +56,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4] + 1
@@ -86,6 +88,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out2[i*16] !=  in2[i*16] * 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-8.c b/gcc/testsuite/gcc.dg/vect/slp-8.c
index e9ea0ef0d6b32d23977d728c943bac05dc982b2d..8647249f546267185bb5c232f088a4c0984f2039 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-8.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       if (fa[4*i] != (float) ib[4*i]      
diff --git a/gcc/testsuite/gcc.dg/vect/slp-9.c b/gcc/testsuite/gcc.dg/vect/slp-9.c
index d5212dca3ddcbffabdc9fbed8f2380ffceee626d..4fb6953cced876c2a1e5761b0f94968c5774da9e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-9.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-9.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-1.c b/gcc/testsuite/gcc.dg/vect/slp-cond-1.c
index 482fc080a0fc132409509b084fcd67ef95f2aa17..450c7141c96b07b9f798c62950d3de30eeab9a28 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-1.c
@@ -79,11 +79,13 @@ main ()
       e[i] = 2 * i;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
 
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       switch (i % 9)
@@ -115,6 +117,7 @@ main ()
   f3 ();
 
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? e[i] : d[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c
index 57cc67ee121108bcc5ccaaee0dca5085264c8818..cb7eb94b3a3ba207d513e3e701cd1c9908000a01 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c
@@ -82,11 +82,13 @@ main ()
     }
 
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
 
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       switch (i % 9)
@@ -118,6 +120,7 @@ main ()
   f3 ();
 
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (f[i] != ((i % 3) == 0 ? e[i] : d[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-2.c b/gcc/testsuite/gcc.dg/vect/slp-cond-2.c
index 7350695ece0f53e36de861c4e7724ebf36ff6b76..1dcee46cd9540690521df07c9cacb608e37b62b7 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-2.c
@@ -82,11 +82,13 @@ main ()
     }
 
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
 
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       switch (i % 9)
@@ -118,6 +120,7 @@ main ()
   f3 ();
 
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (f[i] != ((i % 3) == 0 ? e[i] : d[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-3.c b/gcc/testsuite/gcc.dg/vect/slp-cond-3.c
index d19ec13a21ac8660cc326dfaa4a36becab219d82..64904b001e6a39623eff9a1ddc530afbc5e64687 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-3.c
@@ -72,6 +72,7 @@ int main ()
     }
 
   bar (a, b, c, d, e, 2);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != ((i % 3) == 0 ? 10 : 2 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-4.c b/gcc/testsuite/gcc.dg/vect/slp-cond-4.c
index f82b8416d8467a8127fbb498040c5559e33d6608..0e1bd3b40994016bb6232bd6a1e129602c03167b 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-4.c
@@ -75,6 +75,7 @@ int main ()
     }
 
   bar (a, b, c, d, e, 2);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != ((i % 3) == 0 ? 5 : i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-5.c b/gcc/testsuite/gcc.dg/vect/slp-cond-5.c
index 5ade7d1fbad9eee7861d1b0d12ac98e42d453422..f0a703f0030b4c01d4119c812086de2a8e78ff4f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-5.c
@@ -70,6 +70,7 @@ int main ()
     }
 
   bar (a, b, c, d, e, 2);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != ((i % 3) == 0 || i <= 5 ? 10 : 2 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c
index 1850f063eb4fc74c26a9b1a1016f9d70a0c28441..605f6ab8ba638175d557145c82f2b78c30eb5835 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sout[i*4] != 8 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c
index 62580c070c8e19468812a9c81edc1c5847327ebb..06d9029e9202b15dc8de6d054779f9d53fbea60d 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i].a !=  (unsigned char) in[i*2] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c
index a3d0670cea98379af381fd7282f28e9724096a93..2792b932734a7a8ad4958454de56956081753d7c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a !=  (int) in[i*3] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c
index 86a3fafa16f41dc2c63f4704b85268330ad5568d..5c75dc12b695785405b7d56891e7e71ac24e2539 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a !=  (int) in[i*3] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c
index d4c929de2ecbc73c75c08ae498b8b400f67bf636..13119822200fef23a96e920bde8ca968f0a09f84 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c
@@ -32,6 +32,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sout[i*4] != 8 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
index 28a645c79472578d3775e9e2eb28cb7ee69efad0..c15baa00dd00fb8fa0ae79470d846b31ee4dd578 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
@@ -41,6 +41,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*16] != a8
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
index 39bd7c41f8cca2a517486bc9a9898031911115c6..c79906a8d7b30834dfcda5c70d6bf472849a39cb 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
@@ -45,6 +45,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*8] !=  in[i*8] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c
index faf17d6f0cde5eacb7756996a224e4004b305f7f..b221f705070af661716d1d6fbf70f16ef3652ca9 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (int) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c
index fb4f720aa4935da6862951a3c618799bb37f535f..3237773e1b13223164473ad88b3c806c8df243b2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (short) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c
index f006d081346aa4f067d1e02018f2c46d4fcf1680..e62d16b6de34ce1919545a5815600263931e11ac 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (unsigned char) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c
index 286e2fc42af815dcc724f1a66d8d01a96c915beb..08ab2dc3d10f6ab208841e53609dc7c672a69c5e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (int) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c
index d88ebe4d778c4487c00ef055059d2b825542679a..0b67ecc8e0730813966cfd6922e8d3f9db740408 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i*2] !=  (int) in[i*2] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c
index 872b20cac93c119854b8250eb85dc43767743da4..49261483166cbd6dcf99800a5c7062f7f091c103 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i*2] !=  (unsigned char) in[i*2] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-1.c b/gcc/testsuite/gcc.dg/vect/slp-perm-1.c
index ca7803ec1a9a49b4800cf396bcdc05f263f344ee..dbb107f95fec3338b135ff965e8be2b514cc1fe6 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-1.c
@@ -69,6 +69,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (output[i] != check_results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-10.c b/gcc/testsuite/gcc.dg/vect/slp-perm-10.c
index 678152ba4168d32f84a1d1b01ba6c43b210ec8b9..2cce30c2444323ba6166ceee6a768fbd9d881a47 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-10.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-10.c
@@ -35,6 +35,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < 32; ++i)
     if (b[i*8+0] != i*8+0
 	|| b[i*8+1] != i*8+0
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-11.c b/gcc/testsuite/gcc.dg/vect/slp-perm-11.c
index 0318d468ef102cb263d090a33429849221dc3c0d..0d25d9d93bbf14b64fb6f2c116fe70bf17b5f432 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-11.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-11.c
@@ -26,6 +26,7 @@ int main ()
       __asm__ volatile ("");
     }
   foo (4);
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != (4*(i/2) + (i & 1) ^ 1))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-12.c b/gcc/testsuite/gcc.dg/vect/slp-perm-12.c
index 113223ab0f96507b74cfff8fc6b112070cabb5ee..642b1e8b399e7ffc77e54e02067eec053ea54c7e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-12.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-12.c
@@ -42,6 +42,7 @@ int main()
 
   test (a, b);
 
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != 253)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-2.c b/gcc/testsuite/gcc.dg/vect/slp-perm-2.c
index 82776f3f06af8a7b82e0d190a922b213d17aee88..41fd159adce8395dd805f089e94aacfe7eeba09f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-2.c
@@ -43,6 +43,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (output[i] != check_results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-3.c b/gcc/testsuite/gcc.dg/vect/slp-perm-3.c
index 1807275d1bfcc895ed68bd5e536b5837adf336e6..9ea35ba5afca2db0033150e35fca6b961b389c03 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-3.c
@@ -56,6 +56,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (output[i] != check_results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-4.c b/gcc/testsuite/gcc.dg/vect/slp-perm-4.c
index 8457e4f45d62d6d704145b1c4f62af14c1877762..107968f1f7ce65c53bf0280e700f659f625d8c1e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-4.c
@@ -103,6 +103,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (output[i] != check_results[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-5.c b/gcc/testsuite/gcc.dg/vect/slp-perm-5.c
index b86a3dc8756e0d30551a40ed1febb142813190a4..7128cf471555d5f589b11e1e58a65b0211e7d6fd 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-5.c
@@ -96,6 +96,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
      if (output[i] != check_results[i] || output2[i] != check_results2[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-6.c b/gcc/testsuite/gcc.dg/vect/slp-perm-6.c
index bec1544650ac9e897ab1c06f120fb6416091dec6..5cc6261d69a15d2a3f6b691c13544c27dc8f9941 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-6.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-6.c
@@ -95,6 +95,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
      if (output[i] != check_results[i] || output2[i] != check_results2[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-7.c b/gcc/testsuite/gcc.dg/vect/slp-perm-7.c
index 346411fd5042add21fdc6413922506bcb92f4594..df13c37bc75d43173d4e1b9d0daf533ba5829c7f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-7.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-7.c
@@ -88,6 +88,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
      if (output[i] != check_results[i] || output2[i] != check_results2[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-8.c b/gcc/testsuite/gcc.dg/vect/slp-perm-8.c
index 44df21aae2a2f860d49c36568122733e693d4310..029be5485b62ffef915f3b6b28306501852733d7 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-8.c
@@ -52,6 +52,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N - (N % 3); i++)
      if (output[i] != check_results[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-9.c b/gcc/testsuite/gcc.dg/vect/slp-perm-9.c
index 154c00af598d05bac9ebdad3bfb4eeb28594a1fc..c92fc2f38619a5c086f7029db444a6cb208749f0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-9.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-9.c
@@ -50,6 +50,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N - (N % 3); i++)
      if (output[i] != check_results[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c
index e3bfee33348c5164f657a1494f480db26a7aeffa..72811eb852e5ed51ed5f5d042fac4e9b487911c2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c
@@ -40,6 +40,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF || out2[i] != in[i] + COEF2)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c
index abb10fde45bc807269cd5bb58f463a77f75118d8..f8ec1fa730d21cde5f2bbb0791b04ddf0e0b358c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c
@@ -29,6 +29,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c
index 0756119afb455a0b834fd835553318eb29887f4d..76507c4f46157a8ded48e7c600ee53424e01382f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c
@@ -29,6 +29,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-100.c b/gcc/testsuite/gcc.dg/vect/vect-100.c
index 9a4d4de06718228fcc0bd011d2e23d4c564c29ff..0d8703281f28c995a7c08c4366a4fccf22cf16e2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-100.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-100.c
@@ -30,6 +30,7 @@ int main1 () {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != a[i] || p->b[i] != b[i])
@@ -55,6 +56,7 @@ int main2 () {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != c[i] || p->b[i] != d[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-103.c b/gcc/testsuite/gcc.dg/vect/vect-103.c
index d03562f7cddd0890e3e159fbdc7c5d629b54d58c..59d8edc38cacda52e53a5d059171b6eefee9f920 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-103.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-103.c
@@ -43,6 +43,7 @@ int main1 (int x, int y) {
   /* check results: */
   if (p->a[0] != a[N - 1])
     abort ();
+#pragma GCC novector
   for (i = 1; i < N; i++)
     if (p->a[i] != b[i - 1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-104.c b/gcc/testsuite/gcc.dg/vect/vect-104.c
index a77c98735ebad6876c97ee22467f5287b4575a01..e0e5b5a53bdae1e148c61db716f0290bf3e829f1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-104.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-104.c
@@ -43,6 +43,7 @@ int main1 (int x) {
   }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
    {
     for (j = 0; j < N; j++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c
index 433565bfd4d3cea87abe23de29edbe8823054515..ec7e676439677ae587a67eae15aab34fd5ac5b03 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c
@@ -75,6 +75,7 @@ int main1 (int x) {
   /* check results: */
   for (i = 0; i < N; i++)
    {
+#pragma GCC novector
     for (j = 0; j < N; j++)
      {
        if (p->a[i][j] != c[i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-105.c b/gcc/testsuite/gcc.dg/vect/vect-105.c
index 17b6e89d8f69053b5825c859f3ab5c68c49b3a5d..f0823fbe397358cb34bf4654fccce21a053ba2a7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-105.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-105.c
@@ -45,6 +45,7 @@ int main1 (int x) {
   /* check results: */
   for (i = 0; i < N; i++)
    {
+#pragma GCC novector
     for (j = 0; j < N; j++)
      {
        if (p->a[i][j] != c[i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-106.c b/gcc/testsuite/gcc.dg/vect/vect-106.c
index 0171cfcdfa6e60e6cb8158d098d435c0e472abf8..4b3451cc783e9f83f7a6cb8c54cf50f4c43dddc0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-106.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-106.c
@@ -28,6 +28,7 @@ int main1 () {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (*q != a[i] || *p != b[i])
@@ -50,6 +51,7 @@ int main1 () {
   q = q1;
   p = p1;
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (*q != b[i] || *p != a[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-107.c b/gcc/testsuite/gcc.dg/vect/vect-107.c
index aaab9c00345bf7f0b25fbcda25a141988bda9eac..60c83a99a19f4797bc7a5a175f33aecbc598f8e2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-107.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-107.c
@@ -24,6 +24,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (a[i] != b[2*i+1] * c[2*i+1] - b[2*i] * c[2*i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-108.c b/gcc/testsuite/gcc.dg/vect/vect-108.c
index 4af6326e9c35963ec7109d66dd0d321cf1055597..2cbb6701d5c6df749482d5e4351b9cb4a808b94f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-108.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-108.c
@@ -21,6 +21,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] * ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index fe7ea6c420fb1512286b0b468cbe9ffed5daae71..31b9aa2be690fb4f2d9cf8062acbf1b42971098d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -34,6 +34,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i+2] != sb[i] + sc[i] || ia[i+1] != ib[i] + ic[i])
@@ -56,6 +57,7 @@ int main2 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i] != sb[i] + sc[i] || ia[i+1] != ib[i] + ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-11.c b/gcc/testsuite/gcc.dg/vect/vect-11.c
index 044fc5edc2dddb0bddaca545b4e97de1499be8bd..1171757e323bc9a64c5e6762e98c101120fc1449 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-11.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] * ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-110.c b/gcc/testsuite/gcc.dg/vect/vect-110.c
index 47c6456107ddd4f326e8c9e783b01c59e23087e6..69ee547cfd17965f334d0d1af6bc28f99ae3a671 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-110.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-110.c
@@ -20,6 +20,7 @@ main1 (void)
   }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N - 1; i++){
     if (a[i] != b[i] + c[i])
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-113.c b/gcc/testsuite/gcc.dg/vect/vect-113.c
index a9d45ce9fcc21195030dfcdf773ffc3a41e48a37..8e9cc545ce6b3204b5c9f4a220e12d0068aa4f3e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-113.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-113.c
@@ -17,6 +17,7 @@ main1 (void)
     a[i] = i;
   }
 
+#pragma GCC novector
   for ( i = 0; i < N; i++) 
   {
     if (a[i] != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-114.c b/gcc/testsuite/gcc.dg/vect/vect-114.c
index 557b44110a095ae725b58cf1ca2494a103b96dd7..1617d3009eb3fdf0bb16980feb0f54d2862b8f3c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-114.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-114.c
@@ -19,6 +19,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[N-1-i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-115.c b/gcc/testsuite/gcc.dg/vect/vect-115.c
index 0502d15ed3ebd37d8dda044dbe13d68525f3e30a..82b8e2eea1f3374bdbe5460ca58641f217d1ab33 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-115.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-115.c
@@ -41,6 +41,7 @@ int main1 ()
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.strc_t.strc_s.b[i] != a[i])
@@ -54,6 +55,7 @@ int main1 ()
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.ptr_t->strc_s.c[i] != a[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-116.c b/gcc/testsuite/gcc.dg/vect/vect-116.c
index d4aa069772ed76f895f99c91609852bdcc43d324..ac603db44ee2601665c1de4bb60aee95f545c8ef 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-116.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-116.c
@@ -18,6 +18,7 @@ void foo()
   for (i = 0; i < 256; ++i)
     C[i] = A[i] * B[i];
 
+#pragma GCC novector
   for (i = 0; i < 256; ++i)
     if (C[i] != (unsigned char)(i * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-117.c b/gcc/testsuite/gcc.dg/vect/vect-117.c
index 22f8e01187272e2cfe445c66ca590f77923d4e95..f2c1c5857059a9bcaafad4ceadff02e192209840 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-117.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-117.c
@@ -47,6 +47,7 @@ int main (void)
 
   for (i = 0; i < N; i++)
    {
+#pragma GCC novector
     for (j = 0; j < N; j++)
      {
        if (a[i][j] != c[i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-11a.c b/gcc/testsuite/gcc.dg/vect/vect-11a.c
index 4f1e15e74293187d495c8c11cda333a1af1139a6..9d93a2e8951f61b34079f6d867abfaf0fccbb8fc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-11a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-11a.c
@@ -21,6 +21,7 @@ void u ()
   
   for (i=0; i<8; i++)
     C[i] = A[i] * B[i];
+#pragma GCC novector
   for (i=0; i<8; i++)
     if (C[i] != Answer[i])
       abort ();
@@ -41,6 +42,7 @@ void s()
   
   for (i=0; i<8; i++)
     F[i] = D[i] * E[i];
+#pragma GCC novector
   for (i=0; i<8; i++)
     if (F[i] != Dnswer[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-12.c b/gcc/testsuite/gcc.dg/vect/vect-12.c
index b095170f008c719326a6cfd5820a7926ae8c722e..096ff10f53c9a4d7e0d3a8bbe4d8ef513a82c46c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-12.c
@@ -24,6 +24,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + ic[i] || sa[i] != sb[i] + sc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-122.c b/gcc/testsuite/gcc.dg/vect/vect-122.c
index 04dae679647ff9831224b6dc200a25b2b1bb28d7..6e7a4c1578f4c4cddf43a81e3e4bc6ab87efa3ca 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-122.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-122.c
@@ -50,6 +50,7 @@ main ()
   f2 ();
   f3 ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i || b[i] != i || l[i] != i * (i + 7LL) || m[i] != i * 7LL)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-124.c b/gcc/testsuite/gcc.dg/vect/vect-124.c
index c720648aaddbe72d0073fcf7548408ce6bda3cdd..6b6730a22bdb62e0f8770b4a288aa1adeff756c2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-124.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-124.c
@@ -21,6 +21,7 @@ main ()
   
   check_vect ();
   foo (6);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 3 + 6)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-13.c b/gcc/testsuite/gcc.dg/vect/vect-13.c
index 5d902924ec20e2ea0ee29418a1b52d4e2ede728e..f1e99a3ec02487cd331e171c6e42496924e931a2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-13.c
@@ -22,6 +22,7 @@ int main1()
     }
 
   /* Check results  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-14.c b/gcc/testsuite/gcc.dg/vect/vect-14.c
index 1640220a134ed8962e31b9d201c0e4a8630d631f..5898d4cd8924a5a6036f38efa79bc4146a78320d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-14.c
@@ -17,6 +17,7 @@ int main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c
index 5313eae598b4787e5294eefe87bf59f5a3581657..bc2689fce50cebf55720bfc9f60bd7c0dd9659dc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c
@@ -25,6 +25,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[N-1-i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-15.c b/gcc/testsuite/gcc.dg/vect/vect-15.c
index 178bc4404c420c3a7d74ca381f3503aaefc195db..4a73d0681f0db2b12e68ce805f987aabf8f1cf6f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-15.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[N-1-i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-17.c b/gcc/testsuite/gcc.dg/vect/vect-17.c
index 471a82336cf466856186eb9ad3f7a95e4087cedc..797444a4c4a312d41d9b507c5d2d024e5b5b87bb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-17.c
@@ -81,6 +81,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] & ic[i]))
@@ -95,6 +96,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != (cb[i] & cc[i]))
@@ -109,6 +111,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] & sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-18.c b/gcc/testsuite/gcc.dg/vect/vect-18.c
index 28b2941e581fa6abecbdafaa812cf4ff07ea9e5f..8c0fab43e28da6193f1e948e0c59985b2bff1119 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-18.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] | ic[i]))
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != (cb[i] | cc[i]))
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] | sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-19.c b/gcc/testsuite/gcc.dg/vect/vect-19.c
index 27c6dc835a60c42e8360521d343b13f461a0b009..fe2a88c7fd855a516c34ff3fa3b5da5364fb0a81 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-19.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] ^ ic[i]))
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != (cb[i] ^ cc[i]))
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] ^ sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c
index 162cb54b58d17efc205778adc14e846be39afab1..70595db744e349bdc6d786c7e64b762406689c64 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-2.c b/gcc/testsuite/gcc.dg/vect/vect-2.c
index d975668cbd023b0324c7526e162bc1aeb21dfcd7..80415a5b54b75f9e9b03f0123a53fd70ee07e7cd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-2.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-20.c b/gcc/testsuite/gcc.dg/vect/vect-20.c
index 8d759f3c6a66e6a6e318510ba59196ab91b757ac..0491bb2fc73bcef98cb26e82fb74778c8fea2dc0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-20.c
@@ -52,6 +52,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != ~ib[i])
@@ -66,6 +67,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != ~cb[i])
@@ -80,6 +82,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != ~sb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-21.c b/gcc/testsuite/gcc.dg/vect/vect-21.c
index ab77df6ef88890907f57a89870e645bb51d51c5a..f98ae8b22ee3e8bbb2c8e4abbc6022c11150fdb1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-21.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-21.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != !ib[i])
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != !cb[i])
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != !sb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-22.c b/gcc/testsuite/gcc.dg/vect/vect-22.c
index 78dc1ce91def46c31e913806aada5907d02fd4e0..3ab5070d94e85e8d332f55fe8511bbb82df781a6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-22.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-22.c
@@ -63,6 +63,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != -ib[i])
@@ -77,6 +78,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != -cb[i])
@@ -91,6 +93,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != -sb[i])
@@ -105,6 +108,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (fa[i] != -fb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-23.c b/gcc/testsuite/gcc.dg/vect/vect-23.c
index 69e0848c8eca10661d85a2f0b17b9a3d99319135..1a1c0b415a9247a3ed2555ca094d0a59e698384b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-23.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-23.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != ib[i] && ic[i])
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != cb[i] && cc[i])
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != sb[i] && sc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-24.c b/gcc/testsuite/gcc.dg/vect/vect-24.c
index fa4c0620d29cd44b82fc75f0dc3bab8a862058d9..2da477077111e04d86801c85282822319cd8cfb8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-24.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-24.c
@@ -81,6 +81,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] || ic[i]))
@@ -95,6 +96,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != (cb[i] || cc[i]))
@@ -109,6 +111,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] || sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-25.c b/gcc/testsuite/gcc.dg/vect/vect-25.c
index 904eea8a17b7572ffa335dcf60d27df648f01f18..d665c3e53cde7e5be416a88ace81f68343c1f115 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-25.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-25.c
@@ -19,6 +19,7 @@ int main1 (int n, int *p)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != n)
@@ -32,6 +33,7 @@ int main1 (int n, int *p)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ib[i] != k)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-26.c b/gcc/testsuite/gcc.dg/vect/vect-26.c
index 8a141f38400308c35a99aa77b0d181a4dce0643c..2ea9aa93dc46dbf11c91d468cdb91a1c0936b323 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-26.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-26.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-27.c b/gcc/testsuite/gcc.dg/vect/vect-27.c
index ac86b21aceb7b238665e86bbbd8a46e2aaa4d162..d459a84cf85d285e56e4abb5b56b2c6157db4b6a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-27.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-27.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i-1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-28.c b/gcc/testsuite/gcc.dg/vect/vect-28.c
index e213df1a46548d7d2962335c5600c252d9d5d5f3..531a7babb214ed2e6694f845c4b1d6f66f1c5d31 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-28.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-28.c
@@ -21,6 +21,7 @@ int main1 (int off)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i+off] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-29.c b/gcc/testsuite/gcc.dg/vect/vect-29.c
index bbd446dfe63f1477f91e7d548513d99be4c11d7d..42fb0467f1e31b0e89ef9323b60e3360c970f222 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-29.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-29.c
@@ -30,6 +30,7 @@ int main1 (int off)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-3.c b/gcc/testsuite/gcc.dg/vect/vect-3.c
index 6fc6557cf9f13e9dcfb9e4198b4846bca44542ba..2c9b5066dd47f8b654e005fb6fac8a5a28f48111 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-3.c
@@ -29,6 +29,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       float fres = b[i] + c[i] + d[i];
diff --git a/gcc/testsuite/gcc.dg/vect/vect-30.c b/gcc/testsuite/gcc.dg/vect/vect-30.c
index 71f7a2d169f44990a59f57dcecd83e0a2824f81d..3585ac8cfefa1bd2c89611857c11de23d846f3f6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-30.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-30.c
@@ -21,6 +21,7 @@ int main1 (int n)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (a[i] != b[i])
@@ -43,6 +44,7 @@ int main2 (unsigned int n)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < nn; i++)
     {
       if (c[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c
index 5621eb4d4ba17aaa6321807ee2d3610e38f8cceb..24bd0c7737df02a6b5dd5de9e745be070b0d8468 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c
@@ -31,6 +31,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -44,6 +45,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -57,6 +59,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -70,6 +73,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-31.c b/gcc/testsuite/gcc.dg/vect/vect-31.c
index 3f7d00c1748058ef662710eda30d89f0a0560f2f..8e1274bae53d95cbe0a4e959fe6a6002dede7590 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-31.c
@@ -31,6 +31,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -44,6 +45,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -57,6 +59,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -70,6 +73,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c
index 3e1403bbe96948188e7544d05f183a271828640f..5a4053ee8212ecb0f3824f2d0b2e6e03cb8e09ed 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-32.c b/gcc/testsuite/gcc.dg/vect/vect-32.c
index 2684cf2e0d390406e4c6c2ac30ac178ecfe70d5c..b04cbeb7c8297d589608b1e7468d536a5f265337 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-32.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c
index c1aa399a240e8c7f50ae10610e2c40d41ea8d555..c3bfaaeb055183ee7a059a050d2fc8fe139bbbae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-33.c b/gcc/testsuite/gcc.dg/vect/vect-33.c
index e215052ff777a911358e1291630df9cabd27e343..8ffd888d482bc91e10b225317b399c0926ba437a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-33.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c
index 0aa6d507a82f086056113157bc4b7ce0d5a87691..c3d44b4d15fef5b719cf618293bbc2a541582f4a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-34.c b/gcc/testsuite/gcc.dg/vect/vect-34.c
index 9cc590253c78317843930fff480b64aaa68de2e2..e3beba56623e9312c1bcfcc81b96d19adb36d83f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-34.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-34.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c
index 28a99c910fd507414a4a732a6bcc93c4ce142ba6..a88d111b21a0ce2670311103678fb91bf1aff80f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.a[i] != i + 1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-35.c b/gcc/testsuite/gcc.dg/vect/vect-35.c
index a7ec0f16d4cf0225c2f62c2f0aabf142704b2af8..4267c0bebaef82f5a58601daefd7330fff21c5b1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-35.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-35.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.a[i] != i + 1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c
index d40fcb6d9925de2730acfd37dba2724904159ebb..9aa3bd7c2f40991ef8a3682058d8aea1bab9ba05 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c
@@ -27,6 +27,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != s.cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-36.c b/gcc/testsuite/gcc.dg/vect/vect-36.c
index 64bc7fe18095178bc4bc0db5ef93e4c6706fa7d2..59bef84ad2e134c2a47746fb0daf96f0aaa92a34 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-36.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-36.c
@@ -27,6 +27,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != s.cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-38.c b/gcc/testsuite/gcc.dg/vect/vect-38.c
index 01d984c61b8245997b4db358dd579fc2042df9ff..81d9f38515afebd9e7e8c85a08660e4ff09aa571 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-38.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-38.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-4.c b/gcc/testsuite/gcc.dg/vect/vect-4.c
index b0cc45be7de6c24af16f0abedf34bc98370ae3e7..393c88df502ecd9261ac45a8366de969bfee84ae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-4.c
@@ -21,6 +21,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[i] * c[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-40.c b/gcc/testsuite/gcc.dg/vect/vect-40.c
index c74703268f913194119e89982092ec4ce7fa0fde..d524b4ebd433b434f55ca1681ef8ade732dfa1bc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-40.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-40.c
@@ -12,6 +12,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-42.c b/gcc/testsuite/gcc.dg/vect/vect-42.c
index 086cbf20c0a2cf7c38ede4e9db30042ac3237972..c1d16f659f130aeabbce4fcc1c1ab9d2cb46e12d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-42.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-42.c
@@ -14,6 +14,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-44.c b/gcc/testsuite/gcc.dg/vect/vect-44.c
index f7f1fd28665f23560cd7a2f397a0c773290c923f..b6895bd1d8287a246c2581ba24132f344dabb27e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-44.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-44.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-46.c b/gcc/testsuite/gcc.dg/vect/vect-46.c
index 185ac1424f94956fbcd5b26d0f4e6d36fd5f708b..7ca8b56ea9ffc50ae1cc99dc74662aea60d63023 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-46.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-46.c
@@ -12,6 +12,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-48.c b/gcc/testsuite/gcc.dg/vect/vect-48.c
index b29fe47635a349c0a845c43655c1a44d569d765e..10d8e09cac1daafeb0d5aa6e12eb7f3ecf6d33fc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-48.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-48.c
@@ -30,6 +30,7 @@ main1 (float *pb, float *pc)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-5.c b/gcc/testsuite/gcc.dg/vect/vect-5.c
index 17f3b2fac9a72f11b512659046dd8710d2e2f9a2..a999989215aa7693a1520c261d690c66f6f9ba13 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-5.c
@@ -25,6 +25,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != c[i])
@@ -38,6 +39,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != d[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-50.c b/gcc/testsuite/gcc.dg/vect/vect-50.c
index f43676896af4b9de482521b4aa915a47596ff4a9..76304cd10ce00881de8a2a6dc37fddf100e534c5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-50.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-50.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-52.c b/gcc/testsuite/gcc.dg/vect/vect-52.c
index c20a4be2edee6c958ae150b7de81121d01b2ab8a..2ad7149fc612e5df4adc390dffc6a0e72717308f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-52.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-52.c
@@ -30,6 +30,7 @@ main1 (int n, float *pb, float *pc)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-54.c b/gcc/testsuite/gcc.dg/vect/vect-54.c
index 2b236e48e196106b7892d3f28b4bd901a700ff9c..7ae59c3e4d391200bcb46a1b3229c30ed26b6083 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-54.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-54.c
@@ -14,6 +14,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-56.c b/gcc/testsuite/gcc.dg/vect/vect-56.c
index c914126ece5f5929d316c5c107e7633efa4da55c..a8703d1e00969afdbb58782068e51e571b612b1d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-56.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-56.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
@@ -50,6 +51,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-58.c b/gcc/testsuite/gcc.dg/vect/vect-58.c
index da4f9740e3358f67e9a05f82c87cf78bf3620e56..43a596f6e9522531c2c4d2138f80eae73da43038 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-58.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-58.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c
index c5de86b167a07ddf9043ae1ba77466ffd16765e6..a38373888907a7ed8f5ac610e030cd919315727d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c
@@ -39,6 +39,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       if (a[i] != results1[i] || e[i] != results2[i])
@@ -52,6 +53,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-6.c b/gcc/testsuite/gcc.dg/vect/vect-6.c
index c3e6336bb43c6ab30eb2c55049e0f1a9bd5788b6..eb006ad0735c70bd6a416d7575501a49febafd91 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-6.c
@@ -24,6 +24,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       if (a[i] != results1[i] || e[i] != results2[i])
@@ -37,6 +38,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-60.c b/gcc/testsuite/gcc.dg/vect/vect-60.c
index 121c503c63afaf7cc5faa96bb537f4a184c82b00..2de6f0031aa6faf854a61bf60acf4e5a05a7d3d0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-60.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-60.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
@@ -50,6 +51,7 @@ main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-62.c b/gcc/testsuite/gcc.dg/vect/vect-62.c
index abd3d700668b019a075c52edfaff16061200305b..ea6ae91f56b9aea165a51c5fe6489729d5ba4e62 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-62.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-62.c
@@ -25,6 +25,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j+8] != ib[i])
@@ -46,6 +47,7 @@ int main1 ()
   /* check results: */
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][8] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-63.c b/gcc/testsuite/gcc.dg/vect/vect-63.c
index 8d002a5e3c349bd4cbf9e37e8194e9a7450d0bde..20600728145325962598d6fbc17640296c5ca199 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-63.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-63.c
@@ -25,6 +25,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i + j][1][j] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-64.c b/gcc/testsuite/gcc.dg/vect/vect-64.c
index 240b68f6d0d2d4bbef72b60aac2b26ba366514df..96773f6cab610ee565f33038515345ea799ba2c9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-64.c
@@ -45,6 +45,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[i])
@@ -55,6 +56,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[i][1][1][j] != ib[i])
@@ -65,6 +67,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (id[i][1][j+1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-65.c b/gcc/testsuite/gcc.dg/vect/vect-65.c
index 9ac8ea4f013a5bea6dbfe8673056d35fc1c3fabb..af714d03ebb7f30ab56a93799c4c0d521b9cea93 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-65.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-65.c
@@ -42,6 +42,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[2][i][j])
@@ -62,6 +63,7 @@ int main1 ()
   /* check results: */
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[j] != ib[2][i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-66.c b/gcc/testsuite/gcc.dg/vect/vect-66.c
index ccb66bc80017d3aa64698cba43f932a296a82e7d..cf16dd15ac2d1664d2edf9a676955c4479715fd2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-66.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-66.c
@@ -23,6 +23,7 @@ void main1 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[2][6][j] != 5)
@@ -47,6 +48,7 @@ void main2 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 2; j < N+2; j++)
         {
            if (ia[3][6][j] != 5)
@@ -73,6 +75,7 @@ void main3 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[2][1][6][j+1] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-67.c b/gcc/testsuite/gcc.dg/vect/vect-67.c
index 12183a233c273d8ae3932fa312e1734b48f8c7b0..f3322a32c1e34949a107772dc6a3f4a7064e7ce5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-67.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-67.c
@@ -31,6 +31,7 @@ int main1 (int a, int b)
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j + NINTS] != (a == b))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-68.c b/gcc/testsuite/gcc.dg/vect/vect-68.c
index 3012d88494d0494ec137ca89fef4e98e13ae108e..8cc2d84140967d2c54d3db2b408edf92c53340d6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-68.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -43,6 +44,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -56,6 +58,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -69,6 +72,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-7.c b/gcc/testsuite/gcc.dg/vect/vect-7.c
index c4556e321c6b0d6bf1a2cd36136d71a43718af32..fb2737e92f5dc037c3253803134687081064ae0e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-7.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sb[i] != 5)
@@ -32,6 +33,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 105)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-70.c b/gcc/testsuite/gcc.dg/vect/vect-70.c
index 793dbfb748160ba709dd835dc253cb436f7aada1..cd432a6545a97d83ebac2323fe2b1a960df09c6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-70.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-70.c
@@ -52,6 +52,7 @@ int main1 ()
 
   /* check results:  */
   for (i = 0; i < OUTERN; i++)
+#pragma GCC novector
     for (j = NINTS - 1; j < N - NINTS + 1; j++)
     {
       if (tmp1.e[i].n[1][2][j] != 8)
@@ -67,6 +68,7 @@ int main1 ()
   
   /* check results:  */
   for (i = 0; i < OUTERN; i++)
+#pragma GCC novector
     for (j = NINTS - 1; j < N - NINTS + 1; j++)
     {
       if (tmp1.e[j].n[1][2][j] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-71.c b/gcc/testsuite/gcc.dg/vect/vect-71.c
index 581473fa4a1dcf1a7ee570336693ada765d429f3..46226c5f056bdceb902e73326a00959544892600 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-71.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-71.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 2; i < N+1; i++)
     {
       if (ia[ib[i]] != 0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-72.c b/gcc/testsuite/gcc.dg/vect/vect-72.c
index 9e8e91b7ae6a0bc61410ffcd3f0e5fdf4c3488f1..2ab51fdf307c0872248f2bb107c77d19e53894f4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-72.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-72.c
@@ -33,6 +33,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i-1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c
index 1c9d1fdaf9a2bb4eee4e9e766e531b72a3ecef2c..d81498ac0ce5926fb384c00aa5f66cc2a976cfdb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c
@@ -28,6 +28,7 @@ int main1 ()
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (ia[i] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-73.c b/gcc/testsuite/gcc.dg/vect/vect-73.c
index fdb49b86362774b0fdf3e10e918b7d73f3383dd7..48e1e64558e53fe109b96bd56eb8af92268cd7ec 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-73.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-73.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results: */  
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (ia[i] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c
index ba1ae63bd57cd3347820d888045005a7d4d83f1a..27d708745d31bdb09f4f0d01d551088e02ba24b9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c
@@ -36,6 +36,7 @@ main1 (float *__restrict__  pa, float * __restrict__ pb, float * __restrict__ pc
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-74.c b/gcc/testsuite/gcc.dg/vect/vect-74.c
index a44f643ee96729fc0952a64e32a52275321557eb..c23c38a85063024b46c95c2e1c5158c81b6dcd65 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-74.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-74.c
@@ -24,6 +24,7 @@ main1 (float *__restrict__  pa, float * __restrict__ pb, float * __restrict__ pc
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c
index a3fb5053037fcca89d7518c47eb2debfc136ba7f..10a3850d0da6d55a124fd6a7f4a2b7fd0efb3fae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c
@@ -32,6 +32,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-75.c b/gcc/testsuite/gcc.dg/vect/vect-75.c
index 88da97f0bb7cecee4ee93a9d3fa7f55f0ae9641c..ecf5174921cc779f92e12fc64c3014d1a4997783 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-75.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-75.c
@@ -32,6 +32,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c
index 5825cfc446468b16eff60fa2115bb1de4872654f..4f317f273c8737ab07e51699ed19e66d9eb8a51b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c
@@ -32,6 +32,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -45,6 +46,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -58,6 +60,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != ic[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-76.c b/gcc/testsuite/gcc.dg/vect/vect-76.c
index 3f4feeff8ac7882627c88490298c2f39b5172b7e..23210d4b775bfd4d436b2cdf2af2825cbf1924f0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-76.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-76.c
@@ -26,6 +26,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -39,6 +40,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -52,6 +54,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != ic[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c b/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c
index fb3e49927826f77149d4813185a6a2cac00232d4..5fb833441d46ce2b6b0df2def5b3093290a2f7a4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c
@@ -32,6 +32,7 @@ int main1 (int *ib, int off)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-77-global.c b/gcc/testsuite/gcc.dg/vect/vect-77-global.c
index 1580d6e075b018696c56de4d680a0999a837bbca..b9622420c64b732047712ff343a3c0027e7bcf3a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-77-global.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-77-global.c
@@ -28,6 +28,7 @@ int main1 (int *ib, int off)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-77.c b/gcc/testsuite/gcc.dg/vect/vect-77.c
index d402e147043c0245f6523f6713dafc83e5357121..033d4ba79869c54f12fc3eea24a11ada871373ab 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-77.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-77.c
@@ -25,6 +25,7 @@ int main1 (int *ib, int off)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c b/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c
index 57e8da0a9090cae7d501ecb83220afff0bf553b2..f7563c4608546696e5c1174402b42bfc2fd3fa83 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c
@@ -33,6 +33,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-78-global.c b/gcc/testsuite/gcc.dg/vect/vect-78-global.c
index ea039b389b22fe16af9353bd5efa59a375a6a71c..11b7e0e9b63cd95bfff9f64f0cfca8b5e4137fe2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-78-global.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-78-global.c
@@ -29,6 +29,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-78.c b/gcc/testsuite/gcc.dg/vect/vect-78.c
index faa7f2f4f768b0d7a191b8b67f5000f53c485142..b2bf78108dc9b2f8d43235b64a307addeb71e82a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-78.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-78.c
@@ -25,6 +25,7 @@ int main1 (int *ib)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-8.c b/gcc/testsuite/gcc.dg/vect/vect-8.c
index 44c5f53ebaf260c2087b298abf0428c8d21e8cfa..85bc347ff2f2803d8b830bc1a231e8dadfa525be 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-8.c
@@ -19,6 +19,7 @@ int main1 (int n)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c
index 0baf4d2859b679f7b20d6b5fc939b71ec2533fb4..a43ec9ca9a635d055a6ef70dcdd919102ae3690d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c
@@ -35,6 +35,7 @@ main1 (float * __restrict__ pa, float * __restrict__ pb, float *__restrict__ pc)
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-80.c b/gcc/testsuite/gcc.dg/vect/vect-80.c
index 45aac84a578fa55624f1f305e9316bbc98e877bb..44299d3c7fed9ac9c213699f6982ba3858bbe0bb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-80.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-80.c
@@ -24,6 +24,7 @@ main1 (float * __restrict__ pa, float * __restrict__ pb, float *__restrict__ pc)
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-82.c b/gcc/testsuite/gcc.dg/vect/vect-82.c
index fcafb36c06388302775a68f0f056b925725e8aa8..2c1b567d10f2e7e519986c5b1d2e2c6b11353bc2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-82.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-82.c
@@ -17,6 +17,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-82_64.c b/gcc/testsuite/gcc.dg/vect/vect-82_64.c
index 358a85a838f7519a0c1e0b2bae037d6e8aafeea9..d0962e06c62a8888cb5cabb1c1e08438e3a16c8e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-82_64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-82_64.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-83.c b/gcc/testsuite/gcc.dg/vect/vect-83.c
index a300a0a08c462c043b2841961c58b8c8f2849cc5..4fd14cac2abd9581cd47d67e8194795b74c68402 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-83.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-83.c
@@ -17,6 +17,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 2)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-83_64.c b/gcc/testsuite/gcc.dg/vect/vect-83_64.c
index a5e897e093d955e0d1aff88021f99caf3a70d928..e3691011c7771328b9f83ea70aec20f373b10da4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-83_64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-83_64.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 2)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c
index ade04016cc3136470db804ea7a1bac3010d6da91..9d527b06c7476c4de7d1f5a8863088c189ce6142 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c
@@ -22,10 +22,12 @@ int main1 (int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (a[j] != i + N - 1)
       abort ();
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (b[j] != j + N)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-85.c b/gcc/testsuite/gcc.dg/vect/vect-85.c
index a73bae1ad41a23ab583d7fd1f5cf8234d516d515..367cea72b142d3346acfb62cb16be58104de4f1c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-85.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-85.c
@@ -22,10 +22,12 @@ int main1 (int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (a[j] != i + N - 1)
       abort();	
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (b[j] != j + N)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-86.c b/gcc/testsuite/gcc.dg/vect/vect-86.c
index ff1d41df23f1e1eaab7f066726d5217b48fadb57..fea07f11d74c132fec987db7ac181927abc03564 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-86.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-86.c
@@ -24,11 +24,12 @@ int main1 (int n)
       b[i] = k;
     }
 
-
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (a[j] != i + n - 1)
       abort();	
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (b[i] != i + n)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-87.c b/gcc/testsuite/gcc.dg/vect/vect-87.c
index 17b1dcdee99c819c8a65eadbf9159d9f78242f62..0eadc85eecdf4f8b5ab8e7a94782157534acf0a6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-87.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-87.c
@@ -23,10 +23,12 @@ int main1 (int n, int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (a[j] != i + n - 1)
       abort();	
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (b[j] != j + n)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-88.c b/gcc/testsuite/gcc.dg/vect/vect-88.c
index b99cb4d89a4b8e94000dc6334514af042e1d2031..64341e66b1227ada7de8f26da353e6c6c440c9a9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-88.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-88.c
@@ -23,10 +23,12 @@ int main1 (int n, int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (a[j] != i + n - 1)
       abort();	
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (b[j] != j + n)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c
index 59e1aae0017d92c5b98858777e7e55bceb73a90a..64578b353fec58c4af632346a546ab655b615125 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c
@@ -28,6 +28,7 @@ int main1 ()
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (p->y[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-89.c b/gcc/testsuite/gcc.dg/vect/vect-89.c
index 356ab96d330046c553364a585e770653609e5cfe..6e7c875c01e2313ba362506542f6018534bfb443 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-89.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-89.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results: */  
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (p->y[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-9.c b/gcc/testsuite/gcc.dg/vect/vect-9.c
index 87600fb5df0d104daf4438e6a7a020e08c277502..dcecef729a60bf22741407e3470e238840ef6def 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-9.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != (int) sb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-92.c b/gcc/testsuite/gcc.dg/vect/vect-92.c
index 9ceb0fbadcd61ec9a5c3682cf3582abf464ce106..86864126951ccd8392cc7f7e87642be23084d5ea 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-92.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-92.c
@@ -36,6 +36,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 10; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
@@ -56,6 +57,7 @@ main2 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 12; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
@@ -76,6 +78,7 @@ main3 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index c3e12783b2c47a4e296fd47cc9dc8e73b7ccebb0..b4ccbeedd08fe1285dc362b28cb6d975c6313137 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -23,6 +23,7 @@ main1 (float *pa)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N1; i++)
     {
       if (pa[i] != 2.0)
@@ -36,6 +37,7 @@ main1 (float *pa)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N2; i++)
     {
       if (pa[i] != 3.0)
@@ -60,6 +62,7 @@ int main (void)
   for (i = 1; i <= 256; i++) a[i] = b[i-1];
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= 256; i++)
     {
       if (a[i] != i-1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-95.c b/gcc/testsuite/gcc.dg/vect/vect-95.c
index 1e8bc1e7240ded152ea81f60addab9f7179d3bfc..cfca253e810ff1caf2ef2eef0d7bafc39896ea3e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-95.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-95.c
@@ -11,6 +11,7 @@ void bar (float *pd, float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-96.c b/gcc/testsuite/gcc.dg/vect/vect-96.c
index c0d6c37b21db23b175de895a582f48b302255e9f..e36196b50d7527f88a88b4f12bebbe780fe23f08 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-96.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-96.c
@@ -28,7 +28,8 @@ int main1 (int off)
   for (i = 0; i < N; i++)
       pp->ia[i] = ib[i];
 
-  /* check results: */  
+  /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (pp->ia[i] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c
index 977a9d57ed4795718722c83344c2efd761e6783e..e015c1684ad856a4732084fbe49783aaeac31e58 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != cb[i])
@@ -48,6 +49,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != s.q[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-97.c b/gcc/testsuite/gcc.dg/vect/vect-97.c
index 734ba3b6ca36cf56d810a1ce4329f9cb1862dede..e5af7462ef89e7f47b2ca822f563401b7bd95e2c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-97.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-97.c
@@ -27,6 +27,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != cb[i])
@@ -43,6 +44,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != s.q[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c
index 61b749d4669386a890f5c2f5ba83d6e00d269b4f..2d4435d22e476de5b40c6245f26209bff824139c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c
@@ -22,6 +22,7 @@ int main1 (int ia[][N])
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (ic[0][i] != DOT16 (ia[i], ib))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-98.c b/gcc/testsuite/gcc.dg/vect/vect-98.c
index 2055cce70b20b96dd69d06775e3d6deb9f27e3b2..72a1f37290358b6a89db6c89aada2c1650d2e7a5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-98.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-98.c
@@ -19,7 +19,8 @@ int main1 (int ia[][N])
 	ic[0][i] = DOT4 (ia[i], ib);
     }
 
-  /* check results: */  
+  /* check results: */
+#pragma GCC novector
   for (i = 0; i < M; i++)
     {
        if (ic[0][i] != DOT4 (ia[i], ib))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-99.c b/gcc/testsuite/gcc.dg/vect/vect-99.c
index ae23b3afbd1d42221f6fe876f23ee7b9beaebca3..0ef9051d907209e025a8fee057d04266ee2fcb03 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-99.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-99.c
@@ -21,6 +21,7 @@ int main (void)
 
   foo(100);
 
+#pragma GCC novector
   for (i = 0; i < 100; ++i) {
     if (ca[i] != 2)
       abort();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c
index b6cc309dbe87b088c9969e07dea03c7f6b5993dd..8fd3bf407e9db3d188b897112ab1e41b381ae3c5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c
@@ -45,6 +45,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)					\
+  _Pragma("GCC novector")				\
   for (int j = -M; j <= M; ++j)				\
     {							\
       TYPE a[N * M], b[N * M];				\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c
index 09a4ebfa69e867869adca3bb5daece02fcee93da..5ecdc3250708e99c30e790da84b002b99a8d7e9b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c
@@ -51,6 +51,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)					\
+  _Pragma("GCC novector")				\
   for (int j = -M; j <= M; ++j)				\
     {							\
       TYPE a1[N * M], a2[N * M], b1[N], b2[N];		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c
index 63a897f4bad4894a6ec4b2ff8749eed3f9e33782..23690c45b65a1b95bf88d50f80d021d5c481d5f1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c
@@ -52,6 +52,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)					\
+  _Pragma("GCC novector")				\
   for (int j = 0; j <= M; ++j)				\
     {							\
       TYPE a1[N * M], a2[N * M], b1[N], b2[N];		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c
index 29bc571642db8858d3e4ca1027131a1a6559c4c1..b36ad116762e2e3c90ccd79fc4f8564cc57fc3f1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c
@@ -39,6 +39,7 @@ typedef unsigned long long ull;
       for (int i = 0; i < N + M; ++i)				\
 	a[i] = TEST_VALUE (i);					\
       test_##TYPE (a + j, a);					\
+      _Pragma("GCC novector")					\
       for (int i = 0; i < N; i += 2)				\
 	{							\
 	  TYPE base1 = j == 0 ? TEST_VALUE (i) : a[i];		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c
index ad74496a6913dcf57ee4573ef1589263a32b074c..f7545e79d935f1d05641415246aabc2dbe9b7d27 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c
@@ -33,6 +33,7 @@ typedef unsigned long long ull;
     {								\
       TYPE a[N + DIST * 2] = {};				\
       test_##TYPE (a + DIST, a + i);				\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	{							\
 	  TYPE expected = 0;					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c
index 8a9a6fffde1d39f138c5f54221854e73cef89079..d90adc70e28420e5e8fd0e36c15316da12224b38 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c
@@ -33,12 +33,14 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)						\
+  _Pragma("GCC novector")					\
   for (int i = 0; i < DIST * 2; ++i)				\
     {								\
       TYPE a[N + DIST * 2];					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	a[j] = TEST_VALUE (j);					\
       TYPE res = test_##TYPE (a + DIST, a + i);			\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N; ++j)				\
 	if (a[j + DIST] != (TYPE) j)				\
 	  __builtin_abort ();					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c
index b9f5d2bbc9f6437e3e8058264cc0c9aaa522b3e2..3b576a4dc432725c67b4e7f31d2bc5937bc34b7a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c
@@ -34,6 +34,7 @@ typedef unsigned long long ull;
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	a_##TYPE[j] = TEST_VALUE (j);				\
       test_##TYPE (i + N - 1, DIST + N - 1);			\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	{							\
 	  TYPE expected;					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c
index 7c0ff36a8c43f11197de413cb682bcd0a3afcae8..36771b04ed5cc0d6c14c0fe1a0e9fd49db4265c4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c
@@ -34,6 +34,7 @@ typedef unsigned long long ull;
     {								\
       __builtin_memset (a_##TYPE, 0, sizeof (a_##TYPE));	\
       test_##TYPE (DIST, i);					\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	{							\
 	  TYPE expected = 0;					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c
index 8a699ebfda8bfffdafc5e5f09d137bb0c7e78beb..9658f8ce38e8efb8d19806a4078e1dc4fe57d2ef 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c
@@ -34,11 +34,13 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)						\
+  _Pragma("GCC novector")					\
   for (int i = 0; i < DIST * 2; ++i)				\
     {								\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	a_##TYPE[j] = TEST_VALUE (j);				\
       TYPE res = test_##TYPE (DIST, i);				\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N; ++j)				\
 	if (a_##TYPE[j + DIST] != (TYPE) j)			\
 	  __builtin_abort ();					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c
index 7e5df1389991da8115df2c6784b52ff3e15f8124..3bc78bed676d8267f7512b71849a7d33cb4ab05b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c
@@ -29,6 +29,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)						\
+  _Pragma("GCC novector")					\
   for (int i = 0; i < DIST * 2; ++i)				\
     {								\
       for (int j = 0; j < N + DIST * 2; ++j)			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c
index a7fc1fcebbb2679fbe6a98c6fa340edcde492ba9..c11c1d13e0ba253b00afb02306aeec786cee1161 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c
@@ -37,6 +37,7 @@ typedef unsigned long long ull;
       for (int i = 0; i < N + M; ++i)			\
 	a[i] = TEST_VALUE (i);				\
       test_##TYPE (a + j, a);				\
+      _Pragma("GCC novector")				\
       for (int i = 0; i < N; i += 2)			\
 	if (a[i + j] != (TYPE) (a[i] + 2)		\
 	    || a[i + j + 1] != (TYPE) (a[i + 1] + 3))	\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-align-1.c b/gcc/testsuite/gcc.dg/vect/vect-align-1.c
index d56898c4d23406b4c8cc53fa1409974b6ab05485..9630fc0738cdf4aa5db67effdd5eb47de4459f6f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-align-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-align-1.c
@@ -28,6 +28,7 @@ main1 (struct foo * __restrict__ p)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (p->y[i] != x[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-align-2.c b/gcc/testsuite/gcc.dg/vect/vect-align-2.c
index 39708648703357e9360e0b63ca7070c4c21def03..98759c155d683475545dc20cae23d54c19bd8aed 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-align-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-align-2.c
@@ -26,6 +26,7 @@ void fbar(struct foo *fp)
         f2.y[i][j] = z[i];
 
    for (i=0; i<N; i++)
+#pragma GCC novector
       for (j=0; j<N; j++)
 	if (f2.y[i][j] != z[i])
 	  abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c
index 6eb9533a8bb17acf7f9e29bfaa7f7a7aca2dc221..3f3137bd12e1462e44889c7e096096beca4d5b40 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c
@@ -18,6 +18,7 @@ __attribute__ ((noinline))
 void icheck_results (int *a, int *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -29,6 +30,7 @@ __attribute__ ((noinline))
 void fcheck_results (float *a, float *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -108,6 +110,7 @@ main1 ()
       ca[i] = cb[i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
@@ -163,6 +166,7 @@ main1 ()
       a[i+3] = b[i-1];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
@@ -180,6 +184,7 @@ main1 ()
       j++;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != c[i])
@@ -193,6 +198,7 @@ main1 ()
       a[N-i] = d[N-i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != d[i])
@@ -206,6 +212,7 @@ main1 ()
       a[i] = 5.0;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != 5.0)
@@ -217,6 +224,7 @@ main1 ()
       sa[i] = 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 5)
@@ -228,6 +236,7 @@ main1 ()
       ia[i] = ib[i] + 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-all.c b/gcc/testsuite/gcc.dg/vect/vect-all.c
index cc41e2dd3d313a0557dea16204564a5a0c694950..6fd579fa6ad24623f387d9ebf5c863ca6e91dfe6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-all.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-all.c
@@ -18,6 +18,7 @@ __attribute__ ((noinline))
 void icheck_results (int *a, int *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -29,6 +30,7 @@ __attribute__ ((noinline))
 void fcheck_results (float *a, float *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -91,6 +93,7 @@ main1 ()
       ca[i] = cb[i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
@@ -134,6 +137,7 @@ main1 ()
       a[i+3] = b[i-1];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
@@ -151,6 +155,7 @@ main1 ()
       j++;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != c[i])
@@ -164,6 +169,7 @@ main1 ()
       a[N-i] = d[N-i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != d[i])
@@ -177,6 +183,7 @@ main1 ()
       a[i] = 5.0;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != 5.0)
@@ -188,6 +195,7 @@ main1 ()
       sa[i] = 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 5)
@@ -199,6 +207,7 @@ main1 ()
       ia[i] = ib[i] + 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-1.c b/gcc/testsuite/gcc.dg/vect/vect-avg-1.c
index a7bc7cc90963c8aa8e14d0960d57dc724486247f..4a752cd7d573cd53ea1a59dba0180d017a7f73a5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-1.c
@@ -35,6 +35,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != ((BASE1 + BASE2 + i * 9 + BIAS) >> 1))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-11.c b/gcc/testsuite/gcc.dg/vect/vect-avg-11.c
index 85292f1b82416b70698619e284ae76f3a3d9410d..0046f8ceb4e7b2688059073645175b8845246346 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-11.c
@@ -43,6 +43,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (((((BASE1 + i * 5) ^ 0x55)
 		   + (BASE2 + i * 4)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-15.c b/gcc/testsuite/gcc.dg/vect/vect-avg-15.c
index 48d7ed773000486c42277535cebe34f101e035ef..57b6670cb98cdf92e60dd6c7154b4a8012b05a1e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-15.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, N / 20, 20);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int d = (BASE1 + BASE2 + i * 5) >> 1;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-16.c b/gcc/testsuite/gcc.dg/vect/vect-avg-16.c
index f3e3839a879b6646aba6237e55e2dcd943eac168..319edba1fa3c04b6b74b343cf5397277a36dd6d1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-16.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, N / 20);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int d = (BASE1 + BASE2 + i * 5) >> 1;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-5.c b/gcc/testsuite/gcc.dg/vect/vect-avg-5.c
index 6c43575f448325e84975999c2e8aa91afb525f87..6bdaeff0d5ab4c55bb5cba1df51a85c4525be6fb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-5.c
@@ -39,6 +39,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != ((BASE1 + BASE2 + i * 9 + BIAS) >> 1))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c
index 19683d277b1ade1034496136f1d03bb2b446900f..22e6235301417d72e1f85ecbdd96d8e498500991 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c
@@ -19,6 +19,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].i != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c
index 1a101357ccc9e1b8bb157793eb3f709e99330bf6..0c8291c9363d0de4c09f81525015b7b88004bc94 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c
@@ -23,6 +23,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c
index 5dc679627d52e2ad229d0920e5ad8087a71281fe..46fcb02b2f1b6bb2689a6b709901584605cc9a45 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c
@@ -24,6 +24,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c
index fae6ea3557dcaba7b330ebdaa471281d33d2ba15..5a7227a93e4665cd10ee564c8b15165dc6cef303 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c
@@ -22,6 +22,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c
index 99360c2967b076212c67eb4f34b8fd91711d8821..e0b36e411a4a72335d4043f0f360c2e88b667397 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c
@@ -22,6 +22,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c b/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c
index c97da5289141d35a9f7ca220ae62aa82338fa7f5..a1be71167025c960fc2304878c1ed15d90484dfb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c
@@ -183,6 +183,7 @@ check (int *p, cmp_fn fn)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < 32; i++)
     {
       int t1 = ((i % 4) > 1) == 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bswap16.c b/gcc/testsuite/gcc.dg/vect/vect-bswap16.c
index d29b352b832a67e89e7cb3856634390244369daa..7d2cb297738378863ddf78b916036b0998d28e6f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bswap16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bswap16.c
@@ -30,6 +30,7 @@ main (void)
 
   vfoo16 (arr);
 
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     {
       if (arr[i] != expect[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bswap32.c b/gcc/testsuite/gcc.dg/vect/vect-bswap32.c
index 88d88b5f034153cb736391e4fc46a9b786ec28c5..1139754bbf1b8f7ef7a5a86f5621c9fe319dec08 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bswap32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bswap32.c
@@ -30,6 +30,7 @@ main (void)
 
   vfoo32 (arr);
 
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     {
       if (arr[i] != expect[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bswap64.c b/gcc/testsuite/gcc.dg/vect/vect-bswap64.c
index fd15d713c5d63db335e61c892c670b06ee9da25f..38d598eba33019bfb7c50dc2f0d5b7fec3a4736c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bswap64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bswap64.c
@@ -30,6 +30,7 @@ main (void)
 
   vfoo64 (arr);
 
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     {
       if (arr[i] != expect[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-complex-1.c b/gcc/testsuite/gcc.dg/vect/vect-complex-1.c
index 2a87e2feadeba7f1eaef3cce72e27a7d0ffafb5f..b3a02fe9c6d840e79764cb6469a86cfce315a337 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-complex-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-complex-1.c
@@ -43,6 +43,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (c[i] != res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-complex-2.c b/gcc/testsuite/gcc.dg/vect/vect-complex-2.c
index 19b24e1eb87feacc8f7b90fb067124007e22c90f..7bbfdd95b5c46f83f24263e33bf5e3d2ecee0a4d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-complex-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-complex-2.c
@@ -43,6 +43,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (c[i] != res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-complex-4.c b/gcc/testsuite/gcc.dg/vect/vect-complex-4.c
index 49cfdbe1738794c3bf873c330fff4d7f4626e10b..d5e50cc15df66501fe1aa1618f04ff293908469a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-complex-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-complex-4.c
@@ -92,6 +92,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (c[i].f1 != res[i].f1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-1.c b/gcc/testsuite/gcc.dg/vect/vect-cond-1.c
index 261d828dbb2855fe680b396d3fcbf094e814b6fd..e438cbb67e196a5b3e5e2e2769efc791b0c2d6b7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-1.c
@@ -43,6 +43,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (j = 0; j < M; j++)
     if (x_out[j] != check_result[j])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-10.c b/gcc/testsuite/gcc.dg/vect/vect-cond-10.c
index b2f97d735ef7d94a80a67265b4535a1e228e20ca..dbbe4877db41c43d5be5e3f35cb275b96322c9bc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-10.c
@@ -120,41 +120,49 @@ main ()
 	}
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f3 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f5 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f6 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f7 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f8 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-11.c b/gcc/testsuite/gcc.dg/vect/vect-cond-11.c
index f28af658f331849a0c5103ba96dd2e3b60de428d..38f1f8f50901c3039d0e7cb17d1bd47b18b89c71 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-11.c
@@ -79,13 +79,16 @@ baz (unsigned int *a, unsigned int *b,
     }
   if (fn (a, b) != -512U - (N - 32) * 16U + 32 * 127U)
     __builtin_abort ();
+#pragma GCC novector
   for (i = -64; i < 0; i++)
     if (a[i] != 19 || b[i] != 17)
       __builtin_abort ();
+#pragma GCC novector
   for (; i < N; i++)
     if (a[i] != (i - 512U < 32U ? i - 512U + 127 : i - 512U - 16)
 	|| b[i] != (i - 512U < 32U ? i * 2U : i + 1U))
       __builtin_abort ();
+#pragma GCC novector
   for (; i < N + 64; i++)
     if (a[i] != 27 || b[i] != 19)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-3.c b/gcc/testsuite/gcc.dg/vect/vect-cond-3.c
index 8a66b4b52ed8a98dd52ef945afb3822de8fe37e9..1521fedd1b5b9d6f3021a1e5653f9ed8df0610b2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-3.c
@@ -50,6 +50,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (j = 0; j < M; j++)
     if (x_out_a[j] != check_result_a[j]
         || x_out_b[j] != check_result_b[j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-4.c b/gcc/testsuite/gcc.dg/vect/vect-cond-4.c
index 2a6577c6db33a49c7fac809f67b7e957c0b707c2..4057d14c702c22ef41f504a8d3714a871866f04f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-4.c
@@ -47,6 +47,7 @@ int main (void)
 
   foo (125);
 
+#pragma GCC novector
   for (j = 0; j < M; j++)
     if (x_out_a[j] != 125
         || x_out_b[j] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-5.c b/gcc/testsuite/gcc.dg/vect/vect-cond-5.c
index 41e57f9235b90347e7842d88c9710ee682ea4bd4..f10feab71df6daa76966f8d6bc3a4deba8a7b56a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-5.c
@@ -46,6 +46,7 @@ int main ()
 
   foo(5);
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-6.c b/gcc/testsuite/gcc.dg/vect/vect-cond-6.c
index 65fdc4a9ef195f7210b08289242e74cda1db4831..a46479a07eb105f5b2635f3d5848e882efd8aabf 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-6.c
@@ -47,6 +47,7 @@ int main ()
 
   foo(125);
 
+#pragma GCC novector
   for (k = 0; k < K; k++) 
     if (out[k] != 33)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-7.c b/gcc/testsuite/gcc.dg/vect/vect-cond-7.c
index bd2947516584bf0039d91589422acefd0d27cc35..ea11693ff21798e9e792cfc43aca3c59853e84a0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-7.c
@@ -53,6 +53,7 @@ main ()
 #undef F
 #define F(var) f##var ();
   TESTS
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     {
       asm volatile ("" : : : "memory");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-8.c b/gcc/testsuite/gcc.dg/vect/vect-cond-8.c
index d888442aa456e7520cf57e4a07c0938849758068..88289018b9be7d20edd9c7d898bb51d947ed7806 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-8.c
@@ -79,18 +79,22 @@ main ()
       e[i] = 2 * i;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 0 : 24))
       abort ();
   f3 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 51 : 12))
       abort ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (f[i] != ((i % 3) == 0 ? d[i] : e[i]))
       abort ();
@@ -112,6 +116,7 @@ main ()
       b[i] = i / 2;
     }
   f5 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (c[i] != ((i % 3) == 0 ? a[i] : b[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-9.c b/gcc/testsuite/gcc.dg/vect/vect-cond-9.c
index 63eee1b47296d8c422b4ff899e5840ca4d4f59f5..87febca10e7049cb0f4547a13d27f533011d44bc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-9.c
@@ -145,51 +145,61 @@ main ()
 	}
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f3 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, -6, sizeof (k));
   f5 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, -6, sizeof (k));
   f6 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f7 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f8 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f9 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, -6, sizeof (k));
   f10 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c
index d52e81e9109cc4d81de84adf370b2322799c8c27..5138712731f245eb1f17ef2e9e02e333c8e214de 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c
@@ -23,6 +23,7 @@
 #define TEST(OP)					\
   {							\
     f_##OP (a, b, 10);					\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	int bval = (i % 17) * 10;			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c
index f02b0dc5d3a11e3cfa8a23536f570ecb04a039fd..11a680061c21fb7da69739892b79ff37d1599027 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c
@@ -24,6 +24,7 @@
 #define TEST(INV)					\
   {							\
     f_##INV (a, b, c, d);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	double mb = (INV & 1 ? -b[i] : b[i]);		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c
index 55a174a7ec1fa42c40d4359e882ca475a4feaca3..1af0fe642a0f6a186a225e7619bff130bd09246f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c
@@ -20,6 +20,7 @@
 #define TEST(OP)					\
   {							\
     f_##OP (a, b, 10);					\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	int bval = (i % 17) * 10;			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c
index d2eadc4e9454eba204b94532ee3b002692969ddb..ec3d9db42021c0f1273bf5fa37bd24fa77c1f183 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c
@@ -21,6 +21,7 @@
 #define TEST(OP)					\
   {							\
     f_##OP (a, b, 10);					\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	int bval = (i % 17) * 10;			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c
index cc70b8a54c44fbc1d20aa9c2599b9a37d9fc135b..2aeebd44f835ee99f110629ded9572b338d6fb50 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c
@@ -23,6 +23,7 @@
 #define TEST(OP)						\
   {								\
     f_##OP (a, b, 10);						\
+    _Pragma("GCC novector")					\
     for (int i = 0; i < N; ++i)					\
       {								\
 	int bval = (i % 17) * 10;				\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c
index 739b98f59aece34b73ed4762c2eeda2512834539..9d20f977884213a6b4580b90e1a187161cf5c945 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c
@@ -22,6 +22,7 @@
 #define TEST(INV)					\
   {							\
     f_##INV (a, b, c, d);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	double mb = (INV & 1 ? -b[i] : b[i]);		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c b/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c
index e6ad865303c42c9d5958cb6e7eac6a766752902b..faeccca865f63bc55ee1a8b412a5e738115811e9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c
@@ -73,6 +73,7 @@ main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a != result[2*i] || out[i].b != result[2*i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c b/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c
index 95efe7ad62eac1f66b85ffdc359fd60bd7465cfd..f3b7db076e6b223fcf8b341f41be636e10cc952a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c
@@ -55,6 +55,7 @@ main (void)
 
   foo (a, b);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != result[2*i] || b[i] != result[2*i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c
index c81f8946922250234bf759e0a0a04ea8c1f73e3c..f02f98faf2fad408f7d7e65a09c678f242aa32eb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c
@@ -16,6 +16,7 @@ int
 main (void)
 {
   V v = foo ((V) { 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff }, 0xffff);
+#pragma GCC novector
   for (unsigned i = 0; i < sizeof (v) / sizeof (v[0]); i++)
     if (v[i] != 0x00010001)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c
index b4eb1a4dacba481e6306b49914d2a29b933de625..80293e50bbc6bbae90cac0fcf436c790b3215c0e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c
@@ -44,6 +44,7 @@ int main ()
   fun1 (a, N / 2, N);
   fun2 (b, N / 2, N);
 
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       if (DEBUG)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h
index 29a16739aa4b706616367bfd1832f28ebd07993e..bfdc730fe5f7b38117854cffbf2e450dad7c3b5a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h
+++ b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h
@@ -30,6 +30,7 @@ int main ()
   fun1 (a, N / 2, N);
   fun2 (b, N / 2, N);
 
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       if (DEBUG)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c
index 6abf76392c8df94765c63c248fbd7045dc24aab1..6456b3aad8666888fe15061b2be98047c28ffed2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c
index 4bfd1630c4e9927d89bf23ddc90716e0cc249813..d5613e55eb20731070eabeee8fe49c9e61d8be50 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c
index 3bdf9efe9472342359b64d51ef308a4d4f8f9a79..239ddb0b444163803c310e4e9910cfe4e4c44be7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c
@@ -48,12 +48,14 @@ int main ()
 
   foo(0, 0);
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out_max[k] != check_max[k] || out_min[k] != 0)
       abort ();
 
   foo(100, 45);
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out_min[k] != check_min[k] || out_max[k] != 100)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c
index e5937705400c7c015513abc513a8629c6d66d140..5344c80741091e4e69b41ce056b9541b75215df2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c
index 079704cee81cc17b882b476c42cbeee0280369cf..7465eae1c4762d39c14048077cd4786ffb8e4848 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c
index 1d9dcdab5e9c09514a8427cd65c419e74962c9de..a032e33993970e65e9e8a90cca4d23a9ff97f1e8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c
@@ -49,6 +49,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c
index 85aec1bf609582988f06826afb6b7ce77d6d83de..d1d1faf7c3add6ce2c3378d4d094bf0fc2aba046 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c
@@ -38,6 +38,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c
index c3145a2ad029f92e96995f59e9be9823e016ec11..1ef7a2d19c8b6ee96280aee0e9d69b441b597a89 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c
@@ -52,6 +52,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c b/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c
index 76b436948c185ca73e21203ef68b0a9d4da03408..603f48167d10fe41143f329cd50ca7f6c8e9a154 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c
@@ -21,6 +21,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (da[i] != (double) fb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c b/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c
index 8b82c82f1cdd1078898847c31c6c06371f4232f6..9f404f0e36e10ebf61b44e95d6771d26a25faea8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) db[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c
index fc5081b7e8e143893009b60147d667855efa12ad..f80da6a7ca7f0de224d88860a48f24b4fd8c2ad8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != (int) fb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c
index 64fab3876310d60ca016b78938e449201c80997d..dc038857a42813e665591c10eb3ab7f744d691ad 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c
@@ -19,6 +19,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != (int) db[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-fma-1.c b/gcc/testsuite/gcc.dg/vect/vect-fma-1.c
index 6b6b4f726e9476ac6a90984e15fdd0839dff8885..27d206d9fa0601812b09a3ead2ee9730623e97e4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-fma-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-fma-1.c
@@ -22,6 +22,7 @@
 #define TEST(INV)					\
   {							\
     f_##INV (a, b, c, d);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	double mb = (INV & 1 ? -b[i] : b[i]);		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-gather-1.c b/gcc/testsuite/gcc.dg/vect/vect-gather-1.c
index 4cee73fc7752681c2f677d3e6fddf7daf6e183eb..e3bbf5c0bf8db8cb258d8d05591c246d80c5e755 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-gather-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-gather-1.c
@@ -50,6 +50,7 @@ main (void)
   check_vect ();
 
   f (y, x, indices);
+#pragma GCC novector
   for (int i = 0; i < 32; ++i)
     if (y[i] != expected[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-gather-3.c b/gcc/testsuite/gcc.dg/vect/vect-gather-3.c
index 738bd3f3106948754e38ffa93fec5097560511d3..adfef3bf407fb46ef7a2ad01c495e44456b37b7b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-gather-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-gather-3.c
@@ -54,6 +54,7 @@ main (void)
   check_vect ();
 
   f (y, x, indices);
+#pragma GCC novector
   for (int i = 0; i < 32; ++i)
     if (y[i] != expected[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c
index 7e323693087598942f57aa8b7cf3686dde4a52c9..04d5fd07723e851442e1dc496fdf004d9196caa2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c
@@ -26,6 +26,7 @@ int main ()
   check_vect ();
   foo ();
   /* check results:  */
+#pragma GCC novector
   for (int i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c
index 56a8e01993d1a0701998e377fb7fac4fa2119aed..0f752b716ca811de093373cce75d948923386653 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] != MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c
index 962be1c0230cca6bef2c097b35833ddd6c270875..8b028d7f75f1de1c8d10376e4f0ce14b60dffc70 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] == MAX ? 0 : MAX);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c
index 6406875951bd52c3a5c3691eb2bc062e5525a4a1..10145d049083b541c95b813f2fd12d3d62041f53 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] >= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c
index d55440c9fa421719cb03a30baac5d58ca1ac2fb6..4964343c0ac80abf707fe11cacf473232689123e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] > MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c
index 5cef85175131bd6b2e08d7801966f5526ededf8e..63f53a4c4eef6e1397d67c7ce5570dfec3160e83 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] <= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c
index 3118e2d5a5536e175838284d367a8f2eedf8eb86..38b014336482dc22ecedaed81b79f8e7d5913d1e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] < MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c
index 272fde09429b6a46ee4a081b49736613136cc328..56e0f71bc799d16725e589a53c99abebe5dca40a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] != MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c
index c0c7a3cdb2baafa5702a7fcf80b7198175ecc4f2..879d88a5ce9239bf872cc0ee1b4eb921b95235d0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] == MAX ? 0 : MAX); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c
index e6446a765c0298857f71b80ffcaefdf77e4f5ce3..bbeccae0f228ad3fc7478c879ae4a741ae6fe7a3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c
@@ -27,6 +27,7 @@ int main ()
   check_vect ();
   foo ();
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c
index bef3efa5658ae6d91010d286967e319906f9aeb5..f75c0f5a1a6645fdee6a8a04ffc55bd67cb7ac43 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) ib[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c
index 666ee34a4a753ff1d0e33012d95a77496f1986fa..32df21fb52a0b9f16aff7340eee21e76e832cceb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (float_arr[i] != (float) int_arr[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c
index 78fc3da481c6693611b45d3939fe03d23e84f8f7..db33a84b54d70c9355079adf2ee163c904c68e57 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (da[i] != (double) ib[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c
index af8fe89a7b02b555acc64b578a07c735f5ef45eb..6fc23bb4621eea594a0e70347a8007a85fb53db8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) sb[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c
index 49c83182026b91c7b52667fec7a44554e3aff638..b570db5dc96db9c6e95b0e4dbebe1dae19c5ba7c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) usb[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-1.c b/gcc/testsuite/gcc.dg/vect/vect-iv-1.c
index 90163c440d34bcd70a7024b83f70abb7b83f8077..e6dcf29ebe0d2b2dc6695e754c4a1043f743dd58 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-1.c
@@ -22,6 +22,7 @@ __attribute__ ((noinline)) int main1 (int X)
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-10.c b/gcc/testsuite/gcc.dg/vect/vect-iv-10.c
index 195474b56441bee9b20f373a6aa991610a551e10..83bc7805c3de27ef3dd697d593ee86c1662e742c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-10.c
@@ -17,6 +17,7 @@ int main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (j=0,i=N;  j<N,i>0;  i--,j++) {
       if (ia[j] != i)
         abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-2.c b/gcc/testsuite/gcc.dg/vect/vect-iv-2.c
index 73e30ee9bac6857b545242136d9c1408f6bfe60e..d85bb3436b2e0abcc4d0d0a7b480f4f267b4898c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-2.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-3.c b/gcc/testsuite/gcc.dg/vect/vect-iv-3.c
index f8ca94dd17db81d8be824dfb2f023517f05d7c04..c0738ebc469f1780eb8ce90e89caa222df0e1fba 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-3.c
@@ -24,6 +24,7 @@ __attribute__ ((noinline)) int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i || arr2[i] != 5 + 2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-4.c b/gcc/testsuite/gcc.dg/vect/vect-iv-4.c
index dfe5bc14458c856122f48bd6bc6a50092d7729e1..2dd8ae30513260c858504f8dc0e8c7b6fd3ea59b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-4.c
@@ -24,6 +24,7 @@ __attribute__ ((noinline)) int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i || arr2[i] != 5 + 2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-5.c b/gcc/testsuite/gcc.dg/vect/vect-iv-5.c
index 2015385fbf5fac1349124dd35d57b26c49af6346..c3c4735f03432f9be07ed2fb14c94234ee8f4e52 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-5.c
@@ -20,6 +20,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr[i] != 1.0 + 2.0*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-6.c b/gcc/testsuite/gcc.dg/vect/vect-iv-6.c
index ccd7458a98f1d3833b19c838a27e9f582631e89c..4c9d9f19b45825a210ea3fa26160a306facdfea5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-6.c
@@ -28,6 +28,7 @@ __attribute__ ((noinline)) int main1 (int X)
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr1[i+1] != X+6*i+2
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-7.c b/gcc/testsuite/gcc.dg/vect/vect-iv-7.c
index 24b59fe55c498bf21d107bef72bdc93690229c20..f6d93360d8dda6f9380425b5518ea5904f938322 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-7.c
@@ -22,6 +22,7 @@ __attribute__ ((noinline, noclone)) int main1 (int X)
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c
index 45d82c65e2f85b7b470a22748dacc78a63c3bd3e..26e8c499ce50cc91116c558a2425a47ebe21cdf7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (unsigned char)myX || b[i] != myX || c[i] != (unsigned int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8.c
index dd37d250e91c3839c21fb3c22dc895be367cdcec..b4bb29d88003d2bbc0e90377351cb46d1ff72b55 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (unsigned char)myX || b[i] != myX || c[i] != (unsigned int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c
index 63b6b6e893f7a55a56aef89331610fd76d2c1c42..dceae27bbbee36a13af8055785dd4258b03e3dba 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (signed char)myX || b[i] != myX || c[i] != (int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c
index 1f8fedf2716745d469771cfce2629dd05478bce8..dfe3a27f024031427344f337d490d4c75d8a04be 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (signed char)myX || b[i] != myX || c[i] != (int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-1.c b/gcc/testsuite/gcc.dg/vect/vect-live-1.c
index f628c5d3998930ea3e0cee271c20ff3eb17edf62..e4a6433a89961b008a2b766f6669e16f378ca01e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-1.c
@@ -38,6 +38,7 @@ main (void)
   if (ret != MAX + START)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-2.c b/gcc/testsuite/gcc.dg/vect/vect-live-2.c
index 19d8c22859e0804ccab9d25ba69f22e50d635ebb..dae36e9ed67c8f6f5adf735345b817d59a3741f4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-2.c
@@ -48,6 +48,7 @@ main (void)
   if (ret != MAX - 1)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-3.c b/gcc/testsuite/gcc.dg/vect/vect-live-3.c
index 8f5ccb27365dea5e8cd8561d3c8a406e47469ebe..1f6b3ea0faf047715484ee64c1a49ef74dc1850e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-3.c
@@ -45,6 +45,7 @@ main (void)
   if (ret != (MAX - 1) * 3)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-4.c b/gcc/testsuite/gcc.dg/vect/vect-live-4.c
index 553ffcd49f744cabd6bdd42e6aca8c12d15ceb01..170927802d2d8f1c42890f3c82f9dabd18eb2f38 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-4.c
@@ -42,6 +42,7 @@ main (void)
   if (ret != MAX + 4)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-5.c b/gcc/testsuite/gcc.dg/vect/vect-live-5.c
index 7cde1db534bb1201e106ba34c9e8716c1f0445a1..9897552c25ce64130645887439c9d1f0763ed399 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-5.c
@@ -39,6 +39,7 @@ main (void)
   if (ret != 99)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c b/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c
index 965437c8f03eaa707add3577c6c19e9ec4c50302..6270c11e025ed6e181c7a607da7b1b4fbe82b325 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c
@@ -51,6 +51,7 @@ main (void)
       a[i] = i;
     }
 
+#pragma GCC novector
   for (i=0; i<4; i++)
     {
       __asm__ volatile ("");
@@ -60,6 +61,7 @@ main (void)
       if (ret != (MAX * 4) - 4 + i)
 	abort ();
 
+#pragma GCC novector
       for (i=0; i<MAX*4; i++)
 	{
 	  __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c b/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c
index 0d2f17f9003178d65c3dc5358e13c45f8ac980e3..c9987018e88b04f5f0ff195baaf528ad86722714 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c
@@ -45,6 +45,7 @@ main (void)
       a[i] = i;
     }
 
+#pragma GCC novector
   for (i=0; i<2; i++)
     {
       __asm__ volatile ("");
@@ -54,6 +55,7 @@ main (void)
       if (ret != (MAX * 2) - 2 + i)
 	abort ();
 
+#pragma GCC novector
       for (i=0; i<MAX*2; i++)
 	{
 	  __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c b/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c
index a3f60f6ce6d24fa35e94d95f2dea4bfd14bfdc74..e37822406751b99b3e5e7b33722dcb1912483345 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c
@@ -52,6 +52,7 @@ main (void)
       a[i] = i;
     }
 
+#pragma GCC novector
   for (i=0; i<4; i++)
     {
       __asm__ volatile ("");
@@ -61,6 +62,7 @@ main (void)
       if (ret != (MAX * 4) - 4 + i)
 	abort ();
 
+#pragma GCC novector
       for (i=0; i<MAX*4; i++)
 	{
 	  __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c b/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c
index 992cbda2e91628cd145d28c8fdabdb7a4d63ee68..91d4d40a86013dca896913d082773e20113a17e2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c
@@ -36,6 +36,7 @@ main ()
       asm ("");
     }
   foo (a, b);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != ((i & 1)
 		 ? 7 * i + 2.0 * (7 * i * 7.0 + 3.0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c b/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c
index 7d9dc5addf54264bf2fd0c733ccfb83bb1c8f20d..76f72597589c6032d298adbc8e687ea4808e9cd4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c
@@ -36,6 +36,7 @@ main ()
       asm ("");
     }
   foo (a, b, c);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != ((i & 1) ? -i : i)
 	|| b[i] != ((i & 1) ? a[i] + 2.0f : 7 * i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c b/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c
index 8e46ff6b01fe765f597add737e0b64ec5b505dd1..4df0581efe08333df976dfc9c52eaab310d5a1cc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, N);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != HRS(BASE1 * BASE2 + i * i * (CONST1 * CONST2)
 		    + i * (BASE1 * CONST2 + BASE2 * CONST1)))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c
index b63e9a8a6d9d0c396c3843069d100fbb9d5fa913..1e90d19a684eb0eebf223f85c4ea2b2fd93aa0c5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c
@@ -27,6 +27,7 @@ main (void)
     }
 
   foo (data);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (data[i] / 123 != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c
index a8253837c3863f5bc5bfea1d188a5588aea501c6..f19829b55a96227f0157527b015291da6abd54bf 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c
@@ -26,6 +26,7 @@ main (void)
     }
 
   foo (data);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (data[i] / -19594LL != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
index 378a5fe642ac415cd20f45e88f06e8d7b9040c98..06dbb427ea11e14879d1856c379934ebdbe50e04 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
@@ -39,6 +39,7 @@ __attribute__ ((noinline)) int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i + NSHORTS - 1] != sb[i] || ia[i + NINTS - 1] != ib[i + 1])
@@ -69,6 +70,7 @@ __attribute__ ((noinline)) int main2 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i + NINTS - 1] != sb[i + 1] || ia[i + NINTS - 1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
index 891ba6d8e7169c67e840733402e953eea919274e..c47cf8c11d9ade3c4053f3fcf18bf719fe58c971 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
@@ -48,6 +48,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresult[i] != (unsigned short)uY[i])
       abort ();
@@ -55,6 +56,7 @@ int main (void)
   
   foo2 (N);
   
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != (short)Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c
index c58391f495eb8d19aec9054f4d324a1bdf4461a4..29d178cf88d8df72b546772047b1e99a1a74043b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c
@@ -30,6 +30,7 @@ int main (void)
 
   foo (N,z+2);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (z[i+2] != x[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c
index 4782d3f7d1066e1dcf5c3c1004d055eb56bd3aec..dd5fffaed8e714114dcf964ffc6b5419fba1aa9f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c
@@ -31,6 +31,7 @@ int main (void)
 
   foo (N,z+2);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (z[i+2] != x[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c
index 2b185bb1f86ede937842596cec86f285a7c40d27..5bf796388f9c41083a69f3d6be3f5a334e9410a1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c
@@ -44,6 +44,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresult[i] != (unsigned int)uX[i])
       abort ();
@@ -51,6 +52,7 @@ int main (void)
   
   foo2 (N);
   
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != (int)X[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c
index ff5f8e989b2ea57fb265e8fca3a39366afb06aaa..6f9b81d1c01ab831a79608074f060b3b231f177d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresultX[i] != uX[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c
index cf45703e01867a7954325f6f8642594e31da9744..a61f1a9a2215e238f6c67e229f642db6ec07a00c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c
@@ -26,6 +26,7 @@ int main (void)
 
   foo (N,z+2);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (z[i+2] != x[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c
index 79ad80e3013e189c0efb9425de2b507cf486f39a..d2eff3a20986593a5185e981ae642fcad9a57a29 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c
@@ -30,6 +30,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresultX[i] != uX[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
index 7f93938349f91c0490dad8ea2de3aec780c30b2b..069ef44154effb38f74792e1a00dc3ee236ee6db 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
@@ -26,6 +26,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
index 1f82121df06181ad27478378a2323dbf478eacbe..04b144c869fc2a8f8be91a8252387e09d7fca2f2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
@@ -39,6 +39,7 @@ int main1 (int n, int * __restrict__ pib,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (ia[i] != pib[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
index b0f74083f2ba992620ebdf3a3874f6c5fa29f84d..18ab9538675b3fd227ae57fafc1bfd1e840b8607 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
@@ -41,6 +41,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i+7] != sb[i] + sc[i] || ia[i+3] != ib[i] + ic[i])
@@ -75,6 +76,7 @@ int main2 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i+3] != sb[i] + sc[i] || ia[i+3] != ib[i] + ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
index ad11d78a548735a67f76b3aa7f98731d88868b56..7c54479db1f684b9661d59816a3cd9b0e5f35619 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + ic[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
index 864b17ac640577753d8164f1ae3ea84181a553c1..73d3b30384ebc4f15b853a140512d004262db3ef 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
@@ -46,6 +46,7 @@ int main1 (int n,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (ia[i] != pib[i] + pic[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
index 315c9aba731ac28189cd5f463262fc973d52abe2..001671ebdc699ca950f6fd157bd93dea0871c5ab 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresultX[i] != uX[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
index 8c5c611947f720c9ef744c33bdd09a78967d4a4c..3e599b3462d13a8afcad22144100f8efa58ac921 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
@@ -44,6 +44,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresult[i] != (unsigned short)uX[i])
       abort ();
@@ -51,6 +52,7 @@ int main (void)
   
   foo2 (N);
   
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != (short)X[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c
index 75b210c1a21c56c114f25b354fb368bdbe9462d5..357d006177f60a5376597929846efbfaa787f90b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c
@@ -20,6 +20,7 @@ int main (int argc, const char **argv)
   int i;
   check_vect ();
   foo (31);
+#pragma GCC novector
   for (i = 0; i < 31; i++)
     if (ii[i] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c
index 229ce987db5f5a5b48177d0c9d74e416e417d3f6..dc4c7a64aee4f800997d62550f891b3b35f7b633 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c
@@ -23,6 +23,7 @@ int main (int argc, const char **argv)
   int i;
   check_vect ();
   foo (32);
+#pragma GCC novector
   for (i = 0; i < 32; i++)
     if (ii[i] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c
index 16665265c4062c0a3acb31e01a1473dea3125685..268e65458bf839e2403a7ae3e4c679e7df6dcac7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c
@@ -22,6 +22,7 @@ int main (int argc, const char **argv)
   int i;
   check_vect ();
   foo (33);
+#pragma GCC novector
   for (i = 0; i < 33; i++)
     if (ii[i] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c b/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c
index fca8ee0963860fa0a938db41c865e8225bf554c3..aa6e403b51ce8e9a29ddd39da5d252c9238ca7eb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c
@@ -28,10 +28,12 @@ int main (void)
    
   test1 (x + 16);
   
+#pragma GCC novector
   for (i = 0; i < 128; i++)
    if (x[i + 16] != 1234)
      abort ();
   
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     if (x[i] != 5678
        || x[i + 144] != 5678)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c b/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c
index c924b12b02fd438d039d0de6b6639813047839e7..95b16196007488f52b2ec9a2dfb5a4f24ab49bba 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c
@@ -28,10 +28,12 @@ int main (void)
    
   test1 (x + 16, 1234);
   
+#pragma GCC novector
   for (i = 0; i < 128; i++)
    if (x[i + 16] != 1234)
      abort ();
   
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     if (x[i] != 5678
        || x[i + 144] != 5678)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c
index f52f30aa24e83768f9beb03fb2ac7b17f37e0b77..129dab2ba1cfe8175644e0a2330349974efca679 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c
@@ -28,6 +28,7 @@ foo ()
       out[i] = res;
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)  
     if (out[i] != check_res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c
index 5aa977df633c9a5d24e248b0c02ec21751f78241..26ad6fa65c6d1489aa1b1ce9ae09ea6f81ad44d2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c
@@ -27,6 +27,7 @@ foo ()
       out[i] = res;
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)  
     if (out[i] != check_res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c
index f2ab30c63b2e28fbd453af68628d3491d6b4d034..4e3b8343ff7b4b1f43397fe2e71a8de1e89e9a74 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c
@@ -27,6 +27,7 @@ main1 ()
     }
 
   /* Check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != DIFF)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c
index 02f01cfb5791319d766f61465c2d1b64718674de..32c40fb76e325571347993571547fa12dd6255aa 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c
@@ -28,6 +28,7 @@ int main (void)
   foo ();
 
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[j][i] != j+i)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2.c
index 55023d594dd2e0cb18c3c9dc838ac831ede938da..a0a419c1547fc451b948628dafeb48ef2f836daa 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2.c
@@ -28,6 +28,7 @@ int main (void)
   foo ();
 
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[j][i] != j+i)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c
index 6b9fefedf3a5c9ee43c9201039987468710df62d..5ca835a2dda468bab1cbba969278a74beff0de32 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c
index 3a4dafee0720bd1a5e532eb2c0062c5eb78556b6..f9924fcb2b40531e8e7a4536d787b5d1b6e2b4ee 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c
index bb4e74b7b333ce036159db4cbf5aaa7107dc35d9..218df61cf4b18709cb891969ae53977081a86f1d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c
@@ -27,6 +27,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[k+i][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c
index 6adde9769215e8c98132ec91ab015e56b710c47a..36c9681201532960b3eecda2b252ebe83036a95a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j+=2) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c
index bf6abfef01fa96904adbf350935de3609550f2af..678d7e46a5513e0bdeaf0ec24f2469d58df2cbc5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j+=2) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c
index b75281bc3187f84824e1360ba92a18f627686aa5..81a4fc407086372c901b1ff34c75cada3e8efb8a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c
@@ -27,6 +27,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < i+1; j++) {
       if (image[k][j][i] != j+i+k)
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c
index fdc8a0544dd941f28a97a22e706bd3f5c3c9d2a3..231989917d7c4d5ff02b4f13a36d32c543114c37 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3.c
index 921db48a0f76763bc724d41f90c74472da8e25fb..c51787fe5753f4317b8c1e82c413b009e865ad11 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c
index fd841b182e3c81eed43a249fe401c6213814ea36..7ae931e39be5a4e6da45242b415459e073f1384a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c
index d26440d1a64e887aa2cd6ccf1330cb34d244ef12..bfadac0c5e70b61b23b15afa9271ac9070c267c1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c
index b915c4e370c55293ec00665ddd344b9ddafec3b4..1e2bbf1e7bac29563a530c4bbcd637d8541ddfca 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c
index 091c6826f66acb07dbc412ae687d72c84800146d..952bba4d911956c49a515276c536a87a68433d40 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-4.c b/gcc/testsuite/gcc.dg/vect/vect-outer-4.c
index 9614b777aded3c9d2f5229d27ce8e5cfbce0c7d2..8a803cd330f25324669467a595534100878f3ddc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-4.c
@@ -38,6 +38,7 @@ int main (void)
 
   foo ();
   
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < M; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c
index b656064697c93177cb9cd9aae8f9f278b9af40b0..587eabaf004705fb6d89882a43a628921361c30e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < M; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c b/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c
index 443a00d49e19dae2a0dd32d6e9e28d2bf5972201..0c9115f60a681f48125dfb2a6428202cc1ec7557 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo ();
   
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < M; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-5.c b/gcc/testsuite/gcc.dg/vect/vect-outer-5.c
index 10b558fd20905d2c8b9915d44a41e89b406028d9..67be075278847ea09e309c5d2ae2b4cf8c51b736 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-5.c
@@ -38,6 +38,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N-20; i++)
     {
       s = 0;
@@ -57,6 +58,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 4; i++)
     {
       if (B[i] != E[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-6.c b/gcc/testsuite/gcc.dg/vect/vect-outer-6.c
index 201ca8424828d6dabe1c6d90dff8396438a71ff4..13a5496f70c069f790d24d036642e0715a133b3b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-6.c
@@ -48,6 +48,7 @@ int main ()
   main1();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       s = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c
index 6299e9fed4233b3ec2c0b9892afdca42edf0bee0..8114934ed03332aaa682c6d4b5a7f62dfc33a51e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c
@@ -62,6 +62,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c
index d575229f2fb3bb6ece1fbc013019ebb0fbaa505e..9c4be4b9f658f7abd1e65b7b5a9124a5670f7ab9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c
@@ -66,6 +66,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c
index 9414e82f3edb1ea00587b916bfaf66847ac07574..4f1ccfccfa229105eb4e8a5c96a5ebfb13384c5d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c
@@ -66,6 +66,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c
index 0d181dfec24a212d430a1cac493ee914ebe25325..1c68c6738580d8670b7b108c52987d576efee4ac 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c
@@ -62,6 +62,7 @@ int main (void)
   foo ();
   fir ();
   
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c
index 217b32cd2bde12247f94f36787ccdf67bb014ba2..795bff5f3d5f1629b75cdc7fefdc48ff4c05ad8a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c
@@ -66,6 +66,7 @@ int main()
       t2[i] = z1[i]; z1[i] = 1.0f;
     }
   foo2 ();  /* scalar variant.  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (x1[i] != t1[i] || z1[i] != t2[i])
       abort ();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c
index 3ae1020936f960a5e46d6c74bee80d3b52df6db5..ead8d6f8e79187f0054d874b1d6e5fe3c273b5ca 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c
@@ -67,6 +67,7 @@ int main ()
       t2[i] = z1[i]; z1[i] = 1.0f;
     }
   foo2 (n);  /* scalar variant.  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (x1[i] != t1[i] || z1[i] != t2[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c
index 59e54db075254498b34f673198f8f4f373b728a5..a102ddd7d8d4d9182436646e1ca4d0bd1dd86479 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c
@@ -70,6 +70,7 @@ int main()
       t2[i] = z1[i]; z1[i] = 1.0f;
     }
   foo2 ();  /* scalar variant.  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (x1[i] != t1[i] || z1[i] != t2[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c
index ec1e1036f57022716361977fb419b0806e55123d..0e5388b46ce80b610d75e18c725b8f05881c244b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c
@@ -28,6 +28,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (int i = 0; i < 20; i++)
     {
       double suma = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c
index 53865d4737b1333c3eb49723d35d2f0e385049a3..3dce51426b5b83d85bc93aaaa67bca3e4c29bc44 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c
@@ -35,6 +35,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (int i = 0; i < 20; i++)
     {
       double suma = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
index 9a5141ee6ecce133ce85edcf75603e0b3ce41f04..a7ce95bcdcefc1b71d84426290a72e8891d8775b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
index f2d284ca9bee4af23c25726a54866bfaf054c46c..21fbcf4ed70716b47da6cbd268f041965584d08b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
@@ -30,6 +30,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c
index 222d854b2d6e3b606e83131862c2d23a56f11829..1e48dab5ccb4b13c82800d890cdd5a5a5d6dd295 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c
@@ -43,6 +43,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int res = BASE_B + BASE_C + i * 9;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c
index b25db881afbc668bb163915a893bfb8b83243f32..08a65ea551812ba48298884ec32c6c7c5e46bdd2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c
@@ -36,6 +36,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + i * 9) / 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c
index d31050ee926ac7e12c8bce99bf3edc26a1b11fbe..bd7acbb613f47fd61f85b4af777387ae88d4580a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c
@@ -38,6 +38,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + i * 9) / 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c
index 333d74ac3e7bdf99cc22b8fc7e919e39af7d2ca4..53fcfd0c06c14e5d9ddc06cdb3c36e2add364d3b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c
@@ -33,6 +33,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != ((((i * 3) & 0xef) | 0x80) + (i << 4)))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c
index ecb74d7793eeaa80b0d48479b2be6c68e64c61b0..aa58cd1c95789ad4f17317c5fa501385a185edc9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c
@@ -35,6 +35,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (unsigned char) ((((i * 3) & 0xef) | 0x80) + (i << 4)))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c
index 11546fe1a502a02c750ea955f483bc3a8b3a0ac7..c93cd4d09af5fc602b5019352073404bb1f5d127 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c
@@ -40,6 +40,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, e);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != i * 2 + 3
 	|| b[i] != i + 100
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c
index 82aec9f26517b2e00568f3240ff88d954af29bea..4bbb30ac8aca529d062e0daacfe539177ab92224 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (int *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c
index 0bcbd4f1b5315ec84e4aa3bd92e058b6ca9ea0ec..ad423f133c0bc25dfad42e30c34eceb5a8b852ab 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (int *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c
index 47f970d231ee61c74c7c4d5b3f9e9bab0673cfe2..81292d42f0d695f98b62607053daf8a5c94d98d3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c
@@ -40,6 +40,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, e);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != i * 2 + 3
 	|| b[i] != i + 100
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c
index 6e13f260f1124ef221bae41b31f8f52ae35162d3..361f77081a6d0a1d30051107f37aa4a4b764af4f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c
@@ -38,6 +38,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, e);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != i * 2 + 3
 	|| b[i] != i + 100
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c
index 187bdf159feaa770b8497c020bd3bc82becdea15..830f221019871a3df26925026b7b8c506da097db 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, 0x73);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (b[i] != ((i * 2 + 3) ^ 0x73)
 	|| a[i] != ((i * 11) | b[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c
index 6f89aacbebf5094c7b1081b12c7fcce1b97d536b..55de14161d85db871ae253b86086a1341eba275c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c
index a1e1182c6067db47445ad07b77e5c6e067858488..3d833561972da4a128c1bc01eff277564f084f14 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
index 03a6e6795ec68e5f9a35da93ca7a8d50a3012a21..6b3a2b88abfb6a5cd4587d766b889825c2d53d60 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
@@ -28,6 +28,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
index 0ef377f1f58a6f6466380a59c381333dbc4805df..60c9c2cc1ec272b46b7bb9a5cf856a57591425b0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
@@ -32,6 +32,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c
index 269df5387d20c859806da03aed91d77955fa651a..c2ab11a9d325c1e636003e61bdae1bab63e4cf85 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + i * 9) >> 1)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c
index 314a6828c53c161d2e63b88bdecf0cee9070a794..1d55e13fb1fbc4273d3a64da20dc1e80fb760296 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c
@@ -39,6 +39,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, D);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + D + i * 9) >> 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c
index 5baba09a575f0f316aac1a967e145dbbbdade5b4..36bfc68e05357359b8d9bdfe818910a3d0ddcb5a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c
@@ -40,6 +40,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int res = BASE_B + BASE_C + i * 9;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c b/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c
index 7980d4dd6438d9a063051c78608f73f1cea1c740..717850a166b2b811797cf9cdd0753afea676bf74 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != ib[i+2] + ib[i+6])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c b/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c
index f6fc134c8705567a628dcd62c053ad6f2ca2904d..5e5a358d34bece8bbe5092bf2d617c0995388634 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != ib[i+2] + ib[i+6])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c b/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c
index 33088fb090271c3b97fae2300e5d7fc86242e246..1b85f14351242304af71564660de7db757294400 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c
@@ -18,6 +18,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != ib[i] + ib[i+5])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c
index 64de22a1db4d7a8b354ad3755685171308a79a00..698ca5bf0672d3bfce0121bd2eae27abb2f75ca2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c
@@ -28,6 +28,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 1; i < 64; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c
index 086b48d9087c02ccbc0aaf36f575a3174f2916af..777051ee4a16a47f20339f97e13ad396837dea9a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c
@@ -29,6 +29,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 1; i < 64; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c
index 3389736ead98df2207a89de3ecb34a4a95faa6f5..aeb7da3877d7e0df77d6fee1a379f352ae2a5750 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c
@@ -29,6 +29,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 1; i < 64; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c
index c0b73cd8f3322ae01b7a1889657bc92d38fa4af6..f4ab59671b7934e3e6f5d893159a3618f4aa3898 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c
@@ -31,6 +31,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 2; i < 64; i+=2)
     if (b[i] != a[i] - a[i-2]
 	|| b[i+1] != a[i+1] - a[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c
index 7327883cc31ae4a37e5e4597b44b35e6376b4ed2..2fed60df68cdfbdc3ebf420db51d132ed335dc14 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c
@@ -32,6 +32,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 2; i < 64; i+=2)
     if (b[i] != a[i] - a[i-2]
 	|| b[i+1] != a[i+1] - a[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c
index f678b326f1043d2bce51b1d652de5ee2b55d6d0f..c170f4c345cdee1d5078452f9e301e6ef6dff398 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c
@@ -28,6 +28,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c, 63);
+#pragma GCC novector
   for (int i = 1; i < 63; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c b/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c
index 484efb1e8c826a8dafb43ed18e25794951418a9c..49ecbe216f2740329d5cd2169527a9aeb7ab844c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c
@@ -70,6 +70,7 @@ main (void)
       fns[i].div (b, a, N);
       fns[i].mod (c, a, N);
 
+#pragma GCC novector
       for (int j = 0; j < N; j++)
 	if (a[j] != (b[j] * p + c[j]))
           __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c b/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c
index dfd8ebace5610b22cc0da33647953ae33e084a42..0c4025abceb0e36092f5f7be1f813e4a6ebeda15 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c
@@ -88,6 +88,7 @@ main ()
   f4 (4095);
   if (a[0] != (-2048 << 8))
     abort ();
+#pragma GCC novector
   for (i = 1; i < 4096; i++)
     if (a[i] != ((1 + ((i - 2048) % 16)) << 8))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-shift-1.c b/gcc/testsuite/gcc.dg/vect/vect-shift-1.c
index 0c3086b1d683441e9b7d0096d4edce37e86d3cc1..d5fc4748758cea2762efc1977126d48df265f1c3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-shift-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-shift-1.c
@@ -21,6 +21,7 @@ int main ()
     A[i] = A[i] >> 3;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-shift-3.c b/gcc/testsuite/gcc.dg/vect/vect-shift-3.c
index a1b4b0752291e64d51206fca644e241c8e0063a9..0a9d562feb56ec69e944d0a3581853249d9642ae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-shift-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-shift-3.c
@@ -26,6 +26,7 @@ int main()
 
   array_shift ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (dst[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-shift-4.c b/gcc/testsuite/gcc.dg/vect/vect-shift-4.c
index 09f6e5a9584099b34e539b72dbe95e33da83cd20..d53faa52ee88b00d09eeefa504c9938084fa6230 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-shift-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-shift-4.c
@@ -26,6 +26,7 @@ int main()
 
   array_shift ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (dst[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-1.c b/gcc/testsuite/gcc.dg/vect/vect-simd-1.c
index 7c3feeeffae363b8ad42989a3569ca394519a414..09722ae090d0edb875cb91f5b20da71074aee7d3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-1.c
@@ -44,19 +44,23 @@ main ()
 {
   check_vect ();
   foo ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 1)
       abort ();
   x = 1;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 2)
       abort ();
   baz ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 3)
       abort ();
   qux ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 4)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-10.c b/gcc/testsuite/gcc.dg/vect/vect-simd-10.c
index e49566a3847a97dee412148bed63a4b69af8dd1b..af0999a726288890a525fe18966331e0cb5c0cad 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-10.c
@@ -76,6 +76,7 @@ main ()
   if (r * 16384.0f != 0.125f)
     abort ();
   float m = -175.25f;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s *= a[i];
@@ -91,6 +92,7 @@ main ()
   if (bar () != 592.0f)
     abort ();
   s = FLT_MIN_VALUE;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (s < a[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-11.c b/gcc/testsuite/gcc.dg/vect/vect-simd-11.c
index e7d8aa0eb03879fcf0a77a512afc3281fbeabe76..2620dfebbc0dde80d219660dcead43ae01c7c41f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-11.c
@@ -109,6 +109,7 @@ main ()
       || r2 != (unsigned short) r
       || r3 != (unsigned char) r)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -129,6 +130,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -152,6 +154,7 @@ main ()
       || r3 != (unsigned char) r)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -174,6 +177,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-12.c b/gcc/testsuite/gcc.dg/vect/vect-simd-12.c
index cdfec81a6e6d761b6959fd434fc3367ad01d7026..45b55384006b1674c36a89f4539d2ffee2e4236e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-12.c
@@ -77,6 +77,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-13.c b/gcc/testsuite/gcc.dg/vect/vect-simd-13.c
index aee5244d85e18e707163a34cb93a9cd5b1317fc3..3ef4aa9a991c0b6259f3b3057616c1aa298663d9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-13.c
@@ -79,6 +79,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -90,6 +91,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -103,6 +105,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -114,6 +117,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-14.c b/gcc/testsuite/gcc.dg/vect/vect-simd-14.c
index 9e73792ed7c36030b2f6885e1257a66991cdc4d1..c8a38f85ad4f29c9bbc664a368e23254effdd976 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-14.c
@@ -76,6 +76,7 @@ main ()
   if (r * 16384.0f != 0.125f)
     abort ();
   float m = -175.25f;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -89,6 +90,7 @@ main ()
   if (bar () != 592.0f)
     abort ();
   s = FLT_MIN_VALUE;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-15.c b/gcc/testsuite/gcc.dg/vect/vect-simd-15.c
index 91e34cd6428c4b841ab55226e49a5fc10444df57..6982a59da78276bad2779827ee0b8c1e1691e2e3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-15.c
@@ -109,6 +109,7 @@ main ()
       || r2 != (unsigned short) r
       || r3 != (unsigned char) r)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
@@ -129,6 +130,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
@@ -152,6 +154,7 @@ main ()
       || r3 != (unsigned char) r)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
@@ -174,6 +177,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-16.c b/gcc/testsuite/gcc.dg/vect/vect-simd-16.c
index ee4459a9341815c7ac4a5f6be4b9ca7679f13022..1ac13a5c5b4f568afa448af8d294d114533c061b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-16.c
@@ -41,12 +41,14 @@ main ()
   check_vect ();
   if (foo (a) != 64)
     abort ();
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != i)
       abort ();
     else
       a[i] = -8;
   bar (a);
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != i + 1)
       abort ();
@@ -54,6 +56,7 @@ main ()
       a[i] = -8;
   if (baz (a) != 64)
     abort ();
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != i + 2)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-17.c b/gcc/testsuite/gcc.dg/vect/vect-simd-17.c
index 951ba3afd9e332d7cd22addd273adf733e0fb71a..79b3602a6c08969a84856bf98ba59c18b45d5b11 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-17.c
@@ -52,12 +52,14 @@ doit (void)
   if (i != 11 || j != 101 || x != 10340 || niters != 550 || err)
     abort ();
   for (i = 1; i <= 10; i++)
+#pragma GCC novector
     for (j = 1; j <= 10 * i; j++)
       if (k[i][j] == 3)
 	k[i][j] = 0;
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -101,12 +103,14 @@ doit (void)
   if (i != 10 || j != 90 || x != 9305 || niters != 450 || err)
     abort ();
   for (i = 0; i < 10; i++)
+#pragma GCC novector
     for (j = 0; j < 10 * i; j++)
       if (k[i][j] == 3)
 	k[i][j] = 0;
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -156,6 +160,7 @@ doit (void)
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -199,12 +204,14 @@ doit (void)
   if (i != 11 || j != 10 || x != 9225 || niters != 25 || err)
     abort ();
   for (i = 1; i < 10; i += 2)
+#pragma GCC novector
     for (j = 1; j < i + 1; j++)
       if (k[i][j] == 3)
 	k[i][j] = 0;
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -244,11 +251,13 @@ doit (void)
       }
   if (i != 16 || j != 4 || x != 5109 || niters != 3 || err)
     abort ();
+#pragma GCC novector
   for (j = -11; j >= -41; j -= 15)
     if (k[0][-j] == 3)
       k[0][-j] = 0;
     else
       abort ();
+#pragma GCC novector
   for (j = -11; j >= -41; j--)
     if (k[0][-j] != 0)
       abort ();
@@ -288,6 +297,7 @@ doit (void)
       }
   if (/*i != 11 || j != 2 || */x != -12295 || niters != 28 || err)
     abort ();
+#pragma GCC novector
   for (j = -34; j <= -7; j++)
     if (k[0][-j] == 3)
       k[0][-j] = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-18.c b/gcc/testsuite/gcc.dg/vect/vect-simd-18.c
index cca350f5c21125fa4380611a1ba42be317fd9d85..e454abe88009a7572cfad1397bbd5770c7086a6b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-18.c
@@ -25,12 +25,14 @@ main ()
   int i, r;
   check_vect ();
   r = foo (78, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 78; i++)
     if (p[i] != 78 * i)
       abort ();
   if (r != (10000 / 78) * (10000 / 78 + 1) / 2 * 78 * 3)
     abort ();
   r = foo (87, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 87; i++)
     if (p[i] != 87 * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-19.c b/gcc/testsuite/gcc.dg/vect/vect-simd-19.c
index 67e25c0e07eeff8e3453a8a3b5e4df54b16f3f30..4d25b43f5dca9df6562a146e12e1c3542d094602 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-19.c
@@ -25,12 +25,14 @@ main ()
   int i, r;
   check_vect ();
   r = foo (78, 0, 10000, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 78; i++)
     if (p[i] != 78 * i)
       abort ();
   if (r != (10000 / 78) * (10000 / 78 + 1) / 2 * 78 * 3)
     abort ();
   r = foo (87, 0, 10000, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 87; i++)
     if (p[i] != 87 * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-20.c b/gcc/testsuite/gcc.dg/vect/vect-simd-20.c
index 57217c8a6ba4c15095f777cfa64aee9ffbe3e459..9ba7c3ce956a613e175ee6bd1f04b0531e6a79bd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-20.c
@@ -27,6 +27,7 @@ main ()
   check_vect ();
   r = foo (78, 0, 10000, p);
   for (j = 0; j < 7; j++)
+#pragma GCC novector
     for (i = 0; i < 10000 / 78; i++)
       if (p[j * (10000 / 78 + 1) + i] != 78 * i)
 	abort ();
@@ -34,6 +35,7 @@ main ()
     abort ();
   r = foo (87, 0, 10000, p);
   for (j = 0; j < 7; j++)
+#pragma GCC novector
     for (i = 0; i < 10000 / 87; i++)
       if (p[j * (10000 / 87 + 1) + i] != 87 * i)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-8.c b/gcc/testsuite/gcc.dg/vect/vect-simd-8.c
index 5d10ad90501835bf6cac2c2d81ee98bc6ce6db5b..a3c2decee2e36949950ca87a0a9942bc303ee633 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-8.c
@@ -77,6 +77,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-9.c b/gcc/testsuite/gcc.dg/vect/vect-simd-9.c
index 52eb24f680f1362ee93b7a22de5fd46d37119216..b652759e5ad5ec723a644cf9c6cb31677d120e2d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-9.c
@@ -79,6 +79,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -90,6 +91,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -103,6 +105,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -114,6 +117,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c
index cd65fc343f1893accb6f25a6222a22f64a8b4b2e..c44bfe511a5743198a647247c691075951f2258d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c
@@ -46,10 +46,12 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != (i < 30 ? 5 : i * 4 + 123))
       abort ();
   baz ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != (i < 30 ? 5 : i * 8 + 123))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
index 03acd375e089c3a430adbed8d71197f39d7c512b..ed63ff59cc05e5f0a240376c4ca0985213a7eb48 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
@@ -65,6 +65,7 @@ main ()
   check_vect ();
   fn3 ();
   fn1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
@@ -72,6 +73,7 @@ main ()
       abort ();
   fn3 ();
   fn2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c
index 29acde22f1783e8b11376d1ae2e702e09182350c..4974e5cc0ccdc5e01bf7a61a022bae9c2a6a048b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c
@@ -44,19 +44,23 @@ main ()
   if (sizeof (int) * __CHAR_BIT__ < 32)
     return 0;
   bar (a + 7);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i + 7] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
   bar (a);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
 #if 0
   baz (a + 7);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i + 7] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
   baz (a);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c
index 675ac7026b67edda2e573367643eb68063559bc2..866f1000f34098fb578001395f4a35e29cc8c0af 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c
@@ -32,6 +32,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != ((i >> 1) + (-3 * i)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c
index ffcbf9380d609d7a3ed7420a38df5c11f632b46a..feab989cfd595f9fdb839aa8bd3e8486751abf2f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c
@@ -44,6 +44,7 @@ main ()
   check_vect ();
   baz ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != 5 * (i & 7) * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c
index 18d68779cc5dd8faec77a71a8f1cfa9785ff36ed..fef48c5066918a42fa80f1e14f9800e28ddb2c96 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c
@@ -37,6 +37,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (d[i] != (i < 30 ? 5 : i * 4 + 123) || e[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c
index e9af0b83162e5bbd40e6a54df7d656ad956a8fd8..42414671c254ffcd93169849d7a982861aa5ac0b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c
@@ -40,6 +40,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (d[i] != (i < 30 ? 5.0f : i * 4 + 123.0f) || e[i] || f[i] != 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c
index 46da496524d99ff70e3673682040c0d5067afe03..620cec36e4c023e1f52160327a3d5ba21540ad3b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c
@@ -35,6 +35,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (d[i] != i * 4 + 123 || e[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c
index 6143a91eaf078d5b73e608bcfa080b70a5896f3d..440091d70e83be80574a6fcf9e034c53aed15786 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c
@@ -57,6 +57,7 @@ main ()
   check_vect ();
   baz ();
   bar (0);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 2 * i || b[i] != 6 - 7 * i
 	|| c[i] != 6 - 5 * i + ((i & 31) << 4))
@@ -64,6 +65,7 @@ main ()
     else
       a[i] = c[i];
   bar (17);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 6 - 5 * i + ((i & 31) << 4)
 	|| b[i] != 6 - 7 * i
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c
index a0316e9e5813ac4c9076aaf5f762b9cc5dc98b1e..62246e28837272ef1e18860912643422f6dce018 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c
@@ -57,6 +57,7 @@ main ()
   check_vect ();
   baz ();
   bar (0);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 2 * i || b[i] != 6 - 7 * i
 	|| c[i] != 6 - 5 * i + ((i & 31) << 4))
@@ -64,6 +65,7 @@ main ()
     else
       a[i] = c[i];
   bar (17);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 6 - 5 * i + ((i & 31) << 4)
 	|| b[i] != 6 - 7 * i
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c
index f414285a170c7e3469fdad07256ef09e1b46e17b..11ea2132689137cfb7175b176e39539b9197a330 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c
@@ -76,6 +76,7 @@ main ()
   check_vect ();
   fn3 ();
   fn1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
@@ -83,6 +84,7 @@ main ()
       abort ();
   fn3 ();
   fn2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c
index a968b9ce91a17c454f66aa76ec8b094e011e1c74..0112e553f8f130b06ee23a8c269a78d7764dcfff 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c
@@ -76,6 +76,7 @@ main ()
   check_vect ();
   fn3 ();
   fn1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
@@ -83,6 +84,7 @@ main ()
       abort ();
   fn3 ();
   fn2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c
index da47a824cb6046dcd9808bd7bd80161dbc0531b5..1531553651ceb6185ce16ab49f447496ad923408 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c
@@ -46,6 +46,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c
index d53b7669a6b50d6bc27e646d08af98ca6fd093e3..b8d094723f9035083a244cfcee98d3de46512206 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c
@@ -33,6 +33,7 @@ main1 ()
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c
index 37ff3abe97d60d9b968addaee7812cb0b05b6f44..0f1344c42017fc2a5bfda3a9c17d46fbdd523127 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c
@@ -44,6 +44,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c
index 9237a9074deeb72c4d724771d5397d36593ced7c..b0d36486714159c88419ce9e793c27a398ddcbcb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c
@@ -39,6 +39,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c
index 62a8a51e2034b1065a4438a712a80e0a7c149985..1c9906fa65237a7b9e0bbd2162e9c56b6e86074f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c
@@ -39,6 +39,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i] != arr[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
index f64a1347350a465b9e7a0c123fe2b5bcbc2bf860..dc9ad168c7161c15f6de4a57d53e301e6754e525 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
@@ -33,6 +33,7 @@ main1 ()
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].a
@@ -49,6 +50,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c
index 2add5b489915cffda25f3c59b41bd1c44edf16ce..d35e427996f472ce9fffdf9570fb6685c3115037 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c
@@ -62,6 +62,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c
index 2b7a1a4bb77f4dce44958c50864a0a6ecac90c53..a9524a9d8e5cb152ec879db68f316d5568161ec1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c
@@ -51,6 +51,7 @@ main1 ()
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c
index e487de8b4e7d8e092054a73b337a345ba00e4e02..95ff41930d3f1ab95f0a20947e0527f39c78e715 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c
@@ -71,6 +71,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c
index 0f3347e8bb2200f48927b21938e7ebd348a73ada..b2dd1aee116d212bda7df0b0b1ca5470bd35ab83 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c
@@ -56,6 +56,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-float.c b/gcc/testsuite/gcc.dg/vect/vect-strided-float.c
index 6d6bfae7bc5ce4cbcaeaadc07856773e6d77bdb4..716cce3eecbec0390f85f393e9cc714bd1a1faae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-float.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-float.c
@@ -22,6 +22,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (a[i*2] != b[2*i+1] * c[2*i+1] - b[2*i] * c[2*i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c b/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c
index 82727e595c166a52c8a1060339259ec7c39b594f..59008499192388c618f3eb38d91d9dcb5e47e3d9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c
@@ -35,6 +35,7 @@ main1 (s *arr, ii *iarr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c
index 0fac615011601d45c64e83be1a6ec1e1af407192..350223fa23ace9253e8e56bbbbd065e575639b19 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c
@@ -35,6 +35,7 @@ main1 (s *arr, ii *iarr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c b/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c
index 8c560480bc4eac50c381ed51cfbc6ccc696d0424..e988c5c846911a875a188cbb6ec8a4e4b80b787a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c
@@ -35,6 +35,7 @@ main1 (s * __restrict__  pIn, s* __restrict__ pOut)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (q->a != p->a + 5
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c b/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c
index dcae9c26d8621dd393f00d81257262a27913d7a8..37b8eb80ce0ce0dfe1ce5f9e5c13618bffbe41ff 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c
@@ -24,6 +24,7 @@ main (int argc, char **argv)
     }
   loop ();
   __asm__ volatile ("" : : : "memory");
+#pragma GCC novector
   for (int i = 0; i < N; i++)
     {
       if (out[i] != i*2 + 7)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c
index 6be939eea167992aade397ada0ee50d4daa43066..a55cd32e5896be4c1592e4e815baccede0f30e82 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c
@@ -38,6 +38,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != a[i] + 3
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c
index 9d1ad579e6a607f34ec953395f741f180474a77a..170f23472b967cedec88c1fa82dfb898014a6d09 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c
@@ -34,6 +34,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != a[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c
index a081d4e396e36a4633eb224d927543c7379d3108..11c2f2c4df60d8238830c188c3400a324444ab4d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c
@@ -22,6 +22,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (a[i*2] != b[i] + c[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store.c
index e8303b63bd4812e0643dc96888eeee2ea8ca082a..dfdafe8e8b46ea33e3c9ed759687788784a22607 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store.c
@@ -19,12 +19,14 @@ int main()
   float src[] = {1, 2, 3, 4, 5, 6, 7, 8};
   float dest[64];
   check_vect ();
+#pragma GCC novector
   for (stride = 0; stride < 8; stride++)
     {
       sumit (dest, src, src, stride, 8);
       if (!stride && dest[0] != 16)
 	abort();
       else if (stride)
+#pragma GCC novector
 	for (i = 0; i < 8; i++)
 	  if (2*src[i] != dest[i*stride])
 	    abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c
index 7d264f39c60d668927232a75fe3843dbee087aa5..004db4e1f84735d8857c5591453158c96f213246 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c
@@ -25,6 +25,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c
index 63a4da797cbeb70bde0b1329fe39f510c24a990c..5d94e8f49bc41431df9de2b809c65e48cc269fa0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c
@@ -18,6 +18,7 @@ check1 (s *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i].a != C (i)
 	|| res[i].b != A (i)
@@ -30,6 +31,7 @@ check2 (unsigned short *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i] != (unsigned short) (A (i) + B (i) + C (i)))
       abort ();
@@ -40,6 +42,7 @@ check3 (s *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i].a != i
 	|| res[i].b != i
@@ -52,6 +55,7 @@ check4 (unsigned short *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i] != (unsigned short) (A (i) + B (i)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c
index ee8ea0d666db4b7671cd3f788fc7f6056189f3da..547ad9b9ee3d35802d3f8d7b9c43d578fb14f828 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c
@@ -34,6 +34,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c
index fe41dbd9cf452b9452084e988d48ede232f548bf..8f58e24c4a8b8be2da0a6c136924a370b9952691 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c
@@ -29,6 +29,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c
index a88c0f08456cf278c4fa5a5b9b0a06900cb7c9be..edb13d1b26f5963113917e8882f199c7dd4d8de7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c
@@ -37,6 +37,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c
index cddd0c88f42a99f526362ca117e9386c013c768d..0c2bd9d8cbde5e789474595db519d603b374e74c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c
@@ -29,6 +29,7 @@ main1 (unsigned short *arr, ii *iarr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i] != arr[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c
index ab841205e4f5b3c0aea29f60045934e84644a6a7..fd7920031dcf6df98114cfde9a56037d655bb74d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c
@@ -25,6 +25,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b
@@ -41,6 +42,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c
index 0afd50db0b8de7758faf7f2bff14247a27a7ee38..ae2345a9787804af0edc45d93f18e75d159326b0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c
@@ -24,6 +24,7 @@ main1 (s *arr)
       ptr++;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c
index ef532251465e5b1eb16e820fc30844a7995b82a9..c7a1da534baea886fe14add1220c105153d6bb80 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c
@@ -39,6 +39,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c
index 04f18fbb591d9dc50d56b20bce99cb79903e5e27..2a068d821aebee8ab646ff1b4c33209dc5b2fcbf 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c
@@ -37,6 +37,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c
index b5eb87f4b96e1a577930654f4b1709024256e90e..ac7bf000196b3671044de57d88dd3a32080b68a8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c
@@ -41,6 +41,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
@@ -64,6 +65,7 @@ main1 (s *arr)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c
index 69b970ef33b9dd8834b10baf7085b88a0c441a46..0a6050ae462332b8d74043fce094776892a80386 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c
@@ -53,6 +53,7 @@ main1 (s *arr, int n)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     { 
       if (res[i].c != arr[i].b + arr[i].c
@@ -67,6 +68,7 @@ main1 (s *arr, int n)
    }
 
   /* Check also that we don't do more iterations than needed.  */
+#pragma GCC novector
   for (i = n; i < N; i++)
     {
       if (res[i].c == arr[i].b + arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c
index f1d05a5aaf9f6885b921c5ae3370d9c17795ff82..9ead5a776d0b1a69bec804615ffe7639f61f993f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c
@@ -39,6 +39,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b + arr[i].c
@@ -62,6 +63,7 @@ main1 (s *arr)
     }
   
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c
index b703e636b49f8c7995c4c463b38b585f79acbdf2..176c6a784bc73e0300e3114a74aba05dc8185cac 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c
@@ -44,6 +44,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c
index 764f10d0adaca01e664bb45dd4da59a0c3f8a2af..cef88f6bf8246a98933ff84103c090664398cedd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c
@@ -42,6 +42,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c
index 35bab79ce826ac663eabb1a1036ed7afd6d33e8b..c29c3ff6cdc304e5447f0e12aac00cd0fcd7b61e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c
@@ -44,6 +44,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c
index ea35835465c8ed18be1a0c9c4f226f078a51acaa..2d5c10a878c7145972aeaa678e0e11c1cf1b79dd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c
@@ -27,6 +27,7 @@ main (void)
   foo (X, Y);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c
index df6b999c5a4d88c8b106829f6f9df8edbe00f86f..4848215a7a8f5fea569c0bfaf5909ac68a81bbf2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c
@@ -32,6 +32,7 @@ main (void)
   foo (X, Y, Z);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i] != resultY[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c
index 36861a059e03b1103adc2dca32409878ca95611e..2a94c73907e813019fcfbc912a1599f7423e2a47 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c
@@ -40,6 +40,7 @@ main (void)
   foo (X, Y);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i].a != result[i].a)  
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c
index bfbb48b21ee632243f2f5ba63d7eeec0f687daef..b0e9d6f90391cfc05911f7cc709df199d7fbbdf1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c
@@ -26,6 +26,7 @@ main (void)
   foo (X, &X[2]);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N+2; i++)
     {
       if (X[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c
index d775f320e0c1e2c6de2e77a1d8df621971fc3d2d..27d762490908829d54cdbb81247926c2f677fe36 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c
@@ -40,6 +40,7 @@ main (void)
   foo (X, Y);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i].a != result[i].a)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c
index 0d6e64081a17fed8d9b9239f9ba02ffa1b7a758d..f3abc9407f52784e391c495152e617b1f0753e92 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c
@@ -38,6 +38,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (SIGNEDNESS_1 short) ((BASE + i * 5)
 				      * (BASE + OFFSET + i * 4)))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c
index 4c95dd2017922904122aee2925491e9b9b48fe8e..dfbb2171c004565045d91605354b5d6e7219ab19 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c
@@ -17,6 +17,7 @@ foo (int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * 2333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * 2333)
       abort ();
@@ -32,6 +33,7 @@ bar (int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * (short) 2333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * (short) 2333)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c
index 4075f815cea0ffbad1e05e0ac8b9b232bf3efe61..c2ad58f69e7fe5b62a9fbc55dd5dab43ba785104 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c
@@ -17,6 +17,7 @@ foo (unsigned int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * 2333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * 2333)
       abort ();
@@ -32,6 +33,7 @@ bar (unsigned int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = (unsigned short) 2333 * b[i];
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * (unsigned short) 2333)
       abort ();
@@ -47,6 +49,7 @@ baz (unsigned int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * 233333333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * 233333333)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c
index c4ac88e186dbc1a8f36f4d7567a9983446557eea..bfdcbaa09fbd42a16197023b09087cee6642105a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c
@@ -43,12 +43,14 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF)
       abort ();
 
   bar ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c
index ebbf4f5e841b75cb1f5171ddedec85cd327f385e..e46b0cc3135fd982b07e0824955654f0ebc59506 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c
@@ -38,6 +38,7 @@ int main (void)
 
   foo (COEF2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF || out2[i] != in[i] + COEF2)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
index 91a8a290263c9630610a48bce3829de753a4b320..6b094868064e9b86c40018363564f356220125a5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
@@ -33,6 +33,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
index 7e1f7457f1096d4661dcc724a59a0511555ec0e3..444d41169b5c198c6fa146c3bb71336b0f6b0432 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
@@ -33,6 +33,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
index 2e28baae0b804cf76ad74926c35126df98857482..14411ef43eda2ff348de9c9c1540e1359f20f55b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c
index d277f0b2b9492db77237a489cc8bea4749d8d719..f40def5dddf58f6a6661d9c286b774f954126840 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c
index f50358802587d32c1d6e73c0f6e06bd8ff837fc2..63866390835c55e53b6f90f305a71bbdbff85afa 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c
@@ -34,6 +34,7 @@ int main (void)
 
   foo (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
index 03d1379410eb927a3ef705afc6523230eb9fb58b..78ad74b5d499c23256e4ca38a82fefde8720e4e9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
@@ -34,6 +34,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c
index 5f6c047849b8625f908bc7432b803dff5e671cd3..26d5310807781eb5a7935c51e813bc88892f747c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c
@@ -32,6 +32,7 @@ foo (short *src, int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
@@ -60,6 +61,7 @@ foo (short *src, int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c
index 46512f2c69ba50521d6c7519a1c3d073e90b7436..7450d2aef75d755db558e471b807bfefb777f472 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c
@@ -23,6 +23,7 @@ foo (char *src, int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c
index 212b5dbea18a91bd59d2caf9dc4f4cc3fe531762..ae086b88e7e83f2864d6e74fa94301f7f8ab62f6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c
@@ -23,6 +23,7 @@ foo (unsigned short *src, unsigned int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c
index 844e5df3269d0a774d2ab8a88de11f17271d6f60..a8e536adee0f04611115e97725608d0e82e9893c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c
@@ -27,6 +27,7 @@ foo (unsigned char *src, unsigned int *dst1, unsigned int *dst2)
   s = src;
   d1 = dst1;
   d2 = dst2;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c b/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c
index c4d2de1a64e2ebc151c4ade2327c8fceb7ba04e4..414bd9d3e1279db574d860b7a721e4310d4972da 100644
--- a/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c
+++ b/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sb[i] != 5)
@@ -31,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 105)




-- 

[-- Attachment #2: rb17497.patch --]
[-- Type: text/plain, Size: 369254 bytes --]

diff --git a/gcc/testsuite/g++.dg/vect/pr84556.cc b/gcc/testsuite/g++.dg/vect/pr84556.cc
index e0655536f7a0a1c32a918f4b112604a7e6b5e389..e2c97e917bed3e7c5e709f61384d75588f522308 100644
--- a/gcc/testsuite/g++.dg/vect/pr84556.cc
+++ b/gcc/testsuite/g++.dg/vect/pr84556.cc
@@ -15,6 +15,7 @@ main ()
   };
   x ();
   x ();
+#pragma GCC novector
   for (int i = 0; i < 8; ++i)
     if (y[i] != i + 3)
       __builtin_abort ();
diff --git a/gcc/testsuite/g++.dg/vect/simd-1.cc b/gcc/testsuite/g++.dg/vect/simd-1.cc
index 76ce45d939dca8ddbc4953885ac71cf9f6ad298b..991db1d5dfee2a8d89de4aeae659b797629406c1 100644
--- a/gcc/testsuite/g++.dg/vect/simd-1.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-1.cc
@@ -88,12 +88,14 @@ main ()
   s.foo (x, y);
   if (x != 1024 || s.s != 2051 || s.t != 2054)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 2 * i)
       abort ();
   s.bar (x, y);
   if (x != 2049 || s.s != 4101 || s.t != 4104)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 4 * i)
       abort ();
@@ -102,12 +104,14 @@ main ()
   s.baz (x, y);
   if (x != 1024 || s.s != 2051 || s.t != 2054)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 2 * i)
       abort ();
   s.qux (x, y);
   if (x != 2049 || s.s != 4101 || s.t != 4104)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1025; ++i)
     if (a[i] != 4 * i)
       abort ();
diff --git a/gcc/testsuite/g++.dg/vect/simd-2.cc b/gcc/testsuite/g++.dg/vect/simd-2.cc
index 6f5737b7e40b5c2889f26cb4e4c3445e1c3822dd..0ff57e3178d1d79393120529ceea282498015d09 100644
--- a/gcc/testsuite/g++.dg/vect/simd-2.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-2.cc
@@ -110,6 +110,7 @@ main ()
   foo (a, b);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -121,6 +122,7 @@ main ()
   if (bar ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
@@ -132,6 +134,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -143,6 +146,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-3.cc b/gcc/testsuite/g++.dg/vect/simd-3.cc
index d9981719f58ced487c4ffbbecb7c8a5564165bc7..47148f050ed056a2b3340f1e60604606f6cc1311 100644
--- a/gcc/testsuite/g++.dg/vect/simd-3.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-3.cc
@@ -75,6 +75,7 @@ main ()
   foo (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -86,6 +87,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -99,6 +101,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -110,6 +113,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-4.cc b/gcc/testsuite/g++.dg/vect/simd-4.cc
index 8f3198943a7427ae3d4800bfbc5575c5849627ff..15b1bc1c99d5d42ecca330e063fed19a50fb3276 100644
--- a/gcc/testsuite/g++.dg/vect/simd-4.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-4.cc
@@ -77,6 +77,7 @@ main ()
   foo (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-5.cc b/gcc/testsuite/g++.dg/vect/simd-5.cc
index dd817b8888b1b17d822f576d6d6b123f338e984f..31c2ce8e7129983e02237cdd32e41ef0a8f25f90 100644
--- a/gcc/testsuite/g++.dg/vect/simd-5.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-5.cc
@@ -110,6 +110,7 @@ main ()
   foo (a, b, r);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -121,6 +122,7 @@ main ()
   if (bar ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
@@ -132,6 +134,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += i;
@@ -143,6 +146,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s.s += 2 * i;
diff --git a/gcc/testsuite/g++.dg/vect/simd-6.cc b/gcc/testsuite/g++.dg/vect/simd-6.cc
index 883b769a9b854bd8c1915648d15ea8996d461f05..7de41a90cae3d80c0ccafad8a9b041bee89764d3 100644
--- a/gcc/testsuite/g++.dg/vect/simd-6.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-6.cc
@@ -118,6 +118,7 @@ main ()
   foo (a, b);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -129,6 +130,7 @@ main ()
   if (bar<int> ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -140,6 +142,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -151,6 +154,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-7.cc b/gcc/testsuite/g++.dg/vect/simd-7.cc
index 1467849e0c6baa791016b039ca21cfa2cc63ce7f..b543efb191cfbf9c561b243996cdd3a4b66b7533 100644
--- a/gcc/testsuite/g++.dg/vect/simd-7.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-7.cc
@@ -79,6 +79,7 @@ main ()
   foo<int *, int &> (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -90,6 +91,7 @@ main ()
   if (bar<int> () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -103,6 +105,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -114,6 +117,7 @@ main ()
   if (qux<int &> () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-8.cc b/gcc/testsuite/g++.dg/vect/simd-8.cc
index 8e297e246bd41a2f63469260f4fdcfcb5a68a62e..4d76a97a97233cecd4d35797a4cc52f70a4c5e3b 100644
--- a/gcc/testsuite/g++.dg/vect/simd-8.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-8.cc
@@ -77,6 +77,7 @@ main ()
   foo (a, b, r);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-9.cc b/gcc/testsuite/g++.dg/vect/simd-9.cc
index 4c5b0508fbd79f0e6aa311072062725536d8e2a3..5d1a174e0fc5425f33769fd017b4fd6a51a2fb14 100644
--- a/gcc/testsuite/g++.dg/vect/simd-9.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-9.cc
@@ -110,6 +110,7 @@ main ()
   foo (a, b, r);
   if (r.s != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -121,6 +122,7 @@ main ()
   if (bar ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -132,6 +134,7 @@ main ()
   if (r.s != 1024 * 1023 / 2)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
@@ -143,6 +146,7 @@ main ()
   if (qux ().s != 1024 * 1023)
     abort ();
   s.s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i].s != s.s)
diff --git a/gcc/testsuite/g++.dg/vect/simd-clone-6.cc b/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
index fb00e8816a5fc157b780edd1d7064804a67d6373..2d9bb62555ff6c9473db2d1b754aed0123f2cb62 100644
--- a/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
+++ b/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
@@ -30,6 +30,7 @@ do_main ()
   #pragma omp simd
   for (i = 0; i < N; i++)
     e[i] = foo (c[i], d[i], f[i]);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != 6 * i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/O3-pr70130.c b/gcc/testsuite/gcc.dg/vect/O3-pr70130.c
index f8b84405140e87a2244ae9f5db6136af2fe9cf57..17ce6c392546f7e46a6db9f30f76dcaedb96d08c 100644
--- a/gcc/testsuite/gcc.dg/vect/O3-pr70130.c
+++ b/gcc/testsuite/gcc.dg/vect/O3-pr70130.c
@@ -90,6 +90,7 @@ main (void)
   for (i = 0; i < 8; i++)
     Loop_err (images + i, s, -1);
 
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (__builtin_memcmp (&expected, images + i, sizeof (expected)))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/Os-vect-95.c b/gcc/testsuite/gcc.dg/vect/Os-vect-95.c
index 97e516ed68e6166eb5f0631004d89f8eedde1cc4..8039be89febdb150226b513ffe267f6065613ccb 100644
--- a/gcc/testsuite/gcc.dg/vect/Os-vect-95.c
+++ b/gcc/testsuite/gcc.dg/vect/Os-vect-95.c
@@ -10,6 +10,7 @@ void bar (float *pd, float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-1.c
index 793c41f6b724d2b6f5ecca6511ea8504e1731a8c..3dc5e746cd0d5c99dcb0c88a05b94c73b44b0e65 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-1.c
@@ -29,6 +29,7 @@ main1 (int dummy)
     }
 
   /* check results: */ 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-16.c b/gcc/testsuite/gcc.dg/vect/bb-slp-16.c
index 82fae06e3244a9bbb4a471faecdc5f1174970229..76430e0915e2d6ad342dae602fd22337f4559b63 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-16.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-16.c
@@ -37,6 +37,7 @@ main1 (int dummy)
 
   a = 0;
   /* check results: */ 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + a
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-2.c
index fcf1cd327e0b20582e3512faacfebfe6b7db7278..cb1b38dda14785c6755d311683fbe9703355b39a 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-2.c
@@ -28,6 +28,7 @@ main1 (int dummy)
     }
 
   /* check results:  */ 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-24.c b/gcc/testsuite/gcc.dg/vect/bb-slp-24.c
index ca049c81ba05482813dbab50ab3f4c6df94570e4..6de8dd8affce8e6f6ad40a36d6a163fc25b3fcf9 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-24.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-24.c
@@ -44,6 +44,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (dst[i] != A * i)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-25.c b/gcc/testsuite/gcc.dg/vect/bb-slp-25.c
index 7a9cf955e3e540e08b42cd80872bb99b53cabcb2..d44d585ff25aed7394945cff64f20923b5600061 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-25.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-25.c
@@ -45,6 +45,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (dst[i] != A * i + i + 8)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-26.c b/gcc/testsuite/gcc.dg/vect/bb-slp-26.c
index df529673f6c817620a8423ab14724fe4e72bca49..fde062e86c7a01ca29d6e7eb8367414bd734500b 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-26.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-26.c
@@ -45,6 +45,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (dst[i] != A * src[i] + src[i+8])
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-27.c b/gcc/testsuite/gcc.dg/vect/bb-slp-27.c
index bc27f2fca04de8f837ce51090657c8f2cc250c24..3647dd97c69df8a36fc66ca8e9988e215dad71eb 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-27.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-27.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo (A);
 
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     {
       if (dst[i] != A * i)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-28.c b/gcc/testsuite/gcc.dg/vect/bb-slp-28.c
index 8749a1f22a6cc1e62a15bd988c50f6f63f26a0a2..c92b687aa44705118f21421a817ac3067e2023c6 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-28.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-28.c
@@ -56,6 +56,7 @@ int main (void)
 
   foo (A);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (dst[i] != A * i
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-29.c b/gcc/testsuite/gcc.dg/vect/bb-slp-29.c
index b531350ff3073b7f54b9c03609d6c8279e0374db..9272f02b2aa14f52b04e3d6bb08f15be17ce6a2f 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-29.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-29.c
@@ -45,6 +45,7 @@ int main (void)
 
   foo (dst, src, N, 8);
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (dst[i] != A * src[i] + B * src[i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-42.c b/gcc/testsuite/gcc.dg/vect/bb-slp-42.c
index 1dfa301184aad4c8edf00af80fb861562c941049..69fd0968491544f98d1406ff8a166b723714dd23 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-42.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-42.c
@@ -36,6 +36,7 @@ main ()
   foo (a, b);
 
   for (int i = 0; i < 4; ++i)
+#pragma GCC novector
     for (int j = 0; j < ARR_SIZE; ++j)
       if (a[i][j] != (i + 1) * ARR_SIZE - j + 20 * i)
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c
index ccb4ef659e47e3524d0dd602fa9d1291847dee3c..c8024429e9c44d924f5bb2af2fcc6b5eaa1b7db7 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-cond-1.c
@@ -35,6 +35,7 @@ int main ()
 
   foo (a, 4);
 
+#pragma GCC novector
   for (i = 1; i < N; i++)
     if (a[i] != i%4 + 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c
index 5a9fe423691e549ea877c42e46e9ba70d6ab5b00..b556a1d627865f5425e644df11f98661e6a85c29 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-1.c
@@ -45,6 +45,7 @@ DEF_LOOP (unsigned)
 	asm volatile ("" ::: "memory");			\
       }							\
     f_##SIGNEDNESS (a, b, c);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       if (a[i] != (BASE_B + BASE_C + i * 29) >> 1)	\
 	__builtin_abort ();				\
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c
index 15a94e680be4568232e31956732d7416549a18ff..d1aa161c3adcfad1d916de486a04c075f0aaf958 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-over-widen-2.c
@@ -44,6 +44,7 @@ DEF_LOOP (unsigned)
 	asm volatile ("" ::: "memory");			\
       }							\
     f_##SIGNEDNESS (a, b, C);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       if (a[i] != (BASE_B + C + i * 15) >> 1)		\
 	__builtin_abort ();				\
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c
index 47b1a43665130e11f902f5aea11b01faf307101b..a3ff0f5b3da2f25ce62a5e9fabe5b38e9b952fa9 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c
@@ -37,6 +37,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c
index c50560b53696c340b0c071296f002f65bcb91631..05fde3a7feba81caf54acff82870079b87b7cf53 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pattern-2.c
@@ -39,6 +39,7 @@ int main ()
 
   foo (a, b, 8);
 
+#pragma GCC novector
   for (i = 1; i < N; i++)
     if (a[i] != i%8 + 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c
index fc76700ced3d4f439b0f12eaf9dbc2b1fec72c20..c186c7b66c65e5f62edee25a924fdcfb25b252ab 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pow-1.c
@@ -16,6 +16,7 @@ int
 main (void)
 {
   f (a);
+#pragma GCC novector
   for (int i = 0; i < 4; ++i)
     {
       if (a[i] != (i + 1) * (i + 1))
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c
index ac89883de22c9f647041fb373618dae5b7c036f3..dda74ebe03c35811ee991a181379e688430d8412 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pr101615-2.c
@@ -16,6 +16,8 @@ int main()
 	for (int e = 0; e <= 4; e++)
 	  a[e + 1] |= 3;
     }
+
+#pragma GCC novector
   for (int d = 0; d < 6; d++)
     if (a[d] != res[d])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c b/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c
index ee12136491071c6bfd7678c164df7a1c0a71818f..77d3ae7d424e208409c5baf18c6f39f294f7e351 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-pr65935.c
@@ -51,6 +51,7 @@ int main()
   rephase ();
   for (i = 0; i < 32; ++i)
     for (j = 0; j < 3; ++j)
+#pragma GCC novector
       for (k = 0; k < 3; ++k)
 	if (lattice->link[i].e[j][k].real != i
 	    || lattice->link[i].e[j][k].imag != i)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c b/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c
index 40a02ed1309e2b6b4dc44cf56018a4bb71cc519f..bea3b92ba775a4e8b547d4edccf3ae4a4aa50b40 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-subgroups-1.c
@@ -31,9 +31,11 @@ main (int argc, char **argv)
   __asm__ volatile ("" : : : "memory");
   test (a, b);
   __asm__ volatile ("" : : : "memory");
+#pragma GCC novector
   for (int i = 0; i < 4; i++)
     if (a[i] != i+4)
       abort ();
+#pragma GCC novector
   for (int i = 4; i < 8; i++)
     if (a[i] != 0)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c
index cc50a5bde01315be13058ac3409db07f4ce6de5f..085cb986b99c00cb1449db61bb68ccec4e7aa0ba 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-31.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -45,6 +46,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -58,6 +60,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -71,6 +74,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c
index b82b8916be125b194a02aa74cef74f821796de7f..f07893458b658fc728703ffc8897a7f7aeafdbb3 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-33.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c
index 51847599fa62a88ecc090673ab670f7c0a8ac711..cfe7b8536892caa5455e9440505187f21fa09e63 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/i386/costmodel-vect-68.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -42,6 +43,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -55,6 +57,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -68,6 +71,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c
index c00a5bec6d5f9c325beb7e79a4520b76843f0a43..9e57cae9751d7231a2156acbb4c63c49dc0e8b95 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c
@@ -48,6 +48,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
@@ -73,6 +74,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
@@ -92,6 +94,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out2[i*2] !=  (float) (in[i*2] * 2 + 11)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c
index e27152eb91ef2feb6e547e5a00b0fc8fe40e2cee..4afbeea9927676b7dbdf78480671056e8777b183 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/4; i++)
     {
       if (tmp.b[2*i] != 5
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c
index c092848dfc9d093e6fc78ce171bb4c1f59a0cf85..9cfae91534f38248a06fb60ebbe05c84a4baccd2 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c
@@ -58,6 +58,7 @@ main (void)
   foo ();
 
   /* Check resiults. */ 
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     {
       if (cf[i].f1 != res1[i])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c
index c57f065cccdd6cba4f96efe777318310415863c9..454a714a309163a39128bf20ef7e8426bd26da15 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c
index 9bb81e371725ea0714f91eee1f5683c7c014e64c..f69e5c2ee5383abb0a242938426ef09621e54043 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c
@@ -31,6 +31,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c
index d062d659ffb0138859333f3d7e375bd83fc1c99a..cab6842f72d150b83d525abf7a23971817b9082e 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31c.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c
index dc170a0530c564c884bc739e6d82874ccddad12c..05c28fe75e6dc67acba59e73d2b8d3363cd47c9b 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c
@@ -22,6 +22,7 @@ __attribute__((noipa)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c
index ce27e4f082151b630376bd9cfbbabb78e80e4387..648e19f1071f844cc9f968414952897c12897688 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68a.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c
index dae5a78808f1d6a5754adb8e7ff4b22608ea33b4..badf5dff70225104207b65a6fe4a2a79223ff1ff 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68b.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c
index 8221f9e49f8875f453dbc12ca0da4a226e7cf62d..d71a202d8d2b6edaee8b71a485fa68ff56e983ba 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-68c.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c
index 2fc751ce70da35b055c64d9e8bec222a4b4feb8b..f18da3fc1f0c0df27c5bd9dd7995deae19352620 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c
@@ -26,6 +26,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
index 5da4343198c10e3d35c9f446bc96f1b97d123f84..cbbfbb24658f8a11d4695fe5e16de4e4cfbdbc7e 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
@@ -28,6 +28,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (pib[i - OFF] != ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
index 1fc14666f286c1f1170d66120d734647db7686cf..2a672122bcc549029c95563745b56d74f41d9a82 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
@@ -26,6 +26,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != ic[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c
index 1a1a86878405bd3bf240e1417ad68970a585c562..9c659f83928046df2b40c2dcc20cdc12fad6c4fe 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c
@@ -59,6 +59,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c
index cc50a5bde01315be13058ac3409db07f4ce6de5f..085cb986b99c00cb1449db61bb68ccec4e7aa0ba 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -45,6 +46,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -58,6 +60,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -71,6 +74,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c
index 5e4affae7db61a0a07568603f1c80aefaf819adb..2f48955caa19f61c12e4c178f60f564c2e277bee 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c
index 51847599fa62a88ecc090673ab670f7c0a8ac711..cfe7b8536892caa5455e9440505187f21fa09e63 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -42,6 +43,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -55,6 +57,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -68,6 +71,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c
index cfea8723ba2731c334c1fffd749dc157d8f68e36..d9f19d90431ab1e458de738411d7d903445cd04d 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c
@@ -32,6 +32,7 @@ main1 ()
       d[i] = i * i;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + i + i - a[i]) >= 0.0001f)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c
index 6d67d12f9961f5cbc53d6f7df5240ac2178a08ac..76bb044914f462cf6d76b559b751f1338a3fc0f8 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c
@@ -44,12 +44,14 @@ main1 ()
       b[i] = ((i & 1) ? -4 * i : 4 * i) + 0.25;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1 + i)
       abort ();
     else
       a[i] = 131.25;
   f2 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c
index 495c0319c9dabd65436b5f6180114dfa8967f071..ad22f6e82b3c3312c9f10522377c4749e87ce3aa 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-1.c
@@ -65,24 +65,28 @@ main1 ()
       d[i] = i * i;
     }
   f1 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + (i & 3) + i - a[i]) >= 0.0001f)
       abort ();
     else
       a[i] = 131.25;
   f2 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + (i & 1) + i - a[i]) >= 0.0001f)
       abort ();
     else
       a[i] = 131.25;
   f3 ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + i - a[i]) >= 0.0001f)
       abort ();
     else
       a[i] = 131.25;
   f4 (10);
+#pragma GCC novector
   for (i = 0; i < 60; i++)
     if (fabsf (((i & 2) ? -4 * i : 4 * i) + 1 + (i % 3) + i - a[i]) >= 0.0001f)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c
index 274ff0f9942c5aff6c6aaca5243ef21bd8708856..d51e17ff656b7cc7ef3d87d207f78aae8eec9373 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-vect-call-2.c
@@ -82,36 +82,42 @@ main1 ()
       b[i] = ((i & 1) ? -4 * i : 4 * i) + 0.25;
     }
   f1 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1 + (i & 3))
       abort ();
     else
       a[i] = 131.25;
   f2 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1 + (i & 1))
       abort ();
     else
       a[i] = 131.25;
   f3 ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i) + 1)
       abort ();
     else
       a[i] = 131.25;
   f4 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
     else
       a[i] = 131.25;
   f5 (16);
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
     else
       a[i] = 131.25;
   f6 ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != ((i & 1) ? -4 * i : 4 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c b/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c
index 893e521ed8b83768699bc9b70f7d33b91dd89c9b..07992cf72dcfa4da5211a7a160fb146cf0b7ba5c 100644
--- a/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c
+++ b/gcc/testsuite/gcc.dg/vect/fast-math-vect-complex-3.c
@@ -47,6 +47,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
   {
     if (c[i] != res[i])
diff --git a/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c b/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
index 71f2db3e0f281c4cdb1bf89315cc959382459e83..fc710637ac8142778b18810cefadf00dda3f39a6 100644
--- a/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
+++ b/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
@@ -56,6 +56,7 @@ main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a != result[2*i] || out[i].b != result[2*i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c
index 82b37d4ca71344d15e00e0453dae6470c8d5ba9b..aeaf8146b1a817379a09dc3bf09f542524522f99 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-1.c
@@ -32,6 +32,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c
index cafb96f52849c2a9b51591753898207beac9bdd0..635df4573c7cc0d4005421ce12d87b0c6511a228 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-2.c
@@ -31,6 +31,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<200*N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c
index b376fb1d13ec533eebdbcb8092f03b4790de379a..494ff0b6f8f14f3d3b6aba1ada60d6442ce10811 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-3.c
@@ -31,6 +31,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c
index 64c8dfc470ab02f3ea323f13b6477d6370210937..ba766a3f157db3f1a3d174ca6062fe7ddc60812c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-noreassoc-outer-5.c
@@ -38,6 +38,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c
index 277b73b4934a7bd689f8b2856b7813567dd762bc..d2eee349a42cd1061917c828895e45af5f730eb1 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10.c
@@ -38,6 +38,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c
index 325e201e2dac7aff88f4cb7aff53a7ee25b18631..cf7d605f23ba94b7a0a71526db02b59b517cbacc 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10a.c
@@ -42,6 +42,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c
index d9cf28b22d9712f4e7f16ed18b89b0875d94daee..cfb837dced894ad8a885dcb392f489be381a3065 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-10b.c
@@ -41,6 +41,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c
index f5aeac981870d0e58679d5574dd12e2c4b40d23a..d650a9d1cdc7af778a2dac8e3e251527b825487d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-11.c
@@ -34,6 +34,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c
index b5f8c3c88e4d0a6562ba867ae83c1ab120077111..e9ec4ca0da316be7d4d02138b0313a9ab087a601 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-12.c
@@ -33,6 +33,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c
index 9d642415a133eefb420ced6642ac6d32a0e7e33f..13aac4a939846f05826f2b8628258c0fbd2e413a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-15.c
@@ -32,6 +32,7 @@ int main (void)
   foo (3);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c
index f00132ede83134eb10639b77f5617487356e2ef1..c7c2fa8a5041fbc67747b4d4b98571f71f9599b6 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-16.c
@@ -41,6 +41,7 @@ int main (void)
   res = foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum += i;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c
index 2dfdd59e14ef9685d22b2b8c34d55052ee747e7e..ba904a6c03e5a94f4a2b225f180bfe6a384f21d1 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-17.c
@@ -47,6 +47,7 @@ int main (void)
   res = foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum += (b[i] - c[i]);
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c
index 49dd5207d862fd1de81b59013a07ea74ee9b5beb..464fcb1fc310a7366ef6a55c5ed491a7410720f8 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-18.c
@@ -35,6 +35,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c
index 934eadd3e326b950bf33eac03136868089fa1371..5cd4049d08c84ab9f3503a3f1577d170df8ce6c3 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-19.c
@@ -36,6 +36,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c
index 42e218924fdbeb7c21830537a55364ad5ca822ac..a9ef1c04c70510797006d8782dcc6abf2908e4f4 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-20.c
@@ -38,6 +38,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c
index 75b7f066abae1496caa98080cdf4355ca1383091..72e53c2bfb0338a48def620159e384d423399d0b 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-21.c
@@ -41,6 +41,7 @@ int main (void)
   res = foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum += i;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c
index ec04bc28f6279c0cd6a6c174698aedc4312c7ab5..b41b2c322b91ab0a9a06ab93acd335b53f654a6d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-22.c
@@ -38,6 +38,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c
index ee39891efea2231362dc776efc4193898f06a02c..91e57a5963ac81964fb0c98a28f7586bf98df059 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-3.c
@@ -35,6 +35,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c
index f8ef02d25190a29315e6909b9d89642f699b6c6a..a6c29956f3b84ee0def117bdc886219bf07ec2d0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-4.c
@@ -39,6 +39,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c
index 2ef43cd146bdbbe6e7a8b8f0a66a11a1b8b7ec08..f01fcfb5c34906dbb96d050068b528192aa0f79a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-5.c
@@ -37,6 +37,7 @@ int main (void)
   foo ();
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c
index 7ac4e1ed949caecd6d2aaa7bf6d33d459ff74f8c..cf529efa31d6a10d3aaad69570f3f3ae102d327c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6-global.c
@@ -39,6 +39,7 @@ int main (void)
     a[i] = foo (b,i);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = b[i];
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c
index ad2f472f1ed100912386d51ef999353baf50dd93..9c1e251f6a79fd34a820d64393696722c508e671 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-6.c
@@ -38,6 +38,7 @@ int main (void)
     a[i] = foo (b,i);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = b[i];
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c
index f56bd2e50af42f20f57791b2e3f0227dac13ee82..543ee98b5a44c91c2c249df0ece304dd3282cc1a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-7.c
@@ -63,6 +63,7 @@ int main (void)
   res = foo (2);
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       if (a[i] != bar ())
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c
index 7c9113bc0f0425139c6723105c78cc8306d82f8c..0ed589b47e6bc722386a9db83e6397377f0e2069 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-8.c
@@ -34,6 +34,7 @@ int main (void)
   foo (a);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c
index cea495c44808373543242d8998cdbfb9691499ca..62fa559e6ce064065b3191f673962a63e874055f 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9.c
@@ -34,6 +34,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c
index 9e1f7890dd1ebc14b4a9a88488625347dcabd38a..96ffb4ce7b4a8a06cb6966acc15924512ad00f31 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9a.c
@@ -38,6 +38,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c
index ee65ceb6f92a185ca476afcc0b82295ab0034ba5..d76752c0dba3bbedb2913f87ed4b95f7d48ed2cf 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-outer-9b.c
@@ -37,6 +37,7 @@ int main (void)
   foo (N);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c
index fe9e7e7ab4038acfe02d3e6ea9c4fc37ba207043..00d0eca56eeca6aee6f11567629dc955c0924c74 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-30.c
@@ -24,6 +24,7 @@ main1 ()
    }
 
   /* check results:  */
+#pragma GCC novector
    for (j = 0; j < N; j++)
    {
     for (i = 0; i < N; i++)
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c
index dc5f16fcfd2c269a719f7dcc5d2d0d4f9dbbf556..48b6a9b0681cf1fe410755c3e639b825b27895b0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-slp-31.c
@@ -24,6 +24,7 @@ main1 ()
    }
 
   /* check results:  */
+#pragma GCC novector
  for (i = 0; i < N; i++)
    {
     for (j = 0; j < N; j++) 
diff --git a/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c b/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c
index 131d2d9e03f44ed680cb49c71673908511c9236f..57ebd5c92a4297940bbdfc051c8a08d99a3b184e 100644
--- a/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-scevccp-vect-iv-2.c
@@ -22,6 +22,7 @@ int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c
index d2ae7976781e20c6e4257e0ad4141ceb21ed711b..a1311504d2f8e67c275e8738b3c201187cd02bc0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c
@@ -39,6 +39,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -52,6 +53,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -65,6 +67,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -78,6 +81,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c
index 1edad1ca30eeca0a224a61b5035546615a360fef..604d4b1bc6772f7bf9466b204ebf43e639642a02 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-34.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c
index 7663ca7281aacc0ba3e685887e3c20be97322148..3eada6057dd91995709f313d706b6d94b8fb99eb 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-36.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != s.cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c
index 243e01e6dadf48d976fdd72bedd9547746cf73b5..19fbe331b57fde1412bfdaf7024e8c108f913da5 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-64.c
@@ -54,6 +54,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[i])
@@ -64,6 +65,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[i][1][1][j] != ib[i])
@@ -74,6 +76,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (id[i][1][j+1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c
index 581554064b572b7eb26d5f9852d4d13622317c7e..d51ef31aeac0d910a69d0959cc0da46d92bd7af9 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-65.c
@@ -44,6 +44,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[2][i][j])
@@ -64,6 +65,7 @@ int main1 ()
   /* check results: */
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[j] != ib[2][i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c
index e339590bacb494569558bfe9536c43f0d6339b8e..23cd3d5c11157f6735ed219c16075007f26034e5 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-66.c
@@ -29,6 +29,7 @@ int main1 ()
     {
       for (j = 0; j < N; j++)
         {
+#pragma GCC novector
            if (ia[2][6][j] != 5)
                 abort();
         }
@@ -45,6 +46,7 @@ int main1 ()
     {
       for (j = 2; j < N+2; j++)
         {
+#pragma GCC novector
            if (ia[3][6][j] != 5)
                 abort();
         }
@@ -62,6 +64,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[2][1][6][j+1] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c
index c403a8302d842a8eda96d2ee0fb25a94e8323254..36b79c2907cc1b41664cdca5074d458e36bdee98 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-68.c
@@ -35,6 +35,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -48,6 +49,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -61,6 +63,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -74,6 +77,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c
index 34317ccb624a4ca75c612c70a5b5105bb85e272b..a0e53d5fef91868dfdbd542dd0a98dff92bd265b 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c
@@ -52,6 +52,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 5)
@@ -65,6 +66,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = NINTS; i < N - 1; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 6)
@@ -81,6 +83,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       for (j = 0; j < N; j++)
@@ -100,6 +103,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N - NINTS; i++)
     {
       for (j = 0; j < N - NINTS; j++)
diff --git a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c
index 2199d11e2faee58663484a4d4e6ed06be508188b..f79b74d15700ccd86fc268e039efc8d7b8d245c2 100644
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c
+++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-outer-4h.c
@@ -31,7 +31,9 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < M; j++) {
       if (a[j][i] != 4)
         abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c
index d0e4ec2373b66b76235f53522c50ac1067ece4d2..8358b6e54328336f1bd0f6c618c58e96b19401d5 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-2.c
@@ -21,6 +21,7 @@ main1 (void)
     a[i] = (b[i] > 0 ? b[i] : 0);
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
   {
     if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c
index d718b5923b11aaee4d259c62cab1a82c714cc934..ae5d23fab86a4dd363e3df7310571ac93fc93f81 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-111.c
@@ -20,6 +20,7 @@ main1 (void)
     a[i] = (b[i] > 0 ? b[i] : 0);
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
   {
     if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c
index 7316985829f589dbbbe782b037096b2c5bd2be3c..4aaff3430a4cb110d586da83e2db410ae88bc977 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] >= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c
index e87bcb8b43d3b82d30f8d3c2340b4968c8dd8da4..c644523a0047a6dfaa0ec8f3d74db79f71b82ec7 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c
@@ -21,6 +21,7 @@ int main ()
     A[i] = ( A[i] > MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c
index 9bd583fde6e71096b9cfd07d2668a9f32b50bf17..5902f61f954c5f65929616b0f924b8941cac847c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] <= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c
index 9bd583fde6e71096b9cfd07d2668a9f32b50bf17..5902f61f954c5f65929616b0f924b8941cac847c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] <= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c
index dcb09b7e7c7a3c983763fb3e57ea036e26d2d1ba..7f436a69e99bff6cebbc19a35c2dbbe5dce94c5a 100644
--- a/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c
+++ b/gcc/testsuite/gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] < MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c b/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c
index ebde13167c863d91376d7c17d65191c047a7c9e7..d31157713bf3d0f0fadf305053dfae0612712b8d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c
+++ b/gcc/testsuite/gcc.dg/vect/no-tree-dom-vect-bug.c
@@ -21,6 +21,7 @@ int main ()
   check_vect ();
   main1 (32);
 
+#pragma GCC novector
   for (si = 0; si < 32; ++si)
     if (stack_vars_sorted[si] != si)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c b/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c
index e965910d66d06434a367f08553fde8a733a53e41..8491d5f0070233af5c0baf64f9123d270fe1d51c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c
+++ b/gcc/testsuite/gcc.dg/vect/no-tree-pre-slp-29.c
@@ -22,6 +22,7 @@ main1 (unsigned short *in)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -48,6 +49,7 @@ main2 (unsigned short * __restrict__ in, unsigned short * __restrict__ out)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] !=  in[i*4]
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c b/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c
index a92ec9c1656275e1b0e31cfe1dcde3be78dfac7e..45cca1d1991c126fdef29bb129c443aae249a295 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c
@@ -41,6 +41,7 @@ int main(void)
   with_restrict(a + 1);
   without_restrict(b + 1);
 
+#pragma GCC novector
   for (i = 0; i < 1002; ++i) {
     if (a[i] != b[i])
       abort();
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c
index ce934279ddfe073a96ef8cd7e0d383ca979bda7a..73b92177dabf5193d9d158a92e0383d389b67c82 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-101.c
@@ -30,6 +30,7 @@ int main1 (int x, int y) {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != a[i] || p->b[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c
index d9e0529e73f0a566220020ad671f432f3e72299f..9a3fdab128a3bf2609018f92a38a7a6de8b7270b 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102.c
@@ -35,6 +35,7 @@ int main1 (int x, int y) {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != 1) 
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c
index 581438823fd2d1fa83ae4cb770995ff30c18abf8..439347c3bb10711911485a9c1f3bc6abf1c7798c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-102a.c
@@ -34,6 +34,7 @@ int main1 (int x, int y) {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != 1)
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c
index 6f4c84b4cd2b928c5df21a44e910620c1937e863..f59eb69d99fbe2794f3f6c6822cc87b209e8295f 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-37.c
@@ -24,6 +24,7 @@ int main1 (char *y)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != cb[i])
@@ -38,6 +39,7 @@ int main1 (char *y)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != s.q[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c
index 18d4d1bbe6d0fdd357a95ab997437ab6b9a46ded..6b4542f5948bc32ca736ad92328a0fd37e44334c 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-43.c
@@ -11,6 +11,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
@@ -66,6 +67,7 @@ main2 (float *pa, float *pb, float *pc)
     }   
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (b[i] * c[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c
index cad507a708f3079f36e2c85c594513514a1e172b..5db05288c81bf5c4c158efbc50f6d4862bf3f335 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-45.c
@@ -11,6 +11,7 @@ void bar (const float *pa, const float *pb, const float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c
index a364c7b0d6f1f19292b937eedf0854163c1f549a..a33375f94fec55183493f96c84099224b7f4af6f 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-49.c
@@ -11,6 +11,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c
index 69e921b95031b9275e6f4edeb120f247e93646a3..5ebb8fea0b7cb101f73fa2b079f4a37092eb6f2d 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-51.c
@@ -11,6 +11,7 @@ void bar (const float *pa, const float *pb, const float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c
index b1c1d86587e5bd9b1dcd364ad495ee7a52ccfb2b..b6d251ec48950dacdecc4d141ebceb4cedaa0755 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-53.c
@@ -11,6 +11,7 @@ void bar (const float *pa, const float *pb, const float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c
index 83dc628f0b0803eab9489101c6f3c26f87cf429c..6291dd9d53c33160a0aacf05aeb6febb79fdadf0 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-57.c
@@ -12,6 +12,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c
index 9524454d367db2a45ab744d55a9d32a32e773140..d0334e3ba90f511fd6c0bc5faa72d78c07510cd9 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-61.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c
index 6e9ddcfa5ce61f7a53829e81cab277165ecd1d91..37e474f8a06f1f7df7e9a83290e865d1baa12fce 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-79.c
@@ -23,6 +23,7 @@ main1 (float *pa, float *pb, float *pc)
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c
index da3506a4cecdce11bf929a98c533026d31fc5f96..e808c87158076d3430eac124df9fdd55192821a8 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-1.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N - 1; i++)
     {
       if (ia[i] != 0)
@@ -34,6 +35,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N - 1; i++)
     {
       if (ib[i] != res[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c
index 89958378fca009fba6b59509c2ea7f96fa53805b..25a3409ae5e2ebdb6f7ebabc7974cd49ac7b7d47 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-2.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != 0)
@@ -34,6 +35,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ib[i] != res[i])
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c
index e5914d970e3596a082e015725ba99369670db4e7..d1d70dda2eb9b3d7b462ebe0c30536a1f2744af4 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-depend-3.c
@@ -130,6 +130,7 @@ main1 (void)
 	case 7: f8 (); break;
 	}
 
+#pragma GCC novector
       for (i = 0; i <= N; i++)
 	{
 	  int ea = i + 3;
diff --git a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c
index 8cc69ab22c5ab7cc193eeba1aa50365db640b254..407b683961ff0f5caaa1f168913fb7011b7fd2a3 100644
--- a/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c
+++ b/gcc/testsuite/gcc.dg/vect/no-vfa-vect-dv-2.c
@@ -37,6 +37,7 @@ int main ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N-20; i++)
     {
       if (A[i] != D[i+20])
@@ -50,6 +51,7 @@ int main ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     {
       if (B[i] != C[i] + 5)
@@ -63,6 +65,7 @@ int main ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 4; i++)
     {
       if (C[i] != E[i])
diff --git a/gcc/testsuite/gcc.dg/vect/pr101445.c b/gcc/testsuite/gcc.dg/vect/pr101445.c
index f8a6e9ce6f7fa514cacd8b58d9263636d1d28eff..143156f2464e84e392c04231e4717ef9ec7d8a6e 100644
--- a/gcc/testsuite/gcc.dg/vect/pr101445.c
+++ b/gcc/testsuite/gcc.dg/vect/pr101445.c
@@ -21,6 +21,7 @@ int main()
 {
   check_vect ();
   foo ();
+#pragma GCC novector
   for (int d = 0; d < 25; d++)
     if (a[d] != 0)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr103581.c b/gcc/testsuite/gcc.dg/vect/pr103581.c
index d072748de31d2c6beb5d6dd86bf762ee1f4d0182..92695c83d99bf048b52c8978634027bcfd71c13d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr103581.c
+++ b/gcc/testsuite/gcc.dg/vect/pr103581.c
@@ -39,6 +39,7 @@ main()
   unsigned int *resusiusi = maskgatherusiusi (16, idx4, data4);
   unsigned long long *resudiudi = maskgatherudiudi (16, idx8, data8);
   unsigned int *resusiudi = maskgatherusiudi (16, idx8, data4);
+#pragma GCC novector
   for (int i = 0; i < 16; ++i)
     {
       unsigned int d = idx4[i];
diff --git a/gcc/testsuite/gcc.dg/vect/pr105219.c b/gcc/testsuite/gcc.dg/vect/pr105219.c
index 4bca5bbba30a9740a54e6205bc0d0c8011070977..2289f5e1a633b56218d089d81528599d4f1f282b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr105219.c
+++ b/gcc/testsuite/gcc.dg/vect/pr105219.c
@@ -22,6 +22,7 @@ int main()
       {
         __builtin_memset (data, 0, sizeof (data));
         foo (&data[start], n);
+#pragma GCC novector
         for (int j = 0; j < n; ++j)
           if (data[start + j] != j)
             __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr108608.c b/gcc/testsuite/gcc.dg/vect/pr108608.c
index e968141ba03639ab86ccf77e5e9ad5dd56a66e0d..fff5c1a89365665edc3478263ee909b2b260e178 100644
--- a/gcc/testsuite/gcc.dg/vect/pr108608.c
+++ b/gcc/testsuite/gcc.dg/vect/pr108608.c
@@ -13,6 +13,7 @@ main (void)
 {
   check_vect ();
   float ptr[256];
+#pragma GCC novector
   for (int j = 0; j < 16; ++j)
     {
       for (int i = 0; i < 256; ++i)
diff --git a/gcc/testsuite/gcc.dg/vect/pr18400.c b/gcc/testsuite/gcc.dg/vect/pr18400.c
index 012086138f7199fdf2b4b40666795f7df03a89d2..dd96d87be99287da19df4634578e2e073ab42455 100644
--- a/gcc/testsuite/gcc.dg/vect/pr18400.c
+++ b/gcc/testsuite/gcc.dg/vect/pr18400.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/pr18536.c b/gcc/testsuite/gcc.dg/vect/pr18536.c
index 6d02675913b68c811f4e3bc1f71df830d7f4e2aa..33ee3a5ddcfa296672924678b40474bea947b9ea 100644
--- a/gcc/testsuite/gcc.dg/vect/pr18536.c
+++ b/gcc/testsuite/gcc.dg/vect/pr18536.c
@@ -22,6 +22,7 @@ int main (void)
   main1 (0, x);
 
   /* check results:  */
+#pragma GCC novector
   while (++i < 4)
     {
       if (x[i-1] != 2)
diff --git a/gcc/testsuite/gcc.dg/vect/pr20122.c b/gcc/testsuite/gcc.dg/vect/pr20122.c
index 4f1b7bd6c1e723405b6625f7c7c890a46d3272bc..3a0387e7728fedc9872cb385dd7817f7f5cf07ac 100644
--- a/gcc/testsuite/gcc.dg/vect/pr20122.c
+++ b/gcc/testsuite/gcc.dg/vect/pr20122.c
@@ -27,6 +27,7 @@ static void VecBug2(short Kernel[8][24])
             Kernshort2[i] = Kernel[k][i];
 
     for (k = 0; k<8; k++)
+#pragma GCC novector
         for (i = 0; i<24; i++)
             if (Kernshort2[i] != Kernel[k][i])
                 abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr25413.c b/gcc/testsuite/gcc.dg/vect/pr25413.c
index e80d6970933e675b6056e5d119c6eb0e817a40f9..266ef3109f20df7615e85079a5d2330f26cf540d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr25413.c
+++ b/gcc/testsuite/gcc.dg/vect/pr25413.c
@@ -26,6 +26,7 @@ int main (void)
   check_vect ();
   
   main1 ();
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (a.d[i] != 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr30784.c b/gcc/testsuite/gcc.dg/vect/pr30784.c
index 840dbc5f1f139aafe012904a774c1e5b9739b653..ad1fa05d8edae5e28a3308f39ff304de3b1d60c1 100644
--- a/gcc/testsuite/gcc.dg/vect/pr30784.c
+++ b/gcc/testsuite/gcc.dg/vect/pr30784.c
@@ -21,6 +21,7 @@ int main ()
   check_vect ();
   main1 (32);
 
+#pragma GCC novector
   for (si = 0; si < 32; ++si)
     if (stack_vars_sorted[si] != si)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr37539.c b/gcc/testsuite/gcc.dg/vect/pr37539.c
index dfbfc20c5cbca0cfa7158423ee4a42e5976b56fe..c7934eb384739778a841271841fd8b7777ee19be 100644
--- a/gcc/testsuite/gcc.dg/vect/pr37539.c
+++ b/gcc/testsuite/gcc.dg/vect/pr37539.c
@@ -17,6 +17,7 @@ ayuv2yuyv_ref (int *d, int *src, int n)
   }
 
   /* Check results.  */
+#pragma GCC novector
   for(i=0;i<n/2;i++){
    if (dest[i*4 + 0] != (src[i*2 + 0])>>16
        || dest[i*4 + 1] != (src[i*2 + 1])>>8
diff --git a/gcc/testsuite/gcc.dg/vect/pr40074.c b/gcc/testsuite/gcc.dg/vect/pr40074.c
index 143ee05b1fda4b0f858e31cad2ecd4211530e7b6..b75061a8116c34f609eb9ed59256b6eea87976a4 100644
--- a/gcc/testsuite/gcc.dg/vect/pr40074.c
+++ b/gcc/testsuite/gcc.dg/vect/pr40074.c
@@ -30,6 +30,7 @@ main1 ()
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N-1; i++)
     {
       if (res[i] != arr[i].b + arr[i].d + arr[i+1].b)
diff --git a/gcc/testsuite/gcc.dg/vect/pr45752.c b/gcc/testsuite/gcc.dg/vect/pr45752.c
index 4ddac7ad5097c72f08b948f64caa54421d4f55d0..e8b364f29eb0c4b20bb2b2be5d49db3aab5ac39b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr45752.c
+++ b/gcc/testsuite/gcc.dg/vect/pr45752.c
@@ -146,6 +146,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (output[i] != check_results[i]
         || output2[i] != check_results2[i])
diff --git a/gcc/testsuite/gcc.dg/vect/pr45902.c b/gcc/testsuite/gcc.dg/vect/pr45902.c
index ac8e1ca6d38159d3c26497a414b638f49846381e..74510bf94b82850b6492c6d1ed0abacb73f65a16 100644
--- a/gcc/testsuite/gcc.dg/vect/pr45902.c
+++ b/gcc/testsuite/gcc.dg/vect/pr45902.c
@@ -34,6 +34,7 @@ main ()
 
   main1 ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i] != a[i] >> 8)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr46009.c b/gcc/testsuite/gcc.dg/vect/pr46009.c
index 9649e2fb4bbfd74e134a9ef3d068d50b9bcb86c0..fe73dbf5db08732cc74115281dcf6a020f893cb6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr46009.c
+++ b/gcc/testsuite/gcc.dg/vect/pr46009.c
@@ -49,6 +49,7 @@ main (void)
       e[i] = -1;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     {
       int g;
@@ -59,6 +60,7 @@ main (void)
       e[i] = -1;
     }
   bar ();
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     {
       int g;
diff --git a/gcc/testsuite/gcc.dg/vect/pr48172.c b/gcc/testsuite/gcc.dg/vect/pr48172.c
index a7fc05cae9119076efad4ca13a0f6fd0aff004b7..850e9b92bc15ac5f51fee8ac7fd2c9122def66b6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr48172.c
+++ b/gcc/testsuite/gcc.dg/vect/pr48172.c
@@ -25,6 +25,7 @@ int main() {
     array[HALF+i] = array[2*i] + array[2*i + 1];
 
   /* see if we have any failures */
+#pragma GCC novector
   for (i = 0; i < HALF - 1; i++)
     if (array[HALF+i] != array[2*i] + array[2*i + 1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr51074.c b/gcc/testsuite/gcc.dg/vect/pr51074.c
index 4144572126e9de36f5b2e85bb56ff9fdff372bce..d6c8cea1f842e08436a3d04af513307d3e980d27 100644
--- a/gcc/testsuite/gcc.dg/vect/pr51074.c
+++ b/gcc/testsuite/gcc.dg/vect/pr51074.c
@@ -15,6 +15,7 @@ main ()
       s[i].a = i;
     }
   asm volatile ("" : : : "memory");
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (s[i].b != 0 || s[i].a != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr51581-3.c b/gcc/testsuite/gcc.dg/vect/pr51581-3.c
index 76c156adf9d0dc083b7eb5fb2e6f056398e2b845..25acceef0e5ca6f8c180a41131cd190b9c84b533 100644
--- a/gcc/testsuite/gcc.dg/vect/pr51581-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr51581-3.c
@@ -97,17 +97,20 @@ main ()
     }
   f1 ();
   f2 ();
+#pragma GCC novector
   for (i = 0; i < 8; i++)
     if (a[i] != b[i] / 8 || c[i] != d[i] / 3)
       abort ();
   f3 ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < 8; i+= 2)
     if (a[i] != b[i] / 8 || a[i + 1] != b[i + 1] / 4
 	|| c[i] != d[i] / 3 || c[i + 1] != d[i + 1] / 5)
       abort ();
   f5 ();
   f6 ();
+#pragma GCC novector
   for (i = 0; i < 8; i+= 2)
     if (a[i] != b[i] / 14 || a[i + 1] != b[i + 1] / 15
 	|| c[i] != d[i] / (i == 6 ? 13 : 6) || c[i + 1] != d[i + 1] / 5)
diff --git a/gcc/testsuite/gcc.dg/vect/pr51581-4.c b/gcc/testsuite/gcc.dg/vect/pr51581-4.c
index 632c96e7481339a6dfac92913a519ad5501d34c4..f6234f3e7c09194dba54af08832171798c7d9c09 100644
--- a/gcc/testsuite/gcc.dg/vect/pr51581-4.c
+++ b/gcc/testsuite/gcc.dg/vect/pr51581-4.c
@@ -145,17 +145,20 @@ main ()
     }
   f1 ();
   f2 ();
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     if (a[i] != b[i] / 8 || c[i] != d[i] / 3)
       abort ();
   f3 ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < 16; i+= 2)
     if (a[i] != b[i] / 8 || a[i + 1] != b[i + 1] / 4
 	|| c[i] != d[i] / 3 || c[i + 1] != d[i + 1] / 5)
       abort ();
   f5 ();
   f6 ();
+#pragma GCC novector
   for (i = 0; i < 16; i+= 2)
     if (a[i] != b[i] / 14 || a[i + 1] != b[i + 1] / 15
 	|| c[i] != d[i] / ((i & 7) == 6 ? 13 : 6) || c[i + 1] != d[i + 1] / 5)
diff --git a/gcc/testsuite/gcc.dg/vect/pr53185-2.c b/gcc/testsuite/gcc.dg/vect/pr53185-2.c
index 6057c69a24a81be20ecc5582685fb4516f47803d..51614e70d8feac0004644b2e6bb7deb52eeeefea 100644
--- a/gcc/testsuite/gcc.dg/vect/pr53185-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr53185-2.c
@@ -20,6 +20,7 @@ int main ()
   for (off = 0; off < 8; ++off)
     {
       fn1 (&a[off], &b[off], 32 - off, 3);
+#pragma GCC novector
       for (i = 0; i < 32 - off; ++i)
 	if (a[off+i] != b[off+i*3])
 	  abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56826.c b/gcc/testsuite/gcc.dg/vect/pr56826.c
index e8223808184e6b7b37a6d458bdb440566314e959..2f2da458b89ac04634cb809873d7a60e55484499 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56826.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56826.c
@@ -35,6 +35,7 @@ int main()
       __asm__ volatile ("");
     }
   bar (&A[0], &B[0], 100);
+#pragma GCC novector
   for (i=0; i<300; i++)
     if (A[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56918.c b/gcc/testsuite/gcc.dg/vect/pr56918.c
index 1c88d324b902e9389afe4c5c729f20b2ad790dbf..4941453bbe9940b4e775239c4c2c9606435ea20a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56918.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56918.c
@@ -22,6 +22,7 @@ main ()
   foo ();
   if (data[0] != 3 || data[7] != 1)
     abort ();
+#pragma GCC novector
   for (i = 1; i < 4; ++i)
     if (data[i] != i || data[i + 3] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56920.c b/gcc/testsuite/gcc.dg/vect/pr56920.c
index 865cfda760d1978eb1f3f063c75e2bac558254bd..ef73471468392b573e999a59e282b4d796556b8d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56920.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56920.c
@@ -12,6 +12,7 @@ main ()
   check_vect ();
   for (i = 0; i < 15; ++i)
     a[i] = (i * 2) % 15;
+#pragma GCC novector
   for (i = 0; i < 15; ++i)
     if (a[i] != (i * 2) % 15)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr56933.c b/gcc/testsuite/gcc.dg/vect/pr56933.c
index 7206682d7935a0436aaf502537bb56642d5e4648..2f2afe6df134163d2e7761be4906d778dbd6b670 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56933.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56933.c
@@ -25,6 +25,7 @@ int main()
   for (i = 0; i < 2*1024; i++)
     d[i] = 1.;
   foo (b, d, f);
+#pragma GCC novector
   for (i = 0; i < 1024; i+= 2)
     {
       if (d[2*i] != 2.)
@@ -32,6 +33,7 @@ int main()
       if (d[2*i+1] != 4.)
 	abort ();
     }
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     {
       if (b[i] != 1.)
diff --git a/gcc/testsuite/gcc.dg/vect/pr57705.c b/gcc/testsuite/gcc.dg/vect/pr57705.c
index e17ae09beb68051637c3ece69ac2f29e1433008d..39c32946d74ef01efce6fbc2f23c72dd0b33091d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr57705.c
+++ b/gcc/testsuite/gcc.dg/vect/pr57705.c
@@ -47,14 +47,17 @@ main ()
   int i;
   check_vect ();
   foo (5, 3);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != 5 + 4 * i)
       abort ();
   bar (5, 3);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != 9 + 4 * i)
       abort ();
   baz (5, 3);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != 5 + 4 * i || b[i] != (unsigned char) i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr57741-2.c b/gcc/testsuite/gcc.dg/vect/pr57741-2.c
index df63a49927d38badb2503787bcd828b796116199..6addd76b422614a2e28272f4d696e3cba4bb0376 100644
--- a/gcc/testsuite/gcc.dg/vect/pr57741-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr57741-2.c
@@ -34,6 +34,7 @@ main ()
   int i;
   check_vect ();
   foo (p, q, 1.5f);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (p[i] != 1.0f + i * 1.5f || q[i] != 2.0f + i * 0.5f)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr57741-3.c b/gcc/testsuite/gcc.dg/vect/pr57741-3.c
index 2e4954ac7f14b21463b0ef0ca97e05c4eb96e8fd..916fa131513b88321d36cdbe46f101361b4f8244 100644
--- a/gcc/testsuite/gcc.dg/vect/pr57741-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr57741-3.c
@@ -33,6 +33,7 @@ main ()
   check_vect ();
   r[0] = 0;
   foo (1.5f);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (p[i] != 1.0f + i * 1.5f || q[i] != 2.0f + i * 0.5f || r[i] != 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr59591-1.c b/gcc/testsuite/gcc.dg/vect/pr59591-1.c
index 892fce58e36b37e5412cc6c100f82b6077ace77e..e768fb3e1de48cf43b389cf83b4f7f1f030c4f91 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59591-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59591-1.c
@@ -31,6 +31,7 @@ bar (void)
       t[i] = i * 13;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 256; i++)
     if ((i >> 2) & (1 << (i & 3)))
       {
diff --git a/gcc/testsuite/gcc.dg/vect/pr59591-2.c b/gcc/testsuite/gcc.dg/vect/pr59591-2.c
index bd82d765794a32af6509ffd60d1f552ce10570a3..3bdf4252cffe63830b5b47cd17fa29a3c65afc73 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59591-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59591-2.c
@@ -32,6 +32,7 @@ bar (void)
       t[i] = i * 13;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 256; i++)
     if ((i >> 2) & (1 << (i & 3)))
       {
diff --git a/gcc/testsuite/gcc.dg/vect/pr59594.c b/gcc/testsuite/gcc.dg/vect/pr59594.c
index 947fa4c0c301d98cbdfeb5da541482858b69180f..e3ece8abf7131aa4ed0a2d5af79d4bdea90bd8c1 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59594.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59594.c
@@ -22,6 +22,7 @@ main ()
     }
   if (b[0] != 1)
     __builtin_abort ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (b[i + 1] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr59984.c b/gcc/testsuite/gcc.dg/vect/pr59984.c
index d6977f0020878c043376b7e7bfdc6a0e85ac2663..c00c2267158667784fb084b0ade19e2ab763c6a3 100644
--- a/gcc/testsuite/gcc.dg/vect/pr59984.c
+++ b/gcc/testsuite/gcc.dg/vect/pr59984.c
@@ -37,6 +37,7 @@ test (void)
       foo (a[i], &v1, &v2);
       a[i] = v1 * v2;
     }
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * i * i * i - 1)
       __builtin_abort ();
@@ -49,6 +50,7 @@ test (void)
       bar (a[i], &v1, &v2);
       a[i] = v1 * v2;
     }
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * i * i * i - 1)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr60276.c b/gcc/testsuite/gcc.dg/vect/pr60276.c
index 9fc18ac7428cf71903b6ebb04b90eb21b2e8b3c7..824e2a336b6d9fad2e7a72c445ec2edf80be8138 100644
--- a/gcc/testsuite/gcc.dg/vect/pr60276.c
+++ b/gcc/testsuite/gcc.dg/vect/pr60276.c
@@ -44,6 +44,7 @@ int main(void)
   foo (out + 2, lp + 1, 48);
   foo_novec (out2 + 2, lp + 1, 48);
 
+#pragma GCC novector
   for (s = 0; s < 49; s++)
     if (out[s] != out2[s])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr61194.c b/gcc/testsuite/gcc.dg/vect/pr61194.c
index 8421367577278cdf5762327d83cdc4a0e65c9411..8cd38b3d5da616d65ba131d048280b1d5644339d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr61194.c
+++ b/gcc/testsuite/gcc.dg/vect/pr61194.c
@@ -32,6 +32,7 @@ int main()
 
   barX();
 
+#pragma GCC novector
   for (i = 0; i < 1024; ++i)
     if (z[i] != ((x[i]>0 && w[i]<0) ? 0. : 1.))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr61680.c b/gcc/testsuite/gcc.dg/vect/pr61680.c
index e25bf78090ce49d68cb3694233253b403709331a..bb24014bdf045f22a0c9c5234481f07153c25d41 100644
--- a/gcc/testsuite/gcc.dg/vect/pr61680.c
+++ b/gcc/testsuite/gcc.dg/vect/pr61680.c
@@ -8,6 +8,7 @@ bar (double p[][4])
 {
   int i;
   double d = 172.0;
+#pragma GCC novector
   for (i = 0; i < 4096; i++)
     {
       if (p[i][0] != 6.0 || p[i][1] != 6.0 || p[i][2] != 10.0)
diff --git a/gcc/testsuite/gcc.dg/vect/pr62021.c b/gcc/testsuite/gcc.dg/vect/pr62021.c
index 40c64429d6382821af4a31b3569c696ea0e5fa2a..460fadb3f6cd73c7cac2bbba65cc09d4211396e8 100644
--- a/gcc/testsuite/gcc.dg/vect/pr62021.c
+++ b/gcc/testsuite/gcc.dg/vect/pr62021.c
@@ -24,6 +24,7 @@ main ()
   #pragma omp simd
   for (i = 0; i < 1024; i++)
     b[i] = foo (b[i], i);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (b[i] != &a[1023])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr63341-2.c b/gcc/testsuite/gcc.dg/vect/pr63341-2.c
index 2004a79b80ef4081136ade20df9b6acd5b6428c1..aa338263a7584b06f10e4cb4a6baf19dea20f40a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr63341-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr63341-2.c
@@ -16,6 +16,7 @@ foo ()
   int i;
   for (i = 0; i < 32; i++)
     d[i] = t.s[i].s + 4;
+#pragma GCC novector
   for (i = 0; i < 32; i++)
     if (d[i] != t.s[i].s + 4)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr64252.c b/gcc/testsuite/gcc.dg/vect/pr64252.c
index b82ad017c16fda6e031b503a9b11fe39a3691a6c..89070c27ff0f9763bd8eaff4a81b5b0197ae12dc 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64252.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64252.c
@@ -57,6 +57,7 @@ int main()
   int i;
   check_vect ();
   bar(2, q);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (q[0].a[i].f != 0 || q[0].a[i].c != i || q[0].a[i].p != -1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr64404.c b/gcc/testsuite/gcc.dg/vect/pr64404.c
index 26fceb6cd8936f7300fb0067c0f18c3d35ac4595..6fecf9ecae18e49808a58fe17a6b912786bdbad3 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64404.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64404.c
@@ -42,6 +42,7 @@ main (void)
 
   Compute ();
 
+#pragma GCC novector
   for (d = 0; d < 1024; d++)
     {
       if (Y[d].l != X[d].l + X[d].h
diff --git a/gcc/testsuite/gcc.dg/vect/pr64421.c b/gcc/testsuite/gcc.dg/vect/pr64421.c
index 3b5ab2d980c207c1d5e7fff73cd403ac38790080..47afd22d93e5ed8fbfff034cd2a03d8d70f7e422 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64421.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64421.c
@@ -27,6 +27,7 @@ main ()
     a[i] = foo (a[i], i);
   if (a[0] != 1 || a[1] != 3)
     abort ();
+#pragma GCC novector
   for (i = 2; i < 1024; i++)
     if (a[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr64493.c b/gcc/testsuite/gcc.dg/vect/pr64493.c
index 6fb13eb6d96fe67471fdfafd2eed2a897ae8b670..d3faf84bcc16d31fc11dd2d0cd7242972fdbafdc 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64493.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64493.c
@@ -9,6 +9,7 @@ main ()
 
   for (; a; a--)
     for (d = 1; d <= 0; d++)
+#pragma GCC novector
       for (; d;)
 	if (h)
 	  {
diff --git a/gcc/testsuite/gcc.dg/vect/pr64495.c b/gcc/testsuite/gcc.dg/vect/pr64495.c
index 5cbaeff8389dafd3444f90240a910e7d5e4f2431..c48f9389aa325a8b8ceb5697684f563b8c13a72d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr64495.c
+++ b/gcc/testsuite/gcc.dg/vect/pr64495.c
@@ -11,6 +11,7 @@ main ()
 
   for (; a;)
     for (; g; g++)
+#pragma GCC novector
       for (; f; f++)
 	if (j)
 	  {
diff --git a/gcc/testsuite/gcc.dg/vect/pr66251.c b/gcc/testsuite/gcc.dg/vect/pr66251.c
index 26afbc96a5d57a49fbbac95753f4df006cb36018..355590e69a98687084fee2c5486d14c2a20f3fcb 100644
--- a/gcc/testsuite/gcc.dg/vect/pr66251.c
+++ b/gcc/testsuite/gcc.dg/vect/pr66251.c
@@ -51,6 +51,7 @@ int main ()
 
       test1(da, ia, stride, 256/stride);
 
+#pragma GCC novector
       for (i = 0; i < 256/stride; i++)
 	{
 	  if (da[i*stride] != ia[i*stride])
@@ -66,6 +67,7 @@ int main ()
 
       test2(ia, da, stride, 256/stride);
 
+#pragma GCC novector
       for (i = 0; i < 256/stride; i++)
 	{
 	  if (da[i*stride] != ia[i*stride])
diff --git a/gcc/testsuite/gcc.dg/vect/pr66253.c b/gcc/testsuite/gcc.dg/vect/pr66253.c
index bdf3ff9ca51f7f656fad687fd8c77c6ee053794f..6b99b4f3b872cbeab14e035f2e2d40aab6e438e4 100644
--- a/gcc/testsuite/gcc.dg/vect/pr66253.c
+++ b/gcc/testsuite/gcc.dg/vect/pr66253.c
@@ -39,6 +39,7 @@ int main ()
 
       test1(da, ia, ca, stride, 256/stride);
 
+#pragma GCC novector
       for (i = 0; i < 256/stride; i++)
 	{
 	  if (da[i*stride] != 0.5 * ia[i*stride] * ca[i*stride])
diff --git a/gcc/testsuite/gcc.dg/vect/pr68502-1.c b/gcc/testsuite/gcc.dg/vect/pr68502-1.c
index 4f7d0bfca38693877ff080842d6ef7abf3d3e17b..cc6e6cd9a2be0e921382bda3c653f6a6b730b905 100644
--- a/gcc/testsuite/gcc.dg/vect/pr68502-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr68502-1.c
@@ -41,6 +41,7 @@ int main ()
   for (i = 0; i < numf1s; i++)
     f1_layer[i].I = (double *)-1;
   reset_nodes ();
+#pragma GCC novector
   for (i = 0; i < numf1s; i++)
     if (f1_layer[i].I != (double *)-1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr68502-2.c b/gcc/testsuite/gcc.dg/vect/pr68502-2.c
index a3eddafc7ca76cbe4c21f6ed873249cb2c94b7a6..11f87125b75df9db29669aa55cdc3c202b0fedda 100644
--- a/gcc/testsuite/gcc.dg/vect/pr68502-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr68502-2.c
@@ -41,6 +41,7 @@ int main ()
   for (i = 0; i < numf1s; i++)
     f1_layer[i].I = -1;
   reset_nodes ();
+#pragma GCC novector
   for (i = 0; i < numf1s; i++)
     if (f1_layer[i].I != -1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr69820.c b/gcc/testsuite/gcc.dg/vect/pr69820.c
index be24e4fa9a1343e4308bfd967f1ccfdd3549db5c..72d10b65c16b54764aac0cf271138ffa187f4052 100644
--- a/gcc/testsuite/gcc.dg/vect/pr69820.c
+++ b/gcc/testsuite/gcc.dg/vect/pr69820.c
@@ -28,6 +28,7 @@ main ()
       c[i] = 38364;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 100; ++i)
     if (b[i] != 0xed446af8U)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr70021.c b/gcc/testsuite/gcc.dg/vect/pr70021.c
index 988fc53216d12908bbbc564c9efc4d63a5c057d7..d4d5db12bc0e646413ba393b57edc60ba1189059 100644
--- a/gcc/testsuite/gcc.dg/vect/pr70021.c
+++ b/gcc/testsuite/gcc.dg/vect/pr70021.c
@@ -32,6 +32,7 @@ main ()
       e[i] = 14234165565810642243ULL;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     if (e[i] != ((i & 3) ? 14234165565810642243ULL : 1ULL))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr70354-1.c b/gcc/testsuite/gcc.dg/vect/pr70354-1.c
index 9d601dc9d4a92922e4114b8b4d1b7ef2f49c0c44..2687758b022b01af3eb7b444fee25be8bc1f8b3c 100644
--- a/gcc/testsuite/gcc.dg/vect/pr70354-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr70354-1.c
@@ -41,6 +41,7 @@ main ()
       h[i] = 8193845517487445944ULL;
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (d[i] != 8193845517487445944ULL || e[i] != 1
 	|| g[i] != 4402992416302558097ULL)
diff --git a/gcc/testsuite/gcc.dg/vect/pr70354-2.c b/gcc/testsuite/gcc.dg/vect/pr70354-2.c
index 160e1e083e03e0652d06bf29df060192cbe75fd5..cb4cdaae30ba5760fc32e255b651072ca397a499 100644
--- a/gcc/testsuite/gcc.dg/vect/pr70354-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr70354-2.c
@@ -29,6 +29,7 @@ main ()
       b[i] = 0x1200000000ULL + (i % 54);
     }
   foo ();
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     if (a[i] != (0x1234ULL << (i % 54)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr71259.c b/gcc/testsuite/gcc.dg/vect/pr71259.c
index 587a8e3c8f378f3c57f8a9a2e9fa5aee3a968860..6cb22f622ee2ce2d6de51c440472e36fe7294362 100644
--- a/gcc/testsuite/gcc.dg/vect/pr71259.c
+++ b/gcc/testsuite/gcc.dg/vect/pr71259.c
@@ -20,6 +20,7 @@ main ()
   asm volatile ("" : : : "memory");
   for (i = 0; i < 44; i++) 
     for (j = 0; j < 17; j++)
+#pragma GCC novector
       for (k = 0; k < 2; k++)
 	if (c[i][j][k] != -5105075050047261684)
 	  __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr78005.c b/gcc/testsuite/gcc.dg/vect/pr78005.c
index 7cefe73fe1b3d0050befeb5e25aec169867fd96a..6da7acf50c2a1237b817abf8e6b9191b3c3e1378 100644
--- a/gcc/testsuite/gcc.dg/vect/pr78005.c
+++ b/gcc/testsuite/gcc.dg/vect/pr78005.c
@@ -22,6 +22,7 @@ foo (int n, int d)
 
 #define check_u(x)		\
   foo (x, 2);			\
+  _Pragma("GCC novector")	\
   for (i = 0; i < N; i++)	\
     {				\
       if (u[i] != res##x[i])	\
diff --git a/gcc/testsuite/gcc.dg/vect/pr78558.c b/gcc/testsuite/gcc.dg/vect/pr78558.c
index 2606d4ec10d3fa18a4c0e4b8e9dd02131cb57ba7..2c28426eb85fc6663625c542e84860fa7bcfd3c2 100644
--- a/gcc/testsuite/gcc.dg/vect/pr78558.c
+++ b/gcc/testsuite/gcc.dg/vect/pr78558.c
@@ -37,6 +37,7 @@ main ()
   asm volatile ("" : : "g" (s), "g" (d) : "memory");
   foo ();
   asm volatile ("" : : "g" (s), "g" (d) : "memory");
+#pragma GCC novector
   for (i = 0; i < 50; ++i)
     if (d[i].q != i || d[i].r != 50 * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr80815-2.c b/gcc/testsuite/gcc.dg/vect/pr80815-2.c
index 83557daa6963632ccf2cf0a641a4106b4dc833f5..3ffff0be3be96df4c3e6a3d5caa68b7d4b6bad9a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr80815-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr80815-2.c
@@ -38,6 +38,7 @@ int main (void)
 
   foo (a, b);
 
+#pragma GCC novector
   for (i = 973; i < 1020; i++)
     if (arr[i] != res[i - 973])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr80815-3.c b/gcc/testsuite/gcc.dg/vect/pr80815-3.c
index 50392ab1a417de2af81af6473bf0a85bd9eb7279..5e2be5262ebb639d4bd771e326f9a07ed2ee0680 100644
--- a/gcc/testsuite/gcc.dg/vect/pr80815-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr80815-3.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo (a, b, 50);
 
+#pragma GCC novector
   for (i = 975; i < 1025; i++)
     if (arr[i] != res[i - 975])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr80928.c b/gcc/testsuite/gcc.dg/vect/pr80928.c
index e6c1f1ab5a7f4ca7eac98cf91fccffbff2dcfc7a..34566c4535247d2fa39c5d856d1e0c32687e9a2a 100644
--- a/gcc/testsuite/gcc.dg/vect/pr80928.c
+++ b/gcc/testsuite/gcc.dg/vect/pr80928.c
@@ -25,6 +25,7 @@ int main ()
   foo ();
 
   /* check results */
+#pragma GCC novector
   for (int i = 0; i < 1020; ++i)
     if (a[i] != ((i + 4) / 5) * 5)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81410.c b/gcc/testsuite/gcc.dg/vect/pr81410.c
index 9c91c08d33c729d8ff26cae72f4651081850b550..6b7586992fe46918aab537a06f166ce2e25f90d8 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81410.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81410.c
@@ -26,6 +26,7 @@ int main()
       __asm__ volatile ("" : : : "memory");
     }
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 8; ++i)
     if (y[2*i] != 3*i || y[2*i+1] != 3*i + 1)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81633.c b/gcc/testsuite/gcc.dg/vect/pr81633.c
index 9689ab3959cd9df8234b89ec307b7cd5d6f9d795..2ad144a60444eb82b8e8575efd8fcec94fcd6f01 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81633.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81633.c
@@ -24,6 +24,7 @@ int main(void)
   double A[4][4] = {{0.0}};
   kernel(A);
   for ( int i = 0; i < 4; i++ )
+#pragma GCC novector
     for ( int j = 0; j < 4; j++ )
       if (A[i][j] != expected[i][j])
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81740-1.c b/gcc/testsuite/gcc.dg/vect/pr81740-1.c
index f6fd43c7c87e0aad951ba092796f0aae39b80d54..b01e1994834934bbd50f3fc1cbcf494ecc62c315 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81740-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81740-1.c
@@ -14,6 +14,7 @@ main ()
     for (c = 0; c <= 6; c++)
       a[c + 1][b + 2] = a[c][b + 1];
   for (i = 0; i < 8; i++)
+#pragma GCC novector
     for (d = 0; d < 10; d++)
       if (a[i][d] != (i == 3 && d == 6) * 4)
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr81740-2.c b/gcc/testsuite/gcc.dg/vect/pr81740-2.c
index 1e0d6645a03f77c9c042313fd5377b71ba75c4d6..7b2bfe139f20fb66c90cfd643b65df3edb9b536e 100644
--- a/gcc/testsuite/gcc.dg/vect/pr81740-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr81740-2.c
@@ -15,6 +15,7 @@ main ()
     for (c = 6; c >= 0; c--)
       a[c + 1][b + 2] = a[c][b + 1];
   for (i = 0; i < 8; i++)
+#pragma GCC novector
     for (d = 0; d < 10; d++)
       if (a[i][d] != (i == 3 && d == 6) * 4)
 	__builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr85586.c b/gcc/testsuite/gcc.dg/vect/pr85586.c
index 3d075bfcec83bab119f77bad7b642eb3d634fb4c..a4a170a1fcd130d84da3be9f897889ff4cfc717c 100644
--- a/gcc/testsuite/gcc.dg/vect/pr85586.c
+++ b/gcc/testsuite/gcc.dg/vect/pr85586.c
@@ -24,6 +24,7 @@ main (void)
     }
 
   foo (out, in, 1);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (out[i] != in[i])
       __builtin_abort ();
@@ -33,6 +34,7 @@ main (void)
   foo (out + N - 1, in, -1);
   if (out[0] != in[N - 1])
     __builtin_abort ();
+#pragma GCC novector
   for (int i = 1; i <= N; ++i)
     if (out[i] != 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr87288-1.c b/gcc/testsuite/gcc.dg/vect/pr87288-1.c
index 0d0a70dff6f21b2f07fecd937d4fe26c0df61513..ec968dfcd0153cdb001e8e282146dbdb67d23c65 100644
--- a/gcc/testsuite/gcc.dg/vect/pr87288-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr87288-1.c
@@ -16,6 +16,7 @@ run (int *restrict a, int *restrict b, int count)
 void __attribute__ ((noipa))
 check (int *restrict a, int count)
 {
+#pragma GCC novector
   for (int i = 0; i < count * N; ++i)
     if (a[i * 2] != i * 41 + count || a[i * 2 + 1] != count)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr87288-2.c b/gcc/testsuite/gcc.dg/vect/pr87288-2.c
index e9ff9a0be7c08a9755972717a63025f2825e95cf..03c7f88a6a48507bbbfbf2e177425d28605a3aa6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr87288-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr87288-2.c
@@ -22,6 +22,7 @@ RUN_COUNT (4)
 void __attribute__ ((noipa))
 check (int *restrict a, int count)
 {
+#pragma GCC novector
   for (int i = 0; i < count * N; ++i)
     if (a[i * 2] != i * 41 + count || a[i * 2 + 1] != count)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr87288-3.c b/gcc/testsuite/gcc.dg/vect/pr87288-3.c
index 23f574ccb53268b59b933ec59a5eadaa890007ff..0475990992e58451de8649b735fa16f0e32ed657 100644
--- a/gcc/testsuite/gcc.dg/vect/pr87288-3.c
+++ b/gcc/testsuite/gcc.dg/vect/pr87288-3.c
@@ -22,6 +22,7 @@ RUN_COUNT (4)
 void __attribute__ ((noipa))
 check (int *restrict a, int count)
 {
+#pragma GCC novector
   for (int i = 0; i < count * N + 1; ++i)
     if (a[i * 2] != i * 41 + count || a[i * 2 + 1] != count)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr88903-1.c b/gcc/testsuite/gcc.dg/vect/pr88903-1.c
index 77dbfd47c91be8cce0edde8b09b7b90d40268306..0f78ccc995d5dcd35d5d7ba0f35afdc8bb5a1b2b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr88903-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr88903-1.c
@@ -19,6 +19,7 @@ main()
   for (int i = 0; i < 1024; ++i)
     x[i] = i;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != i << ((i/2+1) & 31))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr88903-2.c b/gcc/testsuite/gcc.dg/vect/pr88903-2.c
index cd88a99c6045c6a3eb848f053386d22b9cbe46ce..8a1cf9c523632f392d95aa2d6ec8332fa50fec5b 100644
--- a/gcc/testsuite/gcc.dg/vect/pr88903-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr88903-2.c
@@ -21,6 +21,7 @@ int main()
   for (int i = 0; i < 1024; ++i)
     x[i] = i, y[i] = i % 8;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != i << ((i & ~1) % 8))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr90018.c b/gcc/testsuite/gcc.dg/vect/pr90018.c
index 52640f5aa6f02d6deed3b2790482a2d2d01ddd5b..08ca326f7ebfab1a42813bc121f1e5a46394e983 100644
--- a/gcc/testsuite/gcc.dg/vect/pr90018.c
+++ b/gcc/testsuite/gcc.dg/vect/pr90018.c
@@ -41,6 +41,7 @@ int main(int argc, char **argv)
       a42[i*4+n*4+1] = tem4 + a42[i*4+n*4+1];
       __asm__ volatile ("": : : "memory");
     }
+#pragma GCC novector
   for (int i = 0; i < 4 * n * 3; ++i)
     if (a4[i] != a42[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr92420.c b/gcc/testsuite/gcc.dg/vect/pr92420.c
index e43539fbbd7202b3ae2e9f71bfd82a3fcdf8bde3..e56eb0e12fbec55b16785e244f3a24b889af784d 100644
--- a/gcc/testsuite/gcc.dg/vect/pr92420.c
+++ b/gcc/testsuite/gcc.dg/vect/pr92420.c
@@ -41,6 +41,7 @@ main ()
     }
   foo (a, b + N, d, N);
   bar (a, c, e, N);
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     if (d[i].r != e[i].r || d[i].i != e[i].i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr94994.c b/gcc/testsuite/gcc.dg/vect/pr94994.c
index e98aeb090d8cbcfc9628052b553b7a7d226069d1..2f598eacd541eafaef02f9aee34fc769dac2a4c6 100644
--- a/gcc/testsuite/gcc.dg/vect/pr94994.c
+++ b/gcc/testsuite/gcc.dg/vect/pr94994.c
@@ -41,6 +41,7 @@ main (void)
       for (unsigned int j = 0; j < INPUT_SIZE + MAX_STEP; ++j)
 	x[j] = j + 10;
       copy (x + i, x, INPUT_SIZE);
+#pragma GCC novector
       for (int j = 0; j < INPUT_SIZE + i; ++j)
 	{
 	  int expected;
diff --git a/gcc/testsuite/gcc.dg/vect/pr96783-1.c b/gcc/testsuite/gcc.dg/vect/pr96783-1.c
index 55d1364f056febd86c49272ede488bd37867dbe8..2de222d2ae6491054b6c7a6cf5891580abf5c6f7 100644
--- a/gcc/testsuite/gcc.dg/vect/pr96783-1.c
+++ b/gcc/testsuite/gcc.dg/vect/pr96783-1.c
@@ -31,6 +31,7 @@ int main ()
     a[i] = i;
   foo (a + 3 * 5, 6-1, 5);
   const long b[3 * 8] = { 0, 1, 2, 21, 22, 23, 18, 19, 20, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 };
+#pragma GCC novector
   for (int i = 0; i < 3 * 8; ++i)
     if (a[i] != b[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/pr96783-2.c b/gcc/testsuite/gcc.dg/vect/pr96783-2.c
index 33c37109e3a8de646edd8339b0c98300bed25b51..bcdcfac072cf564d965edd4be7fbd9b23302e759 100644
--- a/gcc/testsuite/gcc.dg/vect/pr96783-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr96783-2.c
@@ -20,6 +20,7 @@ int main()
   for (int i = 0; i < 1024; ++i)
     b[i] = i;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 256; ++i)
     if (a[3*i] != 1023 - 3*i - 2
 	|| a[3*i+1] != 1023 - 3*i - 1
diff --git a/gcc/testsuite/gcc.dg/vect/pr97081-2.c b/gcc/testsuite/gcc.dg/vect/pr97081-2.c
index 98ad3c3fe17e4556985cb6a0392de72a19911a97..436e897cd2e6a8bb41228cec14480bac88e98952 100644
--- a/gcc/testsuite/gcc.dg/vect/pr97081-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr97081-2.c
@@ -24,6 +24,7 @@ main ()
       c[i] = i;
     }
   foo (3);
+#pragma GCC novector
   for (int i = 0; i < 1024; i++)
     if (s[i] != (unsigned short) ((i << 3) | (i >> (__SIZEOF_SHORT__ * __CHAR_BIT__ - 3)))
         || c[i] != (unsigned char) ((((unsigned char) i) << 3) | (((unsigned char) i) >> (__CHAR_BIT__ - 3))))
diff --git a/gcc/testsuite/gcc.dg/vect/pr97558-2.c b/gcc/testsuite/gcc.dg/vect/pr97558-2.c
index 8f0808686fbad0b5b5ec11471fd38f53ebd81bde..5dff065f2e220b1ff31027c271c07c9670b98f9c 100644
--- a/gcc/testsuite/gcc.dg/vect/pr97558-2.c
+++ b/gcc/testsuite/gcc.dg/vect/pr97558-2.c
@@ -41,6 +41,7 @@ int main (void)
   foo (N-1);
 
     /* check results:  */
+#pragma GCC novector
   for (i=0; i<N/2; i++)
     {
       sum = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/pr97678.c b/gcc/testsuite/gcc.dg/vect/pr97678.c
index 7fb6c93515e41257f173f664d9304755a8dc0de2..1fa56326422e832e82bb6f1739f14ea1a1cb4955 100644
--- a/gcc/testsuite/gcc.dg/vect/pr97678.c
+++ b/gcc/testsuite/gcc.dg/vect/pr97678.c
@@ -19,6 +19,7 @@ main ()
       b[i * 2 + 1] = i * 8;
     }
 
+#pragma GCC novector
   for (i = 0; i < 158; ++i)
     if (b[i*2] != (unsigned short)(i*7)
         || b[i*2+1] != (unsigned short)(i*8))
diff --git a/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c b/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c
index 4373dce917f9d7916e128a639e81179fe1250ada..1154b40d4855b5a42187134e9d5f08a98a160744 100644
--- a/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c
+++ b/gcc/testsuite/gcc.dg/vect/section-anchors-pr27770.c
@@ -22,6 +22,7 @@ int main (void)
   int i;
   check_vect ();
   foo ();
+#pragma GCC novector
   for (i = 0; i < 100; i++)
     if (f[i]!=1) 
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c b/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c
index e3466d0da1de6207b8583f42aad412b2c2000dcc..dbf65605e91c4219b6f5c6de220384ed09e999a7 100644
--- a/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c
+++ b/gcc/testsuite/gcc.dg/vect/section-anchors-vect-69.c
@@ -50,6 +50,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 5)
@@ -63,6 +64,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = NINTS - 1; i < N - 1; i++)
     {
       if (tmp1[2].a.n[1][2][i] != 6)
@@ -81,6 +83,7 @@ int main1 ()
   /* check results:  */
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
 	{
           if (tmp1[2].e.n[1][i][j] != 8)
@@ -100,6 +103,7 @@ int main1 ()
   /* check results:  */
   for (i = 0; i < N - NINTS; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N - NINTS; j++)
 	{
           if (tmp2[2].e.n[1][i][j] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-1.c b/gcc/testsuite/gcc.dg/vect/slp-1.c
index 26b71d654252bcd2e4591f11a78a4c0a3dad5d85..82e4f6469fb9484f84c5c832d0461576b63ba8fe 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-1.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != 8 
@@ -42,6 +43,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] != 8
@@ -66,6 +68,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*5] != 8
@@ -91,6 +94,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*9] != 8
diff --git a/gcc/testsuite/gcc.dg/vect/slp-10.c b/gcc/testsuite/gcc.dg/vect/slp-10.c
index da44f26601a9ba8ea52417ec5a160dc4bedfc315..2759b66f7772cb1af508622a3099bdfb524cba56 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-10.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-10.c
@@ -46,6 +46,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
@@ -68,6 +69,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
@@ -84,6 +86,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out2[i*2] !=  (float) (in[i*2] * 2 + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-11a.c b/gcc/testsuite/gcc.dg/vect/slp-11a.c
index e6632fa77be8092524a202d6a322354b45e1794d..fcb7cf6c7a2c5d42ec7ce8bc081db7394ba2bd96 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-11a.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-11a.c
@@ -44,6 +44,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-11b.c b/gcc/testsuite/gcc.dg/vect/slp-11b.c
index d0b972f720be1c965207ded917f979957c76ee67..df64c8db350dbb12295c61e84d32d5a5c20a1ebe 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-11b.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-11b.c
@@ -22,6 +22,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
diff --git a/gcc/testsuite/gcc.dg/vect/slp-11c.c b/gcc/testsuite/gcc.dg/vect/slp-11c.c
index bdcf434ce31ebc1df5f7cfecb5051ebc71af3aed..0f680cd4e60c41624992e4fb68d2c3664ff1722e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-11c.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-11c.c
@@ -21,6 +21,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i*2] !=  ((float) in[i*2] * 2 + 6)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-12a.c b/gcc/testsuite/gcc.dg/vect/slp-12a.c
index 08a8f55bab0b3d09e7eae14354c515203146b3d8..f0dda55acaea38e463044c7495af1f57ac121ce0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-12a.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-12a.c
@@ -47,6 +47,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-12b.c b/gcc/testsuite/gcc.dg/vect/slp-12b.c
index 48e78651a6dca24de91a1f36d0cd757e18f7c1b8..e2ea24d6c535c60ba903ce2411290e603414009a 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-12b.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-12b.c
@@ -23,6 +23,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out2[i*2] !=  (float) (in[i*2] * 2 + 11)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-12c.c b/gcc/testsuite/gcc.dg/vect/slp-12c.c
index 6650b8bd94ece71dd9ccb9adcc3d17be2f2bc07a..9c48dff3bf486a8cd1843876975dfba40a055a23 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-12c.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-12c.c
@@ -24,6 +24,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  (in[i*4] + 2) * 3
diff --git a/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c
index a16656ace00a6a31d0c056056ec2e3e1f050c09f..ca70856c1dd54f106c9f1c3cde6b0ff5f7994e74 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-13-big-array.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + i
@@ -65,6 +66,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + i
@@ -100,6 +102,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-13.c b/gcc/testsuite/gcc.dg/vect/slp-13.c
index 8769d62cfd4d975a063ad953344855091a1cd129..b7f947e6dbe1fb7d9a8aa8b5f6ac1edfc89d33a2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-13.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-13.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + i
@@ -59,6 +60,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + i
@@ -94,6 +96,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
         if (out2[i*12] != in2[i*12] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-14.c b/gcc/testsuite/gcc.dg/vect/slp-14.c
index 6af70815dd43c13fc9abfcebd70c562268dea86f..ccf23c1e44b78ac62dc78eef0ff6c6bc26e99fc1 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-14.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-14.c
@@ -64,6 +64,7 @@ main1 (int n)
 }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-15.c b/gcc/testsuite/gcc.dg/vect/slp-15.c
index dbced88c98d1fc8d289e6ac32a84dc9f4072e49f..13a0f3e3014d84a16a68a807e6a2730cbe8e6840 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-15.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-15.c
@@ -64,6 +64,7 @@ main1 (int n)
 }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-16.c b/gcc/testsuite/gcc.dg/vect/slp-16.c
index a7da9932c54c28669875d46e3e3945962d5e2dee..d053a64276db5c306749969cca7f336ba6a19b0b 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-16.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-16.c
@@ -38,6 +38,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*2] !=  (in[i*2] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-17.c b/gcc/testsuite/gcc.dg/vect/slp-17.c
index 6fa11e4c53ad73735af9ee74f56ddff0b777b99b..c759a5f0145ac239eb2a12efa89c4865fdbf703e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-17.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-17.c
@@ -27,6 +27,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*2] != in[i*2] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-18.c b/gcc/testsuite/gcc.dg/vect/slp-18.c
index ed426a344985d1e205f7a94f72f86954a77b3d92..f31088cb76b4cdd80460c0d6a24568430e595ea0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-18.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-18.c
@@ -57,6 +57,7 @@ main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (in[i*8] + 5) * 3 - 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-19a.c b/gcc/testsuite/gcc.dg/vect/slp-19a.c
index 0f92de92cd396227cc668396cd567ca965e9784b..ca7a0a8e456b1b787ad82e910ea5e3c5e5048c80 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-19a.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-19a.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-19b.c b/gcc/testsuite/gcc.dg/vect/slp-19b.c
index 237b36dd227186c8f0cb78b703351fdae6fef27c..4d53ac698dbd164d20271c4fe9ccc2c20f3c4eaa 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-19b.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-19b.c
@@ -29,6 +29,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-19c.c b/gcc/testsuite/gcc.dg/vect/slp-19c.c
index 32566cb5e1320de2ce9c83867c05902a24036de4..188ab37a0b61ba33ff4c19115e5c54e0f7bac500 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-19c.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-19c.c
@@ -47,6 +47,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*12] !=  in[i*12]
@@ -79,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*6] !=  in[i*6]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-2.c b/gcc/testsuite/gcc.dg/vect/slp-2.c
index 8d374d724539a47930fc951888471a7b367cd845..d0de3577eb6a1b8219e8a79a1a684f6b1b7baf52 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-2.c
@@ -25,6 +25,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != a8 
@@ -55,6 +56,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*16] != a8
@@ -85,6 +87,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*3] != a8
@@ -110,6 +113,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*11] != a8
diff --git a/gcc/testsuite/gcc.dg/vect/slp-20.c b/gcc/testsuite/gcc.dg/vect/slp-20.c
index dc5eab669ea9eaf7db83606b4c426921a6a5da15..ea19095f9fa06db508cfedda68ca2c65769b35b0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-20.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-20.c
@@ -34,6 +34,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
@@ -77,6 +78,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-21.c b/gcc/testsuite/gcc.dg/vect/slp-21.c
index 4b83adb9807fc29fb9f2d618d15e8eb15290dd67..712a73b69d730fd27cb75d3ebb3624809317f841 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-21.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-21.c
@@ -45,6 +45,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       a0 = in[i*4];
@@ -101,6 +102,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       a0 = in[i*4];
@@ -158,6 +160,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       a0 = in[i*4];
diff --git a/gcc/testsuite/gcc.dg/vect/slp-22.c b/gcc/testsuite/gcc.dg/vect/slp-22.c
index e2a0002ffaf363fc12b76deaaee3067c9a0a186b..2c083dc4ea3b1d7d3c6b56508cc7465b76060aa1 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-22.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-22.c
@@ -39,6 +39,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
@@ -92,6 +93,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] != b0 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-23.c b/gcc/testsuite/gcc.dg/vect/slp-23.c
index d7c67fe2c6e9c6ecf94a2ddc8c1d7a4c234933c8..d32ee5ba73becb9e0b53bfc2af27a64571c56899 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-23.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-23.c
@@ -39,6 +39,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].c + arr[i].c
@@ -67,6 +68,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].c + arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c
index abd3a878f1ac36a7c8cde58743496f79b71f4476..5eaea9600acb2b8ffe674730bcf9514b51ae105f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-24-big-array.c
@@ -42,6 +42,7 @@ main1 (unsigned char x, unsigned char max_result, unsigned char min_result, s *a
     pIn++;
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (ua1[2*i] != ub[2*i]
         || ua1[2*i+1] != ub[2*i+1]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-24.c b/gcc/testsuite/gcc.dg/vect/slp-24.c
index a45ce7de71fa6a8595b611dd47507df4e91e3b36..59178f2c0f28bdbf657ad68658d373e75d076f79 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-24.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-24.c
@@ -41,6 +41,7 @@ main1 (unsigned char x, unsigned char max_result, unsigned char min_result, s *a
     pIn++;
   }
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (ua1[2*i] != ub[2*i]
         || ua1[2*i+1] != ub[2*i+1]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-25.c b/gcc/testsuite/gcc.dg/vect/slp-25.c
index 1c33927c4342e01f80765d0ea723e01cec5fe2e6..9e3b5bbc9469fd0dc8631332643c1eb496652218 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-25.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-25.c
@@ -24,6 +24,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N/2; i++)
     {
       if (ia[2*i] != 25
@@ -38,6 +39,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= n/2; i++)
     {
       if (sa[2*i] != 25
diff --git a/gcc/testsuite/gcc.dg/vect/slp-26.c b/gcc/testsuite/gcc.dg/vect/slp-26.c
index f8b49ff603c16127694e599137b1f48ea665c4db..d398a5acb0cdb337b442f071c96f3ce62fe84cff 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-26.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-26.c
@@ -24,6 +24,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*4] !=  in[i*4]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-28.c b/gcc/testsuite/gcc.dg/vect/slp-28.c
index 0bb5f0eb0e40307558dc3ab826d583ea004891cd..67b7be29b22bb646b4bea2e0448e919319b11c98 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-28.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-28.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (in[i] != i+5)
@@ -51,6 +52,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (in2[i] != (i % 4) + (i / 4) * 5)
@@ -69,6 +71,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (in3[i] != (i % 12) + (i / 12) * 5)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c
index 4cf0e7a0ece17204221c483bcac8fe9bdab3c85c..615a79f4a30f8002a989047c99eea13dd9f9e1a6 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-3-big-array.c
@@ -32,6 +32,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -54,6 +55,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -84,6 +86,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
@@ -120,6 +123,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       if (out[i*9] !=  in[i*9]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-3.c b/gcc/testsuite/gcc.dg/vect/slp-3.c
index 760b3fa35a2a2018a103b344c329464ca8cb52fe..183c7e65c57ae7dfe3994757385d9968b1de45e5 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-3.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -48,6 +49,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -78,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
@@ -114,6 +117,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       if (out[i*9] !=  in[i*9]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-33.c b/gcc/testsuite/gcc.dg/vect/slp-33.c
index 2404a5f19b407ef47d4ed6e597da9381629530ff..c382093c2329b09d3ef9e78abadd1f7ffe22dfda 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-33.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-33.c
@@ -43,6 +43,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*7] !=  (in[i*7] + 5) * 3 - 2
@@ -64,6 +65,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*3] !=  (in[i*3] + 2) * 3
@@ -81,6 +83,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out2[i*3] !=  (float) (in[i*3] * 2 + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c
index 9e9c8207f7bbb0235e5864b529869b6db3768087..0baaff7dc6e6b8eeb958655f964f234512cc4500 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-34-big-array.c
@@ -36,6 +36,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*3] != in[i*3] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-34.c b/gcc/testsuite/gcc.dg/vect/slp-34.c
index 1fd09069247f546a9614c47fca529da4bc465497..41832d7f5191bfe7f82159cde69c1787cfdc6d8c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-34.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-34.c
@@ -30,6 +30,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*3] != in[i*3] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-35.c b/gcc/testsuite/gcc.dg/vect/slp-35.c
index 76dd7456d89859108440eb0be2374215a16cfa57..5e9f6739e1f25d109319da1db349a4063f5aaa1b 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-35.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-35.c
@@ -32,6 +32,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].c + arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/slp-37.c b/gcc/testsuite/gcc.dg/vect/slp-37.c
index a765cd70a09c2eb69df6d85b2056f0d90fc4120f..caee2bb508f1824fa549568dd09911c8624222f4 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-37.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-37.c
@@ -28,6 +28,7 @@ foo1 (s1 *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
        if (arr[i].a != 6 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c
index 98ac3f1f2839c717d66c04ba4e0179d4497be33e..fcda45ff368511b350b25857f21b2eaeb721561a 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-4-big-array.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -59,6 +60,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -92,6 +94,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-4.c b/gcc/testsuite/gcc.dg/vect/slp-4.c
index e4f65bc37f8c5e45c1673d2218bf75a2a98b3daf..29e741df02ba0ef6874cde2a4410b79d1d7608ee 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-4.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -53,6 +54,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -86,6 +88,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-41.c b/gcc/testsuite/gcc.dg/vect/slp-41.c
index 2ad9fd2077231a0124c7fe2aaf37570a3a10f849..b96de4fbcb7f9a3c60b884a47bbfc52ebbe1dd44 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-41.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-41.c
@@ -48,6 +48,7 @@ int main()
        __asm__ volatile ("");
     }
   testi (ia, sa, 8, 32);
+#pragma GCC novector
   for (i = 0; i < 128; ++i)
     if (sa[i] != ia[(i / 4) * 8 + i % 4])
       abort ();
@@ -58,6 +59,7 @@ int main()
        __asm__ volatile ("");
     }
   testi2 (ia, sa, 8, 32);
+#pragma GCC novector
   for (i = 0; i < 128; ++i)
     if (ia[i] != sa[(i / 4) * 8 + i % 4])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-43.c b/gcc/testsuite/gcc.dg/vect/slp-43.c
index 3cee613bdbed4b7ca7a796d45776b833cff2d1a2..3d8ffb113276c3b244436b98048fe78112340e0c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-43.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-43.c
@@ -23,11 +23,13 @@ foo_ ## T ## _ ## N (T * __restrict__ in_, T * __restrict__ out_, int s) \
 }
 
 #define TEST(T,N) \
+ _Pragma("GCC novector") \
  do { \
   memset (out, 0, 4096); \
   foo_ ## T ## _ ## N ((T *)in, (T *)out, 1); \
   if (memcmp (in, out, sizeof (T) * MAX_VEC_ELEMENTS * N) != 0) \
     __builtin_abort (); \
+  _Pragma("GCC novector") \
   for (int i = sizeof (T) * MAX_VEC_ELEMENTS * N; i < 4096; ++i) \
     if (out[i] != 0) \
       __builtin_abort (); \
diff --git a/gcc/testsuite/gcc.dg/vect/slp-45.c b/gcc/testsuite/gcc.dg/vect/slp-45.c
index fadc4e5924308d46aaac81a0d5b42564285d58ff..f34033004520f106240fd4a7f6a6538cb22622ff 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-45.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-45.c
@@ -23,11 +23,13 @@ foo_ ## T ## _ ## N (T * __restrict__ in_, T * __restrict__ out_, int s) \
 }
 
 #define TEST(T,N) \
+ _Pragma("GCC novector") \
  do { \
   memset (out, 0, 4096); \
   foo_ ## T ## _ ## N ((T *)in, (T *)out, 1); \
   if (memcmp (in, out, sizeof (T) * MAX_VEC_ELEMENTS * N) != 0) \
     __builtin_abort (); \
+  _Pragma("GCC novector") \
   for (int i = sizeof (T) * MAX_VEC_ELEMENTS * N; i < 4096; ++i) \
     if (out[i] != 0) \
       __builtin_abort (); \
diff --git a/gcc/testsuite/gcc.dg/vect/slp-46.c b/gcc/testsuite/gcc.dg/vect/slp-46.c
index 18476a43d3f61c07aede8d90ca69817b0e0b5342..2d5534430b39f10c15ab4d0bdab47bf68af86376 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-46.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-46.c
@@ -54,6 +54,7 @@ main ()
     }
 
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[i/2])
       abort ();
@@ -65,6 +66,7 @@ main ()
     }
 
   bar ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[2*(i/2)])
       abort ();
@@ -76,6 +78,7 @@ main ()
     }
 
   baz ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[511 - i/2])
       abort ();
@@ -87,6 +90,7 @@ main ()
     }
 
   boo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[2*(511 - i/2)])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-47.c b/gcc/testsuite/gcc.dg/vect/slp-47.c
index 7b2ddf664dfefa97ac80f9f9eb7993e18980c411..7772bb71c8d013b8699bee644a3bb471ff41678f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-47.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-47.c
@@ -35,6 +35,7 @@ main ()
     }
 
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i])
       abort ();
@@ -46,6 +47,7 @@ main ()
     }
 
   bar ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i^1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-48.c b/gcc/testsuite/gcc.dg/vect/slp-48.c
index 0b327aede8e6bb53d01315553ed9f2c3c3dc3290..38f533233d657189851a8942e8fa8133a9d2eb91 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-48.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-48.c
@@ -35,6 +35,7 @@ main ()
     }
 
   foo ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i^1])
       abort ();
@@ -46,6 +47,7 @@ main ()
     }
 
   bar ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     if (x[i] != y[1023 - i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-49.c b/gcc/testsuite/gcc.dg/vect/slp-49.c
index 4141a09ed97a9ceadf89d394d18c0b0226eb55d7..b2433c920793c34fb316cba925d7659db356af28 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-49.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-49.c
@@ -24,6 +24,7 @@ main()
 
   foo (17);
 
+#pragma GCC novector
   for (int i = 0; i < 512; ++i)
     {
       if (a[2*i] != 5 + i
diff --git a/gcc/testsuite/gcc.dg/vect/slp-5.c b/gcc/testsuite/gcc.dg/vect/slp-5.c
index 989e05ac8be6bdd1fb36c4bdc079866ce101e017..6d51f6a73234ac41eb2cc4d2fcedc8928d9932b2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-5.c
@@ -30,6 +30,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8]
@@ -55,6 +56,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4]
@@ -86,6 +88,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*16] !=  in[i*16]
diff --git a/gcc/testsuite/gcc.dg/vect/slp-6.c b/gcc/testsuite/gcc.dg/vect/slp-6.c
index ec85eb77236e4b8bf5e0c6a8d07abf44a28e2a5c..ea9f7889734dca9bfa3b28747c382e94bb2c1c84 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-6.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-6.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + 5
@@ -50,6 +51,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4] + 2
@@ -80,6 +82,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out2[i*16] !=  in2[i*16] * 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-7.c b/gcc/testsuite/gcc.dg/vect/slp-7.c
index e836a1ae9b5b60685e8ec2d15ca5005ff35a895e..2845a99dedf5c99032b099a136acd96f37fc5295 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-7.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-7.c
@@ -30,6 +30,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  in[i*8] + 5
@@ -55,6 +56,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*2; i++)
     {
       if (out[i*4] !=  in[i*4] + 1
@@ -86,6 +88,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out2[i*16] !=  in2[i*16] * 2
diff --git a/gcc/testsuite/gcc.dg/vect/slp-8.c b/gcc/testsuite/gcc.dg/vect/slp-8.c
index e9ea0ef0d6b32d23977d728c943bac05dc982b2d..8647249f546267185bb5c232f088a4c0984f2039 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-8.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       if (fa[4*i] != (float) ib[4*i]      
diff --git a/gcc/testsuite/gcc.dg/vect/slp-9.c b/gcc/testsuite/gcc.dg/vect/slp-9.c
index d5212dca3ddcbffabdc9fbed8f2380ffceee626d..4fb6953cced876c2a1e5761b0f94968c5774da9e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-9.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-9.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-1.c b/gcc/testsuite/gcc.dg/vect/slp-cond-1.c
index 482fc080a0fc132409509b084fcd67ef95f2aa17..450c7141c96b07b9f798c62950d3de30eeab9a28 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-1.c
@@ -79,11 +79,13 @@ main ()
       e[i] = 2 * i;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
 
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       switch (i % 9)
@@ -115,6 +117,7 @@ main ()
   f3 ();
 
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? e[i] : d[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c
index 57cc67ee121108bcc5ccaaee0dca5085264c8818..cb7eb94b3a3ba207d513e3e701cd1c9908000a01 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-2-big-array.c
@@ -82,11 +82,13 @@ main ()
     }
 
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
 
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       switch (i % 9)
@@ -118,6 +120,7 @@ main ()
   f3 ();
 
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (f[i] != ((i % 3) == 0 ? e[i] : d[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-2.c b/gcc/testsuite/gcc.dg/vect/slp-cond-2.c
index 7350695ece0f53e36de861c4e7724ebf36ff6b76..1dcee46cd9540690521df07c9cacb608e37b62b7 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-2.c
@@ -82,11 +82,13 @@ main ()
     }
 
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
 
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       switch (i % 9)
@@ -118,6 +120,7 @@ main ()
   f3 ();
 
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (f[i] != ((i % 3) == 0 ? e[i] : d[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-3.c b/gcc/testsuite/gcc.dg/vect/slp-cond-3.c
index d19ec13a21ac8660cc326dfaa4a36becab219d82..64904b001e6a39623eff9a1ddc530afbc5e64687 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-3.c
@@ -72,6 +72,7 @@ int main ()
     }
 
   bar (a, b, c, d, e, 2);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != ((i % 3) == 0 ? 10 : 2 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-4.c b/gcc/testsuite/gcc.dg/vect/slp-cond-4.c
index f82b8416d8467a8127fbb498040c5559e33d6608..0e1bd3b40994016bb6232bd6a1e129602c03167b 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-4.c
@@ -75,6 +75,7 @@ int main ()
     }
 
   bar (a, b, c, d, e, 2);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != ((i % 3) == 0 ? 5 : i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-cond-5.c b/gcc/testsuite/gcc.dg/vect/slp-cond-5.c
index 5ade7d1fbad9eee7861d1b0d12ac98e42d453422..f0a703f0030b4c01d4119c812086de2a8e78ff4f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-cond-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-cond-5.c
@@ -70,6 +70,7 @@ int main ()
     }
 
   bar (a, b, c, d, e, 2);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (e[i] != ((i % 3) == 0 || i <= 5 ? 10 : 2 * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c
index 1850f063eb4fc74c26a9b1a1016f9d70a0c28441..605f6ab8ba638175d557145c82f2b78c30eb5835 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-1.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sout[i*4] != 8 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c
index 62580c070c8e19468812a9c81edc1c5847327ebb..06d9029e9202b15dc8de6d054779f9d53fbea60d 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-10.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i].a !=  (unsigned char) in[i*2] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c
index a3d0670cea98379af381fd7282f28e9724096a93..2792b932734a7a8ad4958454de56956081753d7c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11-big-array.c
@@ -34,6 +34,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a !=  (int) in[i*3] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c
index 86a3fafa16f41dc2c63f4704b85268330ad5568d..5c75dc12b695785405b7d56891e7e71ac24e2539 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-11.c
@@ -28,6 +28,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a !=  (int) in[i*3] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c
index d4c929de2ecbc73c75c08ae498b8b400f67bf636..13119822200fef23a96e920bde8ca968f0a09f84 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-12.c
@@ -32,6 +32,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sout[i*4] != 8 
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
index 28a645c79472578d3775e9e2eb28cb7ee69efad0..c15baa00dd00fb8fa0ae79470d846b31ee4dd578 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-2.c
@@ -41,6 +41,7 @@ main1 (unsigned short a0, unsigned short a1, unsigned short a2,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*16] != a8
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
index 39bd7c41f8cca2a517486bc9a9898031911115c6..c79906a8d7b30834dfcda5c70d6bf472849a39cb 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
@@ -45,6 +45,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (out[i*8] !=  in[i*8] + 5
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c
index faf17d6f0cde5eacb7756996a224e4004b305f7f..b221f705070af661716d1d6fbf70f16ef3652ca9 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-4.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (int) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c
index fb4f720aa4935da6862951a3c618799bb37f535f..3237773e1b13223164473ad88b3c806c8df243b2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-5.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (short) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c
index f006d081346aa4f067d1e02018f2c46d4fcf1680..e62d16b6de34ce1919545a5815600263931e11ac 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-6.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (unsigned char) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c
index 286e2fc42af815dcc724f1a66d8d01a96c915beb..08ab2dc3d10f6ab208841e53609dc7c672a69c5e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-7.c
@@ -26,6 +26,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i*8] !=  (int) in[i*8] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c
index d88ebe4d778c4487c00ef055059d2b825542679a..0b67ecc8e0730813966cfd6922e8d3f9db740408 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-8.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i*2] !=  (int) in[i*2] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c
index 872b20cac93c119854b8250eb85dc43767743da4..49261483166cbd6dcf99800a5c7062f7f091c103 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-9.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N*4; i++)
     {
       if (out[i*2] !=  (unsigned char) in[i*2] + 1
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-1.c b/gcc/testsuite/gcc.dg/vect/slp-perm-1.c
index ca7803ec1a9a49b4800cf396bcdc05f263f344ee..dbb107f95fec3338b135ff965e8be2b514cc1fe6 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-1.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-1.c
@@ -69,6 +69,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (output[i] != check_results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-10.c b/gcc/testsuite/gcc.dg/vect/slp-perm-10.c
index 678152ba4168d32f84a1d1b01ba6c43b210ec8b9..2cce30c2444323ba6166ceee6a768fbd9d881a47 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-10.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-10.c
@@ -35,6 +35,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < 32; ++i)
     if (b[i*8+0] != i*8+0
 	|| b[i*8+1] != i*8+0
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-11.c b/gcc/testsuite/gcc.dg/vect/slp-perm-11.c
index 0318d468ef102cb263d090a33429849221dc3c0d..0d25d9d93bbf14b64fb6f2c116fe70bf17b5f432 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-11.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-11.c
@@ -26,6 +26,7 @@ int main ()
       __asm__ volatile ("");
     }
   foo (4);
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != (4*(i/2) + (i & 1) ^ 1))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-12.c b/gcc/testsuite/gcc.dg/vect/slp-perm-12.c
index 113223ab0f96507b74cfff8fc6b112070cabb5ee..642b1e8b399e7ffc77e54e02067eec053ea54c7e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-12.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-12.c
@@ -42,6 +42,7 @@ int main()
 
   test (a, b);
 
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != 253)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-2.c b/gcc/testsuite/gcc.dg/vect/slp-perm-2.c
index 82776f3f06af8a7b82e0d190a922b213d17aee88..41fd159adce8395dd805f089e94aacfe7eeba09f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-2.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-2.c
@@ -43,6 +43,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (output[i] != check_results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-3.c b/gcc/testsuite/gcc.dg/vect/slp-perm-3.c
index 1807275d1bfcc895ed68bd5e536b5837adf336e6..9ea35ba5afca2db0033150e35fca6b961b389c03 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-3.c
@@ -56,6 +56,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (output[i] != check_results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-4.c b/gcc/testsuite/gcc.dg/vect/slp-perm-4.c
index 8457e4f45d62d6d704145b1c4f62af14c1877762..107968f1f7ce65c53bf0280e700f659f625d8c1e 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-4.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-4.c
@@ -103,6 +103,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (output[i] != check_results[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-5.c b/gcc/testsuite/gcc.dg/vect/slp-perm-5.c
index b86a3dc8756e0d30551a40ed1febb142813190a4..7128cf471555d5f589b11e1e58a65b0211e7d6fd 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-5.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-5.c
@@ -96,6 +96,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
      if (output[i] != check_results[i] || output2[i] != check_results2[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-6.c b/gcc/testsuite/gcc.dg/vect/slp-perm-6.c
index bec1544650ac9e897ab1c06f120fb6416091dec6..5cc6261d69a15d2a3f6b691c13544c27dc8f9941 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-6.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-6.c
@@ -95,6 +95,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
      if (output[i] != check_results[i] || output2[i] != check_results2[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-7.c b/gcc/testsuite/gcc.dg/vect/slp-perm-7.c
index 346411fd5042add21fdc6413922506bcb92f4594..df13c37bc75d43173d4e1b9d0daf533ba5829c7f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-7.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-7.c
@@ -88,6 +88,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output, input2, output2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
      if (output[i] != check_results[i] || output2[i] != check_results2[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-8.c b/gcc/testsuite/gcc.dg/vect/slp-perm-8.c
index 44df21aae2a2f860d49c36568122733e693d4310..029be5485b62ffef915f3b6b28306501852733d7 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-8.c
@@ -52,6 +52,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N - (N % 3); i++)
      if (output[i] != check_results[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-perm-9.c b/gcc/testsuite/gcc.dg/vect/slp-perm-9.c
index 154c00af598d05bac9ebdad3bfb4eeb28594a1fc..c92fc2f38619a5c086f7029db444a6cb208749f0 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-perm-9.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-perm-9.c
@@ -50,6 +50,7 @@ int main (int argc, const char* argv[])
 
   foo (input, output);
 
+#pragma GCC novector
   for (i = 0; i < N - (N % 3); i++)
      if (output[i] != check_results[i])
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c
index e3bfee33348c5164f657a1494f480db26a7aeffa..72811eb852e5ed51ed5f5d042fac4e9b487911c2 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c
@@ -40,6 +40,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF || out2[i] != in[i] + COEF2)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c
index abb10fde45bc807269cd5bb58f463a77f75118d8..f8ec1fa730d21cde5f2bbb0791b04ddf0e0b358c 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-s16.c
@@ -29,6 +29,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c
index 0756119afb455a0b834fd835553318eb29887f4d..76507c4f46157a8ded48e7c600ee53424e01382f 100644
--- a/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-widen-mult-u8.c
@@ -29,6 +29,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-100.c b/gcc/testsuite/gcc.dg/vect/vect-100.c
index 9a4d4de06718228fcc0bd011d2e23d4c564c29ff..0d8703281f28c995a7c08c4366a4fccf22cf16e2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-100.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-100.c
@@ -30,6 +30,7 @@ int main1 () {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != a[i] || p->b[i] != b[i])
@@ -55,6 +56,7 @@ int main2 () {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (p->a[i] != c[i] || p->b[i] != d[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-103.c b/gcc/testsuite/gcc.dg/vect/vect-103.c
index d03562f7cddd0890e3e159fbdc7c5d629b54d58c..59d8edc38cacda52e53a5d059171b6eefee9f920 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-103.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-103.c
@@ -43,6 +43,7 @@ int main1 (int x, int y) {
   /* check results: */
   if (p->a[0] != a[N - 1])
     abort ();
+#pragma GCC novector
   for (i = 1; i < N; i++)
     if (p->a[i] != b[i - 1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-104.c b/gcc/testsuite/gcc.dg/vect/vect-104.c
index a77c98735ebad6876c97ee22467f5287b4575a01..e0e5b5a53bdae1e148c61db716f0290bf3e829f1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-104.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-104.c
@@ -43,6 +43,7 @@ int main1 (int x) {
   }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
    {
     for (j = 0; j < N; j++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c
index 433565bfd4d3cea87abe23de29edbe8823054515..ec7e676439677ae587a67eae15aab34fd5ac5b03 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-105-big-array.c
@@ -75,6 +75,7 @@ int main1 (int x) {
   /* check results: */
   for (i = 0; i < N; i++)
    {
+#pragma GCC novector
     for (j = 0; j < N; j++)
      {
        if (p->a[i][j] != c[i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-105.c b/gcc/testsuite/gcc.dg/vect/vect-105.c
index 17b6e89d8f69053b5825c859f3ab5c68c49b3a5d..f0823fbe397358cb34bf4654fccce21a053ba2a7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-105.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-105.c
@@ -45,6 +45,7 @@ int main1 (int x) {
   /* check results: */
   for (i = 0; i < N; i++)
    {
+#pragma GCC novector
     for (j = 0; j < N; j++)
      {
        if (p->a[i][j] != c[i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-106.c b/gcc/testsuite/gcc.dg/vect/vect-106.c
index 0171cfcdfa6e60e6cb8158d098d435c0e472abf8..4b3451cc783e9f83f7a6cb8c54cf50f4c43dddc0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-106.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-106.c
@@ -28,6 +28,7 @@ int main1 () {
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (*q != a[i] || *p != b[i])
@@ -50,6 +51,7 @@ int main1 () {
   q = q1;
   p = p1;
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (*q != b[i] || *p != a[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-107.c b/gcc/testsuite/gcc.dg/vect/vect-107.c
index aaab9c00345bf7f0b25fbcda25a141988bda9eac..60c83a99a19f4797bc7a5a175f33aecbc598f8e2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-107.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-107.c
@@ -24,6 +24,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (a[i] != b[2*i+1] * c[2*i+1] - b[2*i] * c[2*i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-108.c b/gcc/testsuite/gcc.dg/vect/vect-108.c
index 4af6326e9c35963ec7109d66dd0d321cf1055597..2cbb6701d5c6df749482d5e4351b9cb4a808b94f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-108.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-108.c
@@ -21,6 +21,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] * ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-109.c b/gcc/testsuite/gcc.dg/vect/vect-109.c
index fe7ea6c420fb1512286b0b468cbe9ffed5daae71..31b9aa2be690fb4f2d9cf8062acbf1b42971098d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-109.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-109.c
@@ -34,6 +34,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i+2] != sb[i] + sc[i] || ia[i+1] != ib[i] + ic[i])
@@ -56,6 +57,7 @@ int main2 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i] != sb[i] + sc[i] || ia[i+1] != ib[i] + ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-11.c b/gcc/testsuite/gcc.dg/vect/vect-11.c
index 044fc5edc2dddb0bddaca545b4e97de1499be8bd..1171757e323bc9a64c5e6762e98c101120fc1449 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-11.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] * ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-110.c b/gcc/testsuite/gcc.dg/vect/vect-110.c
index 47c6456107ddd4f326e8c9e783b01c59e23087e6..69ee547cfd17965f334d0d1af6bc28f99ae3a671 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-110.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-110.c
@@ -20,6 +20,7 @@ main1 (void)
   }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N - 1; i++){
     if (a[i] != b[i] + c[i])
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-113.c b/gcc/testsuite/gcc.dg/vect/vect-113.c
index a9d45ce9fcc21195030dfcdf773ffc3a41e48a37..8e9cc545ce6b3204b5c9f4a220e12d0068aa4f3e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-113.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-113.c
@@ -17,6 +17,7 @@ main1 (void)
     a[i] = i;
   }
 
+#pragma GCC novector
   for ( i = 0; i < N; i++) 
   {
     if (a[i] != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-114.c b/gcc/testsuite/gcc.dg/vect/vect-114.c
index 557b44110a095ae725b58cf1ca2494a103b96dd7..1617d3009eb3fdf0bb16980feb0f54d2862b8f3c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-114.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-114.c
@@ -19,6 +19,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[N-1-i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-115.c b/gcc/testsuite/gcc.dg/vect/vect-115.c
index 0502d15ed3ebd37d8dda044dbe13d68525f3e30a..82b8e2eea1f3374bdbe5460ca58641f217d1ab33 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-115.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-115.c
@@ -41,6 +41,7 @@ int main1 ()
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.strc_t.strc_s.b[i] != a[i])
@@ -54,6 +55,7 @@ int main1 ()
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.ptr_t->strc_s.c[i] != a[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-116.c b/gcc/testsuite/gcc.dg/vect/vect-116.c
index d4aa069772ed76f895f99c91609852bdcc43d324..ac603db44ee2601665c1de4bb60aee95f545c8ef 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-116.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-116.c
@@ -18,6 +18,7 @@ void foo()
   for (i = 0; i < 256; ++i)
     C[i] = A[i] * B[i];
 
+#pragma GCC novector
   for (i = 0; i < 256; ++i)
     if (C[i] != (unsigned char)(i * i))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-117.c b/gcc/testsuite/gcc.dg/vect/vect-117.c
index 22f8e01187272e2cfe445c66ca590f77923d4e95..f2c1c5857059a9bcaafad4ceadff02e192209840 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-117.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-117.c
@@ -47,6 +47,7 @@ int main (void)
 
   for (i = 0; i < N; i++)
    {
+#pragma GCC novector
     for (j = 0; j < N; j++)
      {
        if (a[i][j] != c[i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-11a.c b/gcc/testsuite/gcc.dg/vect/vect-11a.c
index 4f1e15e74293187d495c8c11cda333a1af1139a6..9d93a2e8951f61b34079f6d867abfaf0fccbb8fc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-11a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-11a.c
@@ -21,6 +21,7 @@ void u ()
   
   for (i=0; i<8; i++)
     C[i] = A[i] * B[i];
+#pragma GCC novector
   for (i=0; i<8; i++)
     if (C[i] != Answer[i])
       abort ();
@@ -41,6 +42,7 @@ void s()
   
   for (i=0; i<8; i++)
     F[i] = D[i] * E[i];
+#pragma GCC novector
   for (i=0; i<8; i++)
     if (F[i] != Dnswer[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-12.c b/gcc/testsuite/gcc.dg/vect/vect-12.c
index b095170f008c719326a6cfd5820a7926ae8c722e..096ff10f53c9a4d7e0d3a8bbe4d8ef513a82c46c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-12.c
@@ -24,6 +24,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + ic[i] || sa[i] != sb[i] + sc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-122.c b/gcc/testsuite/gcc.dg/vect/vect-122.c
index 04dae679647ff9831224b6dc200a25b2b1bb28d7..6e7a4c1578f4c4cddf43a81e3e4bc6ab87efa3ca 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-122.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-122.c
@@ -50,6 +50,7 @@ main ()
   f2 ();
   f3 ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i || b[i] != i || l[i] != i * (i + 7LL) || m[i] != i * 7LL)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-124.c b/gcc/testsuite/gcc.dg/vect/vect-124.c
index c720648aaddbe72d0073fcf7548408ce6bda3cdd..6b6730a22bdb62e0f8770b4a288aa1adeff756c2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-124.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-124.c
@@ -21,6 +21,7 @@ main ()
   
   check_vect ();
   foo (6);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 3 + 6)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-13.c b/gcc/testsuite/gcc.dg/vect/vect-13.c
index 5d902924ec20e2ea0ee29418a1b52d4e2ede728e..f1e99a3ec02487cd331e171c6e42496924e931a2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-13.c
@@ -22,6 +22,7 @@ int main1()
     }
 
   /* Check results  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-14.c b/gcc/testsuite/gcc.dg/vect/vect-14.c
index 1640220a134ed8962e31b9d201c0e4a8630d631f..5898d4cd8924a5a6036f38efa79bc4146a78320d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-14.c
@@ -17,6 +17,7 @@ int main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c
index 5313eae598b4787e5294eefe87bf59f5a3581657..bc2689fce50cebf55720bfc9f60bd7c0dd9659dc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-15-big-array.c
@@ -25,6 +25,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[N-1-i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-15.c b/gcc/testsuite/gcc.dg/vect/vect-15.c
index 178bc4404c420c3a7d74ca381f3503aaefc195db..4a73d0681f0db2b12e68ce805f987aabf8f1cf6f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-15.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[N-1-i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-17.c b/gcc/testsuite/gcc.dg/vect/vect-17.c
index 471a82336cf466856186eb9ad3f7a95e4087cedc..797444a4c4a312d41d9b507c5d2d024e5b5b87bb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-17.c
@@ -81,6 +81,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] & ic[i]))
@@ -95,6 +96,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != (cb[i] & cc[i]))
@@ -109,6 +111,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] & sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-18.c b/gcc/testsuite/gcc.dg/vect/vect-18.c
index 28b2941e581fa6abecbdafaa812cf4ff07ea9e5f..8c0fab43e28da6193f1e948e0c59985b2bff1119 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-18.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] | ic[i]))
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != (cb[i] | cc[i]))
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] | sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-19.c b/gcc/testsuite/gcc.dg/vect/vect-19.c
index 27c6dc835a60c42e8360521d343b13f461a0b009..fe2a88c7fd855a516c34ff3fa3b5da5364fb0a81 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-19.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] ^ ic[i]))
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != (cb[i] ^ cc[i]))
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] ^ sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c
index 162cb54b58d17efc205778adc14e846be39afab1..70595db744e349bdc6d786c7e64b762406689c64 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-2-big-array.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-2.c b/gcc/testsuite/gcc.dg/vect/vect-2.c
index d975668cbd023b0324c7526e162bc1aeb21dfcd7..80415a5b54b75f9e9b03f0123a53fd70ee07e7cd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-2.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-20.c b/gcc/testsuite/gcc.dg/vect/vect-20.c
index 8d759f3c6a66e6a6e318510ba59196ab91b757ac..0491bb2fc73bcef98cb26e82fb74778c8fea2dc0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-20.c
@@ -52,6 +52,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != ~ib[i])
@@ -66,6 +67,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != ~cb[i])
@@ -80,6 +82,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != ~sb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-21.c b/gcc/testsuite/gcc.dg/vect/vect-21.c
index ab77df6ef88890907f57a89870e645bb51d51c5a..f98ae8b22ee3e8bbb2c8e4abbc6022c11150fdb1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-21.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-21.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != !ib[i])
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != !cb[i])
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != !sb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-22.c b/gcc/testsuite/gcc.dg/vect/vect-22.c
index 78dc1ce91def46c31e913806aada5907d02fd4e0..3ab5070d94e85e8d332f55fe8511bbb82df781a6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-22.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-22.c
@@ -63,6 +63,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != -ib[i])
@@ -77,6 +78,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != -cb[i])
@@ -91,6 +93,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != -sb[i])
@@ -105,6 +108,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (fa[i] != -fb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-23.c b/gcc/testsuite/gcc.dg/vect/vect-23.c
index 69e0848c8eca10661d85a2f0b17b9a3d99319135..1a1c0b415a9247a3ed2555ca094d0a59e698384b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-23.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-23.c
@@ -80,6 +80,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != ib[i] && ic[i])
@@ -94,6 +95,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != cb[i] && cc[i])
@@ -108,6 +110,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != sb[i] && sc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-24.c b/gcc/testsuite/gcc.dg/vect/vect-24.c
index fa4c0620d29cd44b82fc75f0dc3bab8a862058d9..2da477077111e04d86801c85282822319cd8cfb8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-24.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-24.c
@@ -81,6 +81,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ia[i] != (ib[i] || ic[i]))
@@ -95,6 +96,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (ca[i] != (cb[i] || cc[i]))
@@ -109,6 +111,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (sa[i] != (sb[i] || sc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-25.c b/gcc/testsuite/gcc.dg/vect/vect-25.c
index 904eea8a17b7572ffa335dcf60d27df648f01f18..d665c3e53cde7e5be416a88ace81f68343c1f115 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-25.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-25.c
@@ -19,6 +19,7 @@ int main1 (int n, int *p)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != n)
@@ -32,6 +33,7 @@ int main1 (int n, int *p)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ib[i] != k)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-26.c b/gcc/testsuite/gcc.dg/vect/vect-26.c
index 8a141f38400308c35a99aa77b0d181a4dce0643c..2ea9aa93dc46dbf11c91d468cdb91a1c0936b323 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-26.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-26.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-27.c b/gcc/testsuite/gcc.dg/vect/vect-27.c
index ac86b21aceb7b238665e86bbbd8a46e2aaa4d162..d459a84cf85d285e56e4abb5b56b2c6157db4b6a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-27.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-27.c
@@ -29,6 +29,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i-1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-28.c b/gcc/testsuite/gcc.dg/vect/vect-28.c
index e213df1a46548d7d2962335c5600c252d9d5d5f3..531a7babb214ed2e6694f845c4b1d6f66f1c5d31 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-28.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-28.c
@@ -21,6 +21,7 @@ int main1 (int off)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i+off] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-29.c b/gcc/testsuite/gcc.dg/vect/vect-29.c
index bbd446dfe63f1477f91e7d548513d99be4c11d7d..42fb0467f1e31b0e89ef9323b60e3360c970f222 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-29.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-29.c
@@ -30,6 +30,7 @@ int main1 (int off)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-3.c b/gcc/testsuite/gcc.dg/vect/vect-3.c
index 6fc6557cf9f13e9dcfb9e4198b4846bca44542ba..2c9b5066dd47f8b654e005fb6fac8a5a28f48111 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-3.c
@@ -29,6 +29,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       float fres = b[i] + c[i] + d[i];
diff --git a/gcc/testsuite/gcc.dg/vect/vect-30.c b/gcc/testsuite/gcc.dg/vect/vect-30.c
index 71f7a2d169f44990a59f57dcecd83e0a2824f81d..3585ac8cfefa1bd2c89611857c11de23d846f3f6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-30.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-30.c
@@ -21,6 +21,7 @@ int main1 (int n)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (a[i] != b[i])
@@ -43,6 +44,7 @@ int main2 (unsigned int n)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < nn; i++)
     {
       if (c[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c
index 5621eb4d4ba17aaa6321807ee2d3610e38f8cceb..24bd0c7737df02a6b5dd5de9e745be070b0d8468 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-31-big-array.c
@@ -31,6 +31,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -44,6 +45,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -57,6 +59,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -70,6 +73,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-31.c b/gcc/testsuite/gcc.dg/vect/vect-31.c
index 3f7d00c1748058ef662710eda30d89f0a0560f2f..8e1274bae53d95cbe0a4e959fe6a6002dede7590 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-31.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-31.c
@@ -31,6 +31,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.b[i] != 5)
@@ -44,6 +45,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.c[i] != 6)
@@ -57,6 +59,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.d.k[i] != 7)
@@ -70,6 +73,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N/2; i++)
     {
       if (tmp.e.k[i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c
index 3e1403bbe96948188e7544d05f183a271828640f..5a4053ee8212ecb0f3824f2d0b2e6e03cb8e09ed 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-32-big-array.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-32.c b/gcc/testsuite/gcc.dg/vect/vect-32.c
index 2684cf2e0d390406e4c6c2ac30ac178ecfe70d5c..b04cbeb7c8297d589608b1e7468d536a5f265337 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-32.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c
index c1aa399a240e8c7f50ae10610e2c40d41ea8d555..c3bfaaeb055183ee7a059a050d2fc8fe139bbbae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-33-big-array.c
@@ -23,6 +23,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-33.c b/gcc/testsuite/gcc.dg/vect/vect-33.c
index e215052ff777a911358e1291630df9cabd27e343..8ffd888d482bc91e10b225317b399c0926ba437a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-33.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-33.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c
index 0aa6d507a82f086056113157bc4b7ce0d5a87691..c3d44b4d15fef5b719cf618293bbc2a541582f4a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-34-big-array.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-34.c b/gcc/testsuite/gcc.dg/vect/vect-34.c
index 9cc590253c78317843930fff480b64aaa68de2e2..e3beba56623e9312c1bcfcc81b96d19adb36d83f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-34.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-34.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c
index 28a99c910fd507414a4a732a6bcc93c4ce142ba6..a88d111b21a0ce2670311103678fb91bf1aff80f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-35-big-array.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.a[i] != i + 1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-35.c b/gcc/testsuite/gcc.dg/vect/vect-35.c
index a7ec0f16d4cf0225c2f62c2f0aabf142704b2af8..4267c0bebaef82f5a58601daefd7330fff21c5b1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-35.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-35.c
@@ -26,6 +26,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.a[i] != i + 1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c
index d40fcb6d9925de2730acfd37dba2724904159ebb..9aa3bd7c2f40991ef8a3682058d8aea1bab9ba05 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-36-big-array.c
@@ -27,6 +27,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != s.cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-36.c b/gcc/testsuite/gcc.dg/vect/vect-36.c
index 64bc7fe18095178bc4bc0db5ef93e4c6706fa7d2..59bef84ad2e134c2a47746fb0daf96f0aaa92a34 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-36.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-36.c
@@ -27,6 +27,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.ca[i] != s.cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-38.c b/gcc/testsuite/gcc.dg/vect/vect-38.c
index 01d984c61b8245997b4db358dd579fc2042df9ff..81d9f38515afebd9e7e8c85a08660e4ff09aa571 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-38.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-38.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-4.c b/gcc/testsuite/gcc.dg/vect/vect-4.c
index b0cc45be7de6c24af16f0abedf34bc98370ae3e7..393c88df502ecd9261ac45a8366de969bfee84ae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-4.c
@@ -21,6 +21,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != b[i] * c[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-40.c b/gcc/testsuite/gcc.dg/vect/vect-40.c
index c74703268f913194119e89982092ec4ce7fa0fde..d524b4ebd433b434f55ca1681ef8ade732dfa1bc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-40.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-40.c
@@ -12,6 +12,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-42.c b/gcc/testsuite/gcc.dg/vect/vect-42.c
index 086cbf20c0a2cf7c38ede4e9db30042ac3237972..c1d16f659f130aeabbce4fcc1c1ab9d2cb46e12d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-42.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-42.c
@@ -14,6 +14,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-44.c b/gcc/testsuite/gcc.dg/vect/vect-44.c
index f7f1fd28665f23560cd7a2f397a0c773290c923f..b6895bd1d8287a246c2581ba24132f344dabb27e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-44.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-44.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-46.c b/gcc/testsuite/gcc.dg/vect/vect-46.c
index 185ac1424f94956fbcd5b26d0f4e6d36fd5f708b..7ca8b56ea9ffc50ae1cc99dc74662aea60d63023 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-46.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-46.c
@@ -12,6 +12,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-48.c b/gcc/testsuite/gcc.dg/vect/vect-48.c
index b29fe47635a349c0a845c43655c1a44d569d765e..10d8e09cac1daafeb0d5aa6e12eb7f3ecf6d33fc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-48.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-48.c
@@ -30,6 +30,7 @@ main1 (float *pb, float *pc)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-5.c b/gcc/testsuite/gcc.dg/vect/vect-5.c
index 17f3b2fac9a72f11b512659046dd8710d2e2f9a2..a999989215aa7693a1520c261d690c66f6f9ba13 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-5.c
@@ -25,6 +25,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != c[i])
@@ -38,6 +39,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != d[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-50.c b/gcc/testsuite/gcc.dg/vect/vect-50.c
index f43676896af4b9de482521b4aa915a47596ff4a9..76304cd10ce00881de8a2a6dc37fddf100e534c5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-50.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-50.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-52.c b/gcc/testsuite/gcc.dg/vect/vect-52.c
index c20a4be2edee6c958ae150b7de81121d01b2ab8a..2ad7149fc612e5df4adc390dffc6a0e72717308f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-52.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-52.c
@@ -30,6 +30,7 @@ main1 (int n, float *pb, float *pc)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-54.c b/gcc/testsuite/gcc.dg/vect/vect-54.c
index 2b236e48e196106b7892d3f28b4bd901a700ff9c..7ae59c3e4d391200bcb46a1b3229c30ed26b6083 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-54.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-54.c
@@ -14,6 +14,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-56.c b/gcc/testsuite/gcc.dg/vect/vect-56.c
index c914126ece5f5929d316c5c107e7633efa4da55c..a8703d1e00969afdbb58782068e51e571b612b1d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-56.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-56.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
@@ -50,6 +51,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-58.c b/gcc/testsuite/gcc.dg/vect/vect-58.c
index da4f9740e3358f67e9a05f82c87cf78bf3620e56..43a596f6e9522531c2c4d2138f80eae73da43038 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-58.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-58.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c
index c5de86b167a07ddf9043ae1ba77466ffd16765e6..a38373888907a7ed8f5ac610e030cd919315727d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-6-big-array.c
@@ -39,6 +39,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       if (a[i] != results1[i] || e[i] != results2[i])
@@ -52,6 +53,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-6.c b/gcc/testsuite/gcc.dg/vect/vect-6.c
index c3e6336bb43c6ab30eb2c55049e0f1a9bd5788b6..eb006ad0735c70bd6a416d7575501a49febafd91 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-6.c
@@ -24,6 +24,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     {
       if (a[i] != results1[i] || e[i] != results2[i])
@@ -37,6 +38,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-60.c b/gcc/testsuite/gcc.dg/vect/vect-60.c
index 121c503c63afaf7cc5faa96bb537f4a184c82b00..2de6f0031aa6faf854a61bf60acf4e5a05a7d3d0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-60.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-60.c
@@ -13,6 +13,7 @@ void bar (float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
@@ -50,6 +51,7 @@ main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (pa[i] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-62.c b/gcc/testsuite/gcc.dg/vect/vect-62.c
index abd3d700668b019a075c52edfaff16061200305b..ea6ae91f56b9aea165a51c5fe6489729d5ba4e62 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-62.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-62.c
@@ -25,6 +25,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j+8] != ib[i])
@@ -46,6 +47,7 @@ int main1 ()
   /* check results: */
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][8] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-63.c b/gcc/testsuite/gcc.dg/vect/vect-63.c
index 8d002a5e3c349bd4cbf9e37e8194e9a7450d0bde..20600728145325962598d6fbc17640296c5ca199 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-63.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-63.c
@@ -25,6 +25,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i + j][1][j] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-64.c b/gcc/testsuite/gcc.dg/vect/vect-64.c
index 240b68f6d0d2d4bbef72b60aac2b26ba366514df..96773f6cab610ee565f33038515345ea799ba2c9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-64.c
@@ -45,6 +45,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[i])
@@ -55,6 +56,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[i][1][1][j] != ib[i])
@@ -65,6 +67,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (id[i][1][j+1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-65.c b/gcc/testsuite/gcc.dg/vect/vect-65.c
index 9ac8ea4f013a5bea6dbfe8673056d35fc1c3fabb..af714d03ebb7f30ab56a93799c4c0d521b9cea93 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-65.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-65.c
@@ -42,6 +42,7 @@ int main1 ()
   /* check results: */  
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j] != ib[2][i][j])
@@ -62,6 +63,7 @@ int main1 ()
   /* check results: */
   for (i = 0; i < M; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[j] != ib[2][i][j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-66.c b/gcc/testsuite/gcc.dg/vect/vect-66.c
index ccb66bc80017d3aa64698cba43f932a296a82e7d..cf16dd15ac2d1664d2edf9a676955c4479715fd2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-66.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-66.c
@@ -23,6 +23,7 @@ void main1 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[2][6][j] != 5)
@@ -47,6 +48,7 @@ void main2 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 2; j < N+2; j++)
         {
            if (ia[3][6][j] != 5)
@@ -73,6 +75,7 @@ void main3 ()
   /* check results: */  
   for (i = 0; i < 16; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ic[2][1][6][j+1] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-67.c b/gcc/testsuite/gcc.dg/vect/vect-67.c
index 12183a233c273d8ae3932fa312e1734b48f8c7b0..f3322a32c1e34949a107772dc6a3f4a7064e7ce5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-67.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-67.c
@@ -31,6 +31,7 @@ int main1 (int a, int b)
   /* check results: */  
   for (i = 0; i < N; i++)
     {
+#pragma GCC novector
       for (j = 0; j < N; j++)
         {
            if (ia[i][1][j + NINTS] != (a == b))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-68.c b/gcc/testsuite/gcc.dg/vect/vect-68.c
index 3012d88494d0494ec137ca89fef4e98e13ae108e..8cc2d84140967d2c54d3db2b408edf92c53340d6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-68.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-68.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (tmp1.a.n[1][2][i] != 5)
@@ -43,6 +44,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i < N-1; i++)
     {
       if (tmp1.a.n[1][2][i] != 6)
@@ -56,6 +58,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (tmp1.e.n[1][2][i] != 7)
@@ -69,6 +72,7 @@ int main1 ()
     }
  
   /* check results:  */
+#pragma GCC novector
   for (i = 3; i <N-3; i++)
     {
       if (tmp1.e.n[1][2][i] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-7.c b/gcc/testsuite/gcc.dg/vect/vect-7.c
index c4556e321c6b0d6bf1a2cd36136d71a43718af32..fb2737e92f5dc037c3253803134687081064ae0e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-7.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sb[i] != 5)
@@ -32,6 +33,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 105)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-70.c b/gcc/testsuite/gcc.dg/vect/vect-70.c
index 793dbfb748160ba709dd835dc253cb436f7aada1..cd432a6545a97d83ebac2323fe2b1a960df09c6e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-70.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-70.c
@@ -52,6 +52,7 @@ int main1 ()
 
   /* check results:  */
   for (i = 0; i < OUTERN; i++)
+#pragma GCC novector
     for (j = NINTS - 1; j < N - NINTS + 1; j++)
     {
       if (tmp1.e[i].n[1][2][j] != 8)
@@ -67,6 +68,7 @@ int main1 ()
   
   /* check results:  */
   for (i = 0; i < OUTERN; i++)
+#pragma GCC novector
     for (j = NINTS - 1; j < N - NINTS + 1; j++)
     {
       if (tmp1.e[j].n[1][2][j] != 8)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-71.c b/gcc/testsuite/gcc.dg/vect/vect-71.c
index 581473fa4a1dcf1a7ee570336693ada765d429f3..46226c5f056bdceb902e73326a00959544892600 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-71.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-71.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 2; i < N+1; i++)
     {
       if (ia[ib[i]] != 0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-72.c b/gcc/testsuite/gcc.dg/vect/vect-72.c
index 9e8e91b7ae6a0bc61410ffcd3f0e5fdf4c3488f1..2ab51fdf307c0872248f2bb107c77d19e53894f4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-72.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-72.c
@@ -33,6 +33,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i-1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c
index 1c9d1fdaf9a2bb4eee4e9e766e531b72a3ecef2c..d81498ac0ce5926fb384c00aa5f66cc2a976cfdb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-73-big-array.c
@@ -28,6 +28,7 @@ int main1 ()
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (ia[i] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-73.c b/gcc/testsuite/gcc.dg/vect/vect-73.c
index fdb49b86362774b0fdf3e10e918b7d73f3383dd7..48e1e64558e53fe109b96bd56eb8af92268cd7ec 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-73.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-73.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results: */  
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (ia[i] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c
index ba1ae63bd57cd3347820d888045005a7d4d83f1a..27d708745d31bdb09f4f0d01d551088e02ba24b9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-74-big-array.c
@@ -36,6 +36,7 @@ main1 (float *__restrict__  pa, float * __restrict__ pb, float * __restrict__ pc
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-74.c b/gcc/testsuite/gcc.dg/vect/vect-74.c
index a44f643ee96729fc0952a64e32a52275321557eb..c23c38a85063024b46c95c2e1c5158c81b6dcd65 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-74.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-74.c
@@ -24,6 +24,7 @@ main1 (float *__restrict__  pa, float * __restrict__ pb, float * __restrict__ pc
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c
index a3fb5053037fcca89d7518c47eb2debfc136ba7f..10a3850d0da6d55a124fd6a7f4a2b7fd0efb3fae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-75-big-array.c
@@ -32,6 +32,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-75.c b/gcc/testsuite/gcc.dg/vect/vect-75.c
index 88da97f0bb7cecee4ee93a9d3fa7f55f0ae9641c..ecf5174921cc779f92e12fc64c3014d1a4997783 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-75.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-75.c
@@ -32,6 +32,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c
index 5825cfc446468b16eff60fa2115bb1de4872654f..4f317f273c8737ab07e51699ed19e66d9eb8a51b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-76-big-array.c
@@ -32,6 +32,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -45,6 +46,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -58,6 +60,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != ic[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-76.c b/gcc/testsuite/gcc.dg/vect/vect-76.c
index 3f4feeff8ac7882627c88490298c2f39b5172b7e..23210d4b775bfd4d436b2cdf2af2825cbf1924f0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-76.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-76.c
@@ -26,6 +26,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -39,6 +40,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != pib[i - OFF])
@@ -52,6 +54,7 @@ int main1 (int *pib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = OFF; i < N; i++)
     {
      if (ia[i] != ic[i - OFF])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c b/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c
index fb3e49927826f77149d4813185a6a2cac00232d4..5fb833441d46ce2b6b0df2def5b3093290a2f7a4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-77-alignchecks.c
@@ -32,6 +32,7 @@ int main1 (int *ib, int off)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-77-global.c b/gcc/testsuite/gcc.dg/vect/vect-77-global.c
index 1580d6e075b018696c56de4d680a0999a837bbca..b9622420c64b732047712ff343a3c0027e7bcf3a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-77-global.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-77-global.c
@@ -28,6 +28,7 @@ int main1 (int *ib, int off)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-77.c b/gcc/testsuite/gcc.dg/vect/vect-77.c
index d402e147043c0245f6523f6713dafc83e5357121..033d4ba79869c54f12fc3eea24a11ada871373ab 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-77.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-77.c
@@ -25,6 +25,7 @@ int main1 (int *ib, int off)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c b/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c
index 57e8da0a9090cae7d501ecb83220afff0bf553b2..f7563c4608546696e5c1174402b42bfc2fd3fa83 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-78-alignchecks.c
@@ -33,6 +33,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-78-global.c b/gcc/testsuite/gcc.dg/vect/vect-78-global.c
index ea039b389b22fe16af9353bd5efa59a375a6a71c..11b7e0e9b63cd95bfff9f64f0cfca8b5e4137fe2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-78-global.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-78-global.c
@@ -29,6 +29,7 @@ int main1 (int *ib)
 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-78.c b/gcc/testsuite/gcc.dg/vect/vect-78.c
index faa7f2f4f768b0d7a191b8b67f5000f53c485142..b2bf78108dc9b2f8d43235b64a307addeb71e82a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-78.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-78.c
@@ -25,6 +25,7 @@ int main1 (int *ib)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
      if (ia[i] != ib[i+off])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-8.c b/gcc/testsuite/gcc.dg/vect/vect-8.c
index 44c5f53ebaf260c2087b298abf0428c8d21e8cfa..85bc347ff2f2803d8b830bc1a231e8dadfa525be 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-8.c
@@ -19,6 +19,7 @@ int main1 (int n)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (a[i] != b[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c
index 0baf4d2859b679f7b20d6b5fc939b71ec2533fb4..a43ec9ca9a635d055a6ef70dcdd919102ae3690d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-80-big-array.c
@@ -35,6 +35,7 @@ main1 (float * __restrict__ pa, float * __restrict__ pb, float *__restrict__ pc)
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-80.c b/gcc/testsuite/gcc.dg/vect/vect-80.c
index 45aac84a578fa55624f1f305e9316bbc98e877bb..44299d3c7fed9ac9c213699f6982ba3858bbe0bb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-80.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-80.c
@@ -24,6 +24,7 @@ main1 (float * __restrict__ pa, float * __restrict__ pb, float *__restrict__ pc)
       pa[i] = q[i] * pc[i];
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != q[i] * pc[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-82.c b/gcc/testsuite/gcc.dg/vect/vect-82.c
index fcafb36c06388302775a68f0f056b925725e8aa8..2c1b567d10f2e7e519986c5b1d2e2c6b11353bc2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-82.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-82.c
@@ -17,6 +17,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-82_64.c b/gcc/testsuite/gcc.dg/vect/vect-82_64.c
index 358a85a838f7519a0c1e0b2bae037d6e8aafeea9..d0962e06c62a8888cb5cabb1c1e08438e3a16c8e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-82_64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-82_64.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-83.c b/gcc/testsuite/gcc.dg/vect/vect-83.c
index a300a0a08c462c043b2841961c58b8c8f2849cc5..4fd14cac2abd9581cd47d67e8194795b74c68402 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-83.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-83.c
@@ -17,6 +17,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 2)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-83_64.c b/gcc/testsuite/gcc.dg/vect/vect-83_64.c
index a5e897e093d955e0d1aff88021f99caf3a70d928..e3691011c7771328b9f83ea70aec20f373b10da4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-83_64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-83_64.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != 2)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c
index ade04016cc3136470db804ea7a1bac3010d6da91..9d527b06c7476c4de7d1f5a8863088c189ce6142 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-85-big-array.c
@@ -22,10 +22,12 @@ int main1 (int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (a[j] != i + N - 1)
       abort ();
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (b[j] != j + N)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-85.c b/gcc/testsuite/gcc.dg/vect/vect-85.c
index a73bae1ad41a23ab583d7fd1f5cf8234d516d515..367cea72b142d3346acfb62cb16be58104de4f1c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-85.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-85.c
@@ -22,10 +22,12 @@ int main1 (int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (a[j] != i + N - 1)
       abort();	
 
+#pragma GCC novector
   for (j = 0; j < N; j++)
     if (b[j] != j + N)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-86.c b/gcc/testsuite/gcc.dg/vect/vect-86.c
index ff1d41df23f1e1eaab7f066726d5217b48fadb57..fea07f11d74c132fec987db7ac181927abc03564 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-86.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-86.c
@@ -24,11 +24,12 @@ int main1 (int n)
       b[i] = k;
     }
 
-
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (a[j] != i + n - 1)
       abort();	
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (b[i] != i + n)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-87.c b/gcc/testsuite/gcc.dg/vect/vect-87.c
index 17b1dcdee99c819c8a65eadbf9159d9f78242f62..0eadc85eecdf4f8b5ab8e7a94782157534acf0a6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-87.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-87.c
@@ -23,10 +23,12 @@ int main1 (int n, int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (a[j] != i + n - 1)
       abort();	
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (b[j] != j + n)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-88.c b/gcc/testsuite/gcc.dg/vect/vect-88.c
index b99cb4d89a4b8e94000dc6334514af042e1d2031..64341e66b1227ada7de8f26da353e6c6c440c9a9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-88.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-88.c
@@ -23,10 +23,12 @@ int main1 (int n, int *a)
     }
 
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (a[j] != i + n - 1)
       abort();	
 
+#pragma GCC novector
   for (j = 0; j < n; j++)
     if (b[j] != j + n)
       abort();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c
index 59e1aae0017d92c5b98858777e7e55bceb73a90a..64578b353fec58c4af632346a546ab655b615125 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-89-big-array.c
@@ -28,6 +28,7 @@ int main1 ()
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (p->y[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-89.c b/gcc/testsuite/gcc.dg/vect/vect-89.c
index 356ab96d330046c553364a585e770653609e5cfe..6e7c875c01e2313ba362506542f6018534bfb443 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-89.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-89.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results: */  
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (p->y[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-9.c b/gcc/testsuite/gcc.dg/vect/vect-9.c
index 87600fb5df0d104daf4438e6a7a020e08c277502..dcecef729a60bf22741407e3470e238840ef6def 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-9.c
@@ -20,6 +20,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != (int) sb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-92.c b/gcc/testsuite/gcc.dg/vect/vect-92.c
index 9ceb0fbadcd61ec9a5c3682cf3582abf464ce106..86864126951ccd8392cc7f7e87642be23084d5ea 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-92.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-92.c
@@ -36,6 +36,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 10; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
@@ -56,6 +57,7 @@ main2 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 12; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
@@ -76,6 +78,7 @@ main3 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (pa[i+1] != (pb[i+1] * pc[i+1]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-93.c b/gcc/testsuite/gcc.dg/vect/vect-93.c
index c3e12783b2c47a4e296fd47cc9dc8e73b7ccebb0..b4ccbeedd08fe1285dc362b28cb6d975c6313137 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-93.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-93.c
@@ -23,6 +23,7 @@ main1 (float *pa)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N1; i++)
     {
       if (pa[i] != 2.0)
@@ -36,6 +37,7 @@ main1 (float *pa)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N2; i++)
     {
       if (pa[i] != 3.0)
@@ -60,6 +62,7 @@ int main (void)
   for (i = 1; i <= 256; i++) a[i] = b[i-1];
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= 256; i++)
     {
       if (a[i] != i-1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-95.c b/gcc/testsuite/gcc.dg/vect/vect-95.c
index 1e8bc1e7240ded152ea81f60addab9f7179d3bfc..cfca253e810ff1caf2ef2eef0d7bafc39896ea3e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-95.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-95.c
@@ -11,6 +11,7 @@ void bar (float *pd, float *pa, float *pb, float *pc)
   int i;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (pa[i] != (pb[i] * pc[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-96.c b/gcc/testsuite/gcc.dg/vect/vect-96.c
index c0d6c37b21db23b175de895a582f48b302255e9f..e36196b50d7527f88a88b4f12bebbe780fe23f08 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-96.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-96.c
@@ -28,7 +28,8 @@ int main1 (int off)
   for (i = 0; i < N; i++)
       pp->ia[i] = ib[i];
 
-  /* check results: */  
+  /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (pp->ia[i] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c
index 977a9d57ed4795718722c83344c2efd761e6783e..e015c1684ad856a4732084fbe49783aaeac31e58 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-97-big-array.c
@@ -32,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != cb[i])
@@ -48,6 +49,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != s.q[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-97.c b/gcc/testsuite/gcc.dg/vect/vect-97.c
index 734ba3b6ca36cf56d810a1ce4329f9cb1862dede..e5af7462ef89e7f47b2ca822f563401b7bd95e2c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-97.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-97.c
@@ -27,6 +27,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != cb[i])
@@ -43,6 +44,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (s.p[i] != s.q[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c
index 61b749d4669386a890f5c2f5ba83d6e00d269b4f..2d4435d22e476de5b40c6245f26209bff824139c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-98-big-array.c
@@ -22,6 +22,7 @@ int main1 (int ia[][N])
     }
 
   /* check results: */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
        if (ic[0][i] != DOT16 (ia[i], ib))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-98.c b/gcc/testsuite/gcc.dg/vect/vect-98.c
index 2055cce70b20b96dd69d06775e3d6deb9f27e3b2..72a1f37290358b6a89db6c89aada2c1650d2e7a5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-98.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-98.c
@@ -19,7 +19,8 @@ int main1 (int ia[][N])
 	ic[0][i] = DOT4 (ia[i], ib);
     }
 
-  /* check results: */  
+  /* check results: */
+#pragma GCC novector
   for (i = 0; i < M; i++)
     {
        if (ic[0][i] != DOT4 (ia[i], ib))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-99.c b/gcc/testsuite/gcc.dg/vect/vect-99.c
index ae23b3afbd1d42221f6fe876f23ee7b9beaebca3..0ef9051d907209e025a8fee057d04266ee2fcb03 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-99.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-99.c
@@ -21,6 +21,7 @@ int main (void)
 
   foo(100);
 
+#pragma GCC novector
   for (i = 0; i < 100; ++i) {
     if (ca[i] != 2)
       abort();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c
index b6cc309dbe87b088c9969e07dea03c7f6b5993dd..8fd3bf407e9db3d188b897112ab1e41b381ae3c5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c
@@ -45,6 +45,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)					\
+  _Pragma("GCC novector")				\
   for (int j = -M; j <= M; ++j)				\
     {							\
       TYPE a[N * M], b[N * M];				\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c
index 09a4ebfa69e867869adca3bb5daece02fcee93da..5ecdc3250708e99c30e790da84b002b99a8d7e9b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c
@@ -51,6 +51,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)					\
+  _Pragma("GCC novector")				\
   for (int j = -M; j <= M; ++j)				\
     {							\
       TYPE a1[N * M], a2[N * M], b1[N], b2[N];		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c
index 63a897f4bad4894a6ec4b2ff8749eed3f9e33782..23690c45b65a1b95bf88d50f80d021d5c481d5f1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c
@@ -52,6 +52,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)					\
+  _Pragma("GCC novector")				\
   for (int j = 0; j <= M; ++j)				\
     {							\
       TYPE a1[N * M], a2[N * M], b1[N], b2[N];		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c
index 29bc571642db8858d3e4ca1027131a1a6559c4c1..b36ad116762e2e3c90ccd79fc4f8564cc57fc3f1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c
@@ -39,6 +39,7 @@ typedef unsigned long long ull;
       for (int i = 0; i < N + M; ++i)				\
 	a[i] = TEST_VALUE (i);					\
       test_##TYPE (a + j, a);					\
+      _Pragma("GCC novector")					\
       for (int i = 0; i < N; i += 2)				\
 	{							\
 	  TYPE base1 = j == 0 ? TEST_VALUE (i) : a[i];		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c
index ad74496a6913dcf57ee4573ef1589263a32b074c..f7545e79d935f1d05641415246aabc2dbe9b7d27 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c
@@ -33,6 +33,7 @@ typedef unsigned long long ull;
     {								\
       TYPE a[N + DIST * 2] = {};				\
       test_##TYPE (a + DIST, a + i);				\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	{							\
 	  TYPE expected = 0;					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c
index 8a9a6fffde1d39f138c5f54221854e73cef89079..d90adc70e28420e5e8fd0e36c15316da12224b38 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c
@@ -33,12 +33,14 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)						\
+  _Pragma("GCC novector")					\
   for (int i = 0; i < DIST * 2; ++i)				\
     {								\
       TYPE a[N + DIST * 2];					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	a[j] = TEST_VALUE (j);					\
       TYPE res = test_##TYPE (a + DIST, a + i);			\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N; ++j)				\
 	if (a[j + DIST] != (TYPE) j)				\
 	  __builtin_abort ();					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c
index b9f5d2bbc9f6437e3e8058264cc0c9aaa522b3e2..3b576a4dc432725c67b4e7f31d2bc5937bc34b7a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-18.c
@@ -34,6 +34,7 @@ typedef unsigned long long ull;
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	a_##TYPE[j] = TEST_VALUE (j);				\
       test_##TYPE (i + N - 1, DIST + N - 1);			\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	{							\
 	  TYPE expected;					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c
index 7c0ff36a8c43f11197de413cb682bcd0a3afcae8..36771b04ed5cc0d6c14c0fe1a0e9fd49db4265c4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-19.c
@@ -34,6 +34,7 @@ typedef unsigned long long ull;
     {								\
       __builtin_memset (a_##TYPE, 0, sizeof (a_##TYPE));	\
       test_##TYPE (DIST, i);					\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	{							\
 	  TYPE expected = 0;					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c
index 8a699ebfda8bfffdafc5e5f09d137bb0c7e78beb..9658f8ce38e8efb8d19806a4078e1dc4fe57d2ef 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-20.c
@@ -34,11 +34,13 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)						\
+  _Pragma("GCC novector")					\
   for (int i = 0; i < DIST * 2; ++i)				\
     {								\
       for (int j = 0; j < N + DIST * 2; ++j)			\
 	a_##TYPE[j] = TEST_VALUE (j);				\
       TYPE res = test_##TYPE (DIST, i);				\
+      _Pragma("GCC novector")					\
       for (int j = 0; j < N; ++j)				\
 	if (a_##TYPE[j + DIST] != (TYPE) j)			\
 	  __builtin_abort ();					\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c
index 7e5df1389991da8115df2c6784b52ff3e15f8124..3bc78bed676d8267f7512b71849a7d33cb4ab05b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c
@@ -29,6 +29,7 @@ typedef unsigned long long ull;
   }
 
 #define DO_TEST(TYPE)						\
+  _Pragma("GCC novector")					\
   for (int i = 0; i < DIST * 2; ++i)				\
     {								\
       for (int j = 0; j < N + DIST * 2; ++j)			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c b/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c
index a7fc1fcebbb2679fbe6a98c6fa340edcde492ba9..c11c1d13e0ba253b00afb02306aeec786cee1161 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c
@@ -37,6 +37,7 @@ typedef unsigned long long ull;
       for (int i = 0; i < N + M; ++i)			\
 	a[i] = TEST_VALUE (i);				\
       test_##TYPE (a + j, a);				\
+      _Pragma("GCC novector")				\
       for (int i = 0; i < N; i += 2)			\
 	if (a[i + j] != (TYPE) (a[i] + 2)		\
 	    || a[i + j + 1] != (TYPE) (a[i + 1] + 3))	\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-align-1.c b/gcc/testsuite/gcc.dg/vect/vect-align-1.c
index d56898c4d23406b4c8cc53fa1409974b6ab05485..9630fc0738cdf4aa5db67effdd5eb47de4459f6f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-align-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-align-1.c
@@ -28,6 +28,7 @@ main1 (struct foo * __restrict__ p)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (p->y[i] != x[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-align-2.c b/gcc/testsuite/gcc.dg/vect/vect-align-2.c
index 39708648703357e9360e0b63ca7070c4c21def03..98759c155d683475545dc20cae23d54c19bd8aed 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-align-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-align-2.c
@@ -26,6 +26,7 @@ void fbar(struct foo *fp)
         f2.y[i][j] = z[i];
 
    for (i=0; i<N; i++)
+#pragma GCC novector
       for (j=0; j<N; j++)
 	if (f2.y[i][j] != z[i])
 	  abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c
index 6eb9533a8bb17acf7f9e29bfaa7f7a7aca2dc221..3f3137bd12e1462e44889c7e096096beca4d5b40 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-all-big-array.c
@@ -18,6 +18,7 @@ __attribute__ ((noinline))
 void icheck_results (int *a, int *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -29,6 +30,7 @@ __attribute__ ((noinline))
 void fcheck_results (float *a, float *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -108,6 +110,7 @@ main1 ()
       ca[i] = cb[i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
@@ -163,6 +166,7 @@ main1 ()
       a[i+3] = b[i-1];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
@@ -180,6 +184,7 @@ main1 ()
       j++;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != c[i])
@@ -193,6 +198,7 @@ main1 ()
       a[N-i] = d[N-i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != d[i])
@@ -206,6 +212,7 @@ main1 ()
       a[i] = 5.0;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != 5.0)
@@ -217,6 +224,7 @@ main1 ()
       sa[i] = 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 5)
@@ -228,6 +236,7 @@ main1 ()
       ia[i] = ib[i] + 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-all.c b/gcc/testsuite/gcc.dg/vect/vect-all.c
index cc41e2dd3d313a0557dea16204564a5a0c694950..6fd579fa6ad24623f387d9ebf5c863ca6e91dfe6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-all.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-all.c
@@ -18,6 +18,7 @@ __attribute__ ((noinline))
 void icheck_results (int *a, int *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -29,6 +30,7 @@ __attribute__ ((noinline))
 void fcheck_results (float *a, float *results)
 {
   int i;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != results[i])
@@ -91,6 +93,7 @@ main1 ()
       ca[i] = cb[i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ca[i] != cb[i])
@@ -134,6 +137,7 @@ main1 ()
       a[i+3] = b[i-1];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <=N-4; i++)
     {
       if (a[i+3] != b[i-1])
@@ -151,6 +155,7 @@ main1 ()
       j++;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != c[i])
@@ -164,6 +169,7 @@ main1 ()
       a[N-i] = d[N-i];
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i <N; i++)
     {
       if (a[i] != d[i])
@@ -177,6 +183,7 @@ main1 ()
       a[i] = 5.0;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != 5.0)
@@ -188,6 +195,7 @@ main1 ()
       sa[i] = 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 5)
@@ -199,6 +207,7 @@ main1 ()
       ia[i] = ib[i] + 5;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-1.c b/gcc/testsuite/gcc.dg/vect/vect-avg-1.c
index a7bc7cc90963c8aa8e14d0960d57dc724486247f..4a752cd7d573cd53ea1a59dba0180d017a7f73a5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-1.c
@@ -35,6 +35,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != ((BASE1 + BASE2 + i * 9 + BIAS) >> 1))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-11.c b/gcc/testsuite/gcc.dg/vect/vect-avg-11.c
index 85292f1b82416b70698619e284ae76f3a3d9410d..0046f8ceb4e7b2688059073645175b8845246346 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-11.c
@@ -43,6 +43,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (((((BASE1 + i * 5) ^ 0x55)
 		   + (BASE2 + i * 4)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-15.c b/gcc/testsuite/gcc.dg/vect/vect-avg-15.c
index 48d7ed773000486c42277535cebe34f101e035ef..57b6670cb98cdf92e60dd6c7154b4a8012b05a1e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-15.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, N / 20, 20);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int d = (BASE1 + BASE2 + i * 5) >> 1;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-16.c b/gcc/testsuite/gcc.dg/vect/vect-avg-16.c
index f3e3839a879b6646aba6237e55e2dcd943eac168..319edba1fa3c04b6b74b343cf5397277a36dd6d1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-16.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, N / 20);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int d = (BASE1 + BASE2 + i * 5) >> 1;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-avg-5.c b/gcc/testsuite/gcc.dg/vect/vect-avg-5.c
index 6c43575f448325e84975999c2e8aa91afb525f87..6bdaeff0d5ab4c55bb5cba1df51a85c4525be6fb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-avg-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-avg-5.c
@@ -39,6 +39,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != ((BASE1 + BASE2 + i * 9 + BIAS) >> 1))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c
index 19683d277b1ade1034496136f1d03bb2b446900f..22e6235301417d72e1f85ecbdd96d8e498500991 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-1.c
@@ -19,6 +19,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].i != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c
index 1a101357ccc9e1b8bb157793eb3f709e99330bf6..0c8291c9363d0de4c09f81525015b7b88004bc94 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-2.c
@@ -23,6 +23,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c
index 5dc679627d52e2ad229d0920e5ad8087a71281fe..46fcb02b2f1b6bb2689a6b709901584605cc9a45 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-3.c
@@ -24,6 +24,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c
index fae6ea3557dcaba7b330ebdaa471281d33d2ba15..5a7227a93e4665cd10ee564c8b15165dc6cef303 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-4.c
@@ -22,6 +22,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c
index 99360c2967b076212c67eb4f34b8fd91711d8821..e0b36e411a4a72335d4043f0f360c2e88b667397 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bitfield-write-5.c
@@ -22,6 +22,7 @@ f(struct s *ptr, unsigned n) {
 
 void __attribute__ ((noipa))
 check_f(struct s *ptr) {
+#pragma GCC novector
     for (unsigned i = 0; i < N; ++i)
       if (ptr[i].a != V)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c b/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c
index c97da5289141d35a9f7ca220ae62aa82338fa7f5..a1be71167025c960fc2304878c1ed15d90484dfb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bool-cmp.c
@@ -183,6 +183,7 @@ check (int *p, cmp_fn fn)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < 32; i++)
     {
       int t1 = ((i % 4) > 1) == 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bswap16.c b/gcc/testsuite/gcc.dg/vect/vect-bswap16.c
index d29b352b832a67e89e7cb3856634390244369daa..7d2cb297738378863ddf78b916036b0998d28e6f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bswap16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bswap16.c
@@ -30,6 +30,7 @@ main (void)
 
   vfoo16 (arr);
 
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     {
       if (arr[i] != expect[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bswap32.c b/gcc/testsuite/gcc.dg/vect/vect-bswap32.c
index 88d88b5f034153cb736391e4fc46a9b786ec28c5..1139754bbf1b8f7ef7a5a86f5621c9fe319dec08 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bswap32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bswap32.c
@@ -30,6 +30,7 @@ main (void)
 
   vfoo32 (arr);
 
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     {
       if (arr[i] != expect[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-bswap64.c b/gcc/testsuite/gcc.dg/vect/vect-bswap64.c
index fd15d713c5d63db335e61c892c670b06ee9da25f..38d598eba33019bfb7c50dc2f0d5b7fec3a4736c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-bswap64.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-bswap64.c
@@ -30,6 +30,7 @@ main (void)
 
   vfoo64 (arr);
 
+#pragma GCC novector
   for (i = 0; i < N; ++i)
     {
       if (arr[i] != expect[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-complex-1.c b/gcc/testsuite/gcc.dg/vect/vect-complex-1.c
index 2a87e2feadeba7f1eaef3cce72e27a7d0ffafb5f..b3a02fe9c6d840e79764cb6469a86cfce315a337 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-complex-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-complex-1.c
@@ -43,6 +43,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (c[i] != res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-complex-2.c b/gcc/testsuite/gcc.dg/vect/vect-complex-2.c
index 19b24e1eb87feacc8f7b90fb067124007e22c90f..7bbfdd95b5c46f83f24263e33bf5e3d2ecee0a4d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-complex-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-complex-2.c
@@ -43,6 +43,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (c[i] != res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-complex-4.c b/gcc/testsuite/gcc.dg/vect/vect-complex-4.c
index 49cfdbe1738794c3bf873c330fff4d7f4626e10b..d5e50cc15df66501fe1aa1618f04ff293908469a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-complex-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-complex-4.c
@@ -92,6 +92,7 @@ main (void)
   foo ();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (c[i].f1 != res[i].f1)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-1.c b/gcc/testsuite/gcc.dg/vect/vect-cond-1.c
index 261d828dbb2855fe680b396d3fcbf094e814b6fd..e438cbb67e196a5b3e5e2e2769efc791b0c2d6b7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-1.c
@@ -43,6 +43,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (j = 0; j < M; j++)
     if (x_out[j] != check_result[j])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-10.c b/gcc/testsuite/gcc.dg/vect/vect-cond-10.c
index b2f97d735ef7d94a80a67265b4535a1e228e20ca..dbbe4877db41c43d5be5e3f35cb275b96322c9bc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-10.c
@@ -120,41 +120,49 @@ main ()
 	}
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f3 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f5 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f6 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f7 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, 0, sizeof (k));
   f8 (k);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-11.c b/gcc/testsuite/gcc.dg/vect/vect-cond-11.c
index f28af658f331849a0c5103ba96dd2e3b60de428d..38f1f8f50901c3039d0e7cb17d1bd47b18b89c71 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-11.c
@@ -79,13 +79,16 @@ baz (unsigned int *a, unsigned int *b,
     }
   if (fn (a, b) != -512U - (N - 32) * 16U + 32 * 127U)
     __builtin_abort ();
+#pragma GCC novector
   for (i = -64; i < 0; i++)
     if (a[i] != 19 || b[i] != 17)
       __builtin_abort ();
+#pragma GCC novector
   for (; i < N; i++)
     if (a[i] != (i - 512U < 32U ? i - 512U + 127 : i - 512U - 16)
 	|| b[i] != (i - 512U < 32U ? i * 2U : i + 1U))
       __builtin_abort ();
+#pragma GCC novector
   for (; i < N + 64; i++)
     if (a[i] != 27 || b[i] != 19)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-3.c b/gcc/testsuite/gcc.dg/vect/vect-cond-3.c
index 8a66b4b52ed8a98dd52ef945afb3822de8fe37e9..1521fedd1b5b9d6f3021a1e5653f9ed8df0610b2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-3.c
@@ -50,6 +50,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (j = 0; j < M; j++)
     if (x_out_a[j] != check_result_a[j]
         || x_out_b[j] != check_result_b[j])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-4.c b/gcc/testsuite/gcc.dg/vect/vect-cond-4.c
index 2a6577c6db33a49c7fac809f67b7e957c0b707c2..4057d14c702c22ef41f504a8d3714a871866f04f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-4.c
@@ -47,6 +47,7 @@ int main (void)
 
   foo (125);
 
+#pragma GCC novector
   for (j = 0; j < M; j++)
     if (x_out_a[j] != 125
         || x_out_b[j] != 5)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-5.c b/gcc/testsuite/gcc.dg/vect/vect-cond-5.c
index 41e57f9235b90347e7842d88c9710ee682ea4bd4..f10feab71df6daa76966f8d6bc3a4deba8a7b56a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-5.c
@@ -46,6 +46,7 @@ int main ()
 
   foo(5);
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-6.c b/gcc/testsuite/gcc.dg/vect/vect-cond-6.c
index 65fdc4a9ef195f7210b08289242e74cda1db4831..a46479a07eb105f5b2635f3d5848e882efd8aabf 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-6.c
@@ -47,6 +47,7 @@ int main ()
 
   foo(125);
 
+#pragma GCC novector
   for (k = 0; k < K; k++) 
     if (out[k] != 33)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-7.c b/gcc/testsuite/gcc.dg/vect/vect-cond-7.c
index bd2947516584bf0039d91589422acefd0d27cc35..ea11693ff21798e9e792cfc43aca3c59853e84a0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-7.c
@@ -53,6 +53,7 @@ main ()
 #undef F
 #define F(var) f##var ();
   TESTS
+#pragma GCC novector
   for (i = 0; i < 64; i++)
     {
       asm volatile ("" : : : "memory");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-8.c b/gcc/testsuite/gcc.dg/vect/vect-cond-8.c
index d888442aa456e7520cf57e4a07c0938849758068..88289018b9be7d20edd9c7d898bb51d947ed7806 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-8.c
@@ -79,18 +79,22 @@ main ()
       e[i] = 2 * i;
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 17 : 0))
       abort ();
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 0 : 24))
       abort ();
   f3 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 ? 51 : 12))
       abort ();
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (f[i] != ((i % 3) == 0 ? d[i] : e[i]))
       abort ();
@@ -112,6 +116,7 @@ main ()
       b[i] = i / 2;
     }
   f5 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (c[i] != ((i % 3) == 0 ? a[i] : b[i]))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-9.c b/gcc/testsuite/gcc.dg/vect/vect-cond-9.c
index 63eee1b47296d8c422b4ff899e5840ca4d4f59f5..87febca10e7049cb0f4547a13d27f533011d44bc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-9.c
@@ -145,51 +145,61 @@ main ()
 	}
     }
   f1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f3 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f4 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, -6, sizeof (k));
   f5 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 && ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, -6, sizeof (k));
   f6 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f7 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f8 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (j[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (j, -6, sizeof (j));
   f9 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
   __builtin_memset (k, -6, sizeof (k));
   f10 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (k[i] != ((i % 3) == 0 || ((i / 9) % 3) == 0))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c
index d52e81e9109cc4d81de84adf370b2322799c8c27..5138712731f245eb1f17ef2e9e02e333c8e214de 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-1.c
@@ -23,6 +23,7 @@
 #define TEST(OP)					\
   {							\
     f_##OP (a, b, 10);					\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	int bval = (i % 17) * 10;			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c
index f02b0dc5d3a11e3cfa8a23536f570ecb04a039fd..11a680061c21fb7da69739892b79ff37d1599027 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-3.c
@@ -24,6 +24,7 @@
 #define TEST(INV)					\
   {							\
     f_##INV (a, b, c, d);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	double mb = (INV & 1 ? -b[i] : b[i]);		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c
index 55a174a7ec1fa42c40d4359e882ca475a4feaca3..1af0fe642a0f6a186a225e7619bff130bd09246f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-4.c
@@ -20,6 +20,7 @@
 #define TEST(OP)					\
   {							\
     f_##OP (a, b, 10);					\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	int bval = (i % 17) * 10;			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c
index d2eadc4e9454eba204b94532ee3b002692969ddb..ec3d9db42021c0f1273bf5fa37bd24fa77c1f183 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-5.c
@@ -21,6 +21,7 @@
 #define TEST(OP)					\
   {							\
     f_##OP (a, b, 10);					\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	int bval = (i % 17) * 10;			\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c
index cc70b8a54c44fbc1d20aa9c2599b9a37d9fc135b..2aeebd44f835ee99f110629ded9572b338d6fb50 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-6.c
@@ -23,6 +23,7 @@
 #define TEST(OP)						\
   {								\
     f_##OP (a, b, 10);						\
+    _Pragma("GCC novector")					\
     for (int i = 0; i < N; ++i)					\
       {								\
 	int bval = (i % 17) * 10;				\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c
index 739b98f59aece34b73ed4762c2eeda2512834539..9d20f977884213a6b4580b90e1a187161cf5c945 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cond-arith-7.c
@@ -22,6 +22,7 @@
 #define TEST(INV)					\
   {							\
     f_##INV (a, b, c, d);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	double mb = (INV & 1 ? -b[i] : b[i]);		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c b/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c
index e6ad865303c42c9d5958cb6e7eac6a766752902b..faeccca865f63bc55ee1a8b412a5e738115811e9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cselim-1.c
@@ -73,6 +73,7 @@ main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (out[i].a != result[2*i] || out[i].b != result[2*i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c b/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c
index 95efe7ad62eac1f66b85ffdc359fd60bd7465cfd..f3b7db076e6b223fcf8b341f41be636e10cc952a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c
@@ -55,6 +55,7 @@ main (void)
 
   foo (a, b);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != result[2*i] || b[i] != result[2*i+1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c
index c81f8946922250234bf759e0a0a04ea8c1f73e3c..f02f98faf2fad408f7d7e65a09c678f242aa32eb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-4.c
@@ -16,6 +16,7 @@ int
 main (void)
 {
   V v = foo ((V) { 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff }, 0xffff);
+#pragma GCC novector
   for (unsigned i = 0; i < sizeof (v) / sizeof (v[0]); i++)
     if (v[i] != 0x00010001)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c
index b4eb1a4dacba481e6306b49914d2a29b933de625..80293e50bbc6bbae90cac0fcf436c790b3215c0e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask-5.c
@@ -44,6 +44,7 @@ int main ()
   fun1 (a, N / 2, N);
   fun2 (b, N / 2, N);
 
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       if (DEBUG)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h
index 29a16739aa4b706616367bfd1832f28ebd07993e..bfdc730fe5f7b38117854cffbf2e450dad7c3b5a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h
+++ b/gcc/testsuite/gcc.dg/vect/vect-div-bitmask.h
@@ -30,6 +30,7 @@ int main ()
   fun1 (a, N / 2, N);
   fun2 (b, N / 2, N);
 
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       if (DEBUG)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c
index 6abf76392c8df94765c63c248fbd7045dc24aab1..6456b3aad8666888fe15061b2be98047c28ffed2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-1.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c
index 4bfd1630c4e9927d89bf23ddc90716e0cc249813..d5613e55eb20731070eabeee8fe49c9e61d8be50 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-2.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c
index 3bdf9efe9472342359b64d51ef308a4d4f8f9a79..239ddb0b444163803c310e4e9910cfe4e4c44be7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-3.c
@@ -48,12 +48,14 @@ int main ()
 
   foo(0, 0);
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out_max[k] != check_max[k] || out_min[k] != 0)
       abort ();
 
   foo(100, 45);
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out_min[k] != check_min[k] || out_max[k] != 100)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c
index e5937705400c7c015513abc513a8629c6d66d140..5344c80741091e4e69b41ce056b9541b75215df2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-4.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c
index 079704cee81cc17b882b476c42cbeee0280369cf..7465eae1c4762d39c14048077cd4786ffb8e4848 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-5.c
@@ -43,6 +43,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c
index 1d9dcdab5e9c09514a8427cd65c419e74962c9de..a032e33993970e65e9e8a90cca4d23a9ff97f1e8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6-big-array.c
@@ -49,6 +49,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c
index 85aec1bf609582988f06826afb6b7ce77d6d83de..d1d1faf7c3add6ce2c3378d4d094bf0fc2aba046 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-6.c
@@ -38,6 +38,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c
index c3145a2ad029f92e96995f59e9be9823e016ec11..1ef7a2d19c8b6ee96280aee0e9d69b441b597a89 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-double-reduc-7.c
@@ -52,6 +52,7 @@ int main ()
 
   foo();
 
+#pragma GCC novector
   for (k = 0; k < K; k++)
     if (out[k] != check_result[k])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c b/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c
index 76b436948c185ca73e21203ef68b0a9d4da03408..603f48167d10fe41143f329cd50ca7f6c8e9a154 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c
@@ -21,6 +21,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (da[i] != (double) fb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c b/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c
index 8b82c82f1cdd1078898847c31c6c06371f4232f6..9f404f0e36e10ebf61b44e95d6771d26a25faea8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) db[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c
index fc5081b7e8e143893009b60147d667855efa12ad..f80da6a7ca7f0de224d88860a48f24b4fd8c2ad8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-1.c
@@ -20,6 +20,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != (int) fb[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c
index 64fab3876310d60ca016b78938e449201c80997d..dc038857a42813e665591c10eb3ab7f744d691ad 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-floatint-conversion-2.c
@@ -19,6 +19,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != (int) db[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-fma-1.c b/gcc/testsuite/gcc.dg/vect/vect-fma-1.c
index 6b6b4f726e9476ac6a90984e15fdd0839dff8885..27d206d9fa0601812b09a3ead2ee9730623e97e4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-fma-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-fma-1.c
@@ -22,6 +22,7 @@
 #define TEST(INV)					\
   {							\
     f_##INV (a, b, c, d);				\
+    _Pragma("GCC novector")				\
     for (int i = 0; i < N; ++i)				\
       {							\
 	double mb = (INV & 1 ? -b[i] : b[i]);		\
diff --git a/gcc/testsuite/gcc.dg/vect/vect-gather-1.c b/gcc/testsuite/gcc.dg/vect/vect-gather-1.c
index 4cee73fc7752681c2f677d3e6fddf7daf6e183eb..e3bbf5c0bf8db8cb258d8d05591c246d80c5e755 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-gather-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-gather-1.c
@@ -50,6 +50,7 @@ main (void)
   check_vect ();
 
   f (y, x, indices);
+#pragma GCC novector
   for (int i = 0; i < 32; ++i)
     if (y[i] != expected[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-gather-3.c b/gcc/testsuite/gcc.dg/vect/vect-gather-3.c
index 738bd3f3106948754e38ffa93fec5097560511d3..adfef3bf407fb46ef7a2ad01c495e44456b37b7b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-gather-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-gather-3.c
@@ -54,6 +54,7 @@ main (void)
   check_vect ();
 
   f (y, x, indices);
+#pragma GCC novector
   for (int i = 0; i < 32; ++i)
     if (y[i] != expected[i])
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c
index 7e323693087598942f57aa8b7cf3686dde4a52c9..04d5fd07723e851442e1dc496fdf004d9196caa2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c
@@ -26,6 +26,7 @@ int main ()
   check_vect ();
   foo ();
   /* check results:  */
+#pragma GCC novector
   for (int i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c
index 56a8e01993d1a0701998e377fb7fac4fa2119aed..0f752b716ca811de093373cce75d948923386653 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-16.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] != MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c
index 962be1c0230cca6bef2c097b35833ddd6c270875..8b028d7f75f1de1c8d10376e4f0ce14b60dffc70 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-17.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] == MAX ? 0 : MAX);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c
index 6406875951bd52c3a5c3691eb2bc062e5525a4a1..10145d049083b541c95b813f2fd12d3d62041f53 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-2.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] >= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c
index d55440c9fa421719cb03a30baac5d58ca1ac2fb6..4964343c0ac80abf707fe11cacf473232689123e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-3.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] > MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c
index 5cef85175131bd6b2e08d7801966f5526ededf8e..63f53a4c4eef6e1397d67c7ce5570dfec3160e83 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-4.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] <= MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c
index 3118e2d5a5536e175838284d367a8f2eedf8eb86..38b014336482dc22ecedaed81b79f8e7d5913d1e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-5.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] < MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c
index 272fde09429b6a46ee4a081b49736613136cc328..56e0f71bc799d16725e589a53c99abebe5dca40a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-6.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] != MAX ? MAX : 0); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c
index c0c7a3cdb2baafa5702a7fcf80b7198175ecc4f2..879d88a5ce9239bf872cc0ee1b4eb921b95235d0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-7.c
@@ -22,6 +22,7 @@ int main ()
     A[i] = ( A[i] == MAX ? 0 : MAX); 
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c
index e6446a765c0298857f71b80ffcaefdf77e4f5ce3..bbeccae0f228ad3fc7478c879ae4a741ae6fe7a3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-ifcvt-9.c
@@ -27,6 +27,7 @@ int main ()
   check_vect ();
   foo ();
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c
index bef3efa5658ae6d91010d286967e319906f9aeb5..f75c0f5a1a6645fdee6a8a04ffc55bd67cb7ac43 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-1.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) ib[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c
index 666ee34a4a753ff1d0e33012d95a77496f1986fa..32df21fb52a0b9f16aff7340eee21e76e832cceb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-2.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (float_arr[i] != (float) int_arr[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c
index 78fc3da481c6693611b45d3939fe03d23e84f8f7..db33a84b54d70c9355079adf2ee163c904c68e57 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-3.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (da[i] != (double) ib[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c
index af8fe89a7b02b555acc64b578a07c735f5ef45eb..6fc23bb4621eea594a0e70347a8007a85fb53db8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4a.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) sb[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c
index 49c83182026b91c7b52667fec7a44554e3aff638..b570db5dc96db9c6e95b0e4dbebe1dae19c5ba7c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-intfloat-conversion-4b.c
@@ -19,6 +19,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (fa[i] != (float) usb[i]) 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-1.c b/gcc/testsuite/gcc.dg/vect/vect-iv-1.c
index 90163c440d34bcd70a7024b83f70abb7b83f8077..e6dcf29ebe0d2b2dc6695e754c4a1043f743dd58 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-1.c
@@ -22,6 +22,7 @@ __attribute__ ((noinline)) int main1 (int X)
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-10.c b/gcc/testsuite/gcc.dg/vect/vect-iv-10.c
index 195474b56441bee9b20f373a6aa991610a551e10..83bc7805c3de27ef3dd697d593ee86c1662e742c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-10.c
@@ -17,6 +17,7 @@ int main1 ()
   }
 
   /* check results:  */
+#pragma GCC novector
   for (j=0,i=N;  j<N,i>0;  i--,j++) {
       if (ia[j] != i)
         abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-2.c b/gcc/testsuite/gcc.dg/vect/vect-iv-2.c
index 73e30ee9bac6857b545242136d9c1408f6bfe60e..d85bb3436b2e0abcc4d0d0a7b480f4f267b4898c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-2.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-3.c b/gcc/testsuite/gcc.dg/vect/vect-iv-3.c
index f8ca94dd17db81d8be824dfb2f023517f05d7c04..c0738ebc469f1780eb8ce90e89caa222df0e1fba 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-3.c
@@ -24,6 +24,7 @@ __attribute__ ((noinline)) int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i || arr2[i] != 5 + 2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-4.c b/gcc/testsuite/gcc.dg/vect/vect-iv-4.c
index dfe5bc14458c856122f48bd6bc6a50092d7729e1..2dd8ae30513260c858504f8dc0e8c7b6fd3ea59b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-4.c
@@ -24,6 +24,7 @@ __attribute__ ((noinline)) int main1 ()
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (arr1[i] != 2+2*i || arr2[i] != 5 + 2*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-5.c b/gcc/testsuite/gcc.dg/vect/vect-iv-5.c
index 2015385fbf5fac1349124dd35d57b26c49af6346..c3c4735f03432f9be07ed2fb14c94234ee8f4e52 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-5.c
@@ -20,6 +20,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr[i] != 1.0 + 2.0*i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-6.c b/gcc/testsuite/gcc.dg/vect/vect-iv-6.c
index ccd7458a98f1d3833b19c838a27e9f582631e89c..4c9d9f19b45825a210ea3fa26160a306facdfea5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-6.c
@@ -28,6 +28,7 @@ __attribute__ ((noinline)) int main1 (int X)
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr1[i+1] != X+6*i+2
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-7.c b/gcc/testsuite/gcc.dg/vect/vect-iv-7.c
index 24b59fe55c498bf21d107bef72bdc93690229c20..f6d93360d8dda6f9380425b5518ea5904f938322 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-7.c
@@ -22,6 +22,7 @@ __attribute__ ((noinline, noclone)) int main1 (int X)
    } while (i < N);
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (arr[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c
index 45d82c65e2f85b7b470a22748dacc78a63c3bd3e..26e8c499ce50cc91116c558a2425a47ebe21cdf7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8-big-array.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (unsigned char)myX || b[i] != myX || c[i] != (unsigned int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8.c
index dd37d250e91c3839c21fb3c22dc895be367cdcec..b4bb29d88003d2bbc0e90377351cb46d1ff72b55 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (unsigned char)myX || b[i] != myX || c[i] != (unsigned int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c
index 63b6b6e893f7a55a56aef89331610fd76d2c1c42..dceae27bbbee36a13af8055785dd4258b03e3dba 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8a-big-array.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (signed char)myX || b[i] != myX || c[i] != (int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c b/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c
index 1f8fedf2716745d469771cfce2629dd05478bce8..dfe3a27f024031427344f337d490d4c75d8a04be 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-iv-8a.c
@@ -23,6 +23,7 @@ __attribute__ ((noinline)) int main1 (short X)
   }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (a[i] != (signed char)myX || b[i] != myX || c[i] != (int)myX++)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-1.c b/gcc/testsuite/gcc.dg/vect/vect-live-1.c
index f628c5d3998930ea3e0cee271c20ff3eb17edf62..e4a6433a89961b008a2b766f6669e16f378ca01e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-1.c
@@ -38,6 +38,7 @@ main (void)
   if (ret != MAX + START)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-2.c b/gcc/testsuite/gcc.dg/vect/vect-live-2.c
index 19d8c22859e0804ccab9d25ba69f22e50d635ebb..dae36e9ed67c8f6f5adf735345b817d59a3741f4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-2.c
@@ -48,6 +48,7 @@ main (void)
   if (ret != MAX - 1)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-3.c b/gcc/testsuite/gcc.dg/vect/vect-live-3.c
index 8f5ccb27365dea5e8cd8561d3c8a406e47469ebe..1f6b3ea0faf047715484ee64c1a49ef74dc1850e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-3.c
@@ -45,6 +45,7 @@ main (void)
   if (ret != (MAX - 1) * 3)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-4.c b/gcc/testsuite/gcc.dg/vect/vect-live-4.c
index 553ffcd49f744cabd6bdd42e6aca8c12d15ceb01..170927802d2d8f1c42890f3c82f9dabd18eb2f38 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-4.c
@@ -42,6 +42,7 @@ main (void)
   if (ret != MAX + 4)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-5.c b/gcc/testsuite/gcc.dg/vect/vect-live-5.c
index 7cde1db534bb1201e106ba34c9e8716c1f0445a1..9897552c25ce64130645887439c9d1f0763ed399 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-5.c
@@ -39,6 +39,7 @@ main (void)
   if (ret != 99)
     abort ();
 
+#pragma GCC novector
   for (i=0; i<MAX; i++)
     {
       __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c b/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c
index 965437c8f03eaa707add3577c6c19e9ec4c50302..6270c11e025ed6e181c7a607da7b1b4fbe82b325 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-slp-1.c
@@ -51,6 +51,7 @@ main (void)
       a[i] = i;
     }
 
+#pragma GCC novector
   for (i=0; i<4; i++)
     {
       __asm__ volatile ("");
@@ -60,6 +61,7 @@ main (void)
       if (ret != (MAX * 4) - 4 + i)
 	abort ();
 
+#pragma GCC novector
       for (i=0; i<MAX*4; i++)
 	{
 	  __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c b/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c
index 0d2f17f9003178d65c3dc5358e13c45f8ac980e3..c9987018e88b04f5f0ff195baaf528ad86722714 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-slp-2.c
@@ -45,6 +45,7 @@ main (void)
       a[i] = i;
     }
 
+#pragma GCC novector
   for (i=0; i<2; i++)
     {
       __asm__ volatile ("");
@@ -54,6 +55,7 @@ main (void)
       if (ret != (MAX * 2) - 2 + i)
 	abort ();
 
+#pragma GCC novector
       for (i=0; i<MAX*2; i++)
 	{
 	  __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c b/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c
index a3f60f6ce6d24fa35e94d95f2dea4bfd14bfdc74..e37822406751b99b3e5e7b33722dcb1912483345 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-live-slp-3.c
@@ -52,6 +52,7 @@ main (void)
       a[i] = i;
     }
 
+#pragma GCC novector
   for (i=0; i<4; i++)
     {
       __asm__ volatile ("");
@@ -61,6 +62,7 @@ main (void)
       if (ret != (MAX * 4) - 4 + i)
 	abort ();
 
+#pragma GCC novector
       for (i=0; i<MAX*4; i++)
 	{
 	  __asm__ volatile ("");
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c b/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c
index 992cbda2e91628cd145d28c8fdabdb7a4d63ee68..91d4d40a86013dca896913d082773e20113a17e2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mask-load-1.c
@@ -36,6 +36,7 @@ main ()
       asm ("");
     }
   foo (a, b);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != ((i & 1)
 		 ? 7 * i + 2.0 * (7 * i * 7.0 + 3.0)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c b/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c
index 7d9dc5addf54264bf2fd0c733ccfb83bb1c8f20d..76f72597589c6032d298adbc8e687ea4808e9cd4 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mask-loadstore-1.c
@@ -36,6 +36,7 @@ main ()
       asm ("");
     }
   foo (a, b, c);
+#pragma GCC novector
   for (i = 0; i < 1024; i++)
     if (a[i] != ((i & 1) ? -i : i)
 	|| b[i] != ((i & 1) ? a[i] + 2.0f : 7 * i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c b/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c
index 8e46ff6b01fe765f597add737e0b64ec5b505dd1..4df0581efe08333df976dfc9c52eaab310d5a1cc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mulhrs-1.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, N);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != HRS(BASE1 * BASE2 + i * i * (CONST1 * CONST2)
 		    + i * (BASE1 * CONST2 + BASE2 * CONST1)))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c
index b63e9a8a6d9d0c396c3843069d100fbb9d5fa913..1e90d19a684eb0eebf223f85c4ea2b2fd93aa0c5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-1.c
@@ -27,6 +27,7 @@ main (void)
     }
 
   foo (data);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (data[i] / 123 != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c
index a8253837c3863f5bc5bfea1d188a5588aea501c6..f19829b55a96227f0157527b015291da6abd54bf 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-mult-const-pattern-2.c
@@ -26,6 +26,7 @@ main (void)
     }
 
   foo (data);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (data[i] / -19594LL != i)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
index 378a5fe642ac415cd20f45e88f06e8d7b9040c98..06dbb427ea11e14879d1856c379934ebdbe50e04 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-1.c
@@ -39,6 +39,7 @@ __attribute__ ((noinline)) int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i + NSHORTS - 1] != sb[i] || ia[i + NINTS - 1] != ib[i + 1])
@@ -69,6 +70,7 @@ __attribute__ ((noinline)) int main2 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i + NINTS - 1] != sb[i + 1] || ia[i + NINTS - 1] != ib[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
index 891ba6d8e7169c67e840733402e953eea919274e..c47cf8c11d9ade3c4053f3fcf18bf719fe58c971 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-10.c
@@ -48,6 +48,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresult[i] != (unsigned short)uY[i])
       abort ();
@@ -55,6 +56,7 @@ int main (void)
   
   foo2 (N);
   
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != (short)Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c
index c58391f495eb8d19aec9054f4d324a1bdf4461a4..29d178cf88d8df72b546772047b1e99a1a74043b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-11.c
@@ -30,6 +30,7 @@ int main (void)
 
   foo (N,z+2);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (z[i+2] != x[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c
index 4782d3f7d1066e1dcf5c3c1004d055eb56bd3aec..dd5fffaed8e714114dcf964ffc6b5419fba1aa9f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-12.c
@@ -31,6 +31,7 @@ int main (void)
 
   foo (N,z+2);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (z[i+2] != x[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c
index 2b185bb1f86ede937842596cec86f285a7c40d27..5bf796388f9c41083a69f3d6be3f5a334e9410a1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-13.c
@@ -44,6 +44,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresult[i] != (unsigned int)uX[i])
       abort ();
@@ -51,6 +52,7 @@ int main (void)
   
   foo2 (N);
   
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != (int)X[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c
index ff5f8e989b2ea57fb265e8fca3a39366afb06aaa..6f9b81d1c01ab831a79608074f060b3b231f177d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-14.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresultX[i] != uX[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c
index cf45703e01867a7954325f6f8642594e31da9744..a61f1a9a2215e238f6c67e229f642db6ec07a00c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-16.c
@@ -26,6 +26,7 @@ int main (void)
 
   foo (N,z+2);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (z[i+2] != x[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c
index 79ad80e3013e189c0efb9425de2b507cf486f39a..d2eff3a20986593a5185e981ae642fcad9a57a29 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-17.c
@@ -30,6 +30,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresultX[i] != uX[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
index 7f93938349f91c0490dad8ea2de3aec780c30b2b..069ef44154effb38f74792e1a00dc3ee236ee6db 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-2.c
@@ -26,6 +26,7 @@ __attribute__ ((noinline)) int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
index 1f82121df06181ad27478378a2323dbf478eacbe..04b144c869fc2a8f8be91a8252387e09d7fca2f2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-3.c
@@ -39,6 +39,7 @@ int main1 (int n, int * __restrict__ pib,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (ia[i] != pib[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
index b0f74083f2ba992620ebdf3a3874f6c5fa29f84d..18ab9538675b3fd227ae57fafc1bfd1e840b8607 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-4.c
@@ -41,6 +41,7 @@ int main1 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i+7] != sb[i] + sc[i] || ia[i+3] != ib[i] + ic[i])
@@ -75,6 +76,7 @@ int main2 (int n)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (sa[i+3] != sb[i] + sc[i] || ia[i+3] != ib[i] + ic[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
index ad11d78a548735a67f76b3aa7f98731d88868b56..7c54479db1f684b9661d59816a3cd9b0e5f35619 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-5.c
@@ -30,6 +30,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (ia[i] != ib[i] + ic[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
index 864b17ac640577753d8164f1ae3ea84181a553c1..73d3b30384ebc4f15b853a140512d004262db3ef 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-6.c
@@ -46,6 +46,7 @@ int main1 (int n,
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     {
       if (ia[i] != pib[i] + pic[i] 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
index 315c9aba731ac28189cd5f463262fc973d52abe2..001671ebdc699ca950f6fd157bd93dea0871c5ab 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-8.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresultX[i] != uX[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c b/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
index 8c5c611947f720c9ef744c33bdd09a78967d4a4c..3e599b3462d13a8afcad22144100f8efa58ac921 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multitypes-9.c
@@ -44,6 +44,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (uresult[i] != (unsigned short)uX[i])
       abort ();
@@ -51,6 +52,7 @@ int main (void)
   
   foo2 (N);
   
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != (short)X[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c
index 75b210c1a21c56c114f25b354fb368bdbe9462d5..357d006177f60a5376597929846efbfaa787f90b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-1.c
@@ -20,6 +20,7 @@ int main (int argc, const char **argv)
   int i;
   check_vect ();
   foo (31);
+#pragma GCC novector
   for (i = 0; i < 31; i++)
     if (ii[i] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c
index 229ce987db5f5a5b48177d0c9d74e416e417d3f6..dc4c7a64aee4f800997d62550f891b3b35f7b633 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-2.c
@@ -23,6 +23,7 @@ int main (int argc, const char **argv)
   int i;
   check_vect ();
   foo (32);
+#pragma GCC novector
   for (i = 0; i < 32; i++)
     if (ii[i] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c
index 16665265c4062c0a3acb31e01a1473dea3125685..268e65458bf839e2403a7ae3e4c679e7df6dcac7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nb-iter-ub-3.c
@@ -22,6 +22,7 @@ int main (int argc, const char **argv)
   int i;
   check_vect ();
   foo (33);
+#pragma GCC novector
   for (i = 0; i < 33; i++)
     if (ii[i] != i)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c b/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c
index fca8ee0963860fa0a938db41c865e8225bf554c3..aa6e403b51ce8e9a29ddd39da5d252c9238ca7eb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-neg-store-1.c
@@ -28,10 +28,12 @@ int main (void)
    
   test1 (x + 16);
   
+#pragma GCC novector
   for (i = 0; i < 128; i++)
    if (x[i + 16] != 1234)
      abort ();
   
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     if (x[i] != 5678
        || x[i + 144] != 5678)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c b/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c
index c924b12b02fd438d039d0de6b6639813047839e7..95b16196007488f52b2ec9a2dfb5a4f24ab49bba 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-neg-store-2.c
@@ -28,10 +28,12 @@ int main (void)
    
   test1 (x + 16, 1234);
   
+#pragma GCC novector
   for (i = 0; i < 128; i++)
    if (x[i + 16] != 1234)
      abort ();
   
+#pragma GCC novector
   for (i = 0; i < 16; i++)
     if (x[i] != 5678
        || x[i + 144] != 5678)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c
index f52f30aa24e83768f9beb03fb2ac7b17f37e0b77..129dab2ba1cfe8175644e0a2330349974efca679 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-1.c
@@ -28,6 +28,7 @@ foo ()
       out[i] = res;
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)  
     if (out[i] != check_res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c
index 5aa977df633c9a5d24e248b0c02ec21751f78241..26ad6fa65c6d1489aa1b1ce9ae09ea6f81ad44d2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c
@@ -27,6 +27,7 @@ foo ()
       out[i] = res;
     }
 
+#pragma GCC novector
   for (i = 0; i < N; i++)  
     if (out[i] != check_res[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c
index f2ab30c63b2e28fbd453af68628d3491d6b4d034..4e3b8343ff7b4b1f43397fe2e71a8de1e89e9a74 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-nest-cycle-3.c
@@ -27,6 +27,7 @@ main1 ()
     }
 
   /* Check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != DIFF)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c
index 02f01cfb5791319d766f61465c2d1b64718674de..32c40fb76e325571347993571547fa12dd6255aa 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2-big-array.c
@@ -28,6 +28,7 @@ int main (void)
   foo ();
 
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[j][i] != j+i)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2.c
index 55023d594dd2e0cb18c3c9dc838ac831ede938da..a0a419c1547fc451b948628dafeb48ef2f836daa 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2.c
@@ -28,6 +28,7 @@ int main (void)
   foo ();
 
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[j][i] != j+i)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c
index 6b9fefedf3a5c9ee43c9201039987468710df62d..5ca835a2dda468bab1cbba969278a74beff0de32 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2a-big-array.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c
index 3a4dafee0720bd1a5e532eb2c0062c5eb78556b6..f9924fcb2b40531e8e7a4536d787b5d1b6e2b4ee 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2a.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c
index bb4e74b7b333ce036159db4cbf5aaa7107dc35d9..218df61cf4b18709cb891969ae53977081a86f1d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2b.c
@@ -27,6 +27,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j++) {
       if (image[k+i][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c
index 6adde9769215e8c98132ec91ab015e56b710c47a..36c9681201532960b3eecda2b252ebe83036a95a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2c-big-array.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j+=2) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c
index bf6abfef01fa96904adbf350935de3609550f2af..678d7e46a5513e0bdeaf0ec24f2469d58df2cbc5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2c.c
@@ -28,6 +28,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < N; j+=2) {
       if (image[k][j][i] != j+i+k)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c b/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c
index b75281bc3187f84824e1360ba92a18f627686aa5..81a4fc407086372c901b1ff34c75cada3e8efb8a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-2d.c
@@ -27,6 +27,7 @@ int main (void)
 
  for (k=0; k<N; k++) {
   for (i = 0; i < N; i++) {
+#pragma GCC novector
     for (j = 0; j < i+1; j++) {
       if (image[k][j][i] != j+i+k)
        abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c
index fdc8a0544dd941f28a97a22e706bd3f5c3c9d2a3..231989917d7c4d5ff02b4f13a36d32c543114c37 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3-big-array.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3.c
index 921db48a0f76763bc724d41f90c74472da8e25fb..c51787fe5753f4317b8c1e82c413b009e865ad11 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c
index fd841b182e3c81eed43a249fe401c6213814ea36..7ae931e39be5a4e6da45242b415459e073f1384a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3a-big-array.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c
index d26440d1a64e887aa2cd6ccf1330cb34d244ef12..bfadac0c5e70b61b23b15afa9271ac9070c267c1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3a.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c
index b915c4e370c55293ec00665ddd344b9ddafec3b4..1e2bbf1e7bac29563a530c4bbcd637d8541ddfca 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3b.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N/2; i++) {
     diff = 0;
     for (j = 0; j < N; j++) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c b/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c
index 091c6826f66acb07dbc412ae687d72c84800146d..952bba4d911956c49a515276c536a87a68433d40 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-3c.c
@@ -36,6 +36,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < N; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-4.c b/gcc/testsuite/gcc.dg/vect/vect-outer-4.c
index 9614b777aded3c9d2f5229d27ce8e5cfbce0c7d2..8a803cd330f25324669467a595534100878f3ddc 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-4.c
@@ -38,6 +38,7 @@ int main (void)
 
   foo ();
   
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < M; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c
index b656064697c93177cb9cd9aae8f9f278b9af40b0..587eabaf004705fb6d89882a43a628921361c30e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-4d-big-array.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < M; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c b/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c
index 443a00d49e19dae2a0dd32d6e9e28d2bf5972201..0c9115f60a681f48125dfb2a6428202cc1ec7557 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-4d.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo ();
   
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     diff = 0;
     for (j = 0; j < M; j+=4) {
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-5.c b/gcc/testsuite/gcc.dg/vect/vect-outer-5.c
index 10b558fd20905d2c8b9915d44a41e89b406028d9..67be075278847ea09e309c5d2ae2b4cf8c51b736 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-5.c
@@ -38,6 +38,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N-20; i++)
     {
       s = 0;
@@ -57,6 +58,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < 4; i++)
     {
       if (B[i] != E[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-6.c b/gcc/testsuite/gcc.dg/vect/vect-outer-6.c
index 201ca8424828d6dabe1c6d90dff8396438a71ff4..13a5496f70c069f790d24d036642e0715a133b3b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-6.c
@@ -48,6 +48,7 @@ int main ()
   main1();
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       s = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c
index 6299e9fed4233b3ec2c0b9892afdca42edf0bee0..8114934ed03332aaa682c6d4b5a7f62dfc33a51e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-big-array.c
@@ -62,6 +62,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c
index d575229f2fb3bb6ece1fbc013019ebb0fbaa505e..9c4be4b9f658f7abd1e65b7b5a9124a5670f7ab9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb-big-array.c
@@ -66,6 +66,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c
index 9414e82f3edb1ea00587b916bfaf66847ac07574..4f1ccfccfa229105eb4e8a5c96a5ebfb13384c5d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir-lb.c
@@ -66,6 +66,7 @@ int main (void)
   foo ();
   fir ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c b/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c
index 0d181dfec24a212d430a1cac493ee914ebe25325..1c68c6738580d8670b7b108c52987d576efee4ac 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-fir.c
@@ -62,6 +62,7 @@ int main (void)
   foo ();
   fir ();
   
+#pragma GCC novector
   for (i = 0; i < N; i++) {
     if (out[i] != fir_out[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c
index 217b32cd2bde12247f94f36787ccdf67bb014ba2..795bff5f3d5f1629b75cdc7fefdc48ff4c05ad8a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-1.c
@@ -66,6 +66,7 @@ int main()
       t2[i] = z1[i]; z1[i] = 1.0f;
     }
   foo2 ();  /* scalar variant.  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (x1[i] != t1[i] || z1[i] != t2[i])
       abort ();	
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c
index 3ae1020936f960a5e46d6c74bee80d3b52df6db5..ead8d6f8e79187f0054d874b1d6e5fe3c273b5ca 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-2.c
@@ -67,6 +67,7 @@ int main ()
       t2[i] = z1[i]; z1[i] = 1.0f;
     }
   foo2 (n);  /* scalar variant.  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (x1[i] != t1[i] || z1[i] != t2[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c
index 59e54db075254498b34f673198f8f4f373b728a5..a102ddd7d8d4d9182436646e1ca4d0bd1dd86479 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-simd-3.c
@@ -70,6 +70,7 @@ int main()
       t2[i] = z1[i]; z1[i] = 1.0f;
     }
   foo2 ();  /* scalar variant.  */
+#pragma GCC novector
   for (i=0; i<N; i++)
     if (x1[i] != t1[i] || z1[i] != t2[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c
index ec1e1036f57022716361977fb419b0806e55123d..0e5388b46ce80b610d75e18c725b8f05881c244b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-2.c
@@ -28,6 +28,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (int i = 0; i < 20; i++)
     {
       double suma = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c
index 53865d4737b1333c3eb49723d35d2f0e385049a3..3dce51426b5b83d85bc93aaaa67bca3e4c29bc44 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-outer-slp-3.c
@@ -35,6 +35,7 @@ int main ()
 
   foo ();
 
+#pragma GCC novector
   for (int i = 0; i < 20; i++)
     {
       double suma = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
index 9a5141ee6ecce133ce85edcf75603e0b3ce41f04..a7ce95bcdcefc1b71d84426290a72e8891d8775b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
index f2d284ca9bee4af23c25726a54866bfaf054c46c..21fbcf4ed70716b47da6cbd268f041965584d08b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
@@ -30,6 +30,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c
index 222d854b2d6e3b606e83131862c2d23a56f11829..1e48dab5ccb4b13c82800d890cdd5a5a5d6dd295 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-11.c
@@ -43,6 +43,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int res = BASE_B + BASE_C + i * 9;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c
index b25db881afbc668bb163915a893bfb8b83243f32..08a65ea551812ba48298884ec32c6c7c5e46bdd2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-13.c
@@ -36,6 +36,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + i * 9) / 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c
index d31050ee926ac7e12c8bce99bf3edc26a1b11fbe..bd7acbb613f47fd61f85b4af777387ae88d4580a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-15.c
@@ -38,6 +38,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + i * 9) / 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c
index 333d74ac3e7bdf99cc22b8fc7e919e39af7d2ca4..53fcfd0c06c14e5d9ddc06cdb3c36e2add364d3b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c
@@ -33,6 +33,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != ((((i * 3) & 0xef) | 0x80) + (i << 4)))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c
index ecb74d7793eeaa80b0d48479b2be6c68e64c61b0..aa58cd1c95789ad4f17317c5fa501385a185edc9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-18.c
@@ -35,6 +35,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (unsigned char) ((((i * 3) & 0xef) | 0x80) + (i << 4)))
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c
index 11546fe1a502a02c750ea955f483bc3a8b3a0ac7..c93cd4d09af5fc602b5019352073404bb1f5d127 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-19.c
@@ -40,6 +40,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, e);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != i * 2 + 3
 	|| b[i] != i + 100
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c
index 82aec9f26517b2e00568f3240ff88d954af29bea..4bbb30ac8aca529d062e0daacfe539177ab92224 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2-big-array.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (int *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c
index 0bcbd4f1b5315ec84e4aa3bd92e058b6ca9ea0ec..ad423f133c0bc25dfad42e30c34eceb5a8b852ab 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-2.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (int *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c
index 47f970d231ee61c74c7c4d5b3f9e9bab0673cfe2..81292d42f0d695f98b62607053daf8a5c94d98d3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-20.c
@@ -40,6 +40,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, e);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != i * 2 + 3
 	|| b[i] != i + 100
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c
index 6e13f260f1124ef221bae41b31f8f52ae35162d3..361f77081a6d0a1d30051107f37aa4a4b764af4f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-21.c
@@ -38,6 +38,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, e);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != i * 2 + 3
 	|| b[i] != i + 100
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c
index 187bdf159feaa770b8497c020bd3bc82becdea15..830f221019871a3df26925026b7b8c506da097db 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-22.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, d, 0x73);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (b[i] != ((i * 2 + 3) ^ 0x73)
 	|| a[i] != ((i * 11) | b[i]))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c
index 6f89aacbebf5094c7b1081b12c7fcce1b97d536b..55de14161d85db871ae253b86086a1341eba275c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3-big-array.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c
index a1e1182c6067db47445ad07b77e5c6e067858488..3d833561972da4a128c1bc01eff277564f084f14 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-3.c
@@ -26,6 +26,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
index 03a6e6795ec68e5f9a35da93ca7a8d50a3012a21..6b3a2b88abfb6a5cd4587d766b889825c2d53d60 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
@@ -28,6 +28,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
index 0ef377f1f58a6f6466380a59c381333dbc4805df..60c9c2cc1ec272b46b7bb9a5cf856a57591425b0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
@@ -32,6 +32,7 @@ foo (unsigned char *src, unsigned char *dst)
 
   s = src;
   d = (unsigned short *)dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       const int b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c
index 269df5387d20c859806da03aed91d77955fa651a..c2ab11a9d325c1e636003e61bdae1bab63e4cf85 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-5.c
@@ -37,6 +37,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + i * 9) >> 1)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c
index 314a6828c53c161d2e63b88bdecf0cee9070a794..1d55e13fb1fbc4273d3a64da20dc1e80fb760296 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-7.c
@@ -39,6 +39,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c, D);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (BASE_B + BASE_C + D + i * 9) >> 2)
       __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c
index 5baba09a575f0f316aac1a967e145dbbbdade5b4..36bfc68e05357359b8d9bdfe818910a3d0ddcb5a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-9.c
@@ -40,6 +40,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     {
       int res = BASE_B + BASE_C + i * 9;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c b/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c
index 7980d4dd6438d9a063051c78608f73f1cea1c740..717850a166b2b811797cf9cdd0753afea676bf74 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-1-src.c
@@ -21,6 +21,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != ib[i+2] + ib[i+6])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c b/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c
index f6fc134c8705567a628dcd62c053ad6f2ca2904d..5e5a358d34bece8bbe5092bf2d617c0995388634 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-2-src.c
@@ -22,6 +22,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != ib[i+2] + ib[i+6])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c b/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c
index 33088fb090271c3b97fae2300e5d7fc86242e246..1b85f14351242304af71564660de7db757294400 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-4-src.c
@@ -18,6 +18,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 1; i <= N; i++)
     {
       if (ia[i] != ib[i] + ib[i+5])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c
index 64de22a1db4d7a8b354ad3755685171308a79a00..698ca5bf0672d3bfce0121bd2eae27abb2f75ca2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-1.c
@@ -28,6 +28,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 1; i < 64; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c
index 086b48d9087c02ccbc0aaf36f575a3174f2916af..777051ee4a16a47f20339f97e13ad396837dea9a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-2.c
@@ -29,6 +29,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 1; i < 64; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c
index 3389736ead98df2207a89de3ecb34a4a95faa6f5..aeb7da3877d7e0df77d6fee1a379f352ae2a5750 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-3.c
@@ -29,6 +29,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 1; i < 64; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c
index c0b73cd8f3322ae01b7a1889657bc92d38fa4af6..f4ab59671b7934e3e6f5d893159a3618f4aa3898 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-4.c
@@ -31,6 +31,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 2; i < 64; i+=2)
     if (b[i] != a[i] - a[i-2]
 	|| b[i+1] != a[i+1] - a[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c
index 7327883cc31ae4a37e5e4597b44b35e6376b4ed2..2fed60df68cdfbdc3ebf420db51d132ed335dc14 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-5.c
@@ -32,6 +32,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c);
+#pragma GCC novector
   for (int i = 2; i < 64; i+=2)
     if (b[i] != a[i] - a[i-2]
 	|| b[i+1] != a[i+1] - a[i-1])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c b/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c
index f678b326f1043d2bce51b1d652de5ee2b55d6d0f..c170f4c345cdee1d5078452f9e301e6ef6dff398 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-recurr-6.c
@@ -28,6 +28,7 @@ main ()
     }
   int c = 7;
   foo (a, b, &c, 63);
+#pragma GCC novector
   for (int i = 1; i < 63; ++i)
     if (b[i] != a[i] - a[i-1])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c b/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c
index 484efb1e8c826a8dafb43ed18e25794951418a9c..49ecbe216f2740329d5cd2169527a9aeb7ab844c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-sdiv-pow2-1.c
@@ -70,6 +70,7 @@ main (void)
       fns[i].div (b, a, N);
       fns[i].mod (c, a, N);
 
+#pragma GCC novector
       for (int j = 0; j < N; j++)
 	if (a[j] != (b[j] * p + c[j]))
           __builtin_abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c b/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c
index dfd8ebace5610b22cc0da33647953ae33e084a42..0c4025abceb0e36092f5f7be1f813e4a6ebeda15 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-sdivmod-1.c
@@ -88,6 +88,7 @@ main ()
   f4 (4095);
   if (a[0] != (-2048 << 8))
     abort ();
+#pragma GCC novector
   for (i = 1; i < 4096; i++)
     if (a[i] != ((1 + ((i - 2048) % 16)) << 8))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-shift-1.c b/gcc/testsuite/gcc.dg/vect/vect-shift-1.c
index 0c3086b1d683441e9b7d0096d4edce37e86d3cc1..d5fc4748758cea2762efc1977126d48df265f1c3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-shift-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-shift-1.c
@@ -21,6 +21,7 @@ int main ()
     A[i] = A[i] >> 3;
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (A[i] != B[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-shift-3.c b/gcc/testsuite/gcc.dg/vect/vect-shift-3.c
index a1b4b0752291e64d51206fca644e241c8e0063a9..0a9d562feb56ec69e944d0a3581853249d9642ae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-shift-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-shift-3.c
@@ -26,6 +26,7 @@ int main()
 
   array_shift ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (dst[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-shift-4.c b/gcc/testsuite/gcc.dg/vect/vect-shift-4.c
index 09f6e5a9584099b34e539b72dbe95e33da83cd20..d53faa52ee88b00d09eeefa504c9938084fa6230 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-shift-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-shift-4.c
@@ -26,6 +26,7 @@ int main()
 
   array_shift ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (dst[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-1.c b/gcc/testsuite/gcc.dg/vect/vect-simd-1.c
index 7c3feeeffae363b8ad42989a3569ca394519a414..09722ae090d0edb875cb91f5b20da71074aee7d3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-1.c
@@ -44,19 +44,23 @@ main ()
 {
   check_vect ();
   foo ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 1)
       abort ();
   x = 1;
   foo ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 2)
       abort ();
   baz ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 3)
       abort ();
   qux ();
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != 4)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-10.c b/gcc/testsuite/gcc.dg/vect/vect-simd-10.c
index e49566a3847a97dee412148bed63a4b69af8dd1b..af0999a726288890a525fe18966331e0cb5c0cad 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-10.c
@@ -76,6 +76,7 @@ main ()
   if (r * 16384.0f != 0.125f)
     abort ();
   float m = -175.25f;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s *= a[i];
@@ -91,6 +92,7 @@ main ()
   if (bar () != 592.0f)
     abort ();
   s = FLT_MIN_VALUE;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (s < a[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-11.c b/gcc/testsuite/gcc.dg/vect/vect-simd-11.c
index e7d8aa0eb03879fcf0a77a512afc3281fbeabe76..2620dfebbc0dde80d219660dcead43ae01c7c41f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-11.c
@@ -109,6 +109,7 @@ main ()
       || r2 != (unsigned short) r
       || r3 != (unsigned char) r)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -129,6 +130,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -152,6 +154,7 @@ main ()
       || r3 != (unsigned char) r)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -174,6 +177,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-12.c b/gcc/testsuite/gcc.dg/vect/vect-simd-12.c
index cdfec81a6e6d761b6959fd434fc3367ad01d7026..45b55384006b1674c36a89f4539d2ffee2e4236e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-12.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-12.c
@@ -77,6 +77,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-13.c b/gcc/testsuite/gcc.dg/vect/vect-simd-13.c
index aee5244d85e18e707163a34cb93a9cd5b1317fc3..3ef4aa9a991c0b6259f3b3057616c1aa298663d9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-13.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-13.c
@@ -79,6 +79,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -90,6 +91,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -103,6 +105,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -114,6 +117,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-14.c b/gcc/testsuite/gcc.dg/vect/vect-simd-14.c
index 9e73792ed7c36030b2f6885e1257a66991cdc4d1..c8a38f85ad4f29c9bbc664a368e23254effdd976 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-14.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-14.c
@@ -76,6 +76,7 @@ main ()
   if (r * 16384.0f != 0.125f)
     abort ();
   float m = -175.25f;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
@@ -89,6 +90,7 @@ main ()
   if (bar () != 592.0f)
     abort ();
   s = FLT_MIN_VALUE;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-15.c b/gcc/testsuite/gcc.dg/vect/vect-simd-15.c
index 91e34cd6428c4b841ab55226e49a5fc10444df57..6982a59da78276bad2779827ee0b8c1e1691e2e3 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-15.c
@@ -109,6 +109,7 @@ main ()
       || r2 != (unsigned short) r
       || r3 != (unsigned char) r)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
@@ -129,6 +130,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
@@ -152,6 +154,7 @@ main ()
       || r3 != (unsigned char) r)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
@@ -174,6 +177,7 @@ main ()
       || s3 != (unsigned char) (1024 * 1023))
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       if (b[i] != s
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-16.c b/gcc/testsuite/gcc.dg/vect/vect-simd-16.c
index ee4459a9341815c7ac4a5f6be4b9ca7679f13022..1ac13a5c5b4f568afa448af8d294d114533c061b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-16.c
@@ -41,12 +41,14 @@ main ()
   check_vect ();
   if (foo (a) != 64)
     abort ();
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != i)
       abort ();
     else
       a[i] = -8;
   bar (a);
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != i + 1)
       abort ();
@@ -54,6 +56,7 @@ main ()
       a[i] = -8;
   if (baz (a) != 64)
     abort ();
+#pragma GCC novector
   for (i = 0; i < 64; ++i)
     if (a[i] != i + 2)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-17.c b/gcc/testsuite/gcc.dg/vect/vect-simd-17.c
index 951ba3afd9e332d7cd22addd273adf733e0fb71a..79b3602a6c08969a84856bf98ba59c18b45d5b11 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-17.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-17.c
@@ -52,12 +52,14 @@ doit (void)
   if (i != 11 || j != 101 || x != 10340 || niters != 550 || err)
     abort ();
   for (i = 1; i <= 10; i++)
+#pragma GCC novector
     for (j = 1; j <= 10 * i; j++)
       if (k[i][j] == 3)
 	k[i][j] = 0;
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -101,12 +103,14 @@ doit (void)
   if (i != 10 || j != 90 || x != 9305 || niters != 450 || err)
     abort ();
   for (i = 0; i < 10; i++)
+#pragma GCC novector
     for (j = 0; j < 10 * i; j++)
       if (k[i][j] == 3)
 	k[i][j] = 0;
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -156,6 +160,7 @@ doit (void)
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -199,12 +204,14 @@ doit (void)
   if (i != 11 || j != 10 || x != 9225 || niters != 25 || err)
     abort ();
   for (i = 1; i < 10; i += 2)
+#pragma GCC novector
     for (j = 1; j < i + 1; j++)
       if (k[i][j] == 3)
 	k[i][j] = 0;
       else
 	abort ();
   for (i = 0; i < 11; i++)
+#pragma GCC novector
     for (j = 0; j < 101; j++)
       if (k[i][j] != 0)
 	abort ();
@@ -244,11 +251,13 @@ doit (void)
       }
   if (i != 16 || j != 4 || x != 5109 || niters != 3 || err)
     abort ();
+#pragma GCC novector
   for (j = -11; j >= -41; j -= 15)
     if (k[0][-j] == 3)
       k[0][-j] = 0;
     else
       abort ();
+#pragma GCC novector
   for (j = -11; j >= -41; j--)
     if (k[0][-j] != 0)
       abort ();
@@ -288,6 +297,7 @@ doit (void)
       }
   if (/*i != 11 || j != 2 || */x != -12295 || niters != 28 || err)
     abort ();
+#pragma GCC novector
   for (j = -34; j <= -7; j++)
     if (k[0][-j] == 3)
       k[0][-j] = 0;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-18.c b/gcc/testsuite/gcc.dg/vect/vect-simd-18.c
index cca350f5c21125fa4380611a1ba42be317fd9d85..e454abe88009a7572cfad1397bbd5770c7086a6b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-18.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-18.c
@@ -25,12 +25,14 @@ main ()
   int i, r;
   check_vect ();
   r = foo (78, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 78; i++)
     if (p[i] != 78 * i)
       abort ();
   if (r != (10000 / 78) * (10000 / 78 + 1) / 2 * 78 * 3)
     abort ();
   r = foo (87, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 87; i++)
     if (p[i] != 87 * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-19.c b/gcc/testsuite/gcc.dg/vect/vect-simd-19.c
index 67e25c0e07eeff8e3453a8a3b5e4df54b16f3f30..4d25b43f5dca9df6562a146e12e1c3542d094602 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-19.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-19.c
@@ -25,12 +25,14 @@ main ()
   int i, r;
   check_vect ();
   r = foo (78, 0, 10000, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 78; i++)
     if (p[i] != 78 * i)
       abort ();
   if (r != (10000 / 78) * (10000 / 78 + 1) / 2 * 78 * 3)
     abort ();
   r = foo (87, 0, 10000, p);
+#pragma GCC novector
   for (i = 0; i < 10000 / 87; i++)
     if (p[i] != 87 * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-20.c b/gcc/testsuite/gcc.dg/vect/vect-simd-20.c
index 57217c8a6ba4c15095f777cfa64aee9ffbe3e459..9ba7c3ce956a613e175ee6bd1f04b0531e6a79bd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-20.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-20.c
@@ -27,6 +27,7 @@ main ()
   check_vect ();
   r = foo (78, 0, 10000, p);
   for (j = 0; j < 7; j++)
+#pragma GCC novector
     for (i = 0; i < 10000 / 78; i++)
       if (p[j * (10000 / 78 + 1) + i] != 78 * i)
 	abort ();
@@ -34,6 +35,7 @@ main ()
     abort ();
   r = foo (87, 0, 10000, p);
   for (j = 0; j < 7; j++)
+#pragma GCC novector
     for (i = 0; i < 10000 / 87; i++)
       if (p[j * (10000 / 87 + 1) + i] != 87 * i)
 	abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-8.c b/gcc/testsuite/gcc.dg/vect/vect-simd-8.c
index 5d10ad90501835bf6cac2c2d81ee98bc6ce6db5b..a3c2decee2e36949950ca87a0a9942bc303ee633 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-8.c
@@ -77,6 +77,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -88,6 +89,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -101,6 +103,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -112,6 +115,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-9.c b/gcc/testsuite/gcc.dg/vect/vect-simd-9.c
index 52eb24f680f1362ee93b7a22de5fd46d37119216..b652759e5ad5ec723a644cf9c6cb31677d120e2d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-9.c
@@ -79,6 +79,7 @@ main ()
   foo (a, b);
   if (r != 1024 * 1023 / 2)
     abort ();
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -90,6 +91,7 @@ main ()
   if (bar () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
@@ -103,6 +105,7 @@ main ()
   if (r != 1024 * 1023 / 2)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += i;
@@ -114,6 +117,7 @@ main ()
   if (qux () != 1024 * 1023)
     abort ();
   s = 0;
+#pragma GCC novector
   for (int i = 0; i < 1024; ++i)
     {
       s += 2 * i;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c
index cd65fc343f1893accb6f25a6222a22f64a8b4b2e..c44bfe511a5743198a647247c691075951f2258d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-1.c
@@ -46,10 +46,12 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != (i < 30 ? 5 : i * 4 + 123))
       abort ();
   baz ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != (i < 30 ? 5 : i * 8 + 123))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
index 03acd375e089c3a430adbed8d71197f39d7c512b..ed63ff59cc05e5f0a240376c4ca0985213a7eb48 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
@@ -65,6 +65,7 @@ main ()
   check_vect ();
   fn3 ();
   fn1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
@@ -72,6 +73,7 @@ main ()
       abort ();
   fn3 ();
   fn2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c
index 29acde22f1783e8b11376d1ae2e702e09182350c..4974e5cc0ccdc5e01bf7a61a022bae9c2a6a048b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-11.c
@@ -44,19 +44,23 @@ main ()
   if (sizeof (int) * __CHAR_BIT__ < 32)
     return 0;
   bar (a + 7);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i + 7] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
   bar (a);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
 #if 0
   baz (a + 7);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i + 7] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
   baz (a);
+#pragma GCC novector
   for (i = 0; i < N / 2; i++)
     if (a[i] != (i ^ (i * 3 * 512) ^ (((i * 6) + 2) * 512 * 512)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c
index 675ac7026b67edda2e573367643eb68063559bc2..866f1000f34098fb578001395f4a35e29cc8c0af 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-15.c
@@ -32,6 +32,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != ((i >> 1) + (-3 * i)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c
index ffcbf9380d609d7a3ed7420a38df5c11f632b46a..feab989cfd595f9fdb839aa8bd3e8486751abf2f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-2.c
@@ -44,6 +44,7 @@ main ()
   check_vect ();
   baz ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (array[i] != 5 * (i & 7) * i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c
index 18d68779cc5dd8faec77a71a8f1cfa9785ff36ed..fef48c5066918a42fa80f1e14f9800e28ddb2c96 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-3.c
@@ -37,6 +37,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (d[i] != (i < 30 ? 5 : i * 4 + 123) || e[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c
index e9af0b83162e5bbd40e6a54df7d656ad956a8fd8..42414671c254ffcd93169849d7a982861aa5ac0b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-4.c
@@ -40,6 +40,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (d[i] != (i < 30 ? 5.0f : i * 4 + 123.0f) || e[i] || f[i] != 1)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c
index 46da496524d99ff70e3673682040c0d5067afe03..620cec36e4c023e1f52160327a3d5ba21540ad3b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-5.c
@@ -35,6 +35,7 @@ main ()
   int i;
   check_vect ();
   bar ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (d[i] != i * 4 + 123 || e[i] != i)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c
index 6143a91eaf078d5b73e608bcfa080b70a5896f3d..440091d70e83be80574a6fcf9e034c53aed15786 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-6.c
@@ -57,6 +57,7 @@ main ()
   check_vect ();
   baz ();
   bar (0);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 2 * i || b[i] != 6 - 7 * i
 	|| c[i] != 6 - 5 * i + ((i & 31) << 4))
@@ -64,6 +65,7 @@ main ()
     else
       a[i] = c[i];
   bar (17);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 6 - 5 * i + ((i & 31) << 4)
 	|| b[i] != 6 - 7 * i
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c
index a0316e9e5813ac4c9076aaf5f762b9cc5dc98b1e..62246e28837272ef1e18860912643422f6dce018 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-7.c
@@ -57,6 +57,7 @@ main ()
   check_vect ();
   baz ();
   bar (0);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 2 * i || b[i] != 6 - 7 * i
 	|| c[i] != 6 - 5 * i + ((i & 31) << 4))
@@ -64,6 +65,7 @@ main ()
     else
       a[i] = c[i];
   bar (17);
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != 6 - 5 * i + ((i & 31) << 4)
 	|| b[i] != 6 - 7 * i
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c
index f414285a170c7e3469fdad07256ef09e1b46e17b..11ea2132689137cfb7175b176e39539b9197a330 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-8.c
@@ -76,6 +76,7 @@ main ()
   check_vect ();
   fn3 ();
   fn1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
@@ -83,6 +84,7 @@ main ()
       abort ();
   fn3 ();
   fn2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c
index a968b9ce91a17c454f66aa76ec8b094e011e1c74..0112e553f8f130b06ee23a8c269a78d7764dcfff 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-9.c
@@ -76,6 +76,7 @@ main ()
   check_vect ();
   fn3 ();
   fn1 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
@@ -83,6 +84,7 @@ main ()
       abort ();
   fn3 ();
   fn2 ();
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (a[i] != i * 2 + 23 + (i % 37) + (i & 63)
 	|| b[i] != 17 + (i % 37)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c
index da47a824cb6046dcd9808bd7bd80161dbc0531b5..1531553651ceb6185ce16ab49f447496ad923408 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-mult.c
@@ -46,6 +46,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c
index d53b7669a6b50d6bc27e646d08af98ca6fd093e3..b8d094723f9035083a244cfcee98d3de46512206 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i2.c
@@ -33,6 +33,7 @@ main1 ()
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c
index 37ff3abe97d60d9b968addaee7812cb0b05b6f44..0f1344c42017fc2a5bfda3a9c17d46fbdd523127 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-i4.c
@@ -44,6 +44,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c
index 9237a9074deeb72c4d724771d5397d36593ced7c..b0d36486714159c88419ce9e793c27a398ddcbcb 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u16-mult.c
@@ -39,6 +39,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c
index 62a8a51e2034b1065a4438a712a80e0a7c149985..1c9906fa65237a7b9e0bbd2162e9c56b6e86074f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u32-mult.c
@@ -39,6 +39,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i] != arr[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
index f64a1347350a465b9e7a0c123fe2b5bcbc2bf860..dc9ad168c7161c15f6de4a57d53e301e6754e525 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
@@ -33,6 +33,7 @@ main1 ()
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].a
@@ -49,6 +50,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c
index 2add5b489915cffda25f3c59b41bd1c44edf16ce..d35e427996f472ce9fffdf9570fb6685c3115037 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2-big-array.c
@@ -62,6 +62,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c
index 2b7a1a4bb77f4dce44958c50864a0a6ecac90c53..a9524a9d8e5cb152ec879db68f316d5568161ec1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap2.c
@@ -51,6 +51,7 @@ main1 ()
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c
index e487de8b4e7d8e092054a73b337a345ba00e4e02..95ff41930d3f1ab95f0a20947e0527f39c78e715 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7-big-array.c
@@ -71,6 +71,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c
index 0f3347e8bb2200f48927b21938e7ebd348a73ada..b2dd1aee116d212bda7df0b0b1ca5470bd35ab83 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i8-gap7.c
@@ -56,6 +56,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-float.c b/gcc/testsuite/gcc.dg/vect/vect-strided-float.c
index 6d6bfae7bc5ce4cbcaeaadc07856773e6d77bdb4..716cce3eecbec0390f85f393e9cc714bd1a1faae 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-float.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-float.c
@@ -22,6 +22,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (a[i*2] != b[2*i+1] * c[2*i+1] - b[2*i] * c[2*i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c b/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c
index 82727e595c166a52c8a1060339259ec7c39b594f..59008499192388c618f3eb38d91d9dcb5e47e3d9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-mult-char-ls.c
@@ -35,6 +35,7 @@ main1 (s *arr, ii *iarr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c
index 0fac615011601d45c64e83be1a6ec1e1af407192..350223fa23ace9253e8e56bbbbd065e575639b19 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-mult.c
@@ -35,6 +35,7 @@ main1 (s *arr, ii *iarr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].b != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c b/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c
index 8c560480bc4eac50c381ed51cfbc6ccc696d0424..e988c5c846911a875a188cbb6ec8a4e4b80b787a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-same-dr.c
@@ -35,6 +35,7 @@ main1 (s * __restrict__  pIn, s* __restrict__ pOut)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (q->a != p->a + 5
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c b/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c
index dcae9c26d8621dd393f00d81257262a27913d7a8..37b8eb80ce0ce0dfe1ce5f9e5c13618bffbe41ff 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-shift-1.c
@@ -24,6 +24,7 @@ main (int argc, char **argv)
     }
   loop ();
   __asm__ volatile ("" : : : "memory");
+#pragma GCC novector
   for (int i = 0; i < N; i++)
     {
       if (out[i] != i*2 + 7)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c
index 6be939eea167992aade397ada0ee50d4daa43066..a55cd32e5896be4c1592e4e815baccede0f30e82 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c
@@ -38,6 +38,7 @@ main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != a[i] + 3
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c
index 9d1ad579e6a607f34ec953395f741f180474a77a..170f23472b967cedec88c1fa82dfb898014a6d09 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u16-i4.c
@@ -34,6 +34,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != a[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c
index a081d4e396e36a4633eb224d927543c7379d3108..11c2f2c4df60d8238830c188c3400a324444ab4d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store-u32-i2.c
@@ -22,6 +22,7 @@ main1 (void)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N/2; i++)
     {
       if (a[i*2] != b[i] + c[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-store.c b/gcc/testsuite/gcc.dg/vect/vect-strided-store.c
index e8303b63bd4812e0643dc96888eeee2ea8ca082a..dfdafe8e8b46ea33e3c9ed759687788784a22607 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-store.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-store.c
@@ -19,12 +19,14 @@ int main()
   float src[] = {1, 2, 3, 4, 5, 6, 7, 8};
   float dest[64];
   check_vect ();
+#pragma GCC novector
   for (stride = 0; stride < 8; stride++)
     {
       sumit (dest, src, src, stride, 8);
       if (!stride && dest[0] != 16)
 	abort();
       else if (stride)
+#pragma GCC novector
 	for (i = 0; i < 8; i++)
 	  if (2*src[i] != dest[i*stride])
 	    abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c
index 7d264f39c60d668927232a75fe3843dbee087aa5..004db4e1f84735d8857c5591453158c96f213246 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i2.c
@@ -25,6 +25,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c
index 63a4da797cbeb70bde0b1329fe39f510c24a990c..5d94e8f49bc41431df9de2b809c65e48cc269fa0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i3.c
@@ -18,6 +18,7 @@ check1 (s *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i].a != C (i)
 	|| res[i].b != A (i)
@@ -30,6 +31,7 @@ check2 (unsigned short *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i] != (unsigned short) (A (i) + B (i) + C (i)))
       abort ();
@@ -40,6 +42,7 @@ check3 (s *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i].a != i
 	|| res[i].b != i
@@ -52,6 +55,7 @@ check4 (unsigned short *res)
 {
   int i;
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (res[i] != (unsigned short) (A (i) + B (i)))
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c
index ee8ea0d666db4b7671cd3f788fc7f6056189f3da..547ad9b9ee3d35802d3f8d7b9c43d578fb14f828 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u16-i4.c
@@ -34,6 +34,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c
index fe41dbd9cf452b9452084e988d48ede232f548bf..8f58e24c4a8b8be2da0a6c136924a370b9952691 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i4.c
@@ -29,6 +29,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c
index a88c0f08456cf278c4fa5a5b9b0a06900cb7c9be..edb13d1b26f5963113917e8882f199c7dd4d8de7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-i8.c
@@ -37,6 +37,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c
index cddd0c88f42a99f526362ca117e9386c013c768d..0c2bd9d8cbde5e789474595db519d603b374e74c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u32-mult.c
@@ -29,6 +29,7 @@ main1 (unsigned short *arr, ii *iarr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i] != arr[i]
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c
index ab841205e4f5b3c0aea29f60045934e84644a6a7..fd7920031dcf6df98114cfde9a56037d655bb74d 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2-gap.c
@@ -25,6 +25,7 @@ main1 (s *arr)
     }
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b
@@ -41,6 +42,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c
index 0afd50db0b8de7758faf7f2bff14247a27a7ee38..ae2345a9787804af0edc45d93f18e75d159326b0 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i2.c
@@ -24,6 +24,7 @@ main1 (s *arr)
       ptr++;
     }
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b - arr[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c
index ef532251465e5b1eb16e820fc30844a7995b82a9..c7a1da534baea886fe14add1220c105153d6bb80 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2-big-array.c
@@ -39,6 +39,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c
index 04f18fbb591d9dc50d56b20bce99cb79903e5e27..2a068d821aebee8ab646ff1b4c33209dc5b2fcbf 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap2.c
@@ -37,6 +37,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c
index b5eb87f4b96e1a577930654f4b1709024256e90e..ac7bf000196b3671044de57d88dd3a32080b68a8 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-big-array.c
@@ -41,6 +41,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
@@ -64,6 +65,7 @@ main1 (s *arr)
     }
 
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c
index 69b970ef33b9dd8834b10baf7085b88a0c441a46..0a6050ae462332b8d74043fce094776892a80386 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c
@@ -53,6 +53,7 @@ main1 (s *arr, int n)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < n; i++)
     { 
       if (res[i].c != arr[i].b + arr[i].c
@@ -67,6 +68,7 @@ main1 (s *arr, int n)
    }
 
   /* Check also that we don't do more iterations than needed.  */
+#pragma GCC novector
   for (i = n; i < N; i++)
     {
       if (res[i].c == arr[i].b + arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c
index f1d05a5aaf9f6885b921c5ae3370d9c17795ff82..9ead5a776d0b1a69bec804615ffe7639f61f993f 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap4.c
@@ -39,6 +39,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b + arr[i].c
@@ -62,6 +63,7 @@ main1 (s *arr)
     }
   
   /* Check results.  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != arr[i].b 
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c
index b703e636b49f8c7995c4c463b38b585f79acbdf2..176c6a784bc73e0300e3114a74aba05dc8185cac 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7-big-array.c
@@ -44,6 +44,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (res[i].a != check_res[i].a
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c
index 764f10d0adaca01e664bb45dd4da59a0c3f8a2af..cef88f6bf8246a98933ff84103c090664398cedd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8-gap7.c
@@ -42,6 +42,7 @@ main1 (s *arr)
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c
index 35bab79ce826ac663eabb1a1036ed7afd6d33e8b..c29c3ff6cdc304e5447f0e12aac00cd0fcd7b61e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-u8-i8.c
@@ -44,6 +44,7 @@ main1 (s *arr)
     } 
    
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     { 
       if (res[i].c != arr[i].b - arr[i].a + arr[i].d - arr[i].c
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c
index ea35835465c8ed18be1a0c9c4f226f078a51acaa..2d5c10a878c7145972aeaa678e0e11c1cf1b79dd 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-01.c
@@ -27,6 +27,7 @@ main (void)
   foo (X, Y);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c
index df6b999c5a4d88c8b106829f6f9df8edbe00f86f..4848215a7a8f5fea569c0bfaf5909ac68a81bbf2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-02.c
@@ -32,6 +32,7 @@ main (void)
   foo (X, Y, Z);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i] != resultY[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c
index 36861a059e03b1103adc2dca32409878ca95611e..2a94c73907e813019fcfbc912a1599f7423e2a47 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-03.c
@@ -40,6 +40,7 @@ main (void)
   foo (X, Y);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i].a != result[i].a)  
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c
index bfbb48b21ee632243f2f5ba63d7eeec0f687daef..b0e9d6f90391cfc05911f7cc709df199d7fbbdf1 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-04.c
@@ -26,6 +26,7 @@ main (void)
   foo (X, &X[2]);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N+2; i++)
     {
       if (X[i] != result[i])
diff --git a/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c b/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c
index d775f320e0c1e2c6de2e77a1d8df621971fc3d2d..27d762490908829d54cdbb81247926c2f677fe36 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-vfa-slp.c
@@ -40,6 +40,7 @@ main (void)
   foo (X, Y);
   
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (Y[i].a != result[i].a)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c
index 0d6e64081a17fed8d9b9239f9ba02ffa1b7a758d..f3abc9407f52784e391c495152e617b1f0753e92 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-1.c
@@ -38,6 +38,7 @@ main (void)
       asm volatile ("" ::: "memory");
     }
   f (a, b, c);
+#pragma GCC novector
   for (int i = 0; i < N; ++i)
     if (a[i] != (SIGNEDNESS_1 short) ((BASE + i * 5)
 				      * (BASE + OFFSET + i * 4)))
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c
index 4c95dd2017922904122aee2925491e9b9b48fe8e..dfbb2171c004565045d91605354b5d6e7219ab19 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c
@@ -17,6 +17,7 @@ foo (int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * 2333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * 2333)
       abort ();
@@ -32,6 +33,7 @@ bar (int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * (short) 2333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * (short) 2333)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c
index 4075f815cea0ffbad1e05e0ac8b9b232bf3efe61..c2ad58f69e7fe5b62a9fbc55dd5dab43ba785104 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c
@@ -17,6 +17,7 @@ foo (unsigned int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * 2333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * 2333)
       abort ();
@@ -32,6 +33,7 @@ bar (unsigned int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = (unsigned short) 2333 * b[i];
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * (unsigned short) 2333)
       abort ();
@@ -47,6 +49,7 @@ baz (unsigned int *__restrict a,
   for (i = 0; i < n; i++)
     a[i] = b[i] * 233333333;
 
+#pragma GCC novector
   for (i = 0; i < n; i++)
     if (a[i] != b[i] * 233333333)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c
index c4ac88e186dbc1a8f36f4d7567a9983446557eea..bfdcbaa09fbd42a16197023b09087cee6642105a 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c
@@ -43,12 +43,14 @@ int main (void)
 
   foo ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF)
       abort ();
 
   bar ();
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c
index ebbf4f5e841b75cb1f5171ddedec85cd327f385e..e46b0cc3135fd982b07e0824955654f0ebc59506 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c
@@ -38,6 +38,7 @@ int main (void)
 
   foo (COEF2);
 
+#pragma GCC novector
   for (i = 0; i < N; i++)
     if (out[i] != in[i] * COEF || out2[i] != in[i] + COEF2)
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
index 91a8a290263c9630610a48bce3829de753a4b320..6b094868064e9b86c40018363564f356220125a5 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s16.c
@@ -33,6 +33,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
index 7e1f7457f1096d4661dcc724a59a0511555ec0e3..444d41169b5c198c6fa146c3bb71336b0f6b0432 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-s8.c
@@ -33,6 +33,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
index 2e28baae0b804cf76ad74926c35126df98857482..14411ef43eda2ff348de9c9c1540e1359f20f55b 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c
index d277f0b2b9492db77237a489cc8bea4749d8d719..f40def5dddf58f6a6661d9c286b774f954126840 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c
@@ -35,6 +35,7 @@ int main (void)
 
   foo (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c
index f50358802587d32c1d6e73c0f6e06bd8ff837fc2..63866390835c55e53b6f90f305a71bbdbff85afa 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c
@@ -34,6 +34,7 @@ int main (void)
 
   foo (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
index 03d1379410eb927a3ef705afc6523230eb9fb58b..78ad74b5d499c23256e4ca38a82fefde8720e4e9 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c
@@ -34,6 +34,7 @@ int main (void)
 
   foo1 (N);
 
+#pragma GCC novector
   for (i=0; i<N; i++) {
     if (result[i] != X[i] * Y[i])
       abort ();
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c
index 5f6c047849b8625f908bc7432b803dff5e671cd3..26d5310807781eb5a7935c51e813bc88892f747c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s16.c
@@ -32,6 +32,7 @@ foo (short *src, int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
@@ -60,6 +61,7 @@ foo (short *src, int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N/4; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c
index 46512f2c69ba50521d6c7519a1c3d073e90b7436..7450d2aef75d755db558e471b807bfefb777f472 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-s8.c
@@ -23,6 +23,7 @@ foo (char *src, int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c
index 212b5dbea18a91bd59d2caf9dc4f4cc3fe531762..ae086b88e7e83f2864d6e74fa94301f7f8ab62f6 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u16.c
@@ -23,6 +23,7 @@ foo (unsigned short *src, unsigned int *dst)
 
   s = src;
   d = dst;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c
index 844e5df3269d0a774d2ab8a88de11f17271d6f60..a8e536adee0f04611115e97725608d0e82e9893c 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-widen-shift-u8.c
@@ -27,6 +27,7 @@ foo (unsigned char *src, unsigned int *dst1, unsigned int *dst2)
   s = src;
   d1 = dst1;
   d2 = dst2;
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       b = *s++;
diff --git a/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c b/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c
index c4d2de1a64e2ebc151c4ade2327c8fceb7ba04e4..414bd9d3e1279db574d860b7a721e4310d4972da 100644
--- a/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c
+++ b/gcc/testsuite/gcc.dg/vect/wrapv-vect-7.c
@@ -19,6 +19,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sb[i] != 5)
@@ -31,6 +32,7 @@ int main1 ()
     }
 
   /* check results:  */
+#pragma GCC novector
   for (i = 0; i < N; i++)
     {
       if (sa[i] != 105)




^ permalink raw reply	[flat|nested] 200+ messages in thread

* [PATCH 4/19]middle-end: Fix scale_loop_frequencies segfault on multiple-exits
  2023-06-28 13:40 [PATCH v5 0/19] Support early break/return auto-vectorization Tamar Christina
                   ` (2 preceding siblings ...)
  2023-06-28 13:42 ` [PATCH 3/19]middle-end clean up vect testsuite using pragma novector Tamar Christina
@ 2023-06-28 13:43 ` Tamar Christina
  2023-07-04 11:52   ` Richard Biener
  2023-06-28 13:43 ` [PATCH 5/19]middle-end: Enable bit-field vectorization to work correctly when we're vectoring inside conds Tamar Christina
                   ` (38 subsequent siblings)
  42 siblings, 1 reply; 200+ messages in thread
From: Tamar Christina @ 2023-06-28 13:43 UTC (permalink / raw)
  To: gcc-patches; +Cc: nd, rguenther, jlaw

[-- Attachment #1: Type: text/plain, Size: 2237 bytes --]

Hi All,

There's an existing bug in loop frequency scaling where the if statement checks
to see if there's a single exit, and records an dump file note but then
continues.

It then tries to access the null pointer, which of course fails.

For multiple loop exists it's not really clear how to scale the exit
probablities as it's really unknown which exit is most probably.

For that reason I ignore the exit edges during scaling but still adjust the
loop body.

Bootstrapped Regtested on aarch64-none-linux-gnu and no issues.

Ok for master?

Thanks,
Tamar

gcc/ChangeLog:

	* cfgloopmanip.cc (scale_loop_frequencies): Fix typo.
	(scale_loop_profile): Don't access null pointer.

--- inline copy of patch -- 
diff --git a/gcc/cfgloopmanip.cc b/gcc/cfgloopmanip.cc
index 6e09dcbb0b1864bc64ffd570a4b923f50c3819b5..b10ef3d2be82902ccd74e52a4318217b2db13bcb 100644
--- a/gcc/cfgloopmanip.cc
+++ b/gcc/cfgloopmanip.cc
@@ -501,7 +501,7 @@ scale_loop_frequencies (class loop *loop, profile_probability p)
 /* Scale profile in LOOP by P.
    If ITERATION_BOUND is non-zero, scale even further if loop is predicted
    to iterate too many times.
-   Before caling this function, preheader block profile should be already
+   Before calling this function, preheader block profile should be already
    scaled to final count.  This is necessary because loop iterations are
    determined by comparing header edge count to latch ege count and thus
    they