OSDN Git Service

am 008f5bfe: am ce9904c6: Merge remote-tracking branch \'upstream/release_34\' into...
[android-x86/external-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                  # @foo
10 ; 16:   .ent    foo
11 ; 16:   save    {{.+}}
12 ; 16:   restore {{.+}} 
13 ; 16:   .end    foo
14 ; 32:   .set    nomips16                  # @foo
15 ; 32:   .ent    foo
16 ; 32:   .set    noreorder
17 ; 32:   .set    nomacro
18 ; 32:   .set    noat
19 ; 32:   jr      $ra
20 ; 32:   nop
21 ; 32:   .set    at
22 ; 32:   .set    macro
23 ; 32:   .set    reorder
24 ; 32:   .end    foo
25 define void @nofoo() #1 {
26 entry:
27   ret void
28 }
29
30 ; 16:   .set    nomips16                  # @nofoo
31 ; 16:   .ent    nofoo
32 ; 16:   .set    noreorder
33 ; 16:   .set    nomacro
34 ; 16:   .set    noat
35 ; 16:   jr      $ra
36 ; 16:   nop
37 ; 16:   .set    at
38 ; 16:   .set    macro
39 ; 16:   .set    reorder
40 ; 16:   .end    nofoo
41 ; 32:   .set    nomips16                  # @nofoo
42 ; 32:   .ent    nofoo
43 ; 32:   .set    noreorder
44 ; 32:   .set    nomacro
45 ; 32:   .set    noat
46 ; 32:   jr      $ra
47 ; 32:   nop
48 ; 32:   .set    at
49 ; 32:   .set    macro
50 ; 32:   .set    reorder
51 ; 32:   .end    nofoo
52 define i32 @main() #2 {
53 entry:
54   ret i32 0
55 }
56
57 ; 16:   .set    nomips16                  # @main
58 ; 16:   .ent    main
59 ; 16:   .set    noreorder
60 ; 16:   .set    nomacro
61 ; 16:   .set    noat
62 ; 16:   jr      $ra
63 ; 16:   addiu   $2, $zero, 0
64 ; 16:   .set    at
65 ; 16:   .set    macro
66 ; 16:   .set    reorder
67 ; 16:   .end    main
68
69 ; 32:   .set    nomips16                  # @main
70 ; 32:   .ent    main
71 ; 32:   .set    noreorder
72 ; 32:   .set    nomacro
73 ; 32:   .set    noat
74 ; 32:   jr      $ra
75 ; 32:   addiu   $2, $zero, 0
76 ; 32:   .set    at
77 ; 32:   .set    macro
78 ; 32:   .set    reorder
79 ; 32:   .end    main
80
81
82
83
84 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" }
85 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" }
86 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" }