diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/visium/bit_shift.c')
-rw-r--r-- | gcc/testsuite/gcc.target/visium/bit_shift.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/visium/bit_shift.c b/gcc/testsuite/gcc.target/visium/bit_shift.c new file mode 100644 index 00000000000..bf373428de8 --- /dev/null +++ b/gcc/testsuite/gcc.target/visium/bit_shift.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-options "-O" } */ + +int bit_shift (long int x) +{ + int i, n; + + for (i = n = 0; x && (i < (sizeof(long) * 8)); ++i, x >>= 1) + n += (int)(x & 1L); + return n; +} + +/* { dg-final { scan-assembler-not "cmp" } } */ |