Regression from 1.5.0 in compiling SBCL on Haiku

Alexandru Popa <[email protected]> Sat, 29 Feb 2020 18:05:02 +0200
Newsgroups gmane.editors.j.devel
Message-ID <CAL2wRjQELtfNbfpp9U37eRDd0S5KLVhP8RVL6zgtx36itp+DFA@mail.gmail.com>
Currently, ABCL is the only way to run Common Lisp on Haiku
(https://www.haiku-os.org/). I try to bootstrap SBCL on Haiku usinbg
ABCL. Previously, bootstrap (first stage of compilation) was possible
with ABCL 1.5.0. Now with ABCL 1.6.0 the compilation fails with the
attached Java error. This is a regression fomr 1.5.0.
Stacktrace.log (text/x-log, 13.6 KB)
; Wrote /boot/home/Desktop/sbcl-2.0.1/obj/from-host/src/compiler/sxhash.abcl-tmp (0.263 seconds)
java.lang.VerifyError: (class: org/armedbear/lisp/sxhash_25, method: execute signature: (Lorg/armedbear/lisp/LispObject;)Lorg/armedbear/lisp/LispObject;) Expecting to find object/array on stack
        at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3137)
        at java.base/java.lang.Class.getConstructor0(Class.java:3342)
        at java.base/java.lang.Class.newInstance(Class.java:556)
        at org.armedbear.lisp.FaslClassLoader.loadFunction(FaslClassLoader.java:130)
        at org.armedbear.lisp.FaslClassLoader$pf_get_fasl_function.execute(FaslClassLoader.java:165)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:832)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:582)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:577)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators$sf_progn.execute(SpecialOperators.java:273)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Load.faslLoadStream(Load.java:667)
        at org.armedbear.lisp.Load$init_fasl.execute(Load.java:457)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:832)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:582)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Load.loadStream(Load.java:629)
        at org.armedbear.lisp.Load.loadFileFromStream(Load.java:597)
        at org.armedbear.lisp.Load.load(Load.java:224)
        at org.armedbear.lisp.Load.load(Load.java:745)
        at org.armedbear.lisp.Load$_load.execute(Load.java:693)
        at org.armedbear.lisp.Symbol.execute(Symbol.java:852)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:894)
        at org.armedbear.lisp.load_1.execute(load.lisp:33)
        at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:98)
        at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at abcl_69d8f824_2af9_4d42_8a4f_df9ea4a85bea.execute(Unknown Source)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:832)
        at org.armedbear.lisp.Primitives$pf_funcall.execute(Primitives.java:2702)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:851)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:589)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Primitives$sf_unless.execute(Primitives.java:867)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169)
        at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.processTagBody(Lisp.java:846)
        at org.armedbear.lisp.dolist.execute(dolist.java:103)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169)
        at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169)
        at org.armedbear.lisp.SpecialOperators$sf_let_star.execute(SpecialOperators.java:118)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.SpecialOperators$sf_if.execute(SpecialOperators.java:80)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Primitives$sf_block.execute(Primitives.java:3743)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Closure.execute(Closure.java:220)
        at org.armedbear.lisp.Closure.execute(Closure.java:148)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:575)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169)
        at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Closure.execute(Closure.java:220)
        at org.armedbear.lisp.Closure.execute(Closure.java:142)
        at org.armedbear.lisp.compiler_pass2_370.execute(compiler-pass2.lisp:7490)
        at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:98)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:575)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:533)
        at org.armedbear.lisp.Load.loadStream(Load.java:629)
        at org.armedbear.lisp.Load.loadFileFromStream(Load.java:597)
        at org.armedbear.lisp.Load.load(Load.java:224)
        at org.armedbear.lisp.Load.load(Load.java:745)
        at org.armedbear.lisp.Load$_load.execute(Load.java:693)
        at org.armedbear.lisp.Symbol.execute(Symbol.java:852)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:894)
        at org.armedbear.lisp.load_1.execute(load.lisp:33)
        at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:98)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:575)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Primitives$sf_return_from.execute(Primitives.java:3774)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169)
        at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.processTagBody(Lisp.java:846)
        at org.armedbear.lisp.Primitives$sf_tagbody.execute(Primitives.java:3690)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169)
        at org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.java:101)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Primitives$sf_block.execute(Primitives.java:3743)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.SpecialOperators._flet(SpecialOperators.java:359)
        at org.armedbear.lisp.SpecialOperators$sf_labels.execute(SpecialOperators.java:303)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Primitives$sf_block.execute(Primitives.java:3743)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Closure.execute(Closure.java:220)
        at org.armedbear.lisp.Closure.execute(Closure.java:148)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:575)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Primitives$pf__eval.execute(Primitives.java:345)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at org.armedbear.lisp.Lisp.evalCall(Lisp.java:575)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Primitives$sf_block.execute(Primitives.java:3743)
        at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
        at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
        at org.armedbear.lisp.Closure.execute(Closure.java:220)
        at org.armedbear.lisp.Closure.execute(Closure.java:148)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at org.armedbear.lisp.Lisp$1.execute(Lisp.java:285)
        at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
        at org.armedbear.lisp.top_level_47.execute(top-level.lisp:407)
        at org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:89)
        at org.armedbear.lisp.Symbol.execute(Symbol.java:793)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:798)
        at org.armedbear.lisp.top_level_48.execute(top-level.lisp:415)
        at org.armedbear.lisp.LispThread.execute(LispThread.java:798)
        at org.armedbear.lisp.Interpreter.run(Interpreter.java:361)
        at org.armedbear.lisp.Main$1.run(Main.java:48)
        at java.base/java.lang.Thread.run(Thread.java:834)
