Lines Matching refs:RV32
4 ; RUN: | FileCheck -check-prefix=RV32-ILP32FD %s
7 ; RUN: | FileCheck -check-prefix=RV32-ILP32FD %s
13 ; RV32-ILP32FD-LABEL: callee_float_in_fpr:
14 ; RV32-ILP32FD: # %bb.0:
15 ; RV32-ILP32FD-NEXT: fcvt.w.s a1, fa0, rtz
16 ; RV32-ILP32FD-NEXT: add a0, a0, a1
17 ; RV32-ILP32FD-NEXT: ret
24 ; RV32-ILP32FD-LABEL: caller_float_in_fpr:
25 ; RV32-ILP32FD: # %bb.0:
26 ; RV32-ILP32FD-NEXT: addi sp, sp, -16
27 ; RV32-ILP32FD-NEXT: sw ra, 12(sp)
28 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI1_0)
29 ; RV32-ILP32FD-NEXT: flw fa0, %lo(.LCPI1_0)(a0)
30 ; RV32-ILP32FD-NEXT: addi a0, zero, 1
31 ; RV32-ILP32FD-NEXT: call callee_float_in_fpr
32 ; RV32-ILP32FD-NEXT: lw ra, 12(sp)
33 ; RV32-ILP32FD-NEXT: addi sp, sp, 16
34 ; RV32-ILP32FD-NEXT: ret
41 ; RV32-ILP32FD-LABEL: callee_float_in_fpr_exhausted_gprs:
42 ; RV32-ILP32FD: # %bb.0:
43 ; RV32-ILP32FD-NEXT: lw a0, 0(sp)
44 ; RV32-ILP32FD-NEXT: fcvt.w.s a1, fa0, rtz
45 ; RV32-ILP32FD-NEXT: add a0, a0, a1
46 ; RV32-ILP32FD-NEXT: ret
53 ; RV32-ILP32FD-LABEL: caller_float_in_fpr_exhausted_gprs:
54 ; RV32-ILP32FD: # %bb.0:
55 ; RV32-ILP32FD-NEXT: addi sp, sp, -16
56 ; RV32-ILP32FD-NEXT: sw ra, 12(sp)
57 ; RV32-ILP32FD-NEXT: addi a1, zero, 5
58 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI3_0)
59 ; RV32-ILP32FD-NEXT: flw fa0, %lo(.LCPI3_0)(a0)
60 ; RV32-ILP32FD-NEXT: addi a0, zero, 1
61 ; RV32-ILP32FD-NEXT: addi a2, zero, 2
62 ; RV32-ILP32FD-NEXT: addi a4, zero, 3
63 ; RV32-ILP32FD-NEXT: addi a6, zero, 4
64 ; RV32-ILP32FD-NEXT: sw a1, 0(sp)
65 ; RV32-ILP32FD-NEXT: mv a1, zero
66 ; RV32-ILP32FD-NEXT: mv a3, zero
67 ; RV32-ILP32FD-NEXT: mv a5, zero
68 ; RV32-ILP32FD-NEXT: mv a7, zero
69 ; RV32-ILP32FD-NEXT: call callee_float_in_fpr_exhausted_gprs
70 ; RV32-ILP32FD-NEXT: lw ra, 12(sp)
71 ; RV32-ILP32FD-NEXT: addi sp, sp, 16
72 ; RV32-ILP32FD-NEXT: ret
80 ; RV32-ILP32FD-LABEL: callee_float_in_gpr_exhausted_fprs:
81 ; RV32-ILP32FD: # %bb.0:
82 ; RV32-ILP32FD-NEXT: fmv.w.x ft0, a0
83 ; RV32-ILP32FD-NEXT: fcvt.w.s a0, fa7, rtz
84 ; RV32-ILP32FD-NEXT: fcvt.w.s a1, ft0, rtz
85 ; RV32-ILP32FD-NEXT: add a0, a0, a1
86 ; RV32-ILP32FD-NEXT: ret
94 ; RV32-ILP32FD-LABEL: caller_float_in_gpr_exhausted_fprs:
95 ; RV32-ILP32FD: # %bb.0:
96 ; RV32-ILP32FD-NEXT: addi sp, sp, -16
97 ; RV32-ILP32FD-NEXT: sw ra, 12(sp)
98 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_0)
99 ; RV32-ILP32FD-NEXT: flw fa0, %lo(.LCPI5_0)(a0)
100 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_1)
101 ; RV32-ILP32FD-NEXT: flw fa1, %lo(.LCPI5_1)(a0)
102 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_2)
103 ; RV32-ILP32FD-NEXT: flw fa2, %lo(.LCPI5_2)(a0)
104 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_3)
105 ; RV32-ILP32FD-NEXT: flw fa3, %lo(.LCPI5_3)(a0)
106 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_4)
107 ; RV32-ILP32FD-NEXT: flw fa4, %lo(.LCPI5_4)(a0)
108 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_5)
109 ; RV32-ILP32FD-NEXT: flw fa5, %lo(.LCPI5_5)(a0)
110 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_6)
111 ; RV32-ILP32FD-NEXT: flw fa6, %lo(.LCPI5_6)(a0)
112 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI5_7)
113 ; RV32-ILP32FD-NEXT: flw fa7, %lo(.LCPI5_7)(a0)
114 ; RV32-ILP32FD-NEXT: lui a0, 266496
115 ; RV32-ILP32FD-NEXT: call callee_float_in_gpr_exhausted_fprs
116 ; RV32-ILP32FD-NEXT: lw ra, 12(sp)
117 ; RV32-ILP32FD-NEXT: addi sp, sp, 16
118 ; RV32-ILP32FD-NEXT: ret
127 ; RV32-ILP32FD-LABEL: callee_float_on_stack_exhausted_gprs_fprs:
128 ; RV32-ILP32FD: # %bb.0:
129 ; RV32-ILP32FD-NEXT: flw ft0, 0(sp)
130 ; RV32-ILP32FD-NEXT: fcvt.w.s a0, ft0, rtz
131 ; RV32-ILP32FD-NEXT: add a0, a6, a0
132 ; RV32-ILP32FD-NEXT: ret
140 ; RV32-ILP32FD-LABEL: caller_float_on_stack_exhausted_gprs_fprs:
141 ; RV32-ILP32FD: # %bb.0:
142 ; RV32-ILP32FD-NEXT: addi sp, sp, -16
143 ; RV32-ILP32FD-NEXT: sw ra, 12(sp)
144 ; RV32-ILP32FD-NEXT: lui a1, 267520
145 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_0)
146 ; RV32-ILP32FD-NEXT: flw fa0, %lo(.LCPI7_0)(a0)
147 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_1)
148 ; RV32-ILP32FD-NEXT: flw fa1, %lo(.LCPI7_1)(a0)
149 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_2)
150 ; RV32-ILP32FD-NEXT: flw fa2, %lo(.LCPI7_2)(a0)
151 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_3)
152 ; RV32-ILP32FD-NEXT: flw fa3, %lo(.LCPI7_3)(a0)
153 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_4)
154 ; RV32-ILP32FD-NEXT: flw fa4, %lo(.LCPI7_4)(a0)
155 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_5)
156 ; RV32-ILP32FD-NEXT: flw fa5, %lo(.LCPI7_5)(a0)
157 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_6)
158 ; RV32-ILP32FD-NEXT: flw fa6, %lo(.LCPI7_6)(a0)
159 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI7_7)
160 ; RV32-ILP32FD-NEXT: flw fa7, %lo(.LCPI7_7)(a0)
161 ; RV32-ILP32FD-NEXT: addi a0, zero, 1
162 ; RV32-ILP32FD-NEXT: addi a2, zero, 3
163 ; RV32-ILP32FD-NEXT: addi a4, zero, 5
164 ; RV32-ILP32FD-NEXT: addi a6, zero, 7
165 ; RV32-ILP32FD-NEXT: sw a1, 0(sp)
166 ; RV32-ILP32FD-NEXT: mv a1, zero
167 ; RV32-ILP32FD-NEXT: mv a3, zero
168 ; RV32-ILP32FD-NEXT: mv a5, zero
169 ; RV32-ILP32FD-NEXT: mv a7, zero
170 ; RV32-ILP32FD-NEXT: call callee_float_on_stack_exhausted_gprs_fprs
171 ; RV32-ILP32FD-NEXT: lw ra, 12(sp)
172 ; RV32-ILP32FD-NEXT: addi sp, sp, 16
173 ; RV32-ILP32FD-NEXT: ret
181 ; RV32-ILP32FD-LABEL: callee_float_ret:
182 ; RV32-ILP32FD: # %bb.0:
183 ; RV32-ILP32FD-NEXT: lui a0, %hi(.LCPI8_0)
184 ; RV32-ILP32FD-NEXT: flw fa0, %lo(.LCPI8_0)(a0)
185 ; RV32-ILP32FD-NEXT: ret
190 ; RV32-ILP32FD-LABEL: caller_float_ret:
191 ; RV32-ILP32FD: # %bb.0:
192 ; RV32-ILP32FD-NEXT: addi sp, sp, -16
193 ; RV32-ILP32FD-NEXT: sw ra, 12(sp)
194 ; RV32-ILP32FD-NEXT: call callee_float_ret
195 ; RV32-ILP32FD-NEXT: fmv.x.w a0, fa0
196 ; RV32-ILP32FD-NEXT: lw ra, 12(sp)
197 ; RV32-ILP32FD-NEXT: addi sp, sp, 16
198 ; RV32-ILP32FD-NEXT: ret