Go to the documentation of this file.
34 #if SIZEOF_VOID_P == 8
193 #if SIZEOF_VOID_P == 8
198 #define aaddiu daddiu
226 #if SIZEOF_VOID_P == 8
228 #define SAVE_ARGUMENT_REGISTERS(off) \
229 sd a0,(0+(off))*8(sp) ; \
230 sd a1,(1+(off))*8(sp) ; \
231 sd a2,(2+(off))*8(sp) ; \
232 sd a3,(3+(off))*8(sp) ; \
233 sd a4,(4+(off))*8(sp) ; \
234 sd a5,(5+(off))*8(sp) ; \
235 sd a6,(6+(off))*8(sp) ; \
236 sd a7,(7+(off))*8(sp) ; \
238 s.d fa0,(8+(off))*8(sp) ; \
239 s.d fa1,(9+(off))*8(sp) ; \
240 s.d fa2,(10+(off))*8(sp); \
241 s.d fa3,(11+(off))*8(sp); \
242 s.d fa4,(12+(off))*8(sp); \
243 s.d fa5,(13+(off))*8(sp); \
244 s.d fa6,(14+(off))*8(sp); \
245 s.d fa7,(15+(off))*8(sp);
247 #define RESTORE_ARGUMENT_REGISTERS(off) \
248 ld a0,(0+(off))*8(sp) ; \
249 ld a1,(1+(off))*8(sp) ; \
250 ld a2,(2+(off))*8(sp) ; \
251 ld a3,(3+(off))*8(sp) ; \
252 ld a4,(4+(off))*8(sp) ; \
253 ld a5,(5+(off))*8(sp) ; \
254 ld a6,(6+(off))*8(sp) ; \
255 ld a7,(7+(off))*8(sp) ; \
257 l.d fa0,(8+(off))*8(sp); \
258 l.d fa1,(9+(off))*8(sp); \
259 l.d fa2,(10+(off))*8(sp); \
260 l.d fa3,(11+(off))*8(sp); \
261 l.d fa4,(12+(off))*8(sp); \
262 l.d fa5,(13+(off))*8(sp); \
263 l.d fa6,(14+(off))*8(sp); \
264 l.d fa7,(15+(off))*8(sp);
267 #define SAVE_TEMPORARY_REGISTERS(off) \
268 sd t0,(0+(off))*8(sp) ; \
269 sd t1,(1+(off))*8(sp) ; \
270 sd t2,(2+(off))*8(sp) ; \
271 sd t3,(3+(off))*8(sp) ; \
272 sd t4,(4+(off))*8(sp) ; \
274 s.d ft3,(5+(off))*8(sp) ; \
275 s.d ft4,(6+(off))*8(sp) ; \
276 s.d ft5,(7+(off))*8(sp) ; \
277 s.d ft6,(8+(off))*8(sp) ; \
278 s.d ft7,(9+(off))*8(sp) ; \
279 s.d ft8,(10+(off))*8(sp) ; \
280 s.d ft9,(11+(off))*8(sp) ; \
281 s.d ft10,(12+(off))*8(sp) ; \
282 s.d ft11,(13+(off))*8(sp) ; \
283 s.d ft12,(14+(off))*8(sp) ; \
284 s.d ft13,(15+(off))*8(sp) ; \
285 s.d ft14,(16+(off))*8(sp) ; \
286 s.d ft15,(17+(off))*8(sp) ; \
287 s.d ft16,(18+(off))*8(sp) ; \
288 s.d ft17,(19+(off))*8(sp) ; \
289 s.d ft18,(20+(off))*8(sp) ;
291 #define RESTORE_TEMPORARY_REGISTERS(off) \
292 ld t0,(0+(off))*8(sp) ; \
293 ld t1,(1+(off))*8(sp) ; \
294 ld t2,(2+(off))*8(sp) ; \
295 ld t3,(3+(off))*8(sp) ; \
296 ld t4,(4+(off))*8(sp) ; \
298 l.d ft3,(5+(off))*8(sp) ; \
299 l.d ft4,(6+(off))*8(sp) ; \
300 l.d ft5,(7+(off))*8(sp) ; \
301 l.d ft6,(8+(off))*8(sp) ; \
302 l.d ft7,(9+(off))*8(sp) ; \
303 l.d ft8,(10+(off))*8(sp) ; \
304 l.d ft9,(11+(off))*8(sp) ; \
305 l.d ft10,(12+(off))*8(sp) ; \
306 l.d ft11,(13+(off))*8(sp) ; \
307 l.d ft12,(14+(off))*8(sp) ; \
308 l.d ft13,(15+(off))*8(sp) ; \
309 l.d ft14,(16+(off))*8(sp) ; \
310 l.d ft15,(17+(off))*8(sp) ; \
311 l.d ft16,(18+(off))*8(sp) ; \
312 l.d ft17,(19+(off))*8(sp) ; \
313 l.d ft18,(20+(off))*8(sp) ;
317 #define SAVE_ARGUMENT_REGISTERS(off) \
318 sw a0,(0+(off))*4(sp) ; \
319 sw a1,(1+(off))*4(sp) ; \
320 sw a2,(2+(off))*4(sp) ; \
321 sw a3,(3+(off))*4(sp) ; \
322 s.d fa0,(4+(off))*4(sp) ; \
323 s.d fa1,(6+(off))*4(sp) ;
325 #define RESTORE_ARGUMENT_REGISTERS(off) \
326 lw a0,(0+(off))*4(sp) ; \
327 lw a1,(1+(off))*4(sp) ; \
328 lw a2,(2+(off))*4(sp) ; \
329 lw a3,(3+(off))*4(sp) ; \
330 l.d fa0,(4+(off))*4(sp) ; \
331 l.d fa1,(6+(off))*4(sp) ;
334 #define SAVE_TEMPORARY_REGISTERS(off) \
335 sw t0,(0+(off))*4(sp) ; \
336 sw t1,(1+(off))*4(sp) ; \
337 sw t2,(2+(off))*4(sp) ; \
338 sw t3,(3+(off))*4(sp) ; \
339 sw t4,(4+(off))*4(sp) ; \
340 sw t5,(5+(off))*4(sp) ; \
341 sw t6,(6+(off))*4(sp) ; \
342 sw t7,(7+(off))*4(sp) ; \
343 s.d ft0,(8+(off))*4(sp) ; \
344 s.d ft1,(10+(off))*4(sp) ; \
345 s.d ft2,(12+(off))*4(sp) ; \
346 s.d ft3,(14+(off))*4(sp) ;
348 #define RESTORE_TEMPORARY_REGISTERS(off) \
349 lw t0,(0+(off))*4(sp) ; \
350 lw t1,(1+(off))*4(sp) ; \
351 lw t2,(2+(off))*4(sp) ; \
352 lw t3,(3+(off))*4(sp) ; \
353 lw t4,(4+(off))*4(sp) ; \
354 lw t5,(5+(off))*4(sp) ; \
355 lw t6,(6+(off))*4(sp) ; \
356 lw t7,(7+(off))*4(sp) ; \
357 l.d ft0,(8+(off))*4(sp) ; \
358 l.d ft1,(10+(off))*4(sp) ; \
359 l.d ft2,(12+(off))*4(sp) ; \
360 l.d ft3,(14+(off))*4(sp) ;
364 #endif // MD_ASM_HPP_