From 77cb8a966dc4773c50fa6be359d76dd7d171e2ed Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Wed, 15 Jan 1992 18:15:06 +0000 Subject: [PATCH] Don't prefetch symbol in the unbind-to-here loop delay slot, since on the RT, the word before the base of the binding stack is unreadable. --- compiler/rt/cell.lisp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/compiler/rt/cell.lisp b/compiler/rt/cell.lisp index 486eee63a..c177eaf90 100644 --- a/compiler/rt/cell.lisp +++ b/compiler/rt/cell.lisp @@ -7,7 +7,7 @@ ;;; Lisp, please contact Scott Fahlman (Scott.Fahlman@CS.CMU.EDU) ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/rt/cell.lisp,v 1.5 1992/01/01 15:06:00 ram Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/rt/cell.lisp,v 1.6 1992/01/15 18:15:06 ram Exp $ ;;; ;;; This file contains the VM definition of various primitive memory access ;;; VOPs for the IBM RT. @@ -264,9 +264,9 @@ (load-symbol-value bsp *binding-stack-pointer*) (inst c where bsp) (inst bc :eq done) - (loadw symbol bsp (- vm:binding-symbol-slot vm:binding-size)) (emit-label loop) + (loadw symbol bsp (- vm:binding-symbol-slot vm:binding-size)) (inst c symbol 0) (inst bc :eq skip) (loadw value bsp (- vm:binding-value-slot vm:binding-size)) @@ -278,8 +278,7 @@ (inst dec bsp (* vm:binding-size vm:word-bytes)) (store-symbol-value bsp *binding-stack-pointer*) (inst c where bsp) - (inst bncx :eq loop) - (loadw symbol bsp (- vm:binding-symbol-slot vm:binding-size)) + (inst bnc :eq loop) (emit-label done)))) -- GitLab