diff options
author | Philip Guenther <guenther@cvs.openbsd.org> | 2013-11-10 19:23:15 +0000 |
---|---|---|
committer | Philip Guenther <guenther@cvs.openbsd.org> | 2013-11-10 19:23:15 +0000 |
commit | 6ce2e80afc07897fdf1f5d58448387f50a8903ed (patch) | |
tree | 3621665817c08a7e981651d98e63a7d443de0265 /libexec/ld.so | |
parent | fe85ef6b0ffc910a156ca01645d36d2c7cebcd57 (diff) |
Make sure we pass a NULL cleanup argument to __start() by initializing
a2 to zero in the kernel and ld.so. This will let us add the
conditional atexit() call to crt0
ok kettenis@ miod@
Diffstat (limited to 'libexec/ld.so')
-rw-r--r-- | libexec/ld.so/alpha/ldasm.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libexec/ld.so/alpha/ldasm.S b/libexec/ld.so/alpha/ldasm.S index dc6fc431150..9998289e2db 100644 --- a/libexec/ld.so/alpha/ldasm.S +++ b/libexec/ld.so/alpha/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.21 2013/08/13 05:52:18 guenther Exp $ */ +/* $OpenBSD: ldasm.S,v 1.22 2013/11/10 19:23:14 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -102,7 +102,8 @@ L2: ldiq s3, L2 /* get where the linker thought we were */ mov s1, a2 /* loff */ mov s2, a3 /* dl_data */ CALL(_dl_boot) - mov s0, a0 + mov s0, a0 /* stack */ + mov zero, a1 /* cleanup */ mov v0, pv jsr ra, (pv) END(_dl_start) |