Convert CodeGen/*/*.ll tests to use the new CHECK-LABEL for easier debugging. No...
[oota-llvm.git] / test / CodeGen / Mips / int-to-float-conversion.ll
1 ; RUN: llc -march=mipsel < %s | FileCheck %s -check-prefix=32
2 ; RUN: llc -march=mips64el -mcpu=mips64 < %s | FileCheck %s -check-prefix=64
3
4 @i1 = global [3 x i32] [i32 1, i32 2, i32 3], align 4
5 @i3 = common global i32* null, align 4
6
7 ; 32-LABEL: test_float_int_:
8 ; 32: mtc1 ${{[0-9]+}}, $f[[R0:[0-9]+]]
9 ; 32: cvt.s.w $f{{[0-9]+}}, $f[[R0]]
10
11 define float @test_float_int_(i32 %a) {
12 entry:
13   %conv = sitofp i32 %a to float
14   ret float %conv
15 }
16
17 ; 32-LABEL: test_double_int_:
18 ; 32: mtc1 ${{[0-9]+}}, $f[[R0:[0-9]+]]
19 ; 32: cvt.d.w $f{{[0-9]+}}, $f[[R0]]
20 ; 64-LABEL: test_double_int_:
21 ; 64: mtc1 ${{[0-9]+}}, $f[[R0:[0-9]+]]
22 ; 64: cvt.d.w $f{{[0-9]+}}, $f[[R0]]
23
24 define double @test_double_int_(i32 %a) {
25 entry:
26   %conv = sitofp i32 %a to double
27   ret double %conv
28 }
29
30 ; 64-LABEL: test_float_LL_:
31 ; 64: dmtc1 ${{[0-9]+}}, $f[[R0:[0-9]+]]
32 ; 64: cvt.s.l $f{{[0-9]+}}, $f[[R0]]
33
34 define float @test_float_LL_(i64 %a) {
35 entry:
36   %conv = sitofp i64 %a to float
37   ret float %conv
38 }
39
40 ; 64-LABEL: test_double_LL_:
41 ; 64: dmtc1 ${{[0-9]+}}, $f[[R0:[0-9]+]]
42 ; 64: cvt.d.l $f{{[0-9]+}}, $f[[R0]]
43
44 define double @test_double_LL_(i64 %a) {
45 entry:
46   %conv = sitofp i64 %a to double
47   ret double %conv
48 }