]> gcc.gnu.org Git - gcc.git/blame - boehm-gc/mips_sgi_mach_dep.S
dbg_mlc.c (GC_debug_generic_malloc): Removed.
[gcc.git] / boehm-gc / mips_sgi_mach_dep.S
CommitLineData
ca77b9e1
BM
1#include <sys/regdef.h>
2#include <sys/asm.h>
3
4# define call_push(x) move $4,x; jal GC_push_one
5
6 .option pic2
7 .text
8/* Mark from machine registers that are saved by C compiler */
9# define FRAMESZ 32
10# define RAOFF FRAMESZ-SZREG
11# define GPOFF FRAMESZ-(2*SZREG)
12 NESTED(GC_push_regs, FRAMESZ, ra)
13 .mask 0x80000000,-SZREG # inform debugger of saved ra loc
14 move t0,gp
15 SETUP_GPX(t8)
16 PTR_SUBU sp,FRAMESZ
17# ifdef SETUP_GP64
18 SETUP_GP64(GPOFF, GC_push_regs)
19# endif
20 SAVE_GP(GPOFF)
21 REG_S ra,RAOFF(sp)
22# if (_MIPS_SIM == _MIPS_SIM_ABI32)
23 call_push($2)
24 call_push($3)
25# endif
26 call_push($16)
27 call_push($17)
28 call_push($18)
29 call_push($19)
30 call_push($20)
31 call_push($21)
32 call_push($22)
33 call_push($23)
34 call_push($30)
35 REG_L ra,RAOFF(sp)
36# ifdef RESTORE_GP64
37 RESTORE_GP64
38# endif
39 PTR_ADDU sp,FRAMESZ
40 j ra
41 .end GC_push_regs
This page took 0.025319 seconds and 5 git commands to generate.