1 /* { dg-do compile } */
2 /* { dg-options "-O2 -mmovbe" } */
3 
4 extern long long x;
5 
6 void
foo(long long i)7 foo (long long i)
8 {
9   x = __builtin_bswap64 (i);
10 }
11 
12 long long
bar()13 bar ()
14 {
15   return __builtin_bswap64 (x);
16 }
17 
18 /* { dg-final { scan-assembler-times "movbel\[ \t\]" 4 { target ia32 } } } */
19 /* { dg-final { scan-assembler-times "movbeq\[ \t\]" 2 { target { ! ia32 } } } } */
20