
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, 19c-alpha-osf has been created at b09351d0b7440f482f40fab0ea24ea2b3a799ad1 (commit) - Log ----------------------------------------------------------------- commit b09351d0b7440f482f40fab0ea24ea2b3a799ad1 Author: Raymond Toy <toy.raymond@gmail.com> Date: Sun Sep 14 20:53:09 2014 -0700 Cross-compile script from x86 to alpha. From Fausto Saporito. diff --git a/tools/cross-scripts/cross-x86-alpha.lisp b/tools/cross-scripts/cross-x86-alpha.lisp new file mode 100644 index 0000000..b116e19 --- /dev/null +++ b/tools/cross-scripts/cross-x86-alpha.lisp @@ -0,0 +1,182 @@ +(in-package :cl-user) + +;;; Rename the X86 package and backend so that new-backend does the +;;; right thing. +(rename-package "X86" "OLD-X86") +(setf (c:backend-name c:*native-backend*) "OLD-X86") + +(c::new-backend "ALPHA" + ;; Features to add here + '(:alpha + :conservative-float-type + :hash-new :random-mt19937 + :osf1 :bsd :unix + :cmu :cmu18 :cmu18e + ) + ;; Features to remove from current *features* here + '(:x86-bootstrap :mips :x86 :i486 :pentium :ppro :alien-callback + :propagate-fun-type :propagate-float-type :constrain-float-type + :modular-arith + :openbsd :freebsd :glibc2 :linux :pentium :linkage-table :elf :mp + :stack-checking :heap-overflow-check :sparc :ppc :darwin :complex-fp-vops + :gencgc :cgc :double-double :long-float :new-random :small)) + (setf *features* (remove :modular-arith *features*)) +(clrhash kernel::*modular-funs*) +;;; Extern-alien-name for the new backend. +(in-package :vm) +(setf *features* (remove :modular-arith *features*)) +(defun extern-alien-name (name) + (declare (type simple-string name)) + (concatenate 'string "_" name)) +(export 'extern-alien-name) +(export 'fixup-code-object) +(export 'sanctify-for-execution) + +;;; Compile the new backend. +(pushnew :bootstrap *features*) +(pushnew :building-cross-compiler *features*) +(load "target:tools/comcom") + +;;; Load the new backend. +(setf (search-list "c:") + '("target:compiler/")) +(setf (search-list "vm:") + '("c:alpha/" "c:generic/")) +(setf (search-list "assem:") + '("target:assembly/" "target:assembly/alpha/")) + +;; Load the backend of the compiler. + +(in-package "C") + +(load "vm:vm-macs") +(load "vm:parms") +(load "vm:objdef") +(load "vm:interr") +(load "assem:support") + +(load "target:compiler/srctran") +(load "vm:vm-typetran") +(load "target:compiler/float-tran") +(load "target:compiler/saptran") + +(load "vm:macros") +(load "vm:utils") + +(load "vm:vm") +(load "vm:insts") +(load "vm:primtype") +(load "vm:move") +(load "vm:sap") +(load "vm:system") +(load "vm:char") +(load "vm:float") + +(load "vm:memory") +(load "vm:static-fn") +(load "vm:arith") +(load "vm:cell") +(load "vm:subprim") +(load "vm:debug") +(load "vm:c-call") +(load "vm:print") +(load "vm:alloc") +(load "vm:call") +(load "vm:nlx") +(load "vm:values") +(load "vm:array") +(load "vm:pred") +(load "vm:type-vops") + +(load "assem:assem-rtns") + +(load "assem:array") +(load "assem:arith") +(load "assem:alloc") + +(load "c:pseudo-vops") + +(check-move-function-consistency) + +(load "vm:new-genesis") + +;;; OK, the cross compiler backend is loaded. + +(setf *features* (remove :building-cross-compiler *features*)) + +;;; Info environment hacks. +(macrolet ((frob (&rest syms) + `(progn ,@(mapcar #'(lambda (sym) + `(defconstant ,sym + (symbol-value + (find-symbol ,(symbol-name sym) + :vm)))) + syms)))) + (frob OLD-X86:BYTE-BITS OLD-X86:WORD-BITS + #+long-float OLD-X86:SIMPLE-ARRAY-LONG-FLOAT-TYPE + OLD-X86:SIMPLE-ARRAY-DOUBLE-FLOAT-TYPE + OLD-X86:SIMPLE-ARRAY-SINGLE-FLOAT-TYPE + #+long-float OLD-X86:SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-TYPE + OLD-X86:SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-TYPE + OLD-X86:SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-TYPE + OLD-X86:SIMPLE-ARRAY-UNSIGNED-BYTE-2-TYPE + OLD-X86:SIMPLE-ARRAY-UNSIGNED-BYTE-4-TYPE + OLD-X86:SIMPLE-ARRAY-UNSIGNED-BYTE-8-TYPE + OLD-X86:SIMPLE-ARRAY-UNSIGNED-BYTE-16-TYPE + OLD-X86:SIMPLE-ARRAY-UNSIGNED-BYTE-32-TYPE + OLD-X86:SIMPLE-ARRAY-SIGNED-BYTE-8-TYPE + OLD-X86:SIMPLE-ARRAY-SIGNED-BYTE-16-TYPE + OLD-X86:SIMPLE-ARRAY-SIGNED-BYTE-30-TYPE + OLD-X86:SIMPLE-ARRAY-SIGNED-BYTE-32-TYPE + OLD-X86:SIMPLE-BIT-VECTOR-TYPE + OLD-X86:SIMPLE-STRING-TYPE OLD-X86:SIMPLE-VECTOR-TYPE + OLD-X86:SIMPLE-ARRAY-TYPE OLD-X86:VECTOR-DATA-OFFSET + )) + +(let ((function (symbol-function 'kernel:error-number-or-lose))) + (let ((*info-environment* (c:backend-info-environment c:*target-backend*))) + (setf (symbol-function 'kernel:error-number-or-lose) function) + (setf (info function kind 'kernel:error-number-or-lose) :function) + (setf (info function where-from 'kernel:error-number-or-lose) :defined))) + +(defun fix-class (name) + (let* ((new-value (find-class name)) + (new-layout (kernel::%class-layout new-value)) + (new-cell (kernel::find-class-cell name)) + (*info-environment* (c:backend-info-environment c:*target-backend*))) + (remhash name kernel::*forward-referenced-layouts*) + (kernel::%note-type-defined name) + (setf (info type kind name) :instance) + (setf (info type class name) new-cell) + (setf (info type compiler-layout name) new-layout) + new-value)) +(fix-class 'c::vop-parse) +(fix-class 'c::operand-parse) + +#+random-mt19937 +(declaim (notinline kernel:random-chunk)) + +(setf c:*backend* c:*target-backend*) + +;;; Extern-alien-name for the new backend. +(in-package :vm) +(defun extern-alien-name (name) + (declare (type simple-string name)) + (concatenate 'string "_" name)) +(export 'extern-alien-name) +(export 'fixup-code-object) +(export 'sanctify-for-execution) + +(in-package :cl-user) + +;;; Don't load compiler parts from the target compilation + +(defparameter *load-stuff* nil) + +;; hack, hack, hack: Make old-x86::any-reg the same as +;; x86::any-reg as an SC. Do this by adding old-x86::any-reg +;; to the hash table with the same value as x86::any-reg. + +(let ((ht (c::backend-sc-names c::*target-backend*))) + (setf (gethash 'old-x86::any-reg ht) + (gethash 'alpha::any-reg ht))) commit 16c7e026b7ba8a226d853e84fdf6286b24e329bd Author: rtoy <rtoy> Date: Tue Nov 15 14:50:06 2005 +0000 Update this to reflect current status. o Clean up version numbers o Remove the part about DEFSYSTEM. o Mention we only have UltraSPARC versions. o Remove the OpenBSD/x86 section o Add a section for Mac OS X/ppc. o Remove mention of binaries for Irix/MIPS and Linux/Alpha. diff --git a/general-info/README b/general-info/README index f8593fe..44f8f1c 100644 --- a/general-info/README +++ b/general-info/README @@ -37,25 +37,25 @@ example using cd /usr/local - tar xzf /path/to/cmucl-18e-<platform>.tar.gz + tar xzf /path/to/cmucl-<ver>-<platform>.tar.gz or alternatively, install under a directory in /opt, for example - mkdir /opt/cmucl-18e - cd /opt/cmucl-18e - tar xzf /path/to/cmucl-18e-<platform>.tar.gz + mkdir /opt/cmucl-<ver> + cd /opt/cmucl-<ver> + tar xzf /path/to/cmucl-<ver>-<platform>.tar.gz You can now invoke CMUCL: this should display a banner then show a prompt (the default prompt is an asterisk). % lisp - CMU Common Lisp 18e, running on orion - With core: /prj/cmucl/release-18e/linux/lisp/lisp.core + CMU Common Lisp 19c, running on orion + With core: /prj/cmucl/release-19c/linux/lisp/lisp.core Dumped on: Thu, 2003-04-03 15:47:12+02:00 on orion See <http://www.cons.org/cmucl/> for support information. Loaded subsystems: Python 1.1, target Intel x86 - CLOS 18e (based on PCL September 16 92 PCL (f)) + CLOS based on Gerd's PCL 2004/04/14 03:32:47 * (format t "~&Hello, world!~%") Hello, world! NIL @@ -65,23 +65,11 @@ -extra- tarball), just use REQUIRE: * (require :gray-streams) + * (require :simple-streams) * (require :clx) * (require :clm) * (require :hemlock) - DEFSYSTEM is not included with CMUCL, but can be obtained from - <URL:http://clocc.sf.net/>. It may be installed as a subsystem by - compiling it (using the function COMPILE-FILE), and moving the - resulting defsystem.FASL file to - /usr/local/lib/cmucl/lib/subsystems/defsystem-library.FASL - (where FASL is the file extension of compiled lisp files on your - system, for instance .sparcf or .x86f). You can then say - - * (require :defsystem) - - to load the DEFSYSTEM facility into your running lisp. - - You may wish to edit your site initialization file (in /usr/local/lib/cmucl/site-init.lisp). @@ -92,11 +80,9 @@ (also known respectively as Solaris 7 and Solaris 8), and should work on any later versions. - If you have an UltraSPARC processor you can get the v9 binaries, - which use instructions which are only present on SPARC-v9 (also called - v8plus for 32bit binaries) implementations; otherwise you should get - the binaries without v9 in the name of the tarball, which only require - a SPARC-v8 implementation. + Currently, only UltraSPARC binaries are provided, so you need an + UltraSPARC machine. For older machines, you will need a special + build. Please ask on the mailing lists if such builds are available. If you have an UltraSPARC the command uname -m will say sun4u, if you have an older machine such as a SparcStation it will probably say sun4m. @@ -126,17 +112,18 @@ 4.x releases. - +++ OpenBSD/x86 - The release binaries should work with any i486 or better processor. - The binaries were built on OpenBSD 3.1. + +++ Mac OS X/ppc + The release binaries are built on a Mac OS X 10.4.x system. They + are also known to work on 10.3.x. They may not work on 10.2.x. + The binaries should work on any Power PC system, including G3, G4, + and G5's. +++ Other platforms - Binaries for other platforms supported by 18e sources might be made + Binaries for other platforms supported by 19c sources might be made available by contributors at later dates, the details of which were - not available at release time. Especially binaries for Irix/MIPS - and Linux/Alpha are likely to be available. Please see the README - file distributed with those binaries for details on platform-specific + not available at release time. Please see the README file + distributed with those binaries for details on platform-specific notes for those platforms. @@ -151,4 +138,4 @@ Enjoy using CMUCL! -2003-04-08 +2005-11-15 commit 2564cc4bd9bdcf8b462593f33fd915d85ba75492 Author: rtoy <rtoy> Date: Mon Nov 14 16:33:36 2005 +0000 Update the date of the manual. diff --git a/docs/cmu-user/cmu-user.tex b/docs/cmu-user/cmu-user.tex index a2e1981..444da1c 100644 --- a/docs/cmu-user/cmu-user.tex +++ b/docs/cmu-user/cmu-user.tex @@ -46,7 +46,7 @@ \newcommand{\keywords}{lisp, Common Lisp, manual, compiler, programming language implementation, programming environment} -\date{CMUCL snapshot 2005-08} +\date{Nov 2005 \\ Release 19c} % \date{May 1, 2004 \\ Release 19a} commit 3f3ef1a1c072c1ffae129a6863c4e28fa2acd132 Author: rtoy <rtoy> Date: Tue Nov 8 17:32:37 2005 +0000 Remove the work-in-progress line. diff --git a/general-info/release-19c.txt b/general-info/release-19c.txt index cb9769b..e904dc5 100644 --- a/general-info/release-19c.txt +++ b/general-info/release-19c.txt @@ -1,7 +1,5 @@ ========================== C M U C L 19 c ============================= -[--- WORK IN PROGRESS --- DO NOT DISTRIBUTE ---] - The CMUCL project is pleased to announce the release of CMUCL 19c. This is a major release which contains numerous enhancements and bugfixes from the 19b release. commit 2312a5b1e7bca9ff2fc0c68322c5a336b0c7b9e5 Author: rtoy <rtoy> Date: Fri Oct 21 13:49:34 2005 +0000 Merge: Fix typo. It's ":-", not "-:"! diff --git a/tools/build-world.sh b/tools/build-world.sh index 5cfe684..9a76e10 100755 --- a/tools/build-world.sh +++ b/tools/build-world.sh @@ -43,7 +43,7 @@ $LISP "$@" -noinit -nositeinit <<EOF (comf "target:tools/setup" :load t) (setq *gc-verbose* nil) -(setq *interactive* ${INTERACTIVE-:nil}) +(setq *interactive* ${INTERACTIVE:-nil}) (setq debug:*debug-print-level* nil) (setq debug:*debug-print-length* nil) commit a5a1acd3bf33594becbb787bd3c2fa34f2d9b917 Merge: ebda738 24d534c Author: cvs2git <cvs2git> Date: Tue Oct 18 13:29:13 2005 +0000 This commit was manufactured by cvs2svn to create branch 'release-19c- branch'. ----------------------------------------------------------------------- hooks/post-receive -- CMU Common Lisp