diff --git a/compiler/rt/call.lisp b/compiler/rt/call.lisp index 75ccdf3571551aeac91349dbd51e47d83a43f17f..85e9d843991856e170bffd8cf1a1f631e0391eef 100644 --- a/compiler/rt/call.lisp +++ b/compiler/rt/call.lisp @@ -744,10 +744,6 @@ default-value-5 `((inst li nargs-pass (fixnum nargs)))) - ,@(unless (eq return :tail) - `((inst compute-lra-from-code - return-pc-pass code-tn lra-label))) - ,@(if named `((move name-pass name) (loadw lip name-pass vm:symbol-raw-function-addr-slot @@ -766,7 +762,9 @@ default-value-5 (inst cal nsp-tn cur-nfp (component-non-descriptor-stack-usage))) (inst b lip)) - `((move old-fp-pass cfp-tn) + `((inst compute-lra-from-code + return-pc-pass code-tn lra-label) + (move old-fp-pass cfp-tn) (when cur-nfp (store-stack-tn cur-nfp nfp-save)) ,(if variable