clasp
clasp copied to clipboard
New problem compliing ironclad: Compiler loops
Code at issue
The following loops:
(ql:quickload :ironclad)
Context
- happens while compiling "ironclad" "src" "ciphers" "serpent"
- reaches
BIR-TRANSFORMATIONS
andCC-BIR-TO-BMIR:ASSIGN-MODULE-RTYPES
andCC-BIR-TO-BMIR::ASSIGN-INSTRUCTION-RTYPES
- A backtrace in the loop shows:
6: (CORE::SIMPLE-TERMINAL-INTERRUPT)
8: (CORE:TERMINAL-INTERRUPT)
13: (CONS :OBJECT NIL)
14: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::T0 @0x150f22831>)
19: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::T0 @0x150f22831>)
21: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::T0 @0x151376dc1>)
26: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T0 @0x151376dc1>)
30: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T0 @0x151376dc1>)
32: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T0 @0x15136b0b1>)
37: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T0 @0x15136b0b1>)
41: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T0 @0x15136b0b1>)
43: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T0 @0x15136b031>)
48: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T0 @0x15136b031>)
52: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T0 @0x15136b031>)
54: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::T4 @0x150f16451>)
59: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::T4 @0x150f16451>)
64: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::T4 @0x150f16451>)
66: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::T4 @0x1516a86b1>)
71: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T4 @0x1516a86b1>)
75: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T4 @0x1516a86b1>)
77: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T4 @0x1516a8631>)
82: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T4 @0x1516a8631>)
86: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T4 @0x1516a8631>)
88: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T4 @0x1516a7a51>)
93: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T4 @0x1516a7a51>)
97: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T4 @0x1516a7a51>)
99: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::B3 @0x150fc94b1>)
104: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::B3 @0x150fc94b1>)
109: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::B3 @0x150fc94b1>)
111: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::B3 @0x151b610a1>)
116: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B3 @0x151b610a1>)
120: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B3 @0x151b610a1>)
122: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::B3 @0x151b69231>)
127: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B3 @0x151b69231>)
131: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B3 @0x151b69231>)
133: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::B3 @0x151b68151>)
138: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B3 @0x151b68151>)
142: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B3 @0x151b68151>)
144: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::T1 @0x150f22631>)
149: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::T1 @0x150f22631>)
154: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::T1 @0x150f22631>)
156: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::T1 @0x1518dee11>)
161: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T1 @0x1518dee11>)
165: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T1 @0x1518dee11>)
167: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T1 @0x1518dcdc1>)
172: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T1 @0x1518dcdc1>)
176: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T1 @0x1518dcdc1>)
178: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T1 @0x1518d6421>)
183: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T1 @0x1518d6421>)
187: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T1 @0x1518d6421>)
189: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::B0 @0x150f578a1>)
194: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::B0 @0x150f578a1>)
199: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::B0 @0x150f578a1>)
201: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::B0 @0x151b690b1>)
206: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B0 @0x151b690b1>)
210: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B0 @0x151b690b1>)
212: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::B0 @0x151b73c91>)
217: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B0 @0x151b73c91>)
221: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B0 @0x151b73c91>)
223: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::B0 @0x151b73c31>)
228: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B0 @0x151b73c31>)
232: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B0 @0x151b73c31>)
234: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::T3 @0x150f16511>)
239: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::T3 @0x150f16511>)
244: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::T3 @0x150f16511>)
246: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::T3 @0x1515835d1>)
251: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T3 @0x1515835d1>)
255: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T3 @0x1515835d1>)
257: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T3 @0x1515825d1>)
262: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T3 @0x1515825d1>)
266: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T3 @0x1515825d1>)
268: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T3 @0x151582541>)
273: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T3 @0x151582541>)
277: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T3 @0x151582541>)
279: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::B1 @0x150f76331>)
284: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::B1 @0x150f76331>)
289: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::B1 @0x150f76331>)
291: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::B1 @0x151b75f61>)
296: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B1 @0x151b75f61>)
300: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B1 @0x151b75f61>)
302: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::B1 @0x151b75ed1>)
307: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B1 @0x151b75ed1>)
311: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B1 @0x151b75ed1>)
313: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::B1 @0x151b76f11>)
318: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B1 @0x151b76f11>)
322: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B1 @0x151b76f11>)
324: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::T2 @0x150f165d1>)
329: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::T2 @0x150f165d1>)
334: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::T2 @0x150f165d1>)
336: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::T2 @0x1518dcc71>)
341: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T2 @0x1518dcc71>)
345: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T2 @0x1518dcc71>)
347: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T2 @0x1518dfeb1>)
352: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T2 @0x1518dfeb1>)
356: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T2 @0x1518dfeb1>)
358: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:THEI CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:THEI> #<OUTPUT IRONCLAD::T2 @0x1518dfe31>)
363: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::T2 @0x1518dfe31>)
367: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::T2 @0x1518dfe31>)
369: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:WRITEVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:WRITEVAR> #<VARIABLE IRONCLAD::B2 @0x150fa8c91>)
374: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:VARIABLE)) #<VARIABLE IRONCLAD::B2 @0x150fa8c91>)
379: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<VARIABLE IRONCLAD::B2 @0x150fa8c91>)
381: ((METHOD CC-BIR-TO-BMIR::%DEFINITION-RTYPE (CLEAVIR-BIR:READVAR CLEAVIR-BIR:DATUM)) #<CLEAVIR-BIR:READVAR> #<OUTPUT IRONCLAD::B2 @0x1510998b1>)
386: ((METHOD CC-BIR-TO-BMIR::DEFINITION-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B2 @0x1510998b1>)
390: (CC-BIR-TO-BMIR::DEFINITION-RTYPE #<OUTPUT IRONCLAD::B2 @0x1510998b1>)
392: ((METHOD CC-BIR-TO-BMIR::COMPUTE-RTYPE (CLEAVIR-BIR:OUTPUT)) #<OUTPUT IRONCLAD::B2 @0x1510998b1>)
397: (CC-BIR-TO-BMIR::COMPUTE-RTYPE #<OUTPUT IRONCLAD::B2 @0x1510998b1>)
399: (CC-BIR-TO-BMIR::MAYBE-ASSIGN-RTYPE #<OUTPUT IRONCLAD::B2 @0x1510998b1>)
402: (CORE:TRACE-APPLY0 #<FUNCTION CC-BIR-TO-BMIR::MAYBE-ASSIGN-RTYPE> (#<OUTPUT IRONCLAD::B2 @0x1510998b1>))
403: (CORE::TRACE-LAMBDA #<OUTPUT IRONCLAD::B2 @0x1510998b1>)
407: (MAPC #<FUNCTION CORE::TRACE-LAMBDA> (#<OUTPUT IRONCLAD::B2 @0x1510998b1>))
409: (CC-BIR-TO-BMIR::ASSIGN-INSTRUCTION-RTYPES #<CLEAVIR-BIR:READVAR>)
410: (CLEAVIR-BIR:MAP-IBLOCK-INSTRUCTIONS #<FUNCTION CC-BIR-TO-BMIR::ASSIGN-INSTRUCTION-RTYPES> #<IBLOCK NIL>)
412: (CLEAVIR-BIR:MAP-LOCAL-INSTRUCTIONS #<FUNCTION CC-BIR-TO-BMIR::ASSIGN-INSTRUCTION-RTYPES> #<FUNCTION IRONCLAD::SERPENT-ENCRYPT-BLOCK>)
414: (CC-BIR-TO-BMIR::ASSIGN-FUNCTION-RTYPES #<FUNCTION IRONCLAD::SERPENT-ENCRYPT-BLOCK>)
415: (CLEAVIR-BIR:MAP-FUNCTIONS #<FUNCTION CC-BIR-TO-BMIR::ASSIGN-FUNCTION-RTYPES> #<CLEAVIR-BIR:MODULE>)
417: (CC-BIR-TO-BMIR:ASSIGN-MODULE-RTYPES #<CLEAVIR-BIR:MODULE>)
419: (CORE:TRACE-APPLY0 #<FUNCTION CC-BIR-TO-BMIR:ASSIGN-MODULE-RTYPES> (#<CLEAVIR-BIR:MODULE>))
420: (CORE::TRACE-LAMBDA #<CLEAVIR-BIR:MODULE>)
423: (CLASP-CLEAVIR::BIR-TRANSFORMATIONS #<CLEAVIR-BIR:MODULE> #<CLASP-CLEAVIR::CLASP-64BIT>)
426: (CORE:TRACE-APPLY0 #<FUNCTION CLASP-CLEAVIR::BIR-TRANSFORMATIONS> (#<CLEAVIR-BIR:MODULE> #<CLASP-CLEAVIR::CLASP-64BIT>))
427: (CORE::TRACE-LAMBDA #<CLEAVIR-BIR:MODULE> #<CLASP-CLEAVIR::CLASP-64BIT>)
430: (CLASP-CLEAVIR::TRANSLATE-AST #<FUNCTION-AST NIL #<CONS-CST raw: (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (COMPILER:REGISTER-GLOBAL-FUNCTION-DEF 'DEFUN 'IRONCLAD::SERPENT-ENCRYPT-BLOCK)) (FUNCALL #'(SETF FDEFINITION) #'(LAMBDA (IRONCLAD::CONTEXT IRONCLAD::PLAINTEXT IRONCLAD::PLAINTEXT-START IRONCLAD::CIPHERTEXT IRONCLAD::CIPHERTEXT-START) (DECLARE (CORE:LAMBDA-NAME IRONCLAD::SERPENT-ENCRYPT-BLOCK) (TYPE #1=(INTEGER 0 2305843009213693935) IRONCLAD::CIPHERTEXT-START) (TYPE #1# IRONCLAD::PLAINTEXT-START) (TYPE IRONCLAD::SIMPLE-OCTET-VECTOR IRONCLAD::CIPHERTEXT) (TYPE IRONCLAD::SIMPLE-OCTET-VECTOR IRONCLAD::PLAINTEXT) (OPTIMIZE (SPACE 0)) (OPTIMIZE (DEBUG 0)) (OPTIMIZE (SPEED 3))) (BLOCK IRONCLAD::SERPENT-ENCRYPT-BLOCK (LET ((IRONCLAD::SUBKEYS (IRONCLAD::SERPENT-SUBKEYS IRONCLAD::CONTEXT)) (IRONCLAD::T0 0) (IRONCLAD::T1 0) (IRONCLAD::T2 0) (IRONCLAD::T3 0) (IRONCLAD::T4 0)) (DECLARE (TYPE (SIMPLE-ARRAY (UNSIGNED-BYTE 32) (33 4)) IRONCLAD::SUBKEYS) (TYPE (UNSIGNED-BYTE 32) IRONCLAD::T0 IRONCLAD::T1 IRONCLAD::T2 IRONCLAD::T3 IRONCLAD::T4)) (IRONCLAD::WITH-WORDS ((IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3) IRONCLAD::PLAINTEXT IRONCLAD::PLAINTEXT-START :BIG-ENDIAN NIL :SIZE 4) (MACROLET ((IRONCLAD::SERPENT-ROUNDS NIL (LOOP IRONCLAD::FOR IRONCLAD::I IRONCLAD::FROM 0 IRONCLAD::TO 30 IRONCLAD::FOR IRONCLAD::SBOX = (READ-FROM-STRING (FORMAT NIL "serpent-sbox~d" (MOD IRONCLAD::I 8))) APPEND (LIST (ECLECTOR.READER:QUASIQUOTE (SETF IRONCLAD::T0 (LOGXOR IRONCLAD::B0 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 0)) IRONCLAD::T1 (LOGXOR IRONCLAD::B1 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 1)) IRONCLAD::T2 (LOGXOR IRONCLAD::B2 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 2)) IRONCLAD::T3 (LOGXOR IRONCLAD::B3 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 3)))) (ECLECTOR.READER:QUASIQUOTE ((ECLECTOR.READER:UNQUOTE IRONCLAD::SBOX) IRONCLAD::T0 IRONCLAD::T1 IRONCLAD::T2 IRONCLAD::T3 IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3 IRONCLAD::T4)) (ECLECTOR.READER:QUASIQUOTE (IRONCLAD::SERPENT-LINEAR-TRANSFORMATION IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3))) IRONCLAD::INTO IRONCLAD::FORMS IRONCLAD::FINALLY ...))) (IRONCLAD::SERPENT-ROUNDS) (SETF IRONCLAD::B0 (LOGXOR IRONCLAD::B0 (AREF IRONCLAD::SUBKEYS 31 0)) IRONCLAD::B1 (LOGXOR IRONCLAD::B1 (AREF IRONCLAD::SUBKEYS 31 1)) IRONCLAD::B2 (LOGXOR IRONCLAD::B2 (AREF IRONCLAD::SUBKEYS 31 2)) IRONCLAD::B3 (LOGXOR IRONCLAD::B3 (AREF IRONCLAD::SUBKEYS 31 3))) (IRONCLAD::SERPENT-SBOX7 IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3 IRONCLAD::T0 IRONCLAD::T1 IRONCLAD::T2 IRONCLAD::T3 IRONCLAD::T4) (SETF IRONCLAD::B0 (LOGXOR IRONCLAD::T0 (AREF IRONCLAD::SUBKEYS 32 0)) IRONCLAD::B1 (LOGXOR IRONCLAD::T1 (AREF IRONCLAD::SUBKEYS 32 1)) IRONCLAD::B2 (LOGXOR IRONCLAD::T2 (AREF IRONCLAD::SUBKEYS 32 2)) IRONCLAD::B3 (LOGXOR IRONCLAD::T3 (AREF IRONCLAD::SUBKEYS 32 3))) (IRONCLAD::STORE-WORDS IRONCLAD::CIPHERTEXT IRONCLAD::CIPHERTEXT-START IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3) (VALUES)))))) 'IRONCLAD::SERPENT-ENCRYPT-BLOCK) NIL 'IRONCLAD::SERPENT-ENCRYPT-BLOCK) @0x13038e6c1> @0x150f090a1> :LINKAGE LLVM-SYS:INTERNAL-LINKAGE)
433: (CLASP-CLEAVIR::COMPILE-FILE-CST #<CONS-CST raw: (IRONCLAD::DEFINE-BLOCK-ENCRYPTOR IRONCLAD:SERPENT 16 (LET ((IRONCLAD::SUBKEYS (IRONCLAD::SERPENT-SUBKEYS IRONCLAD::CONTEXT)) (IRONCLAD::T0 0) (IRONCLAD::T1 0) (IRONCLAD::T2 0) (IRONCLAD::T3 0) (IRONCLAD::T4 0)) (DECLARE (TYPE (SIMPLE-ARRAY (UNSIGNED-BYTE 32) (33 4)) IRONCLAD::SUBKEYS) (TYPE (UNSIGNED-BYTE 32) IRONCLAD::T0 IRONCLAD::T1 IRONCLAD::T2 IRONCLAD::T3 IRONCLAD::T4)) (IRONCLAD::WITH-WORDS ((IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3) IRONCLAD::PLAINTEXT IRONCLAD::PLAINTEXT-START :BIG-ENDIAN NIL :SIZE 4) (MACROLET ((IRONCLAD::SERPENT-ROUNDS NIL (LOOP IRONCLAD::FOR IRONCLAD::I IRONCLAD::FROM 0 IRONCLAD::TO 30 IRONCLAD::FOR IRONCLAD::SBOX = (READ-FROM-STRING (FORMAT NIL "serpent-sbox~d" (MOD IRONCLAD::I 8))) APPEND (LIST (ECLECTOR.READER:QUASIQUOTE (SETF IRONCLAD::T0 (LOGXOR IRONCLAD::B0 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 0)) IRONCLAD::T1 (LOGXOR IRONCLAD::B1 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 1)) IRONCLAD::T2 (LOGXOR IRONCLAD::B2 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 2)) IRONCLAD::T3 (LOGXOR IRONCLAD::B3 (AREF IRONCLAD::SUBKEYS (ECLECTOR.READER:UNQUOTE IRONCLAD::I) 3)))) (ECLECTOR.READER:QUASIQUOTE ((ECLECTOR.READER:UNQUOTE IRONCLAD::SBOX) IRONCLAD::T0 IRONCLAD::T1 IRONCLAD::T2 IRONCLAD::T3 IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3 IRONCLAD::T4)) (ECLECTOR.READER:QUASIQUOTE (IRONCLAD::SERPENT-LINEAR-TRANSFORMATION IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3))) IRONCLAD::INTO IRONCLAD::FORMS IRONCLAD::FINALLY ...))) (IRONCLAD::SERPENT-ROUNDS) (SETF IRONCLAD::B0 (LOGXOR IRONCLAD::B0 (AREF IRONCLAD::SUBKEYS 31 0)) IRONCLAD::B1 (LOGXOR IRONCLAD::B1 (AREF IRONCLAD::SUBKEYS 31 1)) IRONCLAD::B2 (LOGXOR IRONCLAD::B2 (AREF IRONCLAD::SUBKEYS 31 2)) IRONCLAD::B3 (LOGXOR IRONCLAD::B3 (AREF IRONCLAD::SUBKEYS 31 3))) (IRONCLAD::SERPENT-SBOX7 IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3 IRONCLAD::T0 IRONCLAD::T1 IRONCLAD::T2 IRONCLAD::T3 IRONCLAD::T4) (SETF IRONCLAD::B0 (LOGXOR IRONCLAD::T0 (AREF IRONCLAD::SUBKEYS 32 0)) IRONCLAD::B1 (LOGXOR IRONCLAD::T1 (AREF IRONCLAD::SUBKEYS 32 1)) IRONCLAD::B2 (LOGXOR IRONCLAD::T2 (AREF IRONCLAD::SUBKEYS 32 2)) IRONCLAD::B3 (LOGXOR IRONCLAD::T3 (AREF IRONCLAD::SUBKEYS 32 3))) (IRONCLAD::STORE-WORDS IRONCLAD::CIPHERTEXT IRONCLAD::CIPHERTEXT-START IRONCLAD::B0 IRONCLAD::B1 IRONCLAD::B2 IRONCLAD::B3) (VALUES))))) @0x13038ed51> NIL)
435: ((LAMBDA NIL))
436: (CORE::DO-MEMORY-RAMP #<FUNCTION (LAMBDA NIL)> GCTOOLS:RAMP)
438: (CLASP-CLEAVIR::BIR-LOOP-READ-AND-COMPILE-FILE-FORMS #<IOSTREAM-STREAM #P"/Users/karstenpoeck/quicklisp/local-projects/fork-ironclad/src/ciphers/serpent.lisp"> NIL)
Eck. Yeah, it could be stuck in representation selection, the logic there is a little half assed. I could make it better by adding some slots and storing the information that way instead. I can try that tomorrow. Would it be possible for you to get an isolated example I can try?
will try