From 0c5bd77d4e78d34b17713447f8a16081b12a346f Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Tue, 1 May 1990 15:20:49 +0000 Subject: [PATCH] Changed local call VOPs to not set FP in the branch delay slot, since the new FP can't be made to conflict with the return PC passing location. We were setting FP to the return PC when the two happened to be packed in the same location. --- compiler/old-rt/call.lisp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/compiler/old-rt/call.lisp b/compiler/old-rt/call.lisp index fdbf00407..2496d43fa 100644 --- a/compiler/old-rt/call.lisp +++ b/compiler/old-rt/call.lisp @@ -385,9 +385,8 @@ default-value-5 env-save) (:generator 5 (store-stack-tn env-save env-tn) - (inst balix (callee-return-pc-tn callee) target) (inst lr fp-tn fp) - (no-op) + (inst bali (callee-return-pc-tn callee) target) (note-this-location vop :unknown-return) (unassemble (default-unknown-values node values nvals move-temp nil-temp)) @@ -412,9 +411,8 @@ default-value-5 env-save) (:generator 20 (store-stack-tn env-save env-tn) - (inst balix (callee-return-pc-tn callee) target) (inst lr fp-tn fp) - (no-op) + (inst bali (callee-return-pc-tn callee) target) (note-this-location vop :unknown-return) (unassemble (receive-unknown-values node values-start nvals start count)) @@ -438,9 +436,8 @@ default-value-5 (:ignore arg-locs args res nfp) (:vop-var vop) (:generator 5 - (inst balix (callee-return-pc-tn callee) target) (inst lr fp-tn fp) - (no-op) + (inst bali (callee-return-pc-tn callee) target) (note-this-location vop :known-return))) -- GitLab