2006-12-22 Martin Baulig <martin@ximian.com>
authorMartin Baulig <martin@novell.com>
Fri, 22 Dec 2006 14:10:34 +0000 (14:10 -0000)
committerMartin Baulig <martin@novell.com>
Fri, 22 Dec 2006 14:10:34 +0000 (14:10 -0000)
* mdb-debug-info32.s, mdb-debug-info64.s: New files.
Put a pointer to the `MONO_DEBUGGER__debugger_info' into a
seperate `.mdb_debug_info' section, so we can access it from the
debugger even if the binary is stripped.

* debug-debug.c: Reference the `MONO_DEBUGGER__debugger_info_ptr'
from the `.mdb_debug_info' here to prevent the linker from
removing that section.

* Makefile.am (mono_debugger_sources): Add mdb-debug-info32.s /
mdb-debug-info64.s.

svn path=/trunk/mono/; revision=69937

mono/mini/ChangeLog
mono/mini/Makefile.am
mono/mini/mdb-debug-info.s [deleted file]
mono/mini/mdb-debug-info32.s [new file with mode: 0644]
mono/mini/mdb-debug-info64.s [new file with mode: 0644]

index e7b7483a7795f18be1a49d15b30de964d08e1ac8..06db003b4fda370256256ce1421867f761a068e3 100644 (file)
@@ -1,15 +1,16 @@
 2006-12-22  Martin Baulig  <martin@ximian.com>
 
-       * mdb-debug-info.s: New file.  Put a pointer to the
-       `MONO_DEBUGGER__debugger_info' into a seperate `.mdb_debug_info'
-       section, so we can access it from the debugger even if the binary
-       is stripped.
+       * mdb-debug-info32.s, mdb-debug-info64.s: New files.
+       Put a pointer to the `MONO_DEBUGGER__debugger_info' into a
+       seperate `.mdb_debug_info' section, so we can access it from the
+       debugger even if the binary is stripped.
 
        * debug-debug.c: Reference the `MONO_DEBUGGER__debugger_info_ptr'
        from the `.mdb_debug_info' here to prevent the linker from
        removing that section.
 
-       * Makefile.am (mono_debugger_sources): Add mdb-debug-info.s
+       * Makefile.am (mono_debugger_sources): Add mdb-debug-info32.s /
+       mdb-debug-info64.s.
 
 2006-12-19  Robert Jordan  <robertj@gmx.net>
 
index 5b33b1e2c52d44a315cad0d9752e8848eaea280b..e3b186e062286559c9a579401d71377f8ce31669 100644 (file)
@@ -240,7 +240,12 @@ test_sources =             \
 test_sources2 = generics.2.cs il2tests.2.il
 
 if MONO_DEBUGGER_SUPPORTED
-mono_debugger_sources = debug-debugger.c debug-debugger.h mdb-debug-info.s
+if AMD64
+mono_debugger_arch_sources = mdb-debug-info64.s
+else
+mono_debugger_arch_sources = mdb-debug-info32.s
+endif
+mono_debugger_sources = debug-debugger.c debug-debugger.h $(mono_debugger_arch_sources)
 else
 mono_debugger_sources =
 endif
diff --git a/mono/mini/mdb-debug-info.s b/mono/mini/mdb-debug-info.s
deleted file mode 100644 (file)
index c929562..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-.section       .mdb_debug_info, "aw", @progbits
-.global                MONO_DEBUGGER__debugger_info
-.global                MONO_DEBUGGER__debugger_info_ptr
-MONO_DEBUGGER__debugger_info_ptr:
-               .uleb128        MONO_DEBUGGER__debugger_info
diff --git a/mono/mini/mdb-debug-info32.s b/mono/mini/mdb-debug-info32.s
new file mode 100644 (file)
index 0000000..10a7e00
--- /dev/null
@@ -0,0 +1,5 @@
+.section       .mdb_debug_info, "aw", @progbits
+.global                MONO_DEBUGGER__debugger_info
+.global                MONO_DEBUGGER__debugger_info_ptr
+MONO_DEBUGGER__debugger_info_ptr:
+               .long   MONO_DEBUGGER__debugger_info
diff --git a/mono/mini/mdb-debug-info64.s b/mono/mini/mdb-debug-info64.s
new file mode 100644 (file)
index 0000000..7a91a3c
--- /dev/null
@@ -0,0 +1,5 @@
+.section       .mdb_debug_info, "aw", @progbits
+.global                MONO_DEBUGGER__debugger_info
+.global                MONO_DEBUGGER__debugger_info_ptr
+MONO_DEBUGGER__debugger_info_ptr:
+               .quad   MONO_DEBUGGER__debugger_info