2007-12-10 Andreas Tobler <a.tobler@schweiz.org>
authora_tobler <a_tobler>
Mon, 10 Dec 2007 18:49:55 +0000 (18:49 +0000)
committerIvan Maidanski <ivmai@mail.ru>
Tue, 26 Jul 2011 17:06:41 +0000 (21:06 +0400)
* 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).

ChangeLog
dyn_load.c
include/private/gc_priv.h

index bb4243d..b3a7f8c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-12-10  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).
+
 2007-10-24  Hans Boehm <Hans.Boehm@hp.com>
 
        * reclaim.c (GC_bytes_found): Expand comment.
index befb1f5..5346928 100644 (file)
@@ -1064,13 +1064,8 @@ 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;
@@ -1092,13 +1087,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;
index 1c67736..219adb9 100644 (file)
@@ -375,12 +375,14 @@ extern GC_warn_proc GC_current_warn_proc;
 #                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_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
@@ -389,12 +391,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