X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86-64%2Fshow.lisp;h=47fb5896441559cf0f03833d3af5bf726c7e87bb;hb=3fe0010d2777b41e01ea9b4a0f894cfa40f7df1b;hp=bc475e4d394aa34c9aaa90a09e26c403077d073e;hpb=4ebdc81b1a9c6dbed6e98b112afc8dd32b17a2dd;p=sbcl.git diff --git a/src/compiler/x86-64/show.lisp b/src/compiler/x86-64/show.lisp index bc475e4..47fb589 100644 --- a/src/compiler/x86-64/show.lisp +++ b/src/compiler/x86-64/show.lisp @@ -22,11 +22,15 @@ :from :eval :to (:result 0)) rax) + (:temporary (:sc unsigned-reg) call-target) (:results (result :scs (descriptor-reg))) (:save-p t) (:generator 100 (inst push object) - (inst lea rax (make-fixup (extern-alien-name "debug_print") :foreign)) - (inst call (make-fixup (extern-alien-name "call_into_c") :foreign)) + (inst lea rax (make-fixup "debug_print" :foreign)) + (inst lea call-target + (make-ea :qword + :disp (make-fixup "call_into_c" :foreign))) + (inst call call-target) (inst add rsp-tn n-word-bytes) (move result rax)))