From 8c0f56ae776de9514c48af2d97d573559b3618ea Mon Sep 17 00:00:00 2001
From: pw <pw>
Date: Tue, 16 Jun 1998 18:20:45 +0000
Subject: [PATCH] Remove obsolete :x86-lra feature dependent code.

---
 assembly/x86/support.lisp   | 15 +------
 compiler/x86/call.lisp      | 83 ++-----------------------------------
 compiler/x86/nlx.lisp       | 16 +------
 compiler/x86/static-fn.lisp | 18 +-------
 4 files changed, 7 insertions(+), 125 deletions(-)

diff --git a/assembly/x86/support.lisp b/assembly/x86/support.lisp
index 1a9dfa81f..4f41c6dfa 100644
--- a/assembly/x86/support.lisp
+++ b/assembly/x86/support.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
- "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/assembly/x86/support.lisp,v 1.1 1997/01/21 00:30:28 ram Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/assembly/x86/support.lisp,v 1.2 1998/06/16 18:20:43 pw Rel $")
 ;;;
 ;;; **********************************************************************
 ;;; 
@@ -26,23 +26,10 @@
       nil))
     (:full-call
      (values
-      #-x86-lra
       `((note-this-location ,vop :call-site)
 	(inst call (make-fixup ',name :assembly-routine))
 	(note-this-location ,vop :single-value-return)
 	(move esp-tn ebx-tn))
-      #+x86-lra
-      `((note-this-location ,vop :call-site)
-	(inst push (make-fixup nil :code-object return))
-	(inst jmp (make-fixup ',name :assembly-routine))
-	(align lowtag-bits #x90)
-	(inst lra-header-word)
-	(inst nop)
-	(inst nop)
-	(inst nop)
-	RETURN
-	(note-this-location ,vop :single-value-return)
-	(move esp-tn ebx-tn))
       '((:save-p :compute-only))))
     (:none
      (values 
diff --git a/compiler/x86/call.lisp b/compiler/x86/call.lisp
index 74c588008..c2a4ec5bc 100644
--- a/compiler/x86/call.lisp
+++ b/compiler/x86/call.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
- "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/call.lisp,v 1.14 1998/02/19 19:34:47 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/call.lisp,v 1.15 1998/06/16 18:20:44 pw Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -571,13 +571,6 @@
 
     (note-this-location vop :call-site)
     (inst jmp target)
-    #+x86-lra
-    (progn 
-      (align lowtag-bits #x90)
-      (inst lra-header-word)
-      (inst nop)
-      (inst nop)
-      (inst nop))
     RETURN
     (default-unknown-values vop values nvals)
     (trace-table-entry trace-table-normal)))
@@ -619,13 +612,6 @@
 
     (note-this-location vop :call-site)
     (inst jmp target)
-    #+x86-lra
-    (progn 
-      (align lowtag-bits #x90)
-      (inst lra-header-word)
-      (inst nop)
-      (inst nop)
-      (inst nop))
     RETURN
     (note-this-location vop :unknown-return)
     (receive-unknown-values values-start nvals start count)
@@ -676,13 +662,6 @@
 
     (note-this-location vop :call-site)
     (inst jmp target)
-    #+x86-lra
-    (progn 
-      (align lowtag-bits #x90)
-      (inst lra-header-word)
-      (inst nop)
-      (inst nop)
-      (inst nop))
     RETURN
     (note-this-location vop :known-return)
     (trace-table-entry trace-table-normal)))
@@ -903,10 +882,7 @@
 
     ,@(when (eq return :tail)
 	    '((:temporary (:sc unsigned-reg
-			   :from (:argument 1) :to (:argument 2)) old-fp-tmp)
-	      #+x86-lra
-	      (:temporary (:sc unsigned-reg
-			   :from (:argument 2) :to (:argument 3)) ret-pc-tmp)))
+			   :from (:argument 1) :to (:argument 2)) old-fp-tmp)))
 
     (:generator ,(+ (if named 5 0)
 		    (if variable 19 1)
@@ -959,17 +935,6 @@
 		     (format t "** tail-call old-fp in reg not S0~%")
 		   (storew old-fp ebp-tn (- (1+ ocfp-save-offset)))))
 
-		#+x86-lra
-		(sc-case return-pc
-		  ((sap-stack)
-		   (unless (= return-pc-save-offset (tn-offset return-pc))
-		     (format t "** tail-call ret-pc not S1~%")
-		     (move ret-pc-tmp return-pc)
-		     (storew ret-pc-tmp ebp-tn (- (1+ return-pc-save-offset)))))
-		  ((sap-reg)
-		   (format t "** tail-call ret-pc in reg not S1~%")
-		   (storew return-pc ebp-tn (- (1+ return-pc-save-offset)))))
-		
 		;; For tail call, we have to push the return-pc so
 		;; that it looks like we CALLed despite the fact that
 		;; we are going to JMP.
