X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fx86-64-assem.S;h=d8084769be9adf2f06904184354b23a5851cb926;hb=7f1e94ae961a198e00daf281eb1dc858e5b2dcc7;hp=b85639eb14e0f267e5baa0ea954ecbea5be3e5f9;hpb=d1a2fa597f993d56bcfa73a64509465d56b4ffac;p=sbcl.git diff --git a/src/runtime/x86-64-assem.S b/src/runtime/x86-64-assem.S index b85639e..d808476 100644 --- a/src/runtime/x86-64-assem.S +++ b/src/runtime/x86-64-assem.S @@ -301,6 +301,24 @@ GNAME(undefined_tramp): ret SIZE(GNAME(undefined_tramp)) + .text + .align align_16byte,0x90 + .globl GNAME(undefined_alien_function) + TYPE(GNAME(undefined_alien_function)) +GNAME(undefined_alien_function): + pop 8(%rbp) # Save return PC for backtrace. + TRAP + .byte trap_Error + .byte 4 + .byte UNDEFINED_ALIEN_FUN_ERROR + /* Encode RBX + FIXME: make independt of the encoding changes. */ + .byte 0xFE + .byte 0x9F + .byte 0x01 + ret + SIZE(GNAME(undefined_alien_function)) + /* KLUDGE: FIND-ESCAPED-FRAME (SYS:SRC;CODE;DEBUG-INT.LISP) needs * to know the name of the function immediately following the * undefined-function trampoline. */