aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/mips
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 /sysdeps/mips
parent594cee6c498dc6124e0ba1926d54ffd1fd5bffd8 (diff)
downloadglibc-04037dabe27d41dab8d6191f26334d7071b66b1a.zip
glibc-04037dabe27d41dab8d6191f26334d7071b66b1a.tar.gz
glibc-04037dabe27d41dab8d6191f26334d7071b66b1a.tar.bz2
* sysdeps/mips/dl-machine.h: Pass finalizer correctly to user
entry point. Reported by Jim Pick <jim@jimpick.com>.
Diffstat (limited to 'sysdeps/mips')
-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 a67efac..322add2 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"\
);