X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tools-for-build%2Fldso-stubs.lisp;h=c9ee5956e929974a804e8f14a3baedda8a3c5f0b;hb=0f234877047c56ca945fe54e9e77a9cc2c8141cb;hp=8e031002058c89ee6ce6c97274078cce250555d2;hpb=64533db68167ac8cbe3ea9fa0676fd799c3b9110;p=sbcl.git diff --git a/tools-for-build/ldso-stubs.lisp b/tools-for-build/ldso-stubs.lisp index 8e03100..c9ee595 100644 --- a/tools-for-build/ldso-stubs.lisp +++ b/tools-for-build/ldso-stubs.lisp @@ -57,7 +57,7 @@ ldso_stub__~A: ; \\ #endif .text" -#!+(or (and x86 (not darwin)) x86-64) " +#!+(and (or x86 x86-64) (not darwin)) " #define LDSO_STUBIFY(fct) \\ .align 16 ; \\ .globl ldso_stub__ ## fct ; \\ @@ -130,6 +130,15 @@ L ## fct ## $stub: ; \\ hlt ; \\ .subsections_via_symbols ; " +;;; darwin x86-64 +#!+(and darwin x86-64) " +#define LDSO_STUBIFY(fct) \\ + .align 4 ; \\ +.globl ldso_stub___ ## fct ; \\ +ldso_stub___ ## fct: ; \\ + jmp _ ## fct ; \\ +.L ## fct ## e1: ; " + ;;; KLUDGE: set up the vital fifth argument, passed on the ;;; stack. Do this unconditionally, even if the stub is for a ;;; function with few arguments: it can't hurt. We only do this for