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