2
0
mirror of git://gcc.gnu.org/git/gcc.git synced 2024-12-27 01:49:24 +08:00
gcc/boehm-gc/mips_sgi_mach_dep.S
Bryce McKinlay ca77b9e123 dbg_mlc.c (GC_debug_generic_malloc): Removed.
* dbg_mlc.c (GC_debug_generic_malloc): Removed.

	* sparc_mach_dep.S: Rename from sparc_mach_dep.s as it is a
	preprocessor file.
	* mips_sgi_mach_dep.S: Likewise.
	* Makefile.am: Update for above changes.
	* Makefile.in: Rebuilt.

From-SVN: r49720
2002-02-13 05:38:39 +00:00

42 lines
949 B
ArmAsm

#include <sys/regdef.h>
#include <sys/asm.h>
# define call_push(x) move $4,x; jal GC_push_one
.option pic2
.text
/* Mark from machine registers that are saved by C compiler */
# define FRAMESZ 32
# define RAOFF FRAMESZ-SZREG
# define GPOFF FRAMESZ-(2*SZREG)
NESTED(GC_push_regs, FRAMESZ, ra)
.mask 0x80000000,-SZREG # inform debugger of saved ra loc
move t0,gp
SETUP_GPX(t8)
PTR_SUBU sp,FRAMESZ
# ifdef SETUP_GP64
SETUP_GP64(GPOFF, GC_push_regs)
# endif
SAVE_GP(GPOFF)
REG_S ra,RAOFF(sp)
# if (_MIPS_SIM == _MIPS_SIM_ABI32)
call_push($2)
call_push($3)
# endif
call_push($16)
call_push($17)
call_push($18)
call_push($19)
call_push($20)
call_push($21)
call_push($22)
call_push($23)
call_push($30)
REG_L ra,RAOFF(sp)
# ifdef RESTORE_GP64
RESTORE_GP64
# endif
PTR_ADDU sp,FRAMESZ
j ra
.end GC_push_regs