63323b608bc57932269a7ed4fb34cb1995f1d2ca
[oota-llvm.git] / test / CodeGen / Mips / mips16_32_6.ll
1 ; RUN: llc  -march=mipsel -mcpu=mips16 -relocation-model=static -O3 < %s -mips-mixed-16-32  | FileCheck %s -check-prefix=16
2 ; RUN: llc  -march=mipsel -mcpu=mips32 -relocation-model=static -O3 < %s -mips-mixed-16-32  | FileCheck %s -check-prefix=32
3
4 define void @foo() #0 {
5 entry:
6   ret void
7 }
8
9 ; 16:   .set    mips16
10 ; 16:   .ent    foo
11 ; 16:   jrc $ra
12 ; 16:   .end    foo
13 ; 32:   .set    nomips16
14 ; 32:   .ent    foo
15 ; 32:   .set    noreorder
16 ; 32:   .set    nomacro
17 ; 32:   .set    noat
18 ; 32:   jr      $ra
19 ; 32:   nop
20 ; 32:   .set    at
21 ; 32:   .set    macro
22 ; 32:   .set    reorder
23 ; 32:   .end    foo
24 define void @nofoo() #1 {
25 entry:
26   ret void
27 }
28
29 ; 16:   .set    nomips16
30 ; 16:   .ent    nofoo
31 ; 16:   .set    noreorder
32 ; 16:   .set    nomacro
33 ; 16:   .set    noat
34 ; 16:   jr      $ra
35 ; 16:   nop
36 ; 16:   .set    at
37 ; 16:   .set    macro
38 ; 16:   .set    reorder
39 ; 16:   .end    nofoo
40 ; 32:   .set    nomips16
41 ; 32:   .ent    nofoo
42 ; 32:   .set    noreorder
43 ; 32:   .set    nomacro
44 ; 32:   .set    noat
45 ; 32:   jr      $ra
46 ; 32:   nop
47 ; 32:   .set    at
48 ; 32:   .set    macro
49 ; 32:   .set    reorder
50 ; 32:   .end    nofoo
51 define i32 @main() #2 {
52 entry:
53   ret i32 0
54 }
55
56 ; 16:   .set    nomips16
57 ; 16:   .ent    main
58 ; 16:   .set    noreorder
59 ; 16:   .set    nomacro
60 ; 16:   .set    noat
61 ; 16:   jr      $ra
62 ; 16:   addiu   $2, $zero, 0
63 ; 16:   .set    at
64 ; 16:   .set    macro
65 ; 16:   .set    reorder
66 ; 16:   .end    main
67
68 ; 32:   .set    nomips16
69 ; 32:   .ent    main
70 ; 32:   .set    noreorder
71 ; 32:   .set    nomacro
72 ; 32:   .set    noat
73 ; 32:   jr      $ra
74 ; 32:   addiu   $2, $zero, 0
75 ; 32:   .set    at
76 ; 32:   .set    macro
77 ; 32:   .set    reorder
78 ; 32:   .end    main
79
80
81
82
83 attributes #0 = { nounwind "less-precise-fpmad"="false"  "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
84 attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
85 attributes #2 = { nounwind "less-precise-fpmad"="false" "nomips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }