[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-smalltalk] [PATCH] libgst: Add built-in for Behavior>>#new and
Holger Hans Peter Freyther
Re: [Help-smalltalk] [PATCH] libgst: Add built-in for Behavior>>#new and >>#new:
Mon, 18 Aug 2014 08:09:13 +0200
On Sat, Aug 16, 2014 at 09:57:06PM +0200, Holger Hans Peter Freyther wrote:
> valgrind is giving me these with the plain JIT (without my patch
> as far as I can see)
> ==13940== Invalid read of size 4
> ==13940== at 0x40CE5E6: sync_wait_process (interp.c:1697)
> ==13940== by 0x884D7FF: ???
this is so odd.
emit_method_prolog (OOP methodOOP,
/* Prepare new state */
jit_movi_i (JIT_R0, stack_depth);
jit_movi_i (JIT_V2, header.numArgs);
jit_finish(PTR_ACTIVATE_NEW_CONTEXT) is generating the bad "call"
to the middle of sync_wait_process. The runtime code has been
initialized as far as I can see though.
Is this more an issue of valgrind?
OOP activeProcessOOP = get_scheduled_process ();
gst_callin_process process = (gst_callin_process) OOP_TO_OBJ
process->returnedValue = POP_OOP ();
It appears possible (or due the valgrind issue) that the currently
active process is suspended when native_ip == 0 and that during the
bootstrap no other process is runnable. Do you remember why we have
not used processOOP at this point?