[Git][cmucl/cmucl][sparc64-dev] Add solaris64-features.lisp
Raymond Toy
rtoy at common-lisp.net
Sat Dec 24 19:09:50 UTC 2016
Raymond Toy pushed to branch sparc64-dev at cmucl / cmucl
Commits:
19bb3ddb by Raymond Toy at 2016-12-24T11:09:33-08:00
Add solaris64-features.lisp
For now solairs64-features.lisp is the same as solaris-features.lisp,
excepti it adds :sparc64 to *features*.
Update create-target.sh to use solaris64-features.lisp when hte config
is sparc64.
- - - - -
2 changed files:
- bin/create-target.sh
- + src/tools/setenv-scripts/solaris64-features.lisp
Changes:
=====================================
bin/create-target.sh
=====================================
--- a/bin/create-target.sh
+++ b/bin/create-target.sh
@@ -63,6 +63,7 @@ uname_m=`uname -m 2>/dev/null`
case $lisp_variant in
*linux*) lvshort=linux;;
*freebsd*) lvshort=freebsd;;
+ *sparc64*) lvshort=solaris64;;
*solaris*|sparc*) lvshort=solaris;;
*) lvshort=unknown;;
esac
@@ -118,7 +119,8 @@ echo '#error You need to run genesis (via build-world.sh) before compiling the s
cat $setenv_dir/base-features.lisp
case $lvshort in
linux|freebsd) gcname=":gencgc"; sed "s;@@gcname@@;$gcname;" $setenv_dir/$lvshort-features.lisp >> setenv.lisp;;
+ solaris64) cat $setenv_dir/solaris64-features.lisp;;
solaris) cat $setenv_dir/solaris-features.lisp;;
*) sed "s;@@LISP@@;$lisp_variant;" $setenv_dir/unknown.lisp;;
- esac
+ esac2
) > ../setenv.lisp || quit "Can't create setenv.lisp"
=====================================
src/tools/setenv-scripts/solaris64-features.lisp
=====================================
--- /dev/null
+++ b/src/tools/setenv-scripts/solaris64-features.lisp
@@ -0,0 +1,24 @@
+;; e.g. for Solaris on sparc you probably want some of these:
+;;(pushnew :sparc *features*)
+;;(pushnew :svr4 *features*)
+
+;; Solaris supports linkage-table
+;;(pushnew :linkage-table *features*)
+
+;; CPU selection:
+;; Sparc-v7 gives us fsqrt instruction
+;;(pushnew :sparc-v7 *features*)
+;;(setf *features* (remove :sparc-v7 *features*))
+;; Sparc-v8 gives us an integer multiply and divide instruction
+;;(pushnew :sparc-v8 *features*)
+;;(setf *features* (remove :sparc-v8 *features*))
+;; Sparc-v9 gives us the extra FP registers, fast bignum multiply and
+;; floor, other float operations available on the Sparc V9, and other
+;; assorted V9 features.
+;;(pushnew :sparc-v9 *features*)
+;;(setf *features* (remove :sparc-v9 *features*))
+
+;; This enables some hand-written vops for complex float arithmetic.
+;;
+;;(pushnew :complex-fp-vops *features*)
+(pushnew :sparc64 *features*)
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/commit/19bb3ddb0dbee98c8be7f8ef6cf57ec23dd7b4ea
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20161224/fec24f50/attachment-0001.html>
More information about the cmucl-cvs
mailing list