blob: 8891eba8c954e553295d6170453f369220023147 [file] [log] [blame]
Daniel Sanders8008de52015-10-15 14:34:23 +00001; RUN: llc -march=mipsel -mattr=mips16 -relocation-model=static -O3 < %s -mips-mixed-16-32 | FileCheck %s -check-prefix=16
Reed Kotler1595f362013-04-09 19:46:01 +00002; 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
Rafael Espindola6633d572014-01-14 18:57:12 +00009; 16: .set mips16
Reed Kotler1595f362013-04-09 19:46:01 +000010; 16: .ent foo
Reed Kotler5c29d632013-12-15 20:49:30 +000011; 16: jrc $ra
Reed Kotler1595f362013-04-09 19:46:01 +000012; 16: .end foo
Rafael Espindola6633d572014-01-14 18:57:12 +000013; 32: .set mips16
Reed Kotler1595f362013-04-09 19:46:01 +000014; 32: .ent foo
Reed Kotler5c29d632013-12-15 20:49:30 +000015; 32: jrc $ra
Reed Kotler1595f362013-04-09 19:46:01 +000016; 32: .end foo
17define void @nofoo() #1 {
18entry:
19 ret void
20}
21
Rafael Espindola6633d572014-01-14 18:57:12 +000022; 16: .set nomips16
Reed Kotler1595f362013-04-09 19:46:01 +000023; 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
Rafael Espindola6633d572014-01-14 18:57:12 +000033; 32: .set nomips16
Reed Kotler1595f362013-04-09 19:46:01 +000034; 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
Rafael Espindola6633d572014-01-14 18:57:12 +000049; 16: .set mips16
Reed Kotler1595f362013-04-09 19:46:01 +000050; 16: .ent main
Reed Kotler5c29d632013-12-15 20:49:30 +000051; 16: jrc $ra
Reed Kotler1595f362013-04-09 19:46:01 +000052; 16: .end main
Rafael Espindola6633d572014-01-14 18:57:12 +000053; 32: .set nomips16
Reed Kotler1595f362013-04-09 19:46:01 +000054; 32: .ent main
55; 32: .set noreorder
56; 32: .set nomacro
57; 32: .set noat
58; 32: jr $ra
59; 32: addiu $2, $zero, 0
60; 32: .set at
61; 32: .set macro
62; 32: .set reorder
63; 32: .end main
64
Bill Wendling187d3dd2013-08-22 21:28:54 +000065attributes #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" }
66attributes #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" }
67attributes #2 = { 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" }