about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/i386/dl-machine.h1
-rw-r--r--sysdeps/mach/hurd/i386/dl-machine.h2
3 files changed, 5 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 88d620b0fb..7b0cff44f1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2000-04-03  Ulrich Drepper  <drepper@redhat.com>
 
+	* sysdeps/i386/dl-machine.h: Undo last change.
+	* sysdeps/mach/hurd/i386/dl-machine.h (RTLD_START_SPECIAL_INIT):
+	Restore %edx register after call here.
+
 	* sysdeps/arm/atomicity.h: New file.
 	Contributed by Jesper Skov <jskov@redhat.com>.
 
diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h
index 3082d4d4e8..5220d923b7 100644
--- a/sysdeps/i386/dl-machine.h
+++ b/sysdeps/i386/dl-machine.h
@@ -233,7 +233,6 @@ _dl_start_user:\n\
 " RTLD_START_SPECIAL_INIT "\n\
 	# Load the parameters again.\n\
 	# (eax, edx, ecx, *--esp) = (_dl_loaded, argc, argv, envp)\n\
-	movl (%esp), %edx\n\
 	movl _dl_loaded@GOT(%ebx), %esi\n\
 	leal 8(%esp,%edx,4), %eax\n\
 	leal 4(%esp), %ecx\n\
diff --git a/sysdeps/mach/hurd/i386/dl-machine.h b/sysdeps/mach/hurd/i386/dl-machine.h
index 153abba48f..40f2ff29d4 100644
--- a/sysdeps/mach/hurd/i386/dl-machine.h
+++ b/sysdeps/mach/hurd/i386/dl-machine.h
@@ -3,5 +3,5 @@
    into the asm in sysdeps/i386/dl-machine.h that contains
    the initializer code.  */
 
-#define RTLD_START_SPECIAL_INIT "call _dl_init_first@PLT"
+#define RTLD_START_SPECIAL_INIT "call _dl_init_first@PLT; movl (%esp), %edx"
 #include_next "dl-machine.h"