From 6656fda37b7354784b395dffbdd4049c441b4e99 Mon Sep 17 00:00:00 2001 From: Andreas Tobler <a.tobler@schweiz.org> Date: Tue, 19 Feb 2008 21:29:26 +0000 Subject: [PATCH] dyn_load.c (GC_dyld_image_add): Remove ifdef clause and use the macro GC_GETSECTBYNAME instead. 2007-02-19 Andreas Tobler <a.tobler@schweiz.org> * dyn_load.c (GC_dyld_image_add): Remove ifdef clause and use the macro GC_GETSECTBYNAME instead. * include/private/gc_priv.h: Define GC_GETSECTBYNAME according to the architecture (Darwin). From-SVN: r132452 --- boehm-gc/ChangeLog | 7 +++++++ boehm-gc/dyn_load.c | 17 +++++------------ boehm-gc/include/private/gc_priv.h | 12 ++++++++---- 3 files changed, 20 insertions(+), 16 deletions(-) diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index 79eb91abb1e4..da28024df175 100644 --- a/boehm-gc/ChangeLog +++ b/boehm-gc/ChangeLog @@ -1,3 +1,10 @@ +2007-02-19 Andreas Tobler <a.tobler@schweiz.org> + + * dyn_load.c (GC_dyld_image_add): Remove ifdef clause and use the macro + GC_GETSECTBYNAME instead. + * include/private/gc_priv.h: Define GC_GETSECTBYNAME according to the + architecture (Darwin). + 2008-01-26 Richard Sandiford <rsandifo@nildram.co.uk> * include/private/gcconfig.h (HBLKSIZE): Define for MIPS. diff --git a/boehm-gc/dyn_load.c b/boehm-gc/dyn_load.c index 27c1b07387aa..f205be2823d1 100644 --- a/boehm-gc/dyn_load.c +++ b/boehm-gc/dyn_load.c @@ -1168,12 +1168,9 @@ static void GC_dyld_image_add(const struct GC_MACH_HEADER *hdr, intptr_t slide) const struct GC_MACH_SECTION *sec; if (GC_no_dls) return; for(i=0;i<sizeof(GC_dyld_sections)/sizeof(GC_dyld_sections[0]);i++) { -# if defined (__LP64__) - sec = getsectbynamefromheader_64( -# else - sec = getsectbynamefromheader( -# endif - hdr,GC_dyld_sections[i].seg,GC_dyld_sections[i].sect); + + sec = GC_GETSECTBYNAME (hdr, GC_dyld_sections[i].seg, + GC_dyld_sections[i].sect); if(sec == NULL || sec->size == 0) continue; start = slide + sec->addr; end = start + sec->size; @@ -1194,12 +1191,8 @@ static void GC_dyld_image_remove(const struct GC_MACH_HEADER *hdr, unsigned long start,end,i; const struct GC_MACH_SECTION *sec; for(i=0;i<sizeof(GC_dyld_sections)/sizeof(GC_dyld_sections[0]);i++) { -# if defined (__LP64__) - sec = getsectbynamefromheader_64( -# else - sec = getsectbynamefromheader( -# endif - hdr,GC_dyld_sections[i].seg,GC_dyld_sections[i].sect); + sec = GC_GETSECTBYNAME (hdr, GC_dyld_sections[i].seg, + GC_dyld_sections[i].sect); if(sec == NULL || sec->size == 0) continue; start = slide + sec->addr; end = start + sec->size; diff --git a/boehm-gc/include/private/gc_priv.h b/boehm-gc/include/private/gc_priv.h index 41c75d3bb62c..fdebe3688a52 100644 --- a/boehm-gc/include/private/gc_priv.h +++ b/boehm-gc/include/private/gc_priv.h @@ -472,16 +472,18 @@ extern GC_warn_proc GC_current_warn_proc; # if defined(POWERPC) # if CPP_WORDSZ == 32 # define GC_THREAD_STATE_T ppc_thread_state_t -# define GC_MACH_THREAD_STATE PPC_THREAD_STATE -# define GC_MACH_THREAD_STATE_COUNT PPC_THREAD_STATE_COUNT +# define GC_MACH_THREAD_STATE PPC_THREAD_STATE +# define GC_MACH_THREAD_STATE_COUNT PPC_THREAD_STATE_COUNT # define GC_MACH_HEADER mach_header # define GC_MACH_SECTION section +# define GC_GETSECTBYNAME getsectbynamefromheader # else # define GC_THREAD_STATE_T ppc_thread_state64_t -# define GC_MACH_THREAD_STATE PPC_THREAD_STATE64 -# define GC_MACH_THREAD_STATE_COUNT PPC_THREAD_STATE64_COUNT +# define GC_MACH_THREAD_STATE PPC_THREAD_STATE64 +# define GC_MACH_THREAD_STATE_COUNT PPC_THREAD_STATE64_COUNT # define GC_MACH_HEADER mach_header_64 # define GC_MACH_SECTION section_64 +# define GC_GETSECTBYNAME getsectbynamefromheader_64 # endif # elif defined(I386) || defined(X86_64) # if CPP_WORDSZ == 32 @@ -490,12 +492,14 @@ extern GC_warn_proc GC_current_warn_proc; # define GC_MACH_THREAD_STATE_COUNT x86_THREAD_STATE32_COUNT # define GC_MACH_HEADER mach_header # define GC_MACH_SECTION section +# define GC_GETSECTBYNAME getsectbynamefromheader # else # define GC_THREAD_STATE_T x86_thread_state64_t # define GC_MACH_THREAD_STATE x86_THREAD_STATE64 # define GC_MACH_THREAD_STATE_COUNT x86_THREAD_STATE64_COUNT # define GC_MACH_HEADER mach_header_64 # define GC_MACH_SECTION section_64 +# define GC_GETSECTBYNAME getsectbynamefromheader_64 # endif # else # error define GC_THREAD_STATE_T -- GitLab