Error loading /boot/home/Desktop/sbcl-2.0.1/obj/from-host/src/compiler/sxhash.abcl at line 56 (offset 4283)
#<THREAD "interpreter" {384A6528}>: Debugger invoked on condition of type ERROR
  Compiled function can't be loaded: org.armedbear.lisp.sxhash_25 from org.armedbear.lisp.Pathname@6d2b7ae8
Restarts:
  0: RECOMPILE   Recompile
  1: ABORT-BUILD Abort building SBCL.
  2: TOP-LEVEL   Return to top level.
[1] SB-C(3): 
; Compilation unit finished
;   Caught 3 WARNING conditions
;   Caught 3 STYLE-WARNING conditions
;   The following functions were used but not defined:
;     SB-C::INTEGER-TYPE-NUMERIC-BOUNDS
;     SB-INT:PICK-BEST-SXHASH-BITS
;     SB-INT:FUNARG-BIND/CALL-FORMS
;     SB-VM::MAKE-ARRAY-HEADER-INITS
;     SB-XC:MACROEXPAND-1
;     SB-XC:MACROEXPAND
;     SB-C::WEAKEN-INTEGER-TYPE
;     SB-C::INTERNAL-TYPE-ERROR-CALL
;     SB-C::REOPTIMIZE-CALL
;     SB-C::PROPAGATE-TO-ARGS
;     SB-C::NUMERIC-TYPE-REAL-P
;     SB-C::CONVERT-CALL-IF-POSSIBLE
;     SB-C::MAYBE-CONVERT-TAIL-LOCAL-CALL
;     SB-C::MAYBE-CONVERT-TO-ASSIGNMENT
;     SB-C::MAYBE-LET-CONVERT
;     SB-C::MERGE-TAIL-SETS
;     SB-C::POSSIBLE-REST-ARG-CONTEXT
;     SB-C:MAKE-RESTART-LOCATION
;     SB-KERNEL:VALID-MACROEXPAND-HOOK
;     SB-C::DUMPABLE-LEAFLIKE-P
;     SB-C::COMPILE-LOAD-TIME-VALUE
;     SB-C::DEBUG-SOURCE-FOR-INFO
;     SB-C::CHECK-IR1-CONSISTENCY
;     SB-C::MERGE-TOPLEVEL-LAMBDAS
;     SB-C::REPLACE-TOPLEVEL-XEPS
;     SB-C::FIND-INITIAL-DFO
;     SB-C::LOCALL-ANALYZE-CLAMBDAS-UNTIL-DONE
;     SB-C::LOCALL-ANALYZE-XEP-ENTRY-POINT
;     SB-C::MAKE-XEP-LAMBDA-EXPRESSION
;     SB-INT:%MACROEXPAND-1
;     SB-C::FOPCOMPILE
;     SB-C::FOPCOMPILABLE-P
;     SB-C::PRINT-IR2-BLOCKS
;     SB-C::PHYSENV-ANALYZE
;     SB-C::ELIMINATE-DEAD-CODE
;     SB-C::GENERATE-CODE
;     SB-C::PRINT-ALL-BLOCKS
;     SB-C::OPTIMIZE-CONSTANT-LOADS
;     SB-C::IR2-OPTIMIZE-JUMPS
;     SB-C::DELETE-NO-OP-VOPS
;     SB-C::CHECK-PACK-CONSISTENCY
;     SB-REGALLOC:PACK
;     SB-C::CHECK-LIFE-CONSISTENCY
;     SB-C::PRE-PACK-TN-STATS
;     SB-C::LIFETIME-ANALYZE
;     SB-C::DELETE-UNREFERENCED-TNS
;     SB-C::CHECK-IR2-CONSISTENCY
;     SB-C::SELECT-REPRESENTATIONS
;     SB-C::IR2-OPTIMIZE
;     SB-C::COPY-PROPAGATE
;     SB-C:IR2-CONVERT
;     SB-C::ENTRY-ANALYZE
;     SB-C::STACK-ANALYZE
;     SB-C::CONTROL-ANALYZE
;     SB-C::LTN-ANALYZE
;     SB-C::GTN-ANALYZE
;     SB-C::GENERATE-TYPE-CHECKS
;     SB-C::LOCALL-ANALYZE-COMPONENT
;     SB-C::FIND-DFO
;     SB-C::DEBUG-INFO-FOR-COMPONENT
;     SB-C:COMPONENT-HEADER-LENGTH
;     SB-C::TRACE-INSTRUCTION
;     SB-ASSEM::PERFORM-OPERAND-LOWERING
;     SB-VM:EMIT-LONG-NOP
;     SB-ASSEM::%MARK-USED-LABELS
;     SB-C::IR2-CONVERT-FULL-CALL
;     SB-C::MAYBE-WEAKEN-CHECK
;     SB-FASL::WRITE-WORDINDEXED
;     SB-SYS:READ-N-BYTES
;     SB-KERNEL:ALLOCATE-VECTOR
;     SB-FASL:COLD-CONS
;     SB-FASL::NUMBER-PAIR-TO-CORE
;     SB-FASL::NUMBER-TO-CORE
;     SB-FASL::MAKE-CHARACTER-DESCRIPTOR
;     SB-INT:STREAM-ERROR-POSITION-INFO
;     SB-C::SIMPLIFY-VECTOR-TYPE
;     SB-INT:%PROGRAM-ERROR
;     SB-VM::TN-REG
;     SB-VM::REG-NAME
;     SB-VM:STATIC-SYMBOL-OFFSET
;     SB-VM:FIXNUMIZE
;     SB-C:TN-VALUE
;     SB-VM:STATIC-SYMBOL-P
;     SB-REGALLOC:TARGET-IF-DESIRABLE
;     SB-C::REFERENCE-TN
;     SB-C:MAKE-RESTRICTED-TN
;     SB-C:MAKE-WIRED-TN
;     SB-C::PRINT-TN-GUTS
;     SB-C::EMIT-ASSEMBLE-VOP
;     SB-C::EMIT-ASSEMBLE
;     SB-C:LABEL-ID
;     SB-C::CONT-NUM
;     SB-C::IR2-CONVERT-CASSER
;     SB-C::IR2-CONVERT-STRUCTURE-ALLOCATION
;     SB-C::IR2-CONVERT-FIXED-ALLOCATION
;     SB-C::IR2-CONVERT-VARIABLE-ALLOCATION
;     SB-C::IR2-CONVERT-SETTER
;     SB-C::IR2-CONVERT-SETFER
;     SB-C::IR2-CONVERT-REFFER
;     SB-INT:%MACROEXPAND
;     SB-C::MASK-SIGNED-FIELD
;     SB-KERNEL:DD-SLOTS
;     SB-C::%DEFINE-SYMBOL-MACRO


real    3m41.023s
user    4m23.205s
sys     0m45.237s
//entering make-target-1.sh
//building runtime system and symbol table file
make: Entering directory '/boot/home/Desktop/sbcl-2.0.1/src/runtime'
GNUmakefile:42: genesis/Makefile.features: No such file or directory
make: *** No rule to make target 'genesis/Makefile.features'.  Stop.
make: Leaving directory '/boot/home/Desktop/sbcl-2.0.1/src/runtime'

real    0m0.048s
user    0m0.007s
sys     0m0.007s