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
This commit is contained in:
parent
0ec4e2a87f
commit
ca77b9e123
@ -1,3 +1,13 @@
|
||||
2002-02-13 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
|
||||
|
||||
* 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.
|
||||
|
||||
2002-02-12 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* configure.in: Re-apply 2001-06-26 configure change.
|
||||
|
@ -39,8 +39,8 @@ libgcjgc_la_DEPENDENCIES = @addobjs@
|
||||
libgcjgc_la_LDFLAGS = -version-info 1:1:0 -rpath $(toolexeclibdir)
|
||||
|
||||
EXTRA_libgcjgc_la_SOURCES = alpha_mach_dep.s \
|
||||
mips_sgi_mach_dep.s mips_ultrix_mach_dep.s powerpc_macosx_mach_dep.s \
|
||||
rs6000_mach_dep.s sparc_mach_dep.s sparc_netbsd_mach_dep.s \
|
||||
mips_sgi_mach_dep.S mips_ultrix_mach_dep.s powerpc_macosx_mach_dep.s \
|
||||
rs6000_mach_dep.s sparc_mach_dep.S sparc_netbsd_mach_dep.s \
|
||||
sparc_sunos4_mach_dep.s ia64_save_regs_in_stack.s
|
||||
|
||||
AM_CXXFLAGS = @GC_CFLAGS@
|
||||
|
@ -124,8 +124,8 @@ libgcjgc_la_DEPENDENCIES = @addobjs@
|
||||
libgcjgc_la_LDFLAGS = -version-info 1:1:0 -rpath $(toolexeclibdir)
|
||||
|
||||
EXTRA_libgcjgc_la_SOURCES = alpha_mach_dep.s \
|
||||
mips_sgi_mach_dep.s mips_ultrix_mach_dep.s powerpc_macosx_mach_dep.s \
|
||||
rs6000_mach_dep.s sparc_mach_dep.s sparc_netbsd_mach_dep.s \
|
||||
mips_sgi_mach_dep.S mips_ultrix_mach_dep.s powerpc_macosx_mach_dep.s \
|
||||
rs6000_mach_dep.s sparc_mach_dep.S sparc_netbsd_mach_dep.s \
|
||||
sparc_sunos4_mach_dep.s ia64_save_regs_in_stack.s
|
||||
|
||||
|
||||
|
@ -429,35 +429,6 @@ void GC_start_debugging()
|
||||
return (GC_store_debug_info(result, (word)lb, s, (word)i));
|
||||
}
|
||||
|
||||
# ifdef __STDC__
|
||||
GC_PTR GC_debug_generic_malloc(size_t lb, int k, GC_EXTRA_PARAMS)
|
||||
# else
|
||||
GC_PTR GC_debug_malloc(lb, k, s, i)
|
||||
size_t lb;
|
||||
int k;
|
||||
char * s;
|
||||
int i;
|
||||
# ifdef GC_ADD_CALLER
|
||||
--> GC_ADD_CALLER not implemented for K&R C
|
||||
# endif
|
||||
# endif
|
||||
{
|
||||
GC_PTR result = GC_generic_malloc(lb + DEBUG_BYTES, k);
|
||||
|
||||
if (result == 0) {
|
||||
GC_err_printf1("GC_debug_malloc(%ld) returning NIL (",
|
||||
(unsigned long) lb);
|
||||
GC_err_puts(s);
|
||||
GC_err_printf1(":%ld)\n", (unsigned long)i);
|
||||
return(0);
|
||||
}
|
||||
if (!GC_debugging_started) {
|
||||
GC_start_debugging();
|
||||
}
|
||||
ADD_CALL_CHAIN(result, ra);
|
||||
return (GC_store_debug_info(result, (word)lb, s, (word)i));
|
||||
}
|
||||
|
||||
# ifdef DBG_HDRS_ALL
|
||||
/*
|
||||
* An allocation function for internal use.
|
||||
|
41
boehm-gc/mips_sgi_mach_dep.S
Normal file
41
boehm-gc/mips_sgi_mach_dep.S
Normal file
@ -0,0 +1,41 @@
|
||||
#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
|
67
boehm-gc/sparc_mach_dep.S
Normal file
67
boehm-gc/sparc_mach_dep.S
Normal file
@ -0,0 +1,67 @@
|
||||
! SPARCompiler 3.0 and later apparently no longer handles
|
||||
! asm outside functions. So we need a separate .s file
|
||||
! This is only set up for SunOS 5, not SunOS 4.
|
||||
! Assumes this is called before the stack contents are
|
||||
! examined.
|
||||
|
||||
.seg "text"
|
||||
.globl GC_save_regs_in_stack
|
||||
.globl GC_push_regs
|
||||
GC_save_regs_in_stack:
|
||||
GC_push_regs:
|
||||
#if defined(__arch64__) || defined(__sparcv9)
|
||||
save %sp,-128,%sp
|
||||
flushw
|
||||
ret
|
||||
restore %sp,2047+128,%o0
|
||||
#else /* 32 bit SPARC */
|
||||
ta 0x3 ! ST_FLUSH_WINDOWS
|
||||
mov %sp,%o0
|
||||
retl
|
||||
nop
|
||||
#endif /* 32 bit SPARC */
|
||||
.GC_save_regs_in_stack_end:
|
||||
.size GC_save_regs_in_stack,.GC_save_regs_in_stack_end-GC_save_regs_in_stack
|
||||
|
||||
|
||||
.globl GC_clear_stack_inner
|
||||
GC_clear_stack_inner:
|
||||
#if defined(__arch64__) || defined(__sparcv9)
|
||||
mov %sp,%o2 ! Save sp
|
||||
add %sp,2047-8,%o3 ! p = sp+bias-8
|
||||
add %o1,-2047-192,%sp ! Move sp out of the way,
|
||||
! so that traps still work.
|
||||
! Includes some extra words
|
||||
! so we can be sloppy below.
|
||||
loop:
|
||||
stx %g0,[%o3] ! *(long *)p = 0
|
||||
cmp %o3,%o1
|
||||
bgu,pt %xcc, loop ! if (p > limit) goto loop
|
||||
asm("add %o3,-8,%o3 ! p -= 8 (delay slot)
|
||||
retl
|
||||
mov %o2,%sp ! Restore sp., delay slot
|
||||
#else /* 32 bit SPARC */
|
||||
mov %sp,%o2 ! Save sp
|
||||
add %sp,-8,%o3 ! p = sp-8
|
||||
clr %g1 ! [g0,g1] = 0
|
||||
add %o1,-0x60,%sp ! Move sp out of the way,
|
||||
! so that traps still work.
|
||||
! Includes some extra words
|
||||
! so we can be sloppy below.
|
||||
loop:
|
||||
std %g0,[%o3] ! *(long long *)p = 0
|
||||
cmp %o3,%o1
|
||||
bgu loop ! if (p > limit) goto loop
|
||||
add %o3,-8,%o3 ! p -= 8 (delay slot)
|
||||
retl
|
||||
mov %o2,%sp ! Restore sp., delay slot
|
||||
#endif /* 32 bit SPARC */
|
||||
.GC_clear_stack_inner_end:
|
||||
.size GC_clear_stack_inner,.GC_clear_stack_inner_end-GC_clear_stack_inner
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user