Add a triple to switch.ll test.
[oota-llvm.git] / test / CodeGen / X86 / tbm-intrinsics-x86_64.ll
1 ; RUN: llc -mtriple=x86_64-unknown-unknown -march=x86-64 -mattr=+tbm < %s | FileCheck %s
2
3 define i32 @test_x86_tbm_bextri_u32(i32 %a) nounwind readnone {
4 entry:
5   ; CHECK-LABEL: test_x86_tbm_bextri_u32:
6   ; CHECK-NOT: mov
7   ; CHECK: bextr $
8   %0 = tail call i32 @llvm.x86.tbm.bextri.u32(i32 %a, i32 2814)
9   ret i32 %0
10 }
11
12 declare i32 @llvm.x86.tbm.bextri.u32(i32, i32) nounwind readnone
13
14 define i32 @test_x86_tbm_bextri_u32_m(i32* nocapture %a) nounwind readonly {
15 entry:
16   ; CHECK-LABEL: test_x86_tbm_bextri_u32_m:
17   ; CHECK-NOT: mov
18   ; CHECK: bextr $
19   %tmp1 = load i32, i32* %a, align 4
20   %0 = tail call i32 @llvm.x86.tbm.bextri.u32(i32 %tmp1, i32 2814)
21   ret i32 %0
22 }
23
24 define i64 @test_x86_tbm_bextri_u64(i64 %a) nounwind readnone {
25 entry:
26   ; CHECK-LABEL: test_x86_tbm_bextri_u64:
27   ; CHECK-NOT: mov
28   ; CHECK: bextr $
29   %0 = tail call i64 @llvm.x86.tbm.bextri.u64(i64 %a, i64 2814)
30   ret i64 %0
31 }
32
33 declare i64 @llvm.x86.tbm.bextri.u64(i64, i64) nounwind readnone
34
35 define i64 @test_x86_tbm_bextri_u64_m(i64* nocapture %a) nounwind readonly {
36 entry:
37   ; CHECK-LABEL: test_x86_tbm_bextri_u64_m:
38   ; CHECK-NOT: mov
39   ; CHECK: bextr $
40   %tmp1 = load i64, i64* %a, align 8
41   %0 = tail call i64 @llvm.x86.tbm.bextri.u64(i64 %tmp1, i64 2814)
42   ret i64 %0
43 }