Recognize bswapl as bswap too.
[oota-llvm.git] / test / CodeGen / X86 / bswap-inline-asm.ll
1 ; RUN: llvm-as < %s | llc -march=x86-64 > %t
2 ; RUN: not grep APP %t
3 ; RUN: grep bswapq %t | count 2
4 ; RUN: grep bswapl %t | count 1
5
6 define i64 @foo(i64 %x) nounwind {
7         %asmtmp = tail call i64 asm "bswap $0", "=r,0,~{dirflag},~{fpsr},~{flags}"(i64 %x) nounwind
8         ret i64 %asmtmp
9 }
10 define i64 @bar(i64 %x) nounwind {
11         %asmtmp = tail call i64 asm "bswapq ${0:q}", "=r,0,~{dirflag},~{fpsr},~{flags}"(i64 %x) nounwind
12         ret i64 %asmtmp
13 }
14 define i32 @pen(i32 %x) nounwind {
15         %asmtmp = tail call i32 asm "bswapl ${0:q}", "=r,0,~{dirflag},~{fpsr},~{flags}"(i32 %x) nounwind
16         ret i32 %asmtmp
17 }