From a682c5accb1000209d8342b09bfc6ee879ffdfce Mon Sep 17 00:00:00 2001 From: jjgarcia Date: Mon, 21 Oct 2002 12:29:44 +0000 Subject: [PATCH] Make MAYBE-PUSH-ARGS smaller. --- src/cmp/cmpcall.lsp | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/cmp/cmpcall.lsp b/src/cmp/cmpcall.lsp index 10d20442f..0f5f3ba70 100644 --- a/src/cmp/cmpcall.lsp +++ b/src/cmp/cmpcall.lsp @@ -171,20 +171,14 @@ (when (or (eq args 'ARGS-PUSHED) (< (length args) SI::C-ARGUMENTS-LIMIT)) (return-from maybe-push-args (values nil nil nil))) - (let* ((temp *temp*) ; allow reuse of TEMP variables - (*temp* temp) - (arg (list 'TEMP 0)) - (narg `(LCL ,(next-lcl)))) + (let* ((narg `(LCL ,(next-lcl)))) (wt-nl "{cl_index " narg ";") - (let ((*destination* arg)) + (let* ((*temp* *temp*) + (temp `(TEMP ,(next-temp))) + (*destination* temp)) (dolist (expr args) - (setf (second arg) (next-temp)) - (c2expr* expr))) - (setf (second arg) temp) ; restart numbering - (dotimes (i (length args)) - (wt-nl "cl_stack_push(" arg ");") - (incf (second arg))) - (wt-nl narg "=" (length args) ";") + (c2expr* expr) + (wt-nl "cl_stack_push(" temp "); " narg "++;") (values `((STACK ,narg) ,@*unwind-exit*) 'ARGS-PUSHED narg))) ;;;