X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fx86-assem.S;h=c16b3ef9f790ba34fdbe43b64a1720ee653af138;hb=85483d976cc2d779493985f77f39efefb2ea622b;hp=d512676062ab9ba74a9eb73ae7e0d8bc92506698;hpb=55ba706ac509b215da17b3b0ce775795e5b5ed62;p=sbcl.git diff --git a/src/runtime/x86-assem.S b/src/runtime/x86-assem.S index d512676..c16b3ef 100644 --- a/src/runtime/x86-assem.S +++ b/src/runtime/x86-assem.S @@ -14,8 +14,8 @@ */ #define LANGUAGE_ASSEMBLY -#include "validate.h" #include "sbcl.h" +#include "validate.h" #include "genesis/closure.h" #include "genesis/fdefn.h" #include "genesis/static-symbols.h" @@ -29,7 +29,7 @@ * turns out not to matter, perhaps it's just clutter we could get * rid of? -- WHN 2004-04-18) */ -#if defined __linux__ || defined __FreeBSD__ || defined __NetBSD__ || defined __OpenBSD__ +#if defined __linux__ || defined __FreeBSD__ || defined __NetBSD__ || defined __OpenBSD__ || defined __sun #define GNAME(var) var #else #define GNAME(var) _##var @@ -44,7 +44,7 @@ * matter any more, perhaps it's just clutter we could get * rid of? -- WHN 2004-04-18) */ -#if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) +#if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__sun) #define align_4byte 4 #define align_8byte 8 #define align_16byte 16 @@ -802,7 +802,8 @@ GNAME(post_signal_tramp): * doesn't exist. This is where call_into_lisp returns when called * using return_to_lisp_function */ addl $12,%esp /* clear call_into_lisp args from stack */ - popa /* restore registers */ + popal /* restore registers */ + popfl leave ret .size GNAME(post_signal_tramp),.-GNAME(post_signal_tramp)