]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGen/Mips/mips16_32_5.ll
Vendor import of llvm release_34 branch r197841 (effectively, 3.4 RC3):
[FreeBSD/FreeBSD.git] / test / CodeGen / Mips / mips16_32_5.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                  # @foo
10 ; 16:   .ent    foo
11 ; 16:   save    {{.+}}
12 ; 16:   restore {{.+}} 
13 ; 16:   .end    foo
14 ; 32:   .set    mips16                  # @foo
15 ; 32:   .ent    foo
16 ; 32:   save    {{.+}}
17 ; 32:   restore {{.+}} 
18 ; 32:   .end    foo
19 define void @nofoo() #1 {
20 entry:
21   ret void
22 }
23
24 ; 16:   .set    nomips16                  # @nofoo
25 ; 16:   .ent    nofoo
26 ; 16:   .set    noreorder
27 ; 16:   .set    nomacro
28 ; 16:   .set    noat
29 ; 16:   jr      $ra
30 ; 16:   nop
31 ; 16:   .set    at
32 ; 16:   .set    macro
33 ; 16:   .set    reorder
34 ; 16:   .end    nofoo
35 ; 32:   .set    nomips16                  # @nofoo
36 ; 32:   .ent    nofoo
37 ; 32:   .set    noreorder
38 ; 32:   .set    nomacro
39 ; 32:   .set    noat
40 ; 32:   jr      $ra
41 ; 32:   nop
42 ; 32:   .set    at
43 ; 32:   .set    macro
44 ; 32:   .set    reorder
45 ; 32:   .end    nofoo
46 define i32 @main() #2 {
47 entry:
48   ret i32 0
49 }
50
51 ; 16:   .set    nomips16                  # @main
52 ; 16:   .ent    main
53 ; 16:   .set    noreorder
54 ; 16:   .set    nomacro
55 ; 16:   .set    noat
56 ; 16:   jr      $ra
57 ; 16:   addiu   $2, $zero, 0
58 ; 16:   .set    at
59 ; 16:   .set    macro
60 ; 16:   .set    reorder
61 ; 16:   .end    main
62
63 ; 32:   .set    nomips16                  # @main
64 ; 32:   .ent    main
65 ; 32:   .set    noreorder
66 ; 32:   .set    nomacro
67 ; 32:   .set    noat
68 ; 32:   jr      $ra
69 ; 32:   addiu   $2, $zero, 0
70 ; 32:   .set    at
71 ; 32:   .set    macro
72 ; 32:   .set    reorder
73 ; 32:   .end    main
74
75
76
77
78 attributes #0 = { nounwind "less-precise-fpmad"="false" "mips16" "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" }
79 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" }
80 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" }