diff --git a/assembly/ppc/assem-rtns.lisp b/assembly/ppc/assem-rtns.lisp index 18de1af98c8c329eff65a251d3fc5602d490202b..5533f7a7caf98b0ebef65626fd9e16fb817a5397 100644 --- a/assembly/ppc/assem-rtns.lisp +++ b/assembly/ppc/assem-rtns.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman (FAHLMAN@CMUC). ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/assembly/ppc/assem-rtns.lisp,v 1.5 2006/11/02 01:53:17 rtoy Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/assembly/ppc/assem-rtns.lisp,v 1.6 2006/11/03 03:29:34 rtoy Rel $ ;;; ;;; (in-package "PPC") @@ -196,8 +196,7 @@ (:arg start any-reg ocfp-offset) (:arg count any-reg nargs-offset) (:temp catch any-reg a1-offset) - (:temp tag descriptor-reg a2-offset) - (:temp temp non-descriptor-reg nl0-offset)) + (:temp tag descriptor-reg a2-offset)) (declare (ignore start count)) @@ -218,13 +217,10 @@ exit (move target catch) - #+nil - (inst ba (make-fixup 'unwind :assembly-routine)) - - (progn - (inst lr temp (make-fixup 'unwind :assembly-routine)) - (inst mtctr temp) - (inst bctr))) + ;; Recycle catch as a temp + (inst lr catch (make-fixup 'unwind :assembly-routine)) + (inst mtctr catch) + (inst bctr)) diff --git a/assembly/ppc/support.lisp b/assembly/ppc/support.lisp index d2c8f6d1eeb209bce66881b66ecd49417afd54da..6e3ce22e2fd2487cb21c254eff2eb436266cf2cd 100644 --- a/assembly/ppc/support.lisp +++ b/assembly/ppc/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/ppc/support.lisp,v 1.4 2006/11/02 01:53:17 rtoy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/assembly/ppc/support.lisp,v 1.5 2006/11/03 03:29:34 rtoy Rel $") ;;; ;;; ********************************************************************** ;;; @@ -17,10 +17,6 @@ (ecase style (:raw (let ((temp (make-symbol "TEMP"))) - #+nil - (values - `((inst bla (make-fixup ',name :assembly-routine))) - `()) (values `((inst lr ,temp (make-fixup ',name :assembly-routine)) (inst mtctr ,temp) @@ -38,12 +34,9 @@ (store-stack-tn ,nfp-save cur-nfp)) (inst compute-lra-from-code ,lra code-tn lra-label ,temp) (note-next-instruction ,vop :call-site) - #+nil - (inst ba (make-fixup ',name :assembly-routine)) - (progn - (inst lr ,temp (make-fixup ',name :assembly-routine)) - (inst mtctr ,temp) - (inst bctr)) + (inst lr ,temp (make-fixup ',name :assembly-routine)) + (inst mtctr ,temp) + (inst bctr) (emit-return-pc lra-label) (note-this-location ,vop :single-value-return) (without-scheduling () @@ -63,10 +56,6 @@ (:save-p :compute-only))))) (:none (let ((temp (make-symbol "TEMP"))) - #+nil - (values - `((inst ba (make-fixup ',name :assembly-routine))) - `()) (values `((inst lr ,temp (make-fixup ',name :assembly-routine)) (inst mtctr ,temp) diff --git a/compiler/ppc/call.lisp b/compiler/ppc/call.lisp index ee0dd160bd558e89e7f7040ad1467666feda588c..6daf539cb84300daa626d1022b764440add367a7 100644 --- a/compiler/ppc/call.lisp +++ b/compiler/ppc/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/ppc/call.lisp,v 1.13 2006/11/02 01:53:17 rtoy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ppc/call.lisp,v 1.14 2006/11/03 03:29:34 rtoy Exp $") ;;; ;;; ********************************************************************** ;;; @@ -902,12 +902,9 @@ default-value-8 number-stack-displacement)))) - #+nil - (inst ba (make-fixup 'tail-call-variable :assembly-routine)) - (progn - (inst lr temp (make-fixup 'tail-call-variable :assembly-routine)) - (inst mtctr temp) - (inst bctr)))) + (inst lr temp (make-fixup 'tail-call-variable :assembly-routine)) + (inst mtctr temp) + (inst bctr))) ;;;; Unknown values return: @@ -1044,12 +1041,9 @@ default-value-8 (move lra lra-arg) (move vals vals-arg) (move nvals nvals-arg) - #+nil - (inst ba (make-fixup 'return-multiple :assembly-routine)) - (progn - (inst lr temp (make-fixup 'return-multiple :assembly-routine)) - (inst mtctr temp) - (inst bctr))) + (inst lr temp (make-fixup 'return-multiple :assembly-routine)) + (inst mtctr temp) + (inst bctr)) (trace-table-entry trace-table-normal))) diff --git a/lisp/Config.ppc_darwin b/lisp/Config.ppc_darwin index 843634f8c15ce669f399a8ef13a2e5cf76526ea4..352110d20efb8e1fe7b3c99277eab8eaea4e17d2 100644 --- a/lisp/Config.ppc_darwin +++ b/lisp/Config.ppc_darwin @@ -38,10 +38,10 @@ OS_SRC = ppc-darwin-dlshim.c os-common.c Darwin-os.c e_rem_pio2.c k_rem_pio2.c # OS_LINK_FLAGS = -g -dynamic -Wl,-sectcreate,CMUCLRO,core,/dev/null -Wl,-segaddr,CMUCLRO,0x01000000 -Wl,-seg1addr,0x1a000000 OS_LIBS = -lSystem -lc -lm -all: adjustlisp +#all: adjustlisp #adjustlisp: lisp darwin-lispadjuster # ./darwin-lispadjuster lisp -adjustlisp: lisp darwin-lispadjuster - true +#adjustlisp: lisp darwin-lispadjuster +# true -darwin-lispadjuster: darwin-lispadjuster.c +#darwin-lispadjuster: darwin-lispadjuster.c