summaryrefslogtreecommitdiff
path: root/src/internal/dynlink.h
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2015-05-25 19:15:17 -0400
committerRich Felker <dalias@aerifal.cx>2015-05-25 19:15:17 -0400
commit768b82c6de24e480267c4c251c440edfc71800e3 (patch)
tree9b59e909041b2ad6ca35dad514ad9fa5c5379894 /src/internal/dynlink.h
parent967bcbf67c3ffac587de4d79abc1e5e072d83e3e (diff)
downloadmusl-768b82c6de24e480267c4c251c440edfc71800e3.tar.gz
musl-768b82c6de24e480267c4c251c440edfc71800e3.tar.bz2
musl-768b82c6de24e480267c4c251c440edfc71800e3.tar.xz
musl-768b82c6de24e480267c4c251c440edfc71800e3.zip
move call to dynamic linker stage-3 into stage-2 function
this move eliminates a duplicate "by-hand" symbol lookup loop from the stage-1 code and replaces it with a call to find_sym, which can be used once we're in stage 2. it reduces the size of the stage 1 code, which is helpful because stage 1 will become the crt start file for static-PIE executables, and it will allow stage 3 to access stage 2's automatic storage, which will be important in an upcoming commit.
Diffstat (limited to 'src/internal/dynlink.h')
-rw-r--r--src/internal/dynlink.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/internal/dynlink.h b/src/internal/dynlink.h
index 53661d62..8621d2dd 100644
--- a/src/internal/dynlink.h
+++ b/src/internal/dynlink.h
@@ -51,7 +51,7 @@ enum {
#define AUX_CNT 32
#define DYN_CNT 32
-typedef void (*stage2_func)(unsigned char *);
+typedef void (*stage2_func)(unsigned char *, size_t *);
typedef _Noreturn void (*stage3_func)(size_t *);
#endif