1 ; RUN: llc -march=mipsel -mattr=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 4 define void @foo() #0 { 5 entry: 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 24 define void @nofoo() #1 { 25 entry: 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 51 define i32 @main() #2 { 52 entry: 53 ret i32 0 54 } 55 56 ; 16: .set mips16 57 ; 16: .ent main 58 ; 16: jrc $ra 59 ; 16: .end main 60 61 ; 32: .set mips16 62 ; 32: .ent main 63 ; 32: jrc $ra 64 ; 32: .end main 65 66 67 68 69 70 71 attributes #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" } 72 attributes #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" } 73 attributes #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" } 74