X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fassembly%2Fx86-64%2Fsupport.lisp;h=fb18d8a489fb9ab108a9b6082f14499296020a09;hb=922fe0d6da0e4bdcd366f5101395670aabd14e62;hp=5e10c88ba72f1ccaf6ab4bc72ce4c8f4c765fb9f;hpb=b6e9c116826f9461e2660d87c031fd1c4488e776;p=sbcl.git diff --git a/src/assembly/x86-64/support.lisp b/src/assembly/x86-64/support.lisp index 5e10c88..fb18d8a 100644 --- a/src/assembly/x86-64/support.lisp +++ b/src/assembly/x86-64/support.lisp @@ -24,7 +24,7 @@ (make-ea :qword :disp (make-fixup ',name :assembly-routine))) (inst call temp-reg-tn) (note-this-location ,vop :single-value-return) - (move rsp-tn rbx-tn)) + (inst cmov :c rsp-tn rbx-tn)) '((:save-p :compute-only)))) (:none (values @@ -38,9 +38,6 @@ (:raw `(inst ret)) (:full-call - `( - (inst pop rax-tn) - - (inst add rax-tn 3) - (inst jmp rax-tn))) + `((inst clc) + (inst ret))) (:none)))