pkgsrc/devel/boehm-gc/patches/patch-ac
1998-09-06 16:06:58 +00:00

157 lines
4.3 KiB
Text

$NetBSD: patch-ac,v 1.1 1998/09/06 16:06:58 christos Exp $
*** config.h.orig Wed Aug 20 20:01:31 1997
--- config.h Sun Sep 6 10:23:41 1998
***************
*** 92,98 ****
# endif
# if defined(sparc) && defined(unix) && !defined(sun)
# define SPARC
! # define DRSNX
# define mach_type_known
# endif
# if defined(_IBMR2)
--- 92,102 ----
# endif
# if defined(sparc) && defined(unix) && !defined(sun)
# define SPARC
! # if defined(__NetBSD__)
! # define SUNOS4 /* XXX */
! # else
! # define DRSNX
! # endif
# define mach_type_known
# endif
# if defined(_IBMR2)
*** dyn_load.c.orig Sun Sep 6 10:37:47 1998
--- dyn_load.c Sun Sep 6 10:58:20 1998
***************
*** 62,67 ****
--- 62,99 ----
#endif
#ifdef SUNOS4
# include <dlfcn.h>
+ # ifdef __NetBSD__
+ # include <nlist.h>
+ # define link_dynamic _dynamic
+ # define link_dynamic_2 section_dispatch_table
+ # define ld_2 d_sdt
+ # define ld_1 d_sdt
+ # define ld_version d_version
+ # define ld_un d_un
+
+ # define ldd d_debug
+ # define ldd_cp dd_cc
+
+ # define rtc_symb rt_symbol
+ # define rtc_next rt_next
+ # define rtc_sp rt_sp->nlist
+ # define RTC_DEREF .
+
+ # define ld_loaded sdt_loaded
+ # define ld_stab sdt_nzlist
+ # define ld_symbols sdt_strings
+ # define ld_symb_size sdt_str_sz
+ # define ld_loaded sdt_loaded
+
+
+ # define link_map so_map
+ # define lm_addr som_addr
+ # define lm_next som_next
+ # define lm_ld som_dynamic
+ # define lm_name som_path
+ # else
+ # define RTC_DEREF ->
+ # endif
# include <link.h>
# include <a.out.h>
/* struct link_map field overrides */
***************
*** 150,157 ****
curr_symbol = _DYNAMIC.ldd -> ldd_cp;
for (; curr_symbol != 0; curr_symbol = curr_symbol -> rtc_next) {
if (result == 0
! || (ptr_t)(curr_symbol -> rtc_sp -> n_value) < result) {
! result = (ptr_t)(curr_symbol -> rtc_sp -> n_value);
}
}
return(result);
--- 184,191 ----
curr_symbol = _DYNAMIC.ldd -> ldd_cp;
for (; curr_symbol != 0; curr_symbol = curr_symbol -> rtc_next) {
if (result == 0
! || (ptr_t)(curr_symbol -> rtc_sp RTC_DEREF n_value) < result) {
! result = (ptr_t)(curr_symbol -> rtc_sp RTC_DEREF n_value);
}
}
return(result);
*** mach_dep.c.orig Wed Aug 20 19:11:03 1997
--- mach_dep.c Sun Sep 6 10:19:54 1998
***************
*** 347,353 ****
--- 347,357 ----
# ifdef SVR4
asm(" .globl GC_save_regs_in_stack");
asm("GC_save_regs_in_stack:");
+ # ifdef __NetBSD__
+ asm(" .type GC_save_regs_in_stack,@function");
+ # else
asm(" .type GC_save_regs_in_stack,#function");
+ # endif
# else
asm(" .globl _GC_save_regs_in_stack");
asm("_GC_save_regs_in_stack:");
***************
*** 380,386 ****
--- 384,394 ----
# else
asm(".globl GC_clear_stack_inner");
asm("GC_clear_stack_inner:");
+ #ifdef __NetBSD__
+ asm(".type GC_save_regs_in_stack,@function");
+ #else
asm(".type GC_save_regs_in_stack,#function");
+ #endif
# endif
asm("mov %sp,%o2"); /* Save sp */
asm("add %sp,-8,%o3"); /* p = sp-8 */
*** os_dep.c.orig Sun Sep 6 10:27:43 1998
--- os_dep.c Sun Sep 6 10:35:24 1998
***************
*** 1390,1398 ****
char * addr;
# ifdef SUNOS4
# define SIG_OK (sig == SIGSEGV || sig == SIGBUS)
! # define CODE_OK (FC_CODE(code) == FC_PROT \
|| (FC_CODE(code) == FC_OBJERR \
&& FC_ERRNO(code) == FC_PROT))
# endif
# ifdef FREEBSD
# define SIG_OK (sig == SIGBUS)
--- 1390,1402 ----
char * addr;
# ifdef SUNOS4
# define SIG_OK (sig == SIGSEGV || sig == SIGBUS)
! # if defined(__NetBSD__)
! # define CODE_OK TRUE
! # else
! # define CODE_OK (FC_CODE(code) == FC_PROT \
|| (FC_CODE(code) == FC_OBJERR \
&& FC_ERRNO(code) == FC_PROT))
+ # endif
# endif
# ifdef FREEBSD
# define SIG_OK (sig == SIGBUS)
***************
*** 2093,2098 ****
--- 2097,2106 ----
#if defined(SPARC)
# if defined(SUNOS4)
# include <machine/frame.h>
+ # if defined(__NetBSD__)
+ # define fr_savpc fr_pc
+ # define fr_savfp fr_fp
+ # endif
# else
# if defined (DRSNX)
# include <sys/sparc/frame.h>