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	mips16
14; 32: 	.ent	foo
15; 32:	jrc $ra
16; 32:	.end	foo
17define void @nofoo() #1 {
18entry:
19  ret void
20}
21
22; 16: 	.set	nomips16
23; 16: 	.ent	nofoo
24; 16:	.set	noreorder
25; 16:	.set	nomacro
26; 16:	.set	noat
27; 16:	jr	$ra
28; 16:	nop
29; 16:	.set	at
30; 16:	.set	macro
31; 16:	.set	reorder
32; 16:	.end	nofoo
33; 32: 	.set	nomips16
34; 32: 	.ent	nofoo
35; 32:	.set	noreorder
36; 32:	.set	nomacro
37; 32:	.set	noat
38; 32:	jr	$ra
39; 32:	nop
40; 32:	.set	at
41; 32:	.set	macro
42; 32:	.set	reorder
43; 32:	.end	nofoo
44define i32 @main() #2 {
45entry:
46  ret i32 0
47}
48
49; 16: 	.set	mips16
50; 16: 	.ent	main
51; 16:	jrc $ra
52; 16:	.end	main
53; 32: 	.set	mips16
54; 32: 	.ent	main
55; 32:	jrc $ra
56; 32:	.end	main
57
58
59attributes #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" }
60attributes #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" }
61attributes #2 = { 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" }
62