[elephant-cvs] CVS elephant/src/elephant
ieslick
ieslick at common-lisp.net
Thu Feb 8 15:51:02 UTC 2007
Update of /project/elephant/cvsroot/elephant/src/elephant
In directory clnet:/tmp/cvs-serv27108
Modified Files:
serializer2.lisp
Log Message:
Missing checking from Henrik's changes
--- /project/elephant/cvsroot/elephant/src/elephant/serializer2.lisp 2007/02/05 19:33:11 1.18
+++ /project/elephant/cvsroot/elephant/src/elephant/serializer2.lisp 2007/02/08 15:51:01 1.19
@@ -21,9 +21,6 @@
#+cmu
(:import-from :bignum
%bignum-ref)
- #+sbcl
- (:import-from :sb-bignum
- %bignum-ref)
(:import-from :elephant
*circularity-initial-hash-size*
get-cached-instance
@@ -44,7 +41,7 @@
(inline serialize deserialize
slots-and-values
deserialize-bignum
- #+(or sbcl cmu) %bignum-ref)))
+ #+cmu %bignum-ref)))
(uffi:def-type foreign-char :char)
@@ -329,14 +326,14 @@
(buffer-write-byte +positive-bignum+ bs))
(buffer-write-int needed bs)
(loop for i fixnum from 0 below word-size
- ;; this ldb is consing on CMUCL!
+ ;; this ldb is consing on CMUCL/OpenMCL!
;; there is an OpenMCL function which should work
;; and non-cons
do
- #+(or cmu sbcl)
- (buffer-write-uint (%bignum-ref num i) bs)
- #+(or lispworks openmcl allegro)
- (buffer-write-uint (ldb (byte 32 (* 32 i)) num) bs)
+ #+cmu
+ (buffer-write-uint32 (%bignum-ref num i) bs) ;; should fail under 64-bit CMU
+ #-cmu
+ (buffer-write-uint32 (ldb (byte 32 (* 32 i)) num) bs)
)))
;;;
More information about the Elephant-cvs
mailing list