On Thu, 6 Oct 2005, Leopold Toetsch via RT wrote:
> Leopold Toetsch wrote:
>
> > ... When now this pointer (ctx.rctx) is
> > declared being 'void *' it should be compatible with any other pointer
> > to a structure.
>
> I've now rewritten the questioanable code to use a (void*) allocation
> pointer. I hope it's better now.
>
> Could you please try r9367, and report success ;-) - thanks.
It cleared up all the warnings for src/inter_create.c, but since I had
already determined that the problem was elsewhere in that file, I wasn't
too optimistic it would make a difference.
It now fails differently. Here are the results from three different
tries:
Solaris 8/SPARC, gcc-3.4, built with:
perl Configure.pl --optimize=-O3 --debugging=0 --cc=gcc --ld=gcc --link=gcc
Failed 7/167 test scripts, 95.81% okay. 27/2746 subtests failed, 99.02% okay.
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
imcc/t/syn/labels.t 1 256 7 1 14.29% 3
t/dynclass/gdbmhash.t 13 3328 13 13 100.00% 1-13
t/examples/japh.t 1 256 15 1 6.67% 12
t/op/jit.t 9 2304 60 9 15.00% 5 8 13 16 21 24 28 33 36
t/op/trans.t 1 256 19 1 5.26% 13
t/pmc/mmd.t 1 256 30 1 3.33% 27
t/src/hash.t 1 256 10 1 10.00% 6
5 tests and 103 subtests skipped.
Solaris 8/SPARC, Sun's cc:
perl Configure.pl --optimize --debugging=0
The test hangs in an (apparently) infinite loop in t/op/jitn_8.pasm.
After killing that manually, I get
Failed 6/167 test scripts, 96.41% okay. 26/2746 subtests failed, 99.05% okay.
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/dynclass/gdbmhash.t 13 3328 13 13 100.00% 1-13
t/examples/japh.t 1 256 15 1 6.67% 12
t/op/jit.t 9 2304 60 9 15.00% 5 8 13 16 21 24 28 33 36
t/op/jitn.t 1 256 13 1 7.69% 8
t/pmc/mmd.t 1 256 30 1 3.33% 27
t/src/hash.t 1 256 10 1 10.00% 6
5 tests and 103 subtests skipped.
Intel x86/gcc-3.3.5, built with
perl Configure.pl --optimize=-O0 --debugging=0
Failed 2/167 test scripts, 98.80% okay. 3/2749 subtests failed, 99.89% okay.
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
imcc/t/syn/labels.t 1 256 7 1 14.29% 3
t/op/jit.t 2 512 60 2 3.33% 52-53
(1 subtest UNEXPECTEDLY SUCCEEDED), 4 tests and 98 subtests skipped.
make: *** [test] Error 255
I'm afraid I can't offer any specific advice. I've tried to follow the
code some, but I confess I haven't really been able to follow it very far.
It may well be because I haven't had time to print out all the relevant
header structures and stay focused on it long enough to get my brain
wrapped all the way around all the different structures and how they
access memory. Nor have I found the relevant documentation yet.
One thing I really don't understand is why the CONTEXT macro has to play
the "-1" trick to access memory to the "left". Similarly, I don't
understand why the ALIGNED_CTX_SIZE macro has a NUMVAL_SIZE buried in it,
and how that fits in with attempting to do things like p[-1]. I guess I
just don't understand what padding assumptions are built in to the code
and why we can't let the compiler compute all the relevant addresses and
offsets for us.
I don't mean to be critical -- there may well be quite sound and
simple reasons -- I just haven't grasped them yet, and as my time is
limited, I'm not optimistic about doing so any time soon.
--
Andy Dougherty [EMAIL PROTECTED]