[Openmcl-devel] Elephant and CCL (Linux, 32-bit)
R. Matthew Emerson
rme at clozure.com
Mon Apr 19 18:39:32 UTC 2010
On Apr 13, 2010, at 4:32 PM, Ian Eslick wrote:
> I've had no problem running CCL and Elephant on 64-bit systems and Elephant and SBCL on 32-bit systems. I haven't had the occasion to do much testing on 32-bit systems until now. There is some sort of pointer shenanigans happening in the FFI-based serializer.
> CCL 1.5 current:
>> Error: Fault during read of memory address #x194B3AEC
>> While executing: CCL::%BIGNUM-SIGN, in process listener(1).
>> Type :POP to abort, :R for a list of available restarts.
>> Type :? for other options.
> 1> :b
> *(53EAE8) : 0 (%BIGNUM-SIGN ???) 12
> (53EB2C) : 1 (FUNCALL #'#<(:INTERNAL GEN-INTEGER)>) 159
> (53EB3C) : 2 (FUNCALL #<CCL:COMPILED-LEXICAL-CLOSURE (:INTERNAL GEN-INTEGER) #x18CB21A6>) 175
> (53EB54) : 3 (PERFORM-RANDOM-TESTING/RUN-ONCE (#<CCL:COMPILED-LEXICAL-CLOSURE # #x18CB21A6>) #<Anonymous Function #x18CB2736>) 231
> (53EB84) : 4 (PERFORM-RANDOM-TESTING (#<CCL:COMPILED-LEXICAL-CLOSURE # #x18CB21A6>) #<Anonymous Function #x18CB2736>) 319
> (53EBA4) : 5 (FUNCALL #'#<(:INTERNAL IT.BESE.FIVEAM::RUN-IT (IT.BESE.FIVEAM::RUN-TEST-LAMBDA (IT.BESE.FIVEAM::TEST-CASE)))>) 1239
> Help in tracking this down would be helpful.
Since this appears to be from some randomized testing, is it possible to get our hands on the particular test form that failed? If that test form fails repeatedly, that would be really helpful.
Also, I sent a patch to elephant-devel that alters memutil.lisp to use CCL's built-in foreign memory accessors (e.g, ccl:%get-long, etc.) rather than calling foreign functions in libmemutil; with this patch, all the elephant tests pass on Darwin/x8632. (On the other hand, Darwin is not Linux.)
More information about the Openmcl-devel