X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fassem.lisp;h=24dfee128698a8ace1ad70d80932663126be0af7;hb=19efdada13c0ca54d5b0249aeeece458f888896e;hp=2e6fd3e987d3b7c9427a2933042b35cb9b9e376a;hpb=30479182014bc1e02f54d330643ca45605e3530d;p=sbcl.git diff --git a/src/compiler/assem.lisp b/src/compiler/assem.lisp index 2e6fd3e..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) @@ -1683,10 +1683,7 @@ (defmacro define-instruction-macro (name lambda-list &body body) (with-unique-names (whole env) (multiple-value-bind (body local-defs) - (sb!kernel:parse-defmacro lambda-list - whole - body - name + (sb!kernel:parse-defmacro lambda-list whole body name 'instruction-macro :environment env) `(eval-when (:compile-toplevel :load-toplevel :execute)