blowfish on sbcl-0.9.9-darwin-ppc - Details

Author:Alain Picard
Description:Blowfish encryption algoritm
Started at:2006-04-15 23:45:50
Ended at:2006-04-15 23:46:09
Elapsed time (seconds):19
Error:The constant BLOWFISH::+INITIAL-P-ARRAY+ is being redefined (from #(608135816 2242054355 320440878 57701188 2752067618 698298832 137296536 3964562569 1160258022 953160567 3193202383 887688300 3232508343 3380367581 1065670069 3041331479 2450970073 2306472731) to #(608135816 2242054355 320440878 57701188 2752067618 698298832 137296536 3964562569 1160258022 953160567 3193202383 887688300 3232508343 3380367581 1065670069 3041331479 2450970073 2306472731)) See also: The ANSI Standard, Macro DEFCONSTANT The SBCL Manual, Node \"Idiosyncrasies\"
Most recent change:2004-03-06 04:36:17
Most recent file:/Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/blowfish/blowfish.asd

REPL Output

;;; ASDF-INSTALL: Downloading 15507 bytes from http://members.optusnet.com.au/apicard/blowfish.tar.gz to /Users/gwking/temporary/asdf-test/BLOWFISH.asdf-install-tmp ...

;;; ASDF-INSTALL: Installing /Users/gwking/temporary/asdf-test/BLOWFISH.asdf-install-tmp in /Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/, /Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site-systems/
blowfish/
blowfish/blowfish.lisp
blowfish/blowfish.asd

#P"/Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/blowfish/" 
#P"/Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/blowfish/" 
; compiling file "/Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/blowfish/blowfish.lisp" (written 06 MAR 2004 04:36:17 AM):
; compiling (DEFPACKAGE :BLOWFISH ...)
; compiling (IN-PACKAGE :BLOWFISH)
; compiling (DEFTYPE UNSIGNED-BYTE-32 ...)
; compiling (DEFTYPE BLOWFISH-ARRAY ...)
; compiling (DEFUN MAKE-BLOWFISH-ARRAY ...)
; compiling (DEFINE-COMPILER-MACRO MOD32-ADD ...)
; compiling (DEFINE-COMPILER-MACRO FAST-32BIT-XOR ...)
; compiling (DEFMACRO XORF ...)
; compiling (DECLAIM (INLINE SPLIT-64-BIT))
; compiling (DEFUN SPLIT-64-BIT ...)
; compiling (DECLAIM (INLINE JOIN-32-BIT))
; compiling (DEFUN JOIN-32-BIT ...)
; compiling (DEFUN STRING->KEY-VEC ...)
; compiling (DEFUN GET-32BIT-NUM ...)
; compiling (DEFUN SPLIT-NUMBER ...)
; compiling (DEFMACRO WITH-NUMERIC-FIELDS ...)
; compiling (DEFMACRO DEFCONSTANT* ...)
; compiling (DEFCONSTANT* +INITIAL-P-ARRAY+ ...)
; compiling (DEFCONSTANT* +INITIAL-S-BOX-0+ ...)
; compiling (DEFCONSTANT* +INITIAL-S-BOX-1+ ...)
; compiling (DEFCONSTANT* +INITIAL-S-BOX-2+ ...)
; compiling (DEFCONSTANT* +INITIAL-S-BOX-3+ ...)
; compiling (DEFSTRUCT (BLOWFISH-BUFFER #) ...)
; compiling (DEFSTRUCT (BLOWFISH-KEY #) ...)
; compiling (DEFUN BLOWFISH-ENCRYPT-STRING ...)
; compiling (DECLAIM (INLINE BLOWFISH-ENCRYPT))
; compiling (DEFUN BLOWFISH-ENCRYPT ...)
; compiling (DECLAIM (INLINE BLOWFISH-DECRYPT))
; compiling (DEFUN BLOWFISH-DECRYPT ...)
; compiling (DECLAIM (INLINE BLOWFISH-F))
; compiling (DEFUN BLOWFISH-F ...)

; file: /Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/blowfish/blowfish.lisp
; in: DEFUN BLOWFISH-F
;     (DEFUN BLOWFISH::BLOWFISH-F (BLOWFISH::NUM BLOWFISH::S-BOXES)
;     "The blowfish F function.
; 
;   F(xL) = ( (S1,a + S2,b mod 2^32) XOR S3,c) + S4,d mod 2^32
;   Where a,b,c,d are the 4 bytes of num. and Si are
;   the 4 entries of the vector of s-boxes."
;     (DECLARE (OPTIMIZE (SAFETY 0) (DEBUG 0) (SPEED 3)))
;     (DECLARE (TYPE BLOWFISH::UNSIGNED-BYTE-32 BLOWFISH::NUM))
;     (DECLARE (TYPE (SIMPLE-VECTOR 4) BLOWFISH::S-BOXES))
;     (BLOWFISH::WITH-NUMERIC-FIELDS
;      ((BLOWFISH::A BLOWFISH::B BLOWFISH::C BLOWFISH::D) BLOWFISH::NUM :SIZE 8)
;      (DECLARE
;       (TYPE UNSIGNED-BYTE BLOWFISH::A BLOWFISH::B BLOWFISH::C BLOWFISH::D))
;      (MACROLET ((BLOWFISH::LOOKUP-SBOX #
;                   `#))
;        (THE BLOWFISH::UNSIGNED-BYTE-32 (BLOWFISH::MOD32-ADD # #)))))
; --> PROGN EVAL-WHEN SB-IMPL::%DEFUN SB-IMPL::%DEFUN SB-INT:NAMED-LAMBDA 
; ==>
;   #'(SB-INT:NAMED-LAMBDA BLOWFISH::BLOWFISH-F
;                          (BLOWFISH::NUM BLOWFISH::S-BOXES)
;                          (DECLARE (OPTIMIZE (SAFETY 0) (DEBUG 0) (SPEED 3)))
;                          (DECLARE
;                           (TYPE BLOWFISH::UNSIGNED-BYTE-32 BLOWFISH::NUM))
;                          (DECLARE (TYPE (SIMPLE-VECTOR 4) BLOWFISH::S-BOXES))
;                          (BLOCK BLOWFISH::BLOWFISH-F
;                            (BLOWFISH::WITH-NUMERIC-FIELDS
;                             ((BLOWFISH::A BLOWFISH::B BLOWFISH::C BLOWFISH::D)
;                              BLOWFISH::NUM :SIZE 8)
;                             (DECLARE
;                              (TYPE UNSIGNED-BYTE
;                                    BLOWFISH::A
;                                    BLOWFISH::B
;                                    BLOWFISH::C
;                                    BLOWFISH::D))
;                             (MACROLET (#)
;                               (THE BLOWFISH::UNSIGNED-BYTE-32 #)))))
; 
; note: doing unsigned word to integer coercion (cost 20) to "<return value>"

; compiling (DEFUN BLOWFISH-ROUND ...)
; compiling (DEFUN BLOWFISH-FORWARD-ROUND ...)
; compiling (DEFUN BLOWFISH-REVERSE-ROUND ...)
; compiling (DEFUN INITIALIZE-BLOWFISH-BOXES ...)
; compiling (DEFUN MIX-VECTOR! ...)
; compiling (DEFUN MIX-P-ARRAY! ...)
; compiling (DEFUN MIX-S-BOXES! ...)
; compiling (DEFUN XOR-P-ARRAY-WITH-REPEATED-KEY! ...)

; file: /Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/blowfish/blowfish.lisp
; in: DEFUN XOR-P-ARRAY-WITH-REPEATED-KEY!
;     (BLOWFISH::XORF (AREF BLOWFISH::P-ARRAY BLOWFISH::I)
;                   (SVREF BLOWFISH::KEY-SEQ (MOD BLOWFISH::I BLOWFISH::LEN)))
; --> SETF SB-KERNEL:%ASET BLOWFISH::FAST-32BIT-XOR 
; ==>
;   (LOGXOR (AREF BLOWFISH::P-ARRAY BLOWFISH::I)
;           (SVREF BLOWFISH::KEY-SEQ (MOD BLOWFISH::I BLOWFISH::LEN)))
; 
; note: forced to do static-fun Two-arg-xor (cost 53)
;       unable to do inline fixnum arithmetic (cost 2) because:
;       The first argument is a (UNSIGNED-BYTE 32), not a FIXNUM.
;       The second argument is a INTEGER, not a FIXNUM.
;       The result is a (VALUES (UNSIGNED-BYTE 32)
;                               &OPTIONAL), not a (VALUES FIXNUM &REST T).
;       unable to do inline (signed-byte 32) arithmetic (cost 3) because:
;       The first argument is a (UNSIGNED-BYTE 32), not a (SIGNED-BYTE 32).
;       The second argument is a INTEGER, not a (SIGNED-BYTE 32).
;       The result is a (VALUES (UNSIGNED-BYTE 32)
;                               &OPTIONAL), not a (VALUES (SIGNED-BYTE 32)
;                                                         &REST
;                                                         T).
;       etc.
; 
; note: doing unsigned word to integer coercion (cost 20), for:
;       the first argument of static-fun Two-arg-xor

; compiling (DEFUN MAKE-BLOWFISH-KEY ...)
; compiling (DEFUN TEST-INITIAL-BLOWFISH-ROUND ...)
; compiling (DEFPARAMETER *TEST-DATA* ...)
; compiling (DEFUN NUMBER->BLOWFISH-BUFFER ...)
; compiling (DEFUN TEST-VECTOR ...)
; compiling (DEFUN RUN-TEST-HARNESS ...)
; compiling (DEFUN TEST-SPEED ...)
; compiling (DEFMACRO WITH-BUFFER-CHUNKS ...)
; compiling (DEFUN BLOWFISH-ENCRYPT-STRING-CBC ...)
; compiling (DEFUN BLOWFISH-DECRYPT-STRING-CBC ...)
; compiling (DEFUN 32BIT-LIST->STRING ...)

; /Users/gwking/temporary/asdf-test/input/sbcl0-9-9/site/blowfish/blowfish.fasl written
; compilation finished in 0:00:05
STYLE-WARNING: redefining MAKE-BLOWFISH-ARRAY in DEFUN
; 
; compilation unit aborted
;   caught 1 fatal ERROR condition
;   printed 3 notes
The constant BLOWFISH::+INITIAL-P-ARRAY+ is being redefined (from
#(608135816 2242054355 320440878 57701188 2752067618 698298832 137296536
  3964562569 1160258022 953160567 3193202383 887688300 3232508343 3380367581
  1065670069 3041331479 2450970073 2306472731)
to
#(608135816 2242054355 320440878 57701188 2752067618 698298832 137296536
  3964562569 1160258022 953160567 3193202383 887688300 3232508343 3380367581
  1065670069 3041331479 2450970073 2306472731))
See also:
  The ANSI Standard, Macro DEFCONSTANT
  The SBCL Manual, Node "Idiosyncrasies"