@@ -82,14 +82,8 @@ C_FUNC(\Name\()_End):
82
82
83
83
// //NOTE : reg1 and reg2 must be the number and GPR type !!!
84
84
.macro PROLOG_SAVE_REG_PAIR reg1, reg2, ofs, __def_cfa_save= 0
85
- // #ifdef FEATURE_LOONGSONISA
86
- // //NOTE:The offset of gssq/gslq must be 16-bytes aligned.
87
- // // here ofs must be 16-bytes aligned.
88
- // gssq \reg2, \reg1, \ofs(sp)
89
- // #else
90
85
st.d $r\reg1, $sp, \ofs
91
86
st.d $r\reg2, $sp, \ofs+ 8
92
- // #endif
93
87
94
88
.cfi_rel_offset \reg1, \ofs
95
89
.cfi_rel_offset \reg2, \ofs + 8
@@ -123,23 +117,15 @@ C_FUNC(\Name\()_End):
123
117
.endm
124
118
125
119
.macro EPILOG_RESTORE_REG_PAIR reg1, reg2, ofs
126
- // #ifdef FEATURE_LOONGSONISA
127
- // gslq \reg2, \reg1, \ofs(sp)
128
- // #else
129
120
ld.d $r\reg2, $sp, \ofs+ 8
130
121
ld.d $r\reg1, $sp, \ofs
131
- // #endif
132
122
.cfi_restore \reg2
133
123
.cfi_restore \reg1
134
124
.endm
135
125
136
126
.macro EPILOG_RESTORE_REG_PAIR_INDEXED reg1, reg2, ssize
137
- // #ifdef FEATURE_LOONGSONISA
138
- // gslq \reg2, \reg1, 0(sp)
139
- // #else
140
127
ld.d $r\reg2, $sp, 8
141
128
ld.d $r\reg1, $sp, 0
142
- // #endif
143
129
.cfi_restore \reg2
144
130
.cfi_restore \reg1
145
131
@@ -183,14 +169,6 @@ C_FUNC(\Name\()_End):
183
169
// Reserve 64 bytes of memory before calling SAVE_ARGUMENT_REGISTERS
184
170
.macro SAVE_ARGUMENT_REGISTERS reg, ofs
185
171
186
- // #ifdef FEATURE_LOONGSONISA
187
- // //NOTE:The offset of gssq/gslq must be 16-bytes aligned.
188
- // // here ofs must be 16-bytes aligned.
189
- // gssq a1, a0, \ofs(\reg)
190
- // gssq a3, a2, \ofs+16(\reg)
191
- // gssq a5, a4, \ofs+32(\reg)
192
- // gssq a7, a6, \ofs+48(\reg)
193
- // #else
194
172
st.d $a0, \reg, \ofs
195
173
st.d $a1, \reg, \ofs+ 8
196
174
st.d $a2, \reg, \ofs+ 16
@@ -199,21 +177,12 @@ C_FUNC(\Name\()_End):
199
177
st.d $a5, \reg, \ofs+ 40
200
178
st.d $a6, \reg, \ofs+ 48
201
179
st.d $a7, \reg, \ofs+ 56
202
- // #endif
203
180
204
181
.endm
205
182
206
183
// Reserve 64 bytes of memory before calling SAVE_FLOAT_ARGUMENT_REGISTERS
207
184
.macro SAVE_FLOAT_ARGUMENT_REGISTERS reg, ofs
208
185
209
- // #ifdef FEATURE_LOONGSONISA
210
- // //NOTE:The offset of gssqc1/gslqc1 must be 16-bytes aligned.
211
- // // here ofs must be 16-bytes aligned.
212
- // gssqc1 $f13, $f12, \ofs(\reg)
213
- // gssqc1 $f15, $f14, \ofs+16(\reg)
214
- // gssqc1 $f17, $f16, \ofs+32(\reg)
215
- // gssqc1 $f19, $f18, \ofs+48(\reg)
216
- // #else
217
186
fst.d $f0, \reg, \ofs
218
187
fst.d $f1, \reg, \ofs+ 8
219
188
fst.d $f2, \reg, \ofs+ 16
@@ -222,21 +191,12 @@ C_FUNC(\Name\()_End):
222
191
fst.d $f5, \reg, \ofs+ 40
223
192
fst.d $f6, \reg, \ofs+ 48
224
193
fst.d $f7, \reg, \ofs+ 56
225
- // #endif
226
194
227
195
.endm
228
196
229
197
// Reserve 64 bytes of memory before calling SAVE_FLOAT_CALLEESAVED_REGISTERS
230
198
.macro SAVE_FLOAT_CALLEESAVED_REGISTERS reg, ofs
231
199
232
- // #ifdef FEATURE_LOONGSONISA
233
- // //NOTE:The offset of gssqc1/gslqc1 must be 16-bytes aligned.
234
- // // here ofs must be 16-bytes aligned.
235
- // gssqc1 $f25, $f24, \ofs(\reg)
236
- // gssqc1 $f27, $f26, \ofs+16(\reg)
237
- // gssqc1 $f29, $f28, \ofs+32(\reg)
238
- // gssqc1 $f31, $f30, \ofs+48(\reg)
239
- // #else
240
200
fst.d $f24, \reg, \ofs
241
201
fst.d $f25, \reg, \ofs+ 8
242
202
fst.d $f26, \reg, \ofs+ 16
@@ -245,7 +205,6 @@ C_FUNC(\Name\()_End):
245
205
fst.d $f29, \reg, \ofs+ 40
246
206
fst.d $f30, \reg, \ofs+ 48
247
207
fst.d $f31, \reg, \ofs+ 56
248
- // #endif
249
208
250
209
.endm
251
210
@@ -260,14 +219,6 @@ C_FUNC(\Name\()_End):
260
219
261
220
.macro RESTORE_ARGUMENT_REGISTERS reg, ofs
262
221
263
- // #ifdef FEATURE_LOONGSONISA
264
- // //NOTE:The offset of gssq/gslq must be 16-bytes aligned.
265
- // // here ofs must be 16-bytes aligned.
266
- // gslq a7, a6, \ofs+48(\reg)
267
- // gslq a5, a4, \ofs+32(\reg)
268
- // gslq a3, a2, \ofs+16(\reg)
269
- // gslq a1, a0, \ofs(\reg)
270
- // #else
271
222
ld.d $a7, \reg, \ofs+ 56
272
223
ld.d $a6, \reg, \ofs+ 48
273
224
ld.d $a5, \reg, \ofs+ 40
@@ -276,18 +227,11 @@ C_FUNC(\Name\()_End):
276
227
ld.d $a2, \reg, \ofs+ 16
277
228
ld.d $a1, \reg, \ofs+ 8
278
229
ld.d $a0, \reg, \ofs
279
- // #endif
280
230
281
231
.endm
282
232
283
233
.macro RESTORE_FLOAT_ARGUMENT_REGISTERS reg, ofs
284
234
285
- // #ifdef FEATURE_LOONGSONISA
286
- // gslqc1 $f19, $f18, \ofs+48(\reg)
287
- // gslqc1 $f17, $f16, \ofs+32(\reg)
288
- // gslqc1 $f15, $f14, \ofs+16(\reg)
289
- // gslqc1 $f13, $f12, \ofs(\reg)
290
- // #else
291
235
fld.d $f7, \reg, \ofs+ 56
292
236
fld.d $f6, \reg, \ofs+ 48
293
237
fld.d $f5, \reg, \ofs+ 40
@@ -296,20 +240,11 @@ C_FUNC(\Name\()_End):
296
240
fld.d $f2, \reg, \ofs+ 16
297
241
fld.d $f1, \reg, \ofs+ 8
298
242
fld.d $f0, \reg, \ofs
299
- // #endif
300
243
301
244
.endm
302
245
303
246
.macro RESTORE_FLOAT_CALLEESAVED_REGISTERS reg, ofs
304
247
305
- // #ifdef FEATURE_LOONGSONISA
306
- // //NOTE:The offset of gssqc1/gslqc1 must be 16-bytes aligned.
307
- // // here ofs must be 16-bytes aligned.
308
- // gslqc1 $f25, $f24, \ofs(\reg)
309
- // gslqc1 $f27, $f26, \ofs+16(\reg)
310
- // gslqc1 $f29, $f28, \ofs+32(\reg)
311
- // gslqc1 $f31, $f30, \ofs+48(\reg)
312
- // #else
313
248
fld.d $f24, $r\reg, \ofs
314
249
fld.d $f25, $r\reg, \ofs+ 8
315
250
fld.d $f26, $r\reg, \ofs+ 16
@@ -318,7 +253,6 @@ C_FUNC(\Name\()_End):
318
253
fld.d $f29, $r\reg, \ofs+ 40
319
254
fld.d $f30, $r\reg, \ofs+ 48
320
255
fld.d $f31, $r\reg, \ofs+ 56
321
- // #endif
322
256
323
257
.endm
324
258
0 commit comments