[Openmcl-cvs-notifications] r14556 - in /trunk/source/compiler: ARM/arm-asm.lisp backend.lisp subprims.lisp
gb at clozure.com
gb at clozure.com
Wed Jan 5 14:45:23 CST 2011
Author: gb
Date: Wed Jan 5 14:45:23 2011
New Revision: 14556
Log:
Let's try that again ...
Modified:
trunk/source/compiler/ARM/arm-asm.lisp
trunk/source/compiler/backend.lisp
trunk/source/compiler/subprims.lisp
Modified: trunk/source/compiler/ARM/arm-asm.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
--- trunk/source/compiler/ARM/arm-asm.lisp (original)
+++ trunk/source/compiler/ARM/arm-asm.lisp Wed Jan 5 14:45:23 2011
@@ -52,11 +52,11 @@
(if (and x (or (symbolp x) (stringp x)))
(let* ((info (find x arm::*arm-subprims* :test #'string-equal :key #'c=
cl::subprimitive-info-name)))
(when info
- (+ (ccl::backend-subprims-bias ccl::*target-backend*)
+ (+ (ccl::backend-real-subprims-bias ccl::*target-backend*)
(ccl::subprimitive-info-offset info))))))
=
(defun arm-subprimitive-name (addr)
- (let* ((info (find (- addr (ccl::backend-subprims-bias ccl::*target-back=
end*)) arm::*arm-subprims* :key #'ccl::subprimitive-info-offset)))
+ (let* ((info (find (- addr (ccl::backend-real-subprims-bias ccl::*target=
-backend*)) arm::*arm-subprims* :key #'ccl::subprimitive-info-offset)))
(when info
(string (ccl::subprimitive-info-name info)))))
=
Modified: trunk/source/compiler/backend.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
--- trunk/source/compiler/backend.lisp (original)
+++ trunk/source/compiler/backend.lisp Wed Jan 5 14:45:23 2011
@@ -36,6 +36,12 @@
(defconstant platform-os-freebsd 4)
(defconstant platform-os-windows 5)
(defconstant platform-os-android 6)
+
+(defun backend-real-lowmem-bias (backend)
+ (let* ((b (backend-lowmem-bias backend)))
+ (if (atom b) b (car b))))
+
+
=
(defstruct backend
(name :a :type keyword)
@@ -65,15 +71,9 @@
;; difference between canonical static address for arch and this
;; target's. Usually 0.
;; Can be a cons of (static-area-bias . subprims-bias)
- (%lowmem-bias 0))
-
-(defun backend-lowmem-bias (backend)
- (let* ((b (backend-%lowmem-bias backend)))
- (if (atom b) b (car b))))
-
-(defun backend-subprims-bias (backend)
- (let* ((b (backend-%lowmem-bias backend)))
- (if (atom b) b (cdr b))))
+ (lowmem-bias 0))
+
+
=
(defmethod print-object ((b backend) s)
(print-unreadable-object (b s :type t :identity t)
@@ -492,13 +492,13 @@
=
(defun target-nil-value (&optional (backend *target-backend*))
(+ (arch::target-nil-value (backend-target-arch backend))
- (backend-lowmem-bias backend)))
+ (backend-real-lowmem-bias backend)))
=
(defun target-t-value (&optional (backend *target-backend*))
(let* ((arch (backend-target-arch backend)))
(+ (arch::target-nil-value arch)
(arch::target-t-offset arch)
- (backend-lowmem-bias backend))))
+ (backend-real-lowmem-bias backend))))
=
=
=
Modified: trunk/source/compiler/subprims.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
--- trunk/source/compiler/subprims.lisp (original)
+++ trunk/source/compiler/subprims.lisp Wed Jan 5 14:45:23 2011
@@ -42,11 +42,15 @@
(subprimitive-info-offset sprec)
(error "subprim named ~s not found." name))))
=
+(defun backend-real-subprims-bias (backend)
+ (let* ((b (backend-lowmem-bias backend)))
+ (if (atom b) b (cdr b))))
+
(defun subprim-name->offset (name &optional (backend *target-backend*))
;; Don't care about speed, but for bootstrapping reasons avoid typecheck=
ing
;; against symbols in the arch package.
(declare (optimize (speed 3) (safety 0)))
- (+ (backend-subprims-bias backend)
+ (+ (backend-real-subprims-bias backend)
(%subprim-name->offset name (arch::target-subprims-table
(backend-target-arch backend)))))
=
More information about the Openmcl-cvs-notifications
mailing list