diff options
Diffstat (limited to 'src/ldso/x32')
-rw-r--r-- | src/ldso/x32/dlsym.s | 6 | ||||
-rw-r--r-- | src/ldso/x32/start.s | 16 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/ldso/x32/dlsym.s b/src/ldso/x32/dlsym.s new file mode 100644 index 00000000..3c16616a --- /dev/null +++ b/src/ldso/x32/dlsym.s @@ -0,0 +1,6 @@ +.text +.global dlsym +.type dlsym,@function +dlsym: + mov (%rsp),%rdx + jmp __dlsym diff --git a/src/ldso/x32/start.s b/src/ldso/x32/start.s new file mode 100644 index 00000000..80c1d08d --- /dev/null +++ b/src/ldso/x32/start.s @@ -0,0 +1,16 @@ +.text +.global _start +_start: + mov (%rsp),%rdi + lea 8(%rsp),%rsi + call __dynlink + pop %rdi +1: dec %edi + pop %rsi + cmp $-1,%rsi + jz 1b + inc %edi + push %rsi + push %rdi + xor %edx,%edx + jmp *%rax |