sharplispers / ironclad

A cryptographic toolkit written in Common Lisp
BSD 3-Clause "New" or "Revised" License
176 stars 28 forks source link

ironclad-assembly feature breaks on CCL 1.10 on x86-64 #43

Closed ppymdjr closed 3 years ago

ppymdjr commented 3 years ago
# ccl64 -e '(require :asdf)' -e '(asdf:load-system :ironclad)'
> Error: Unknown X86 instruction (RETQ)
> While executing: PARSE-X86-INSTRUCTION, in process listener(1).

It works fine on CCL 1.12. To work around the problem on CCL-1.10 I changed src/package.lisp as follows:-

diff --git a/ironclad-0.54/src/package.lisp b/ironclad-0.54/src/package.lisp
index 520e900..0925416 100644
--- a/ironclad-0.54/src/package.lisp
+++ b/ironclad-0.54/src/package.lisp
@@ -251,5 +251,5 @@
   (pushnew f *features*))

 ;; Enable assembly optimizations
-#-(or ecl-bytecmp (and ccl (not ccl-1.12)))
+#-ecl-bytecomp
 (pushnew :ironclad-assembly *features*)

This disables the optimisations for CCL versions earlier than 1.12, but enables them for 1.12 on (since features for CCL versions includes all the old versions too).

glv2 commented 3 years ago

Fix in commit 44bc76fb43cfbcc15db67a591f89b7eedabec723. Thanks.