diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.target/i386/bmi2-bzhi-1.c')
-rw-r--r-- | gcc-4.9/gcc/testsuite/gcc.target/i386/bmi2-bzhi-1.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi2-bzhi-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi2-bzhi-1.c new file mode 100644 index 000000000..42e002d06 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/bmi2-bzhi-1.c @@ -0,0 +1,31 @@ +/* PR target/57623 */ +/* { dg-do assemble { target bmi2 } } */ +/* { dg-options "-O2 -mbmi2" } */ + +#include <x86intrin.h> + +unsigned int +f1 (unsigned int x, unsigned int *y) +{ + return _bzhi_u32 (x, *y); +} + +unsigned int +f2 (unsigned int *x, unsigned int y) +{ + return _bzhi_u32 (*x, y); +} + +#ifdef __x86_64__ +unsigned long long +f3 (unsigned long long x, unsigned long long *y) +{ + return _bzhi_u64 (x, *y); +} + +unsigned long long +f4 (unsigned long long *x, unsigned long long y) +{ + return _bzhi_u64 (*x, y); +} +#endif |