avx512bw-kunpckdq-1.c (avx512bw_test): Use "m" constraint instead of "r".
authorJakub Jelinek <jakub@redhat.com>
Sun, 22 May 2016 18:01:43 +0000 (20:01 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Sun, 22 May 2016 18:01:43 +0000 (20:01 +0200)
* gcc.target/i386/avx512bw-kunpckdq-1.c (avx512bw_test): Use "m"
constraint instead of "r".
* gcc.target/i386/avx512f-additional-reg-names.c (foo): Use vpxord
insn instead of vxorpd.
* gcc.target/i386/strinline.c: Add dg-require-effective-target ia32.

From-SVN: r236571

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/avx512bw-kunpckdq-1.c
gcc/testsuite/gcc.target/i386/avx512f-additional-reg-names.c
gcc/testsuite/gcc.target/i386/strinline.c

index 07c14704b79b7ad5cbc23e4c4b6e5497d293f82c..a23d9406087d132eaf5d207432bc36f2e446293d 100644 (file)
@@ -1,5 +1,11 @@
 2016-05-22  Jakub Jelinek  <jakub@redhat.com>
 
+       * gcc.target/i386/avx512bw-kunpckdq-1.c (avx512bw_test): Use "m"
+       constraint instead of "r".
+       * gcc.target/i386/avx512f-additional-reg-names.c (foo): Use vpxord
+       insn instead of vxorpd.
+       * gcc.target/i386/strinline.c: Add dg-require-effective-target ia32.
+
        * gcc.target/i386/avx512dq-vinsert-1.c: New test.
        * gcc.target/i386/avx512vl-vinsert-1.c: New test.
 
index 7a974fecb942adfc2068f91b6682ae567d2d30a7..a045921dfd8d6d6779f5176d9cfa2f70553f7dac 100644 (file)
@@ -8,9 +8,10 @@ void
 avx512bw_test () {
   __mmask64 k1, k2, k3;
   volatile __m512i x;
+  long long one = 1, two = 2;
 
-  __asm__( "kmovq %1, %0" : "=k" (k1) : "r" (1) );
-  __asm__( "kmovq %1, %0" : "=k" (k2) : "r" (2) );
+  __asm__( "kmovq %1, %0" : "=k" (k1) : "m" (one) );
+  __asm__( "kmovq %1, %0" : "=k" (k2) : "m" (two) );
 
   k3 = _mm512_kunpackd (k1, k2);
   x = _mm512_mask_avg_epu8 (x, k3, x, x);
index e5ee08bcbd2deb768d4cb88bbf3da71df20f50a8..5c68731dcd76d1bbe09cb6b1db0c56fcfa18e20d 100644 (file)
@@ -5,5 +5,5 @@ void foo ()
 {
   register int zmm_var asm ("zmm6") __attribute__((unused));
 
-  __asm__ __volatile__("vxorpd %%zmm0, %%zmm0, %%zmm7\n" : : : "zmm7" );
+  __asm__ __volatile__("vpxord %%zmm0, %%zmm0, %%zmm7\n" : : : "zmm7" );
 }
index 2fe671416246067ff94acbca011b6cc470224f7e..08b38d8296f0d7e9bc01e9970ba17e2dde7e9a33 100644 (file)
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-require-effective-target fpic } */
+/* { dg-require-effective-target ia32 } */
 /* { dg-options "-O2 -fPIC" } */
 typedef unsigned int size_t;
  char *
@@ -8,7 +9,8 @@ __mempcpy_by2 (char *__dest, __const char *__src, size_t __srclen)
   register char *__tmp = __dest;
   register unsigned long int __d0, __d1;
   __asm__ __volatile__
-    ("shrl      $1,%3\n\t"
+    (
+     "shrl      $1,%3\n\t"
      "jz        2f\n"
      "1:\n\t"
      "movl      (%2),%0\n\t"