X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fppc%2Fc-call.lisp;h=340600ae1812a3f92ecf220e4e01ed56a3c3899a;hb=69e6aef5e6fb3bd682c7a2cbf774034d2ea58ee8;hp=286988398e4ebb30d1d237b471ddfb853d3d4e6c;hpb=ac97b7229f874d5d3ad5000411168af2a31834ec;p=sbcl.git diff --git a/src/compiler/ppc/c-call.lisp b/src/compiler/ppc/c-call.lisp index 2869883..340600a 100644 --- a/src/compiler/ppc/c-call.lisp +++ b/src/compiler/ppc/c-call.lisp @@ -195,7 +195,7 @@ (values 'unsigned-byte-32 'unsigned-reg)) (my-make-wired-tn ptype reg-sc (result-reg-offset num-results))))) -(!def-vm-support-routine make-call-out-tns (type) +(defun make-call-out-tns (type) (declare (type alien-fun-type type)) (let ((arg-state (make-arg-state))) (collect ((arg-tns)) @@ -660,7 +660,11 @@ (inst stwu stack-pointer stack-pointer (- frame-size)) ;; And make the call. - (load-address-into r0 (foreign-symbol-address "funcall3")) + (load-address-into + r0 + (foreign-symbol-address + #!-sb-safepoint "funcall3" + #!+sb-safepoint "callback_wrapper_trampoline")) (inst mtlr r0) (inst blrl)