[Openmcl-cvs-notifications] r13166 - in /release/1.4/source/compiler: nx.lisp nx0.lisp
gb at clozure.com
gb at clozure.com
Tue Nov 3 21:52:06 EST 2009
Author: gb
Date: Tue Nov 3 21:52:06 2009
New Revision: 13166
Log:
Propagate r13164 to 1.4 (fixes ticket:617, albeit suboptimally.)
Modified:
release/1.4/source/compiler/nx.lisp
release/1.4/source/compiler/nx0.lisp
Modified: release/1.4/source/compiler/nx.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- release/1.4/source/compiler/nx.lisp (original)
+++ release/1.4/source/compiler/nx.lisp Tue Nov 3 21:52:06 2009
@@ -154,6 +154,8 @@
=
(defparameter *nx-discard-xref-info-hook* nil)
=
+(defparameter *nx-in-frontend* nil)
+
(defun compile-named-function (def &key name env policy load-time-eval-tok=
en target
function-note keep-lambda keep-symbols sou=
rce-notes
(record-pc-mapping *record-pc-mapping*)
@@ -179,6 +181,7 @@
(env (new-lexical-environment env)))
(setf (lexenv.variables env) 'barrier)
(let* ((*target-backend* (or (if target (find-backend target)) *host-=
backend*))
+ (*nx-in-frontend* t)
(afunc (nx1-compile-lambda =
name =
def
Modified: release/1.4/source/compiler/nx0.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- release/1.4/source/compiler/nx0.lisp (original)
+++ release/1.4/source/compiler/nx0.lisp Tue Nov 3 21:52:06 2009
@@ -465,12 +465,14 @@
'number)
(%cadr form)))
(if (eq op (%nx1-operator lexical-referenc=
e))
- (let* ((var (cadr form))
- (bits (nx-var-bits var))
- (punted (logbitp $vbitpunted bits=
)))
- (if (or punted
- (eql 0 (%ilogand $vsetqmask bi=
ts)))
- (var-inittype var)))
+ (locally (declare (special *nx-in-fronte=
nd*))
+ (unless *nx-in-frontend*
+ (let* ((var (cadr form))
+ (bits (nx-var-bits var))
+ (punted (logbitp $vbitpunted =
bits)))
+ (if (or punted
+ (eql 0 (%ilogand $vsetqmas=
k bits)))
+ (var-inittype var)))))
(if (or (eq op (%nx1-operator %aref1))
(eq op (%nx1-operator simple-typ=
ed-aref2))
(eq op (%nx1-operator general-ar=
ef2))
More information about the Openmcl-cvs-notifications
mailing list