From 57748705ef843ec448c43775ae1ba38d1429e55c Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sun, 22 May 2016 20:01:43 +0200 Subject: [PATCH] avx512bw-kunpckdq-1.c (avx512bw_test): Use "m" constraint instead of "r". * 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 | 6 ++++++ gcc/testsuite/gcc.target/i386/avx512bw-kunpckdq-1.c | 5 +++-- .../gcc.target/i386/avx512f-additional-reg-names.c | 2 +- gcc/testsuite/gcc.target/i386/strinline.c | 4 +++- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 07c14704b79..a23d9406087 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,11 @@ 2016-05-22 Jakub Jelinek + * 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. diff --git a/gcc/testsuite/gcc.target/i386/avx512bw-kunpckdq-1.c b/gcc/testsuite/gcc.target/i386/avx512bw-kunpckdq-1.c index 7a974fecb94..a045921dfd8 100644 --- a/gcc/testsuite/gcc.target/i386/avx512bw-kunpckdq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512bw-kunpckdq-1.c @@ -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); diff --git a/gcc/testsuite/gcc.target/i386/avx512f-additional-reg-names.c b/gcc/testsuite/gcc.target/i386/avx512f-additional-reg-names.c index e5ee08bcbd2..5c68731dcd7 100644 --- a/gcc/testsuite/gcc.target/i386/avx512f-additional-reg-names.c +++ b/gcc/testsuite/gcc.target/i386/avx512f-additional-reg-names.c @@ -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" ); } diff --git a/gcc/testsuite/gcc.target/i386/strinline.c b/gcc/testsuite/gcc.target/i386/strinline.c index 2fe67141624..08b38d8296f 100644 --- a/gcc/testsuite/gcc.target/i386/strinline.c +++ b/gcc/testsuite/gcc.target/i386/strinline.c @@ -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" -- 2.30.2