blob: f4b8e7a91adcadda5e9780ab60c2231e869aec74 [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 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
25define void @nofoo() #1 {
26entry:
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
52define i32 @main() #2 {
53entry:
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
84attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }
85attributes #1 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "nomips16" "unsafe-fp-math"="false" "use-soft-float"="false" }
86attributes #2 = { nounwind "less-precise-fpmad"="false" "nomips16" "no-frame-pointer-elim"="false" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" }