about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Jaeger <aj@suse.de>2000-06-14 13:13:58 +0000
committerAndreas Jaeger <aj@suse.de>2000-06-14 13:13:58 +0000
commit04037dabe27d41dab8d6191f26334d7071b66b1a (patch)
tree25ab555a6fbd7110e9f4a4082ac8f7aec27de68d
parent594cee6c498dc6124e0ba1926d54ffd1fd5bffd8 (diff)
downloadglibc-04037dabe27d41dab8d6191f26334d7071b66b1a.tar.gz
glibc-04037dabe27d41dab8d6191f26334d7071b66b1a.tar.xz
glibc-04037dabe27d41dab8d6191f26334d7071b66b1a.zip
* sysdeps/mips/dl-machine.h: Pass finalizer correctly to user
entry point. 
Reported by Jim Pick <jim@jimpick.com>.
-rw-r--r--sysdeps/mips/dl-machine.h11
1 files changed, 3 insertions, 8 deletions
diff --git a/sysdeps/mips/dl-machine.h b/sysdeps/mips/dl-machine.h
index a67eface5b..322add2e08 100644
--- a/sysdeps/mips/dl-machine.h
+++ b/sysdeps/mips/dl-machine.h
@@ -400,15 +400,10 @@ _dl_start_user:\n\
 	# Call the function to run the initializers.\n\
 	jal _dl_init
 	addiu $29, 16\n\
-	# Pass our finalizer function to the user in ra.\n\
-	la $31, _dl_fini\n\
+	# Pass our finalizer function to the user in $2 as per ELF ABI.\n\
+	la $2, _dl_fini\n\
 	# Jump to the user entry point.\n\
-	move $25, $17\n\
-	lw $4, 0($29)\n\
-	lw $5, 4($29)\n\
-	lw $6, 8($29)\n\
-	lw $7, 12($29)\n\
-	jr $25\n"\
+	jr $17\n"\
 _RTLD_EPILOGUE(ENTRY_POINT)\
 	"\n.previous"\
 );