Multiple dispatch branch merged

Moritz Lenz moritz at casella.verplant.org
Tue Oct 7 09:48:41 UTC 2008


Allison Randal wrote:
> Moritz Lenz wrote:
>> 
>> I don't know if these are directly related to the mmd branch merge, but
>> I get these two new failures:
>> 
>> t/op/bitwise...............................22/27
>> #   Failed test 'I-reg shl and PMC shl are consistent'
>> #   at t/op/bitwise.t line 513.
>> # Exited with error code: [SIGNAL 6]
>> # Received:
>> # ./src/pmc/cpointer.pmc:96: failed assertion '*pmc_pointer'
> 
> This first one definitely is related to the merge, as the CPointer PMC 
> was added in the MMD branch. Could you run it under GDB and get me a 
> little more info to debug on?

Here's the backtrace, I don't know what other information you might
need. Just tell me, and I'll do my best.

(gdb) bt
#0  0xffffe424 in __kernel_vsyscall ()
#1  0xb6bae811 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb6baffb9 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb7c6ed9b in Parrot_confess (cond=0xb7f6201d "*pmc_pointer",
    file=0xb7f62006 "./src/pmc/cpointer.pmc", line=96) at
src/exceptions.c:476
#4  0xb7e82485 in Parrot_CPointer_mark (interp=0x8777048, pmc=0x88015e0)
    at ./src/pmc/cpointer.pmc:96
#5  0xb7c773cf in Parrot_dod_trace_children (interp=0x8777048,
    how_many=4294966390) at src/gc/dod.c:429
#6  0xb7c771e4 in trace_active_PMCs (interp=0x8777048, trace_stack=1)
    at src/gc/dod.c:362
#7  0xb7c77ef7 in Parrot_dod_ms_run (interp=0x8777048, flags=1)
    at src/gc/dod.c:1140
#8  0xb7c77ffa in Parrot_do_dod_run (interp=0x8777048, flags=1)
    at src/gc/dod.c:1190
#9  0xb7c79a58 in more_traceable_objects (interp=0x8777048, pool=0x8797bb0)
    at src/gc/smallobject.c:163
#10 0xb7c79b3a in gc_ms_get_free_object (interp=0x8777048, pool=0x8797bb0)
    at src/gc/smallobject.c:245
#11 0xb7c7cc63 in new_pmc_header (interp=0x8777048, flags=0)
    at src/headers.c:322
#12 0xb7cc4cbf in get_new_pmc_header (interp=0x8777048, base_type=70,
flags=0)
    at src/pmc.c:267
#13 0xb7cc4921 in pmc_new (interp=0x8777048, base_type=70) at src/pmc.c:92
#14 0xb7c09755 in Parrot_gt_p_ic_ic (cur_opcode=0x8847c04, interp=0x8777048)
    at src/ops/cmp.ops:430
#15 0xb7cc58cc in runops_slow_core (interp=0x8777048, pc=0x8847c04)
    at src/runops_cores.c:222
#16 0xb7c855b9 in runops_int (interp=0x8777048, offset=0)
    at src/interpreter.c:937
#17 0xb7c85e5f in runops (interp=0x8777048, offs=0) at src/inter_run.c:101
#18 0xb7c86104 in runops_args (interp=0x8777048, sub=0x880445c,
obj=0x87df9b0,
    meth_unused=0x0, sig=0xb7f2a0b7 "vP",
    ap=0xbfef180c
"$D\200\bH\030�220\200���\204\b$D\200\b\\D\200\b\2143�\030�9�pw\b\001")
at src/inter_run.c:236
#19 0xb7c8623c in Parrot_runops_fromc_args (interp=0x8777048,
sub=0x880445c,
    sig=0xb7f2a0b7 "vP") at src/inter_run.c:300
#20 0xb7c6c127 in Parrot_runcode (interp=0x8777048, argc=1, argv=0xbfef1968)
    at src/embed.c:951
#21 0xb7f03964 in imcc_run_pbc (interp=0x8777048, obj_file=0,
output_file=0x0,
    argc=1, argv=0xbfef1968) at compilers/imcc/main.c:791
#22 0xb7f04412 in imcc_run (interp=0x8777048,
    sourcefile=0xbfef2bcf "bitwise.pir", argc=1, argv=0xbfef1968)
    at compilers/imcc/main.c:1079
#23 0x08048928 in main (argc=1, argv=0xbfef1968) at src/main.c:61

A GC issue?

> I'll try to set up a chroot of 32bit 
> Debian on my 4-core Ubuntu box and see if I can duplicate the problem. 
> Which version of Debian are you running?

I get this failure both on Etch (with gcc) and Lenny (with llvm-gcc)
On a third box (also Etch) I couldn't reproduce it.

>> t/examples/shootout........................5/20
>> #   Failed test 'examples/shootout/pidigits.pir'
>> #   at t/examples/shootout.t line 108.
>> # Exited with error code: [SIGNAL 11]
>> # Received:
>> # 3141592653    :10
>> # 5897932384    :20
>> # 6264338       :27
>> #
>> # Expected:
>> # 3141592653    :10
>> # 5897932384    :20
>> # 6264338       :27
> 
> I'm not sure if this is related. You can sync back to the svn version 
> just before the merge and see if it was the merge that caused it.

Just did that, no failure on r31667. I suspect this is also a GC issue,
because the "Received" and "Expected" are identical, so it must be a
non-zero return value.

Moritz

-- 
Moritz Lenz
http://perlgeek.de/ |  http://perl-6.de/ | http://sudokugarden.de/


More information about the parrot-dev mailing list