diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/abi/mangle42.C')
-rw-r--r-- | gcc/testsuite/g++.dg/abi/mangle42.C | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/abi/mangle42.C b/gcc/testsuite/g++.dg/abi/mangle42.C new file mode 100644 index 000000000..b7e3bd561 --- /dev/null +++ b/gcc/testsuite/g++.dg/abi/mangle42.C @@ -0,0 +1,15 @@ +// Origin: PR c++/43375 +// { dg-do compile { target i?86-*-* x86_64-*-* } } +// { dg-options "-msse2 -std=gnu++0x" } +// { dg-require-effective-target sse2 } + +typedef float __v4sf __attribute__ ((__vector_size__ (16))); +typedef int __v4si __attribute__ ((__vector_size__ (16))); +__v4sf my_asin(__v4sf x) +{ + static const __v4si g_Mask{0x7fffffff, + 0x00000000, + 0x7fffffff, + 0x7fffffff }; + return __builtin_ia32_andnps ((__v4sf) g_Mask, x); +} |