[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / Mips / mips16_32_4.ll
blob2d50881c61b494e5719cca48ae3815c0093135de
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
4 define void @foo() #0 {
5 entry:
6   ret void
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
17 define void @nofoo() #1 {
18 entry:
19   ret void
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
44 define i32 @main() #2 {
45 entry:
46   ret i32 0
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
59 attributes #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" }
60 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" }
61 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" }