Wow.  So I've just learned that our test harness ignores seg faults.  Which
explains why t/examples/japh.t keeps reporting "all tests successful" when
actually they're mostly segfaulting and otherwise failing.
This particular japh uses threading, which is known not to work until the
STM work by Charles Reiss (woggle) is merged.

I'm deferring this ticket appropriately.

On Thu, Jul 06, 2006 at 11:12:34PM -0700, Jarkko Hietaniemi wrote:
> # New Ticket Created by  Jarkko Hietaniemi 
> # Please include the string:  [perl #39756]
> # in the subject line of all future correspondence about this issue. 
> # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=39756 >
> 
> 
> (dbx) run --gc-debug t/examples/japh_10.pasm
> run --gc-debug t/examples/japh_10.pasm
> thread 0x3 signal Segmentation fault at   [clone_interpreter:63 
> +0xc,0x120122738
> ]       d->run_core = s->run_core;
> (dbx) p d
> (nil)
> (dbx) where
> >  0 clone_interpreter(dest = 0x14049f618, self = 0x1404a22c8) 
> > ["src/pmc/parrotinterpreter.pmc":63, 0x120122738]
>    1 pt_thread_run(interp = 0x1401c4000, dest_interp = 0x14049f618, sub = 
> 0x14049f500) ["src/thread.c":147, 0x1200b8e58]
>    2 pt_thread_run_3(interp = 0x1401c4000, dest_interp = 0x14049f618, sub = 
> 0x14049f500) ["src/thread.c":221, 0x1200b8ff4]
>    3 pcf_v_JOP( = 0x1200bea5c,  = 0x1200bea5c,  = 0x1200bea5c, interpreter = 
> 0x1401c4000, self = 0x14022d608) ["src/nci.c":3266, 0x1201d0520]
>    4 Parrot_NCI_invoke( = 0x1200c48c4,  = 0x1200c48c4, interpreter = 
> 0x1401c4000, pmc = 0x14022d608, next = 0x1404deb10) ["src/pmc/nci.c":146, 
> 0x120178668]
>    5 Parrot_invokecc_p(cur_opcode = 0x1404deb00, interpreter = 0x1401c4000) 
> ["src/ops/core.ops":414, 0x1200c48c0]
>    6 runops_slow_core(interpreter = 0x1401c4000, pc = 0x1404deb00) 
> ["src/runops_cores.c":180, 0x12014b208]
>    7 runops_int( = 0x1404dea00,  = 0x1404dea00, interpreter = 0x1401c4000, 
> offset = 0) ["src/interpreter.c":775, 0x1200f9bb8]
>    8 runops(interpreter = 0x1401c4000, offs = 0) ["src/inter_run.c":81, 
> 0x1200f7f60]
>    9 runops_args(interpreter = 0x1401c4000, sub = 0x14049f640, obj = 
> 0x1401214c0, meth = (nil), sig = 0x140061298 = "vP", ap = struct {
>     _a0 = 0x11fffbf40
>     _offset = 24
> }) ["src/inter_run.c":182, 0x1200f8290]
>   10 Parrot_runops_fromc_args(interpreter = 0x1401c4000, sub = 0x14049f640, 
> sig
> = 0x140061298 = "vP") ["src/inter_run.c":276, 0x1200f8460]
>   11 Parrot_runcode(interpreter = 0x1401c4000, argc = 1, argv = 0x11fffc028) 
> ["src/embed.c":802, 0x1200a6384]
>   12 main(argc = 1, argv = 0x11fffc028) ["compilers/imcc/main.c":681, 
> 0x120088f60]
> (dbx)
> 
> Summary of my parrot 0.4.5 (r13183) configuration:
>   configdate='Fri Jul  7 00:08:51 2006'
>   Platform:
>     osname=dec_osf, archname=alpha-dec_osf
>     jitcapable=0, jitarchname=nojit,
>     jitosname=dec_osf, jitcpuarch=alpha
>     execcapable=0
>     perl=/u/vieraat/vieraat/jhi/Perl/Platform/OSF1/bin/perl
>   Compiler:
>     cc='cc', ccflags='-std -D_INTRINSICS -fprm d -ieee -I/p/include 
> -DLANGUAGE_C -pthread -D_XOPEN_SOURCE=500',
>   Linker and Libraries:
>     ld='ld', ldflags=' -L/p/lib',
>     cc_ldflags='',
>     libs='-lm -lutil -lpthread -laio -lrt -lgmp'
>   Dynamic Linking:
>     share_ext='.so', ld_share_flags='-shared -expect_unresolved "*" -O4 -msym 
> -std -L/p/lib',
>     load_ext='.so', ld_load_flags='-shared -expect_unresolved "*" -O4 -msym 
> -std -L/p/lib'
>   Types:
>     iv=long, intvalsize=8, intsize=4, opcode_t=long, opcode_t_size=8,
>     ptrsize=8, ptr_alignment=8 byteorder=12345678, 
>     nv=double, numvalsize=8, doublesize=8
> 

-- 
Chip Salzenberg <[EMAIL PROTECTED]>

Reply via email to