@@ -995,22 +960,12 @@
 		(storew ebp-tn new-fp (- (1+ ocfp-save-offset)))
 
 		;; Save the return address.
-		#+x86-lra
-		(storew (make-fixup nil :code-object return)
-			new-fp (- (1+ return-pc-save-offset)))
-
 		(move ebp-tn new-fp)	; NB - now on new stack frame.
-		
-		;; Push the return address.
-		#+x86-lra
-		(inst push (make-fixup nil :code-object return))
-;		(inst push (make-ea :dword :base new-fp :disp -8))
 		))
 	     )
   
      (note-this-location vop :call-site)
 
-     #-x86-lra
      (inst ,(if (eq return :tail) 'jmp 'call)
       (make-ea :dword :base eax
 	       :disp ,(if named
@@ -1018,42 +973,12 @@
 			    other-pointer-type)
 			  '(- (* closure-function-slot word-bytes)
 			    function-pointer-type))))
-
-     #+x86-lra
-     (inst jmp (make-ea :dword :base eax
-			:disp ,(if named
-				   '(- (* fdefn-raw-addr-slot word-bytes)
-				       other-pointer-type)
-				 '(- (* closure-function-slot word-bytes)
-				     function-pointer-type))))
-     
      ,@(ecase return
 	      (:fixed
-		 #+x86-lra
-		 '((align lowtag-bits #x90)
-		   (inst lra-header-word)
-		   (inst nop)
-		   (inst nop)
-		   (inst nop)
-		   RETURN
-		   (default-unknown-values vop values nvals))
-		 #-x86-lra
-		 '((default-unknown-values vop values nvals))
-		 )
+		 '((default-unknown-values vop values nvals)))
 	      (:unknown
-	       #+x86-lra
-	       '((align lowtag-bits #x90)
-		 (inst lra-header-word)
-		 (inst nop)
-		 (inst nop)
-		 (inst nop)
-		 RETURN
-		 (note-this-location vop :unknown-return)
-		 (receive-unknown-values values-start nvals start count))
-	       #-x86-lra
 	       '((note-this-location vop :unknown-return)
-		 (receive-unknown-values values-start nvals start count))
-	       )
+		 (receive-unknown-values values-start nvals start count)))
 	      (:tail))
      (trace-table-entry trace-table-normal))))
 
diff --git a/compiler/x86/nlx.lisp b/compiler/x86/nlx.lisp
index 369539965..8a716e281 100644
--- a/compiler/x86/nlx.lisp
+++ b/compiler/x86/nlx.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
- "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/nlx.lisp,v 1.11 1998/02/19 19:35:01 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/nlx.lisp,v 1.12 1998/06/16 18:20:44 pw Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -224,13 +224,6 @@
   (:save-p :force-to-stack)
   (:vop-var vop)
   (:generator 30
-    #+x86-lra
-    (progn 
-      (align lowtag-bits #x90)
-      (inst lra-header-word)
-      (inst nop)
-      (inst nop)
-      (inst nop))
     (emit-label label)
     (note-this-location vop :non-local-entry)
 
@@ -266,12 +259,5 @@
   (:ignore block start count)
   (:vop-var vop)
   (:generator 0
-    #+x86-lra
-    (progn 
-      (align lowtag-bits #x90)
-      (inst lra-header-word)
-      (inst nop)
-      (inst nop)
-      (inst nop))
     (emit-label label)
     (note-this-location vop :non-local-entry)))
diff --git a/compiler/x86/static-fn.lisp b/compiler/x86/static-fn.lisp
index c05d1855f..0a76fe804 100644
--- a/compiler/x86/static-fn.lisp
+++ b/compiler/x86/static-fn.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
- "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/static-fn.lisp,v 1.4 1998/02/19 19:35:04 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/static-fn.lisp,v 1.5 1998/06/16 18:20:45 pw Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -115,25 +115,9 @@
 	 ;; low tag of 1 added.  When the nil symbol value with its
 	 ;; low tag of 3 is added the resulting value points to the
 	 ;; raw address slot of the fdefn (at +4).
-	 #-x86-lra
 	 (inst call (make-ea :dword
 			     :disp (+ nil-value
 				      (static-function-offset function))))
-	 #+x86-lra
-	 (progn
-	   ;; Push the return address.
-	   (inst push (make-fixup nil :code-object return))
-	   (inst jmp (make-ea :dword
-			      :disp (+ nil-value
-				       (static-function-offset function))))
-	   (align lowtag-bits #x90)
-	   (inst lra-header-word)
-	   (inst nop)
-	   (inst nop)
-	   (inst nop))
-	 #+x86-lra
-	 RETURN
-
 	 ,(collect ((bindings) (links))
 		   (do ((temp (temp-names) (cdr temp))
 			(name 'values (gensym))
-- 
GitLab