[Cmucl-cvs] [git] CMU Common Lisp branch master updated. 20f-29-g261157b
Raymond Toy
rtoy at common-lisp.net
Tue Oct 7 05:16:32 UTC 2014
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMU Common Lisp".
The branch, master has been updated
via 261157bc0f082d35dec3ef0dbd7315c263f45a3e (commit)
via c453dd317387c012ad7ee28603352ccc4be2ea50 (commit)
from b2b4d88a7f92c5e9f7225f18c41a8f18c87e6c3c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 261157bc0f082d35dec3ef0dbd7315c263f45a3e
Author: Raymond Toy <toy.raymond at gmail.com>
Date: Mon Oct 6 22:16:15 2014 -0700
Update sparc cross-compile script.
Needed to add OLD-VM:CHAR-BYTES. Cross-compile works again on sparc.
diff --git a/src/tools/cross-scripts/cross-sparc-sparc.lisp b/src/tools/cross-scripts/cross-sparc-sparc.lisp
index 20c4c67..0746747 100644
--- a/src/tools/cross-scripts/cross-sparc-sparc.lisp
+++ b/src/tools/cross-scripts/cross-sparc-sparc.lisp
@@ -145,6 +145,7 @@
syms))))
(frob OLD-VM:BYTE-BITS OLD-VM:WORD-BITS
OLD-VM:CHAR-BITS
+ OLD-VM:CHAR-BYTES
OLD-VM:LOWTAG-BITS
#+long-float OLD-VM:SIMPLE-ARRAY-LONG-FLOAT-TYPE
OLD-VM:SIMPLE-ARRAY-DOUBLE-FLOAT-TYPE
commit c453dd317387c012ad7ee28603352ccc4be2ea50
Author: Raymond Toy <toy.raymond at gmail.com>
Date: Mon Oct 6 21:19:25 2014 -0700
Update ppc cross-compile script.
Copied some things over from the sparc cross-compile script, and added
the needed OLD-VM:CHAR-BYTES.
With these changes, ppc can now do a ppc-to-ppc cross compile.
diff --git a/src/tools/cross-scripts/cross-ppc-ppc-darwin.lisp b/src/tools/cross-scripts/cross-ppc-ppc-darwin.lisp
index 6868295..3be7ae6 100644
--- a/src/tools/cross-scripts/cross-ppc-ppc-darwin.lisp
+++ b/src/tools/cross-scripts/cross-ppc-ppc-darwin.lisp
@@ -32,10 +32,17 @@
(defun extern-alien-name (name)
(declare (type simple-string name))
(concatenate 'string "_" name))
+;; When compiling the compiler, vm:fixup-code-object and
+;; vm:sanctify-for-execution are undefined. Import these to get rid
+;; of that error.
+(import 'old-vm::fixup-code-object)
+(import 'old-vm::sanctify-for-execution)
(export 'extern-alien-name)
(export 'fixup-code-object)
(export 'sanctify-for-execution)
+(in-package :cl-user)
+
;;; Compile the new backend.
(pushnew :bootstrap *features*)
(pushnew :building-cross-compiler *features*)
@@ -118,6 +125,8 @@
syms))))
(frob OLD-VM:BYTE-BITS OLD-VM:WORD-BITS
OLD-VM:CHAR-BITS
+ OLD-VM:CHAR-BYTES
+ OLD-VM:LOWTAG-BITS
#+long-float OLD-VM:SIMPLE-ARRAY-LONG-FLOAT-TYPE
OLD-VM:SIMPLE-ARRAY-DOUBLE-FLOAT-TYPE
OLD-VM:SIMPLE-ARRAY-SINGLE-FLOAT-TYPE
@@ -136,17 +145,25 @@
OLD-VM:SIMPLE-BIT-VECTOR-TYPE
OLD-VM:SIMPLE-STRING-TYPE OLD-VM:SIMPLE-VECTOR-TYPE
OLD-VM:SIMPLE-ARRAY-TYPE OLD-VM:VECTOR-DATA-OFFSET
+ OLD-VM:DOUBLE-FLOAT-DIGITS
OLD-VM:DOUBLE-FLOAT-EXPONENT-BYTE
OLD-VM:DOUBLE-FLOAT-NORMAL-EXPONENT-MAX
OLD-VM:DOUBLE-FLOAT-SIGNIFICAND-BYTE
OLD-VM:SINGLE-FLOAT-EXPONENT-BYTE
OLD-VM:SINGLE-FLOAT-NORMAL-EXPONENT-MAX
OLD-VM:SINGLE-FLOAT-SIGNIFICAND-BYTE
- ))
-
-;; Modular arith hacks
+ )
+ #+double-double
+ (frob OLD-VM:SIMPLE-ARRAY-COMPLEX-DOUBLE-DOUBLE-FLOAT-TYPE
+ OLD-VM:SIMPLE-ARRAY-DOUBLE-DOUBLE-FLOAT-TYPE)
+ )
+
+;; Modular arith hacks. When cross-compiling, the compiler wants to
+;; constant-fold some stuff, and it needs the following functions to
+;; do so. This just gets rid of the hundreds of errors that happen.
(setf (fdefinition 'vm::ash-left-mod32) #'old-ppc::ash-left-mod32)
(setf (fdefinition 'vm::lognot-mod32) #'old-ppc::lognot-mod32)
+;; End modular arith hacks
;; Fused multiply hack. Don't know why this is needed for a cross-compile
(setf (fdefinition 'vm::fused-multiply-add) #'old-ppc::fused-multiply-add)
-----------------------------------------------------------------------
Summary of changes:
src/tools/cross-scripts/cross-ppc-ppc-darwin.lisp | 23 ++++++++++++++++++---
src/tools/cross-scripts/cross-sparc-sparc.lisp | 1 +
2 files changed, 21 insertions(+), 3 deletions(-)
hooks/post-receive
--
CMU Common Lisp
More information about the cmucl-cvs
mailing list