clasp icon indicating copy to clipboard operation
clasp copied to clipboard

New problem compliing ironclad: Compiler loops

Open kpoeck opened this issue 2 years ago • 2 comments

Code at issue

The following loops:

(ql:quickload :ironclad)

Context

  • happens while compiling "ironclad" "src" "ciphers" "serpent"
  • reaches BIR-TRANSFORMATIONS and CC-BIR-TO-BMIR:ASSIGN-MODULE-RTYPES and CC-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)

kpoeck avatar Apr 24 '22 09:04 kpoeck

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?

Bike avatar Apr 24 '22 21:04 Bike

will try

kpoeck avatar Apr 25 '22 19:04 kpoeck