diff options
author | Martin Liska <mliska@suse.cz> | 2022-11-08 12:36:43 +0100 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2022-11-08 12:36:43 +0100 |
commit | 4b13c73bba935443be3207abf26f7ba05f79badc (patch) | |
tree | a6bb1525d07859fa8fc6f61dd13df7ddfd1ac254 /gcc/testsuite/gcc.target/i386 | |
parent | 33f5dde0cd15df9cf89b29280d4ff5fcf7b30e66 (diff) | |
parent | fa271afb58423014e2feef9f15c1a87428e64ddc (diff) | |
download | gcc-devel/sphinx.zip gcc-devel/sphinx.tar.gz gcc-devel/sphinx.tar.bz2 |
Merge branch 'master' into devel/sphinxdevel/sphinx
Diffstat (limited to 'gcc/testsuite/gcc.target/i386')
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr107546.c | 19 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/raoint-atomic-fetch.c | 29 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/sse-22.c | 2 |
3 files changed, 20 insertions, 30 deletions
diff --git a/gcc/testsuite/gcc.target/i386/pr107546.c b/gcc/testsuite/gcc.target/i386/pr107546.c new file mode 100644 index 0000000..e5cf56d --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr107546.c @@ -0,0 +1,19 @@ +/* PR target/107546 */ +/* { dg-do compile } */ +/* { dg-options "-O2 -msse2 -mno-xop -mno-avx512f" } */ +/* { dg-final { scan-assembler-not "pcmpeqb\t" } } */ +/* { dg-final { scan-assembler-times "pcmpgtb\t" 2 } } */ + +typedef signed char V __attribute__((vector_size(16))); + +V +foo (V x) +{ + return x < 48; +} + +V +bar (V x) +{ + return x >= (V) { 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 }; +} diff --git a/gcc/testsuite/gcc.target/i386/raoint-atomic-fetch.c b/gcc/testsuite/gcc.target/i386/raoint-atomic-fetch.c deleted file mode 100644 index ac4099d..0000000 --- a/gcc/testsuite/gcc.target/i386/raoint-atomic-fetch.c +++ /dev/null @@ -1,29 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-mraoint -O2 -mprefer-remote-atomic" } */ -/* { dg-final { scan-assembler-times "aadd" 2 { target {! ia32 } } } } */ -/* { dg-final { scan-assembler-times "aand" 2 { target {! ia32 } } } } */ -/* { dg-final { scan-assembler-times "aor" 2 { target {! ia32 } } } } */ -/* { dg-final { scan-assembler-times "axor" 2 { target {! ia32 } } } } */ -/* { dg-final { scan-assembler-times "aadd" 1 { target ia32 } } } */ -/* { dg-final { scan-assembler-times "aand" 1 { target ia32 } } } */ -/* { dg-final { scan-assembler-times "aor" 1 { target ia32 } } } */ -/* { dg-final { scan-assembler-times "axor" 1 { target ia32 } } } */ -volatile int x; -volatile long long y; -int *a; -long long *b; - -void extern -rao_int_test (void) -{ - __atomic_add_fetch (a, x, __ATOMIC_RELAXED); - __atomic_and_fetch (a, x, __ATOMIC_RELAXED); - __atomic_or_fetch (a, x, __ATOMIC_RELAXED); - __atomic_xor_fetch (a, x, __ATOMIC_RELAXED); -#ifdef __x86_64__ - __atomic_add_fetch (b, y, __ATOMIC_RELAXED); - __atomic_and_fetch (b, y, __ATOMIC_RELAXED); - __atomic_or_fetch (b, y, __ATOMIC_RELAXED); - __atomic_xor_fetch (b, y, __ATOMIC_RELAXED); -#endif -} diff --git a/gcc/testsuite/gcc.target/i386/sse-22.c b/gcc/testsuite/gcc.target/i386/sse-22.c index f5808e4..f600bb5 100644 --- a/gcc/testsuite/gcc.target/i386/sse-22.c +++ b/gcc/testsuite/gcc.target/i386/sse-22.c @@ -103,7 +103,7 @@ #ifndef DIFFERENT_PRAGMAS -#pragma GCC target ("sse4a,3dnow,avx,avx2,fma4,xop,aes,pclmul,popcnt,abm,lzcnt,bmi,bmi2,tbm,lwp,fsgsbase,rdrnd,f16c,rtm,rdseed,prfchw,adx,fxsr,xsaveopt,avx512f,avx512er,avx512cd,avx512pf,sha,prefetchwt1,avx512vl,avx512bw,avx512dq,avx512vbmi,avx512vbmi2,avx512ifma,avx5124fmaps,avx5124vnniw,avx512vpopcntdq,gfni,avx512bitalg,avx512bf16,avx512vp2intersect,serialize,tsxldtrk,amx-tile,amx-int8,amx-bf16,kl,widekl,avxvnni,avx512fp16,avxifma,avxvnniint8,avxneconvert,amx-fp16.raoint") +#pragma GCC target ("sse4a,3dnow,avx,avx2,fma4,xop,aes,pclmul,popcnt,abm,lzcnt,bmi,bmi2,tbm,lwp,fsgsbase,rdrnd,f16c,rtm,rdseed,prfchw,adx,fxsr,xsaveopt,avx512f,avx512er,avx512cd,avx512pf,sha,prefetchwt1,avx512vl,avx512bw,avx512dq,avx512vbmi,avx512vbmi2,avx512ifma,avx5124fmaps,avx5124vnniw,avx512vpopcntdq,gfni,avx512bitalg,avx512bf16,avx512vp2intersect,serialize,tsxldtrk,amx-tile,amx-int8,amx-bf16,kl,widekl,avxvnni,avx512fp16,avxifma,avxvnniint8,avxneconvert,amx-fp16,raoint") #endif /* Following intrinsics require immediate arguments. They |