aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.target/i386
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.target/i386')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/387-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/387-4.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddb-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddd-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddw-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpand-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmulld-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmullw-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrad-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsraw-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrld-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrlw-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubb-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubd-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubw-3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-1.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-4.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-1.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-4.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff32x4-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff64x2-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi32x4-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi64x2-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-1.c32
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-2.c32
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-builtin.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector-2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-2.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-3.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-9.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/isa-1.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_1.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_4.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_5.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_6.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_1.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_2.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_3.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_4.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_5.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_6.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-1.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-2.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-1.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-2.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-1.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-2.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/pr27971.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/pr30970.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/pr42542-4a.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/pr59390.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/pr60693.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/pr60700.c59
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/sse2-init-v2di-2.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-1.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-2.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-5.c1
66 files changed, 190 insertions, 56 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/387-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/387-3.c
index 1b8dc8bab..0c51a21b9 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/387-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/387-3.c
@@ -1,6 +1,6 @@
/* Verify that 387 mathematical constants are recognized. */
/* { dg-do compile } */
-/* { dg-options "-O2 -mfpmath=387 -mfancy-math-387" } */
+/* { dg-options "-O2 -mfpmath=387 -mfancy-math-387 -mtune=generic" } */
/* { dg-final { scan-assembler "fldpi" } } */
/* { dg-require-effective-target large_long_double } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/387-4.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/387-4.c
index 27c48ed20..10fe93119 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/387-4.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/387-4.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -mfancy-math-387" } */
+/* { dg-options "-O2 -mfancy-math-387 -mtune=generic" } */
/* { dg-final { scan-assembler "fldpi" } } */
/* { dg-require-effective-target large_long_double } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddb-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddb-3.c
index 238f02092..ee1f31356 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddb-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddb-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddd-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddd-3.c
index c57ef8fea..5c3f22f49 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddd-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddd-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c
index 801bd39d8..41a07d26d 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddw-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddw-3.c
index facee9f2d..7e7e018c1 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddw-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpaddw-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpand-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpand-3.c
index 67ca4a7cd..8c08bf5ce 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpand-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpand-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmulld-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmulld-3.c
index b2d539ba4..8e33a986f 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmulld-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmulld-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmullw-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmullw-3.c
index 46d173fc3..4d61d7a9f 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmullw-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpmullw-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrad-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrad-3.c
index 97affb4bb..a788681c0 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrad-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrad-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsraw-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsraw-3.c
index e7112565b..70bd5cd6b 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsraw-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsraw-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrld-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrld-3.c
index 97affb4bb..a788681c0 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrld-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrld-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrlw-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrlw-3.c
index 67f3afc41..691e02f3f 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrlw-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsrlw-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubb-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubb-3.c
index 843128b4f..45527f524 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubb-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubb-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubd-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubd-3.c
index f8f399f6b..ae7966fbc 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubd-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubd-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c
index 0a23a280e..d96fee177 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubw-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubw-3.c
index 1cb90b5a8..404c2eea9 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubw-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx2-vpsubw-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-1.c
index 1fe52bbb5..0c476cd78 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-load" } */
+/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-load -mno-prefer-avx128" } */
#define N 1024
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c
index 933f265ee..30b42aa38 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
-/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-load" } */
+/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-load -mno-prefer-avx128" } */
void
avx_test (char **cp, char **ep)
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-4.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-4.c
index 1d35ef57b..dcd630d45 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-4.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-4.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -dp -mavx -mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store -fno-common" } */
+/* { dg-options "-O3 -dp -mavx -mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store -mno-prefer-avx128 -fno-common" } */
#define N 1024
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-1.c
index 77eaa422e..5e8c30d36 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-store -fno-common" } */
+/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-store -mno-prefer-avx128 -fno-common" } */
#define N 1024
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-2.c
index 48e2efa13..eeabfe9f3 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
-/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-store" } */
+/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-store -mno-prefer-avx128" } */
#define N 1024
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-4.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-4.c
index 85682452f..68ff92310 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-4.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-store-4.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -dp -mavx -mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store -fno-common" } */
+/* { dg-options "-O3 -dp -mavx -mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store -mno-prefer-avx128 -fno-common" } */
#define N 1024
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff32x4-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff32x4-2.c
index 271c8624b..35eabc2cf 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff32x4-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff32x4-2.c
@@ -43,7 +43,7 @@ TEST (void)
for (i = 0; i < SIZE; i++)
{
s1.a[i] = 1.2 / (i + 0.378);
- s1.a[i] = 91.02 / (i + 4.3578);
+ s2.a[i] = 91.02 / (i + 4.3578);
u1.a[i] = DEFAULT_VALUE;
u2.a[i] = DEFAULT_VALUE;
u3.a[i] = DEFAULT_VALUE;
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff64x2-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff64x2-2.c
index 4842942ac..9fee4201a 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff64x2-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshuff64x2-2.c
@@ -43,7 +43,7 @@ TEST (void)
for (i = 0; i < SIZE; i++)
{
s1.a[i] = 1.2 / (i + 0.378);
- s1.a[i] = 91.02 / (i + 4.3578);
+ s2.a[i] = 91.02 / (i + 4.3578);
u1.a[i] = DEFAULT_VALUE;
u2.a[i] = DEFAULT_VALUE;
u3.a[i] = DEFAULT_VALUE;
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi32x4-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi32x4-2.c
index 105c71568..9b1603c66 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi32x4-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi32x4-2.c
@@ -43,7 +43,7 @@ TEST (void)
for (i = 0; i < SIZE; i++)
{
s1.a[i] = 1.2 / (i + 0.378);
- s1.a[i] = 91.02 / (i + 4.3578);
+ s2.a[i] = 91.02 / (i + 4.3578);
u1.a[i] = DEFAULT_VALUE;
u2.a[i] = DEFAULT_VALUE;
u3.a[i] = DEFAULT_VALUE;
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi64x2-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi64x2-2.c
index d79d8f6bc..85a591883 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi64x2-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx512f-vshufi64x2-2.c
@@ -43,7 +43,7 @@ TEST (void)
for (i = 0; i < SIZE; i++)
{
s1.a[i] = 1.2 / (i + 0.378);
- s1.a[i] = 91.02 / (i + 4.3578);
+ s2.a[i] = 91.02 / (i + 4.3578);
u1.a[i] = DEFAULT_VALUE;
u2.a[i] = DEFAULT_VALUE;
u3.a[i] = DEFAULT_VALUE;
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-1.c
index a05cb275a..c66a9d83b 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-1.c
@@ -2,10 +2,10 @@
/* { dg-options "-O2 -mbmi " } */
/* { dg-final { scan-assembler "andn\[^\\n]*eax" } } */
/* { dg-final { scan-assembler-times "bextr\[ \\t]+\[^\\n]*eax" 2 } } */
-/* { dg-final { scan-assembler "blsi\[^\\n]*eax" } } */
-/* { dg-final { scan-assembler "blsmsk\[^\\n]*eax" } } */
-/* { dg-final { scan-assembler "blsr\[^\\n]*eax" } } */
-/* { dg-final { scan-assembler "tzcntl\[^\\n]*eax" } } */
+/* { dg-final { scan-assembler-times "blsi\[^\\n]*eax" 2 } } */
+/* { dg-final { scan-assembler-times "blsmsk\[^\\n]*eax" 2 } } */
+/* { dg-final { scan-assembler-times "blsr\[^\\n]*eax" 2 } } */
+/* { dg-final { scan-assembler-times "tzcntl\[^\\n]*eax" 2 } } */
#include <x86intrin.h>
@@ -36,19 +36,43 @@ func_blsi32 (unsigned int X)
}
unsigned int
+func_blsi32_2 (unsigned int X)
+{
+ return _blsi_u32(X);
+}
+
+unsigned int
func_blsmsk32 (unsigned int X)
{
return __blsmsk_u32(X);
}
unsigned int
+func_blsmsk32_2 (unsigned int X)
+{
+ return _blsmsk_u32(X);
+}
+
+unsigned int
func_blsr32 (unsigned int X)
{
return __blsr_u32(X);
}
unsigned int
+func_blsr32_2 (unsigned int X)
+{
+ return _blsr_u32(X);
+}
+
+unsigned int
func_tzcnt32 (unsigned int X)
{
return __tzcnt_u32(X);
}
+
+unsigned int
+func_tzcnt32_2 (unsigned int X)
+{
+ return _tzcnt_u32(X);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-2.c
index 68d06a205..6eea66aa0 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi-2.c
@@ -2,10 +2,10 @@
/* { dg-options "-O2 -mbmi " } */
/* { dg-final { scan-assembler "andn\[^\\n]*rax" } } */
/* { dg-final { scan-assembler-times "bextr\[ \\t]+\[^\\n]*rax" 2 } } */
-/* { dg-final { scan-assembler "blsi\[^\\n]*rax" } } */
-/* { dg-final { scan-assembler "blsmsk\[^\\n]*rax" } } */
-/* { dg-final { scan-assembler "blsr\[^\\n]*rax" } } */
-/* { dg-final { scan-assembler "tzcntq\[^\\n]*rax" } } */
+/* { dg-final { scan-assembler-times "blsi\[^\\n]*rax" 2 } } */
+/* { dg-final { scan-assembler-times "blsmsk\[^\\n]*rax" 2 } } */
+/* { dg-final { scan-assembler-times "blsr\[^\\n]*rax" 2 } } */
+/* { dg-final { scan-assembler-times "tzcntq\[^\\n]*rax" 2 } } */
#include <x86intrin.h>
@@ -36,19 +36,43 @@ func_blsi64 (unsigned long long X)
}
unsigned long long
+func_blsi64_2 (unsigned long long X)
+{
+ return _blsi_u64 (X);
+}
+
+unsigned long long
func_blsmsk64 (unsigned long long X)
{
return __blsmsk_u64 (X);
}
unsigned long long
+func_blsmsk64_2 (unsigned long long X)
+{
+ return _blsmsk_u64 (X);
+}
+
+unsigned long long
func_blsr64 (unsigned long long X)
{
return __blsr_u64 (X);
}
unsigned long long
+func_blsr64_2 (unsigned long long X)
+{
+ return _blsr_u64 (X);
+}
+
+unsigned long long
func_tzcnt64 (unsigned long long X)
{
return __tzcnt_u64 (X);
}
+
+unsigned long long
+func_tzcnt64_2 (unsigned long long X)
+{
+ return _tzcnt_u64 (X);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-builtin.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-builtin.c
index 7135cc933..3e59a7181 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-builtin.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-builtin.c
@@ -2,7 +2,7 @@
and add instructions FMA4 systems. */
/* { dg-do compile { target { ! { ia32 } } } } */
-/* { dg-options "-O2 -mfma4" } */
+/* { dg-options "-O2 -mfma4 -mno-fma" } */
#ifndef __FP_FAST_FMAF
# error "__FP_FAST_FMAF should be defined"
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma-2.c
index c15be1eda..ae6ca8d6d 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma-2.c
@@ -3,7 +3,7 @@
vfnmsubss on FMA4 systems. */
/* { dg-do compile { target { ! { ia32 } } } } */
-/* { dg-options "-O2 -funsafe-math-optimizations -mfma4" } */
+/* { dg-options "-O2 -funsafe-math-optimizations -mfma4 -mno-fma" } */
extern void exit (int);
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma.c
index 63b35dc4b..1b8fb849d 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-fma.c
@@ -3,7 +3,7 @@
vfnmsubss on FMA4 systems. */
/* { dg-do compile { target { ! { ia32 } } } } */
-/* { dg-options "-O2 -mfma4" } */
+/* { dg-options "-O2 -mfma4 -mno-fma" } */
extern void exit (int);
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector-2.c
index d8b0d0813..b518aa828 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target { ! { ia32 } } } } */
-/* { dg-options "-O2 -mfma4 -ftree-vectorize -mtune=generic" } */
+/* { dg-options "-O2 -mfma4 -ftree-vectorize -mtune=generic -mno-fma" } */
float r[256], s[256];
float x[256];
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector.c
index db5ffdd33..cd5506344 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/fma4-vector.c
@@ -2,7 +2,7 @@
instructions vector into vfmaddps on FMA4 systems. */
/* { dg-do compile { target { ! { ia32 } } } } */
-/* { dg-options "-O2 -mfma4 -ftree-vectorize -mtune=generic" } */
+/* { dg-options "-O2 -mfma4 -ftree-vectorize -mtune=generic -mno-fma" } */
extern void exit (int);
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-2.c
index 88c14b29b..e535586f9 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-2.c
@@ -1,5 +1,6 @@
/* Test whether using target specific options, we can generate FMA4 code. */
/* { dg-do compile { target { ! { ia32 } } } } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=k8" } } */
/* { dg-options "-O2 -march=k8" } */
extern void exit (int);
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-3.c
index f3f4db76a..bac79865d 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-3.c
@@ -2,6 +2,7 @@
setting the architecture. */
/* { dg-do compile } */
/* { dg-require-effective-target lp64 } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=k8" } } */
/* { dg-options "-O2 -march=k8 -mno-sse3" } */
extern void exit (int);
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-9.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-9.c
index 78714e124..14b7abd26 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-9.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/funcspec-9.c
@@ -1,5 +1,6 @@
/* Test whether using target specific options, we can generate FMA4 code. */
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=k8" } } */
/* { dg-options "-O2 -march=k8 -mfpmath=sse -msse2" } */
extern void exit (int);
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/isa-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/isa-1.c
index d98c14ffb..3a4406fc0 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/isa-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/isa-1.c
@@ -1,4 +1,5 @@
/* { dg-do run } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=x86-64" } } */
/* { dg-options "-march=x86-64 -msse4" } */
extern void abort (void);
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_1.c
index 1d99b4caa..94e512b96 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_1.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_2.c
index e10110006..ffceab48f 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_3.c
index f099e25f8..cdb4d33be 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_3.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_4.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_4.c
index 969f31c7f..dda487e98 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_4.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_4.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_5.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_5.c
index 85ccdd0da..98909aeeb 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_5.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_5.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_6.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_6.c
index 019ed9ad0..538065a31 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_6.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_double_6.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_1.c
index d1913d768..ff109817d 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_1.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_2.c
index 5e0142545..38c6b5283 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_3.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_3.c
index 7b9e3f545..177ba3522 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_3.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_3.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_4.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_4.c
index cc675c14a..8ee68d1af 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_4.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_4.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_5.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_5.c
index ac0b36147..23288d0da 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_5.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_5.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_6.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_6.c
index c84ac1196..07a5fbae3 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_6.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/l_fma_float_6.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic" } */
+/* { dg-options "-O3 -Wno-attributes -mfpmath=sse -mfma -mtune=generic -mno-fma4" } */
/* Test that the compiler properly optimizes floating point multiply
and add instructions into FMA3 instructions. */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-1.c
index a2b66d966..3117771d4 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-1.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=atom" } } */
/* { dg-options "-O2 -march=atom -mmemcpy-strategy=vector_loop:-1:align" } */
/* { dg-final { scan-assembler-times "movdqa" 8 { target { ! { ia32 } } } } } */
/* { dg-final { scan-assembler-times "movdqa" 4 { target { ia32 } } } } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-2.c
index c2f49f0cc..303edca95 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-strategy-2.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=atom" } } */
/* { dg-options "-O2 -march=atom -mmemcpy-strategy=vector_loop:3000:align,libcall:-1:align" } */
/* { dg-final { scan-assembler-times "movdqa" 8 { target { ! { ia32 } } } } } */
/* { dg-final { scan-assembler-times "movdqa" 4 { target { ia32 } } } } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-1.c
index c61c06795..1ea682a10 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-1.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=atom" } } */
/* { dg-options "-O2 -march=atom -minline-all-stringops -mstringop-strategy=vector_loop" } */
/* { dg-final { scan-assembler-times "movdqa" 8 { target { ! { ia32 } } } } } */
/* { dg-final { scan-assembler-times "movdqa" 4 { target { ia32 } } } } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-2.c
index 8a646d509..3befef95d 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/memcpy-vector_loop-2.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=atom" } } */
/* { dg-options "-O2 -march=atom -minline-all-stringops -mstringop-strategy=vector_loop" } */
/* { dg-final { scan-assembler-times "movdqa" 4} } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-1.c
index ad0d13037..f7e45165c 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-1.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=atom" } } */
/* { dg-options "-O2 -march=atom -minline-all-stringops -mstringop-strategy=vector_loop" } */
/* { dg-final { scan-assembler-times "movdqa" 4 } } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-2.c
index f2ceb442c..92e610004 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/memset-vector_loop-2.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=atom" } } */
/* { dg-options "-O2 -march=atom -minline-all-stringops -mstringop-strategy=vector_loop" } */
/* { dg-final { scan-assembler-times "movdqa" 4} } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr27971.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr27971.c
index 27888de6d..149bf2b8e 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr27971.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr27971.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2" } */
+/* { dg-options "-O2 -mno-tbm" } */
unsigned array[4];
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr30970.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr30970.c
index 96d64e5a9..b1fc2d3ec 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr30970.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr30970.c
@@ -1,5 +1,5 @@
/* { dg-do compile }
-/* { dg-options "-msse2 -O2 -ftree-vectorize" } */
+/* { dg-options "-msse2 -O2 -ftree-vectorize -mtune=generic" } */
#define N 256
int b[N];
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr42542-4a.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr42542-4a.c
index bea6c1f50..19e872a7e 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr42542-4a.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr42542-4a.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O1 -msse4.2 -ftree-vectorize" } */
+/* { dg-options "-O1 -msse4.2 -ftree-vectorize -mno-avx" } */
#include "pr42542-4.c"
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr59390.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr59390.c
index 7dc925ae9..749c61a58 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr59390.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr59390.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-std=c99 -O3" } */
+/* { dg-options "-std=c99 -O3 -mno-fma -mno-fma4" } */
extern double fma (double, double, double);
void fun() __attribute__((target("fma")));
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr60693.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr60693.c
new file mode 100644
index 000000000..e6033a783
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr60693.c
@@ -0,0 +1,13 @@
+/* PR target/60693 */
+/* { dg-do compile } */
+/* { dg-options "-O0" } */
+
+void bar (char *);
+
+void
+foo (void)
+{
+ char buf[4096];
+ __builtin_memcpy (buf, (void *) 0x8000, 4096);
+ bar (buf);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/pr60700.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr60700.c
new file mode 100644
index 000000000..5428f3616
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/pr60700.c
@@ -0,0 +1,59 @@
+/* PR rtl-optimization/60700 */
+/* { dg-do run { target ia32 } } */
+/* { dg-options "-O3 -march=i686" } */
+
+int
+__attribute__((noinline))
+foo (void)
+{
+ return 0;
+}
+
+void *g = (void *)1;
+
+struct st {
+ char data[36]; /* must be greater than 32. */
+};
+
+int
+__attribute__((noinline))
+repro(struct st **out)
+{
+ int status = 0;
+
+ *out = 0;
+
+ status = foo();
+ if (status != 0) {
+ return status;
+ }
+
+ if (0 == g) {
+ status = 999;
+ return status;
+ }
+
+ *out = (struct st *)__builtin_malloc(sizeof(struct st));
+ if (0 == *out) {
+ status = 42;
+ return status;
+ }
+
+ __builtin_memset(*out, 0, sizeof(struct st));
+
+ return status;
+}
+
+int
+main ()
+{
+ struct st *p;
+ int ret = repro (&p);
+ unsigned int i;
+
+ for (i = 0; i < sizeof (p->data)/sizeof (p->data[0]); i++)
+ if (p->data[i] != 0)
+ __builtin_abort ();
+
+ return ret;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/sse2-init-v2di-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/sse2-init-v2di-2.c
index a2313a4b1..6a50573a5 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/sse2-init-v2di-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/sse2-init-v2di-2.c
@@ -1,4 +1,5 @@
/* { dg-do compile { target { ! { ia32 } } } } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=core2" } } */
/* { dg-options "-O2 -msse4 -march=core2 -dp" } */
#include <emmintrin.h>
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-1.c
index ef89059b8..a82522955 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-1.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* This test checks for absolute memory operands. */
/* { dg-require-effective-target nonpic } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=k8" } } */
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler "andpd\[^\\n\]*magic" } } */
/* { dg-final { scan-assembler "andnpd\[^\\n\]*magic" } } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-2.c
index b68a63923..37953ca64 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-2.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-2.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=k8" } } */
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler "andpd" } } */
/* { dg-final { scan-assembler "andnpd" } } */
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-5.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-5.c
index 75133e9fa..4e22e59e5 100644
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-5.c
+++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/ssetype-5.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* This test checks for absolute memory operands. */
/* { dg-require-effective-target nonpic } */
+/* { dg-skip-if "" { i?86-*-* x86_64-*-* } { "-march=*" } { "-march=k8" } } */
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler "pand\[^\\n\]*magic" } } */
/* { dg-final { scan-assembler "pandn\[^\\n\]*magic" } } */