X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fsparc-linux-os.h;h=5c02fc663de142d997e0926741260a45ad234160;hb=c8617f57d0413beb2890e94dabe227cef9c5ddad;hp=76d9eb64b2062cb4b928470eb8e3878f7409529c;hpb=4ae1b794a5d6a90794468cf8017f5307f2c30dfe;p=sbcl.git diff --git a/src/runtime/sparc-linux-os.h b/src/runtime/sparc-linux-os.h index 76d9eb6..5c02fc6 100644 --- a/src/runtime/sparc-linux-os.h +++ b/src/runtime/sparc-linux-os.h @@ -4,9 +4,10 @@ typedef struct sigcontext os_context_t; typedef unsigned long os_context_register_t; -static inline os_context_t *arch_os_get_context(void **void_context) { +static inline os_context_t *arch_os_get_context(void **void_context) +{ asm volatile ("ta 0x03"); /* ta ST_FLUSH_WINDOWS */ - return (os_context_t *) (void_context + 37); + return (os_context_t *) (*void_context); } unsigned long os_context_fp_control(os_context_t *context);