changeset 894:77a3d6945f81

Don't use /proc/self/map for finding the static data segment on x86-64 for now. Probably breaks shared libraries. Parsing the file needs to be rewritten!
author Christian Kamm <kamm incasoftware de>
date Mon, 19 Jan 2009 19:34:51 +0100
parents e74e2e53ba3b
children fb4853c46917
files runtime/internal/memory.d
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/internal/memory.d	Sun Jan 18 14:14:40 2009 +0100
+++ b/runtime/internal/memory.d	Mon Jan 19 19:34:51 2009 +0100
@@ -30,7 +30,11 @@
 // does Posix suffice?
 version(Posix)
 {
-    version = GC_Use_Data_Proc_Maps;
+    //FIXME: proc map parsing is too naive to work on x86-64
+    version(X86)
+    {
+        version = GC_Use_Data_Proc_Maps;
+    }
 }
 
 version(GC_Use_Data_Proc_Maps)
@@ -278,6 +282,7 @@
     else version( GC_Use_Data_Proc_Maps )
     {
         // TODO: Exclude zero-mapped regions
+        //FIXME: proc map parsing is too naive to work on x86-64
 
         int   fd = open("/proc/self/maps", O_RDONLY);
         ptrdiff_t   count; // %% need to configure ret for read..