Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / CodeGen / Mips / GlobalISel / llvm-ir / constants.ll
blob1bd65a41960878a1e554edf17f42fb2f75679eb3
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc  -O0 -mtriple=mipsel-linux-gnu -global-isel  -verify-machineinstrs %s -o -| FileCheck %s -check-prefixes=MIPS32
4 define i64 @any_i64() {
5 ; MIPS32-LABEL: any_i64:
6 ; MIPS32:       # %bb.0: # %entry
7 ; MIPS32-NEXT:    ori $2, $zero, 0
8 ; MIPS32-NEXT:    lui $3, 32768
9 ; MIPS32-NEXT:    jr $ra
10 ; MIPS32-NEXT:    nop
11 entry:
12   ret i64 -9223372036854775808
15 define i32 @any_i32() {
16 ; MIPS32-LABEL: any_i32:
17 ; MIPS32:       # %bb.0: # %entry
18 ; MIPS32-NEXT:    lui $2, 32768
19 ; MIPS32-NEXT:    jr $ra
20 ; MIPS32-NEXT:    nop
21 entry:
22   ret i32 -2147483648
25 define signext i16 @signed_i16() {
26 ; MIPS32-LABEL: signed_i16:
27 ; MIPS32:       # %bb.0: # %entry
28 ; MIPS32-NEXT:    addiu $2, $zero, 32768
29 ; MIPS32-NEXT:    jr $ra
30 ; MIPS32-NEXT:    nop
31 entry:
32   ret i16 -32768
35 define signext i8 @signed_i8() {
36 ; MIPS32-LABEL: signed_i8:
37 ; MIPS32:       # %bb.0: # %entry
38 ; MIPS32-NEXT:    addiu $2, $zero, 65408
39 ; MIPS32-NEXT:    jr $ra
40 ; MIPS32-NEXT:    nop
41 entry:
42   ret i8 -128
45 define zeroext i16 @unsigned_i16() {
46 ; MIPS32-LABEL: unsigned_i16:
47 ; MIPS32:       # %bb.0: # %entry
48 ; MIPS32-NEXT:    ori $2, $zero, 32768
49 ; MIPS32-NEXT:    jr $ra
50 ; MIPS32-NEXT:    nop
51 entry:
52   ret i16 -32768
55 define zeroext i8 @unsigned_i8() {
56 ; MIPS32-LABEL: unsigned_i8:
57 ; MIPS32:       # %bb.0: # %entry
58 ; MIPS32-NEXT:    ori $2, $zero, 128
59 ; MIPS32-NEXT:    jr $ra
60 ; MIPS32-NEXT:    nop
61 entry:
62   ret i8 -128
65 define zeroext i1 @i1_true() {
66 ; MIPS32-LABEL: i1_true:
67 ; MIPS32:       # %bb.0: # %entry
68 ; MIPS32-NEXT:    ori $2, $zero, 1
69 ; MIPS32-NEXT:    jr $ra
70 ; MIPS32-NEXT:    nop
71 entry:
72   ret i1 true
75 define zeroext i1 @i1_false() {
76 ; MIPS32-LABEL: i1_false:
77 ; MIPS32:       # %bb.0: # %entry
78 ; MIPS32-NEXT:    ori $2, $zero, 0
79 ; MIPS32-NEXT:    jr $ra
80 ; MIPS32-NEXT:    nop
81 entry:
82   ret i1 false
85 define i32 @_0xABCD0000() {
86 ; MIPS32-LABEL: _0xABCD0000:
87 ; MIPS32:       # %bb.0: # %entry
88 ; MIPS32-NEXT:    lui $2, 43981
89 ; MIPS32-NEXT:    jr $ra
90 ; MIPS32-NEXT:    nop
91 entry:
92   ret i32 -1412628480
95 define i32 @_0x00008000() {
96 ; MIPS32-LABEL: _0x00008000:
97 ; MIPS32:       # %bb.0: # %entry
98 ; MIPS32-NEXT:    ori $2, $zero, 32768
99 ; MIPS32-NEXT:    jr $ra
100 ; MIPS32-NEXT:    nop
101 entry:
102   ret i32 32768
105 define i32 @_0xFFFFFFF6() {
106 ; MIPS32-LABEL: _0xFFFFFFF6:
107 ; MIPS32:       # %bb.0: # %entry
108 ; MIPS32-NEXT:    addiu $2, $zero, 65526
109 ; MIPS32-NEXT:    jr $ra
110 ; MIPS32-NEXT:    nop
111 entry:
112   ret i32 -10
115 define i32 @_0x0A0B0C0D() {
116 ; MIPS32-LABEL: _0x0A0B0C0D:
117 ; MIPS32:       # %bb.0: # %entry
118 ; MIPS32-NEXT:    lui $1, 2571
119 ; MIPS32-NEXT:    ori $2, $1, 3085
120 ; MIPS32-NEXT:    jr $ra
121 ; MIPS32-NEXT:    nop
122 entry:
123   ret i32 168496141