From 7c886a5d39f959ec6e82ea7970c245c92e407d8f Mon Sep 17 00:00:00 2001 From: Nathan Froyd Date: Sat, 17 Mar 2007 21:24:59 +0000 Subject: [PATCH] 1.0.3.41: Use a local variable for %%CURRENT-{VOP,SEGMENT}%% rather than a dynamic variable; eliminates spurious BOUNDP checks and generates smaller code for VOP emitters. Saves ~170k on core size on x86-64/linux. --- src/compiler/assem.lisp | 8 ++++---- version.lisp-expr | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/compiler/assem.lisp b/src/compiler/assem.lisp index 724af2f..24dfee1 100644 --- a/src/compiler/assem.lisp +++ b/src/compiler/assem.lisp @@ -1179,8 +1179,8 @@ ;; Must be done so that contribs and user code doing ;; low-level stuff don't need to worry about this. (disable-package-locks %%current-segment%% %%current-vop%%)) - (macrolet ((%%current-segment%% () '**current-segment**) - (%%current-vop%% () '**current-vop**)) + (macrolet ((%%current-segment%% () ',seg-var) + (%%current-vop%% () ',vop-var)) ;; KLUDGE: Some host lisps (CMUCL 18e Sparc at least) ;; can't deal with this declaration, so disable it on host. ;; Ditto for later ENABLE-PACKAGE-LOCKS %%C-S%% declaration. @@ -1227,8 +1227,8 @@ `(,name (gen-label))) new-labels)) (declare (ignorable ,vop-var ,seg-var)) - (macrolet ((%%current-segment%% () '**current-segment**) - (%%current-vop%% () '**current-vop**)) + (macrolet ((%%current-segment%% () ',seg-var) + (%%current-vop%% () ',vop-var)) (symbol-macrolet (,@(when (or inherited-labels nested-labels) `((..inherited-labels.. ,nested-labels)))) ,@(mapcar (lambda (form) diff --git a/version.lisp-expr b/version.lisp-expr index c295eee..e15b531 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.3.40" +"1.0.3.41" -- 1.7.10.4