2018-03-08 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / bmi-blsr-2.c
blob61d962b91505dbf6f2ea4aaa91cea489a2d55289
1 /* { dg-do run } */
2 /* { dg-options "-O3 -fno-inline" } */
3 /* { dg-require-effective-target lp64 } */
4 /* { dg-require-effective-target ppc_cpu_supports_hw } */
6 #define NO_WARN_X86_INTRINSICS 1
7 #include <x86intrin.h>
8 #include "bmi-check.h"
10 int calc_blsr_u32 (int src1, int src2)
12 return (src1-1) & (src2);
15 static void
16 bmi_test ()
18 unsigned i;
19 int src = 0xfacec0ff;
20 int res, res_ref;
22 for (i=0; i<5; ++i) {
23 src = (i + src) << i;
25 res_ref = calc_blsr_u32 (src, src);
26 res = __blsr_u32 (src);
28 if (res != res_ref)
29 abort();