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
4define void @foo() #0 {
5entry:
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
24define void @nofoo() #1 {
25entry:
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
51define i32 @main() #2 {
52entry:
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
83attributes #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" }
84attributes #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" }
85attributes #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" }
86