[Ecls-list] Re: gcl random tester applied to ecl

Paul F. Dietz dietz at dls.net
Sun Sep 28 06:12:02 UTC 2003


Juan Jose Garcia-Ripoll wrote:

> Your randomly generated lambdas seem to be a great piece of code for 
> exercising the compiler :-) It is a pity that ECL currently breaks when you 
> try to load more than 80 pieces of compiled code into it: The Boehm-Weiser 
> garbage collector complains about the number of roots (i.e. the number of 
> data sectors arising from the libraries), and I bet this is because your code 
> somehow prevents ECL from garbage collecting the generated functions. A (GC) 
> right after you stop using a compiled function should help if you also find 
> this problem.

I've added a gc call after each internal compile (conditional on being in ECL).
It seems to help some, but I still got a crash after a while.

Here's another random test failure:

 > (funcall (compile nil '(lambda () (ldb (byte 16 12) -7697))))
;;; End of Pass 1.
;;; Warning: Emitting linking call for LDB1
;;; Calling the C compiler...
"gcc -g -O2 -Dlinux -fstrict-aliasing  -O -I/home/dietz/lib/ecl//h -w -c /tmp/ecl011ErFazt.c -o /tmp/ecl011ErFazt.o"
"gcc -shared -o /tmp/ecl011ErFazt.so -L/home/dietz/lib/ecl/ /tmp/ecl011ErFazt.o  -Wl,--rpath,/home/dietz/lib/ecl/ -lecl  -ldl -lgmp -lm"
;;; OPTIMIZE levels: Safety=1 (No runtime error checking), Space=0, Speed=3
The function C::LDB1 is undefined.
Broken at EVAL.
 >>


	Paul






More information about the ecl-devel mailing list