Ticket #479 (closed bug: wontfix)
Segfaulting in PGE;Perl6Grammar;Compiler;compile (t/compilers/pge/pge_examples.t)
| Reported by: | wiml | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | core | Version: | trunk |
| Severity: | fatal | Keywords: | ppc jit |
| Cc: | Language: | ||
| Patch status: | Platform: | netbsd |
Description
"make testj" has one segfaulting test on netbsd-ppc. I've narrowed it down to the invocation of p6grammar.'compile' in t/compilers/pge/pge_examples.t. I'm attaching a transcript of a debugger session, but the highlights are:
(gdb) run -D4 -R jit ./poo.pir
Starting program: /home/wiml/perl6/partest/parrot -D4 -R jit ./poo.pir
Program received signal SIGSEGV, Segmentation fault.
0x019ebfdc in Parrot_set_p_i (cur_opcode=0x27098ec, interp=0x1fd10e0)
at src/ops/set.ops:176
176 VTABLE_set_integer_native(interp, $1, $2);
(gdb) bt
#0 0x019ebfdc in Parrot_set_p_i (cur_opcode=0x27098ec, interp=0x1fd10e0)
at src/ops/set.ops:176
#1 0x02dde5c8 in ?? ()
#2 0x01a2e000 in runops_jit (interp=Cannot access memory at address 0x18
) at src/interpreter.c:751
#3 0x01a2d964 in runops_int (interp=0x1e0a000, offset=0)
at src/interpreter.c:980
...
(gdb) p PDB_backtrace(0x1e0a000)
current instr.: 'parrot;PGE;Perl6Grammar;' pc -1 ((unknown file):-1)
called from Sub 'parrot;PGE;Perl6Grammar;statement' pc 0 (EVAL_5:2)
called from Sub 'parrot;PGE;Perl6Grammar;Compiler;compile' pc 152 (runtime/parrot/library/PGE/Perl6Grammar.pir:135)
called from Sub 'example' pc 0 (./poo.pir:5)
$1 = void
My parrot checkout has some modifications that were necessary to get it to build (see my previous tickets) but I think those changes should only be affecting the exec_save functionality, not jit. The non-JIT runcores work fine.
Attachments
Change History
Note: See
TracTickets for help on using
tickets.

