blob: 17900a2dc75fb8e4d265157051910f8c780f0a3d [file] [log] [blame]
Reed Kotler1595f362013-04-09 19:46:01 +00001; 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
4define void @foo() #0 {
5entry:
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
19define void @nofoo() #1 {
20entry:
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
46define i32 @main() #2 {
47entry:
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
Bill Wendling187d3dd2013-08-22 21:28:54 +000078attributes #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" }
79attributes #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" }
80attributes #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" }