[Pharo-project] Problem with CompiledMethodTrailer

Mariano Martinez Peck marianopeck at gmail.com
Mon May 9 11:22:54 CEST 2011


On Mon, May 9, 2011 at 10:53 AM, Mariano Martinez Peck <
marianopeck at gmail.com> wrote:

>
>
> On Mon, May 9, 2011 at 10:27 AM, Nicolas Cellier <
> nicolas.cellier.aka.nice at gmail.com> wrote:
>
>> Hi Mariano,
>> you should try these two things before repeating yourself:
>>
>> (CompiledMethod allInstances select:  [:each | each trailer kind =
>> #VarLengthSourcePointer] ) first trailer kind.
>>
>> | temp |
>> temp := (CompiledMethod allInstances select:  [:each | each trailer
>> kind = #VarLengthSourcePointer] ) first.
>> temp == (temp methodClass >> temp selector)
>>
>>
> Thanks Nicolas. Yes,  in fact all of you were right. They are not the same
> CM instance. They are different.
> It is wierd that they are only present in Pharo1.3:
>
>
> ((CompiledMethod allInstances select:  [:each | each trailer kind =
> #VarLengthSourcePointer] ) ) size
> ->>>   11
>
> And in Pharo 1.2, cero and and 1.1.1, 2.
>
> I am trying to inspect pointers to them to see who is pointing to
> them...but I cannot find anything :(
>
> I will continue....
>
>
More data: there are only these kind of compiled methods in the dev image.
Not in core.

In addition, if I do: ScriptLoader new cleanUpForRelease, then inspect
((CompiledMethod allInstances select:  [:each | each trailer kind =
#VarLengthSourcePointer] ) )

and then I click on the first element in the inspector.... VM CRASH!!!  with
both, InterpreterVM and CogVM.

I can see the difference in the trailer of the CMs (I attach screenshot),
but still cannot find who is pointing to that weird instances :(

grrr... thanks for the help




> thanks
>
>
>
> It may be possible that CompiledMethod>>printString is lying to you...
>>
>> Nicolas
>>
>> 2011/5/9 Mariano Martinez Peck <marianopeck at gmail.com>:
>> >
>> >
>> > On Mon, May 9, 2011 at 6:14 AM, Igor Stasenko <siguctua at gmail.com>
>> wrote:
>> >>
>> >> On 9 May 2011 00:52, Mariano Martinez Peck <marianopeck at gmail.com>
>> wrote:
>> >> > Hi guys, Maybe it is too late and I am not seeing something
>> obvious...so
>> >> > another look is really appreciated. If I do:
>> >> >
>> >> > (CompiledMethod allInstances select:  [:each | each trailer kind =
>> >> > #VarLengthSourcePointer] ) first
>> >> > ---> (CodeLoader class>>#initialize "a CompiledMethod(311951360)")
>> >> >
>> >> > But then:
>> >> >
>> >> > (CodeLoader class >> #initialize) trailer kind
>> >> > ----> #SourcePointer
>> >> >
>> >> > WHYYY??  why it is answering #SourcePointer instead of
>> >> > #VarLengthSourcePointer  ??
>> >> >
>> >> > grrr how can that be possible???  It happens the same to each of the
>> >> > CompiledMethods I select as #VarLengthSourcePointer.  When I then ask
>> >> > the
>> >> > #kind  they always answer #SourcePointer  instead of
>> >> > #VarLengthSourcePointer
>> >> >
>> >> is it same compiled methods?
>> >> Because it is absolutely normal if they using different source pointer.
>> >>
>> >
>> > I didn't understand your question. Yes, it is exactly the same
>> > CompiledMethod.
>> > Look, if I do:
>> >
>> > (CompiledMethod allInstances select:  [:each | each trailer kind =
>> > #VarLengthSourcePointer] ) first
>> >
>> > I get
>> > ---> (CodeLoader class>>#initialize "a CompiledMethod(311951360)")
>> >
>> > So...it means that such CompiledMethod answers #VarLengthSourcePointer
>> when
>> > send "trailer kind". Ok?
>> >
>> > But immediatly after, if I ask the trailer kind to the SAME compiled
>> method:
>> >
>> > (CodeLoader class >> #initialize) trailer kind
>> >
>> > I get
>> > ----> #SourcePointer
>> >
>> > WHYYY??  why it is answering #SourcePointer instead of
>> > #VarLengthSourcePointer  ??
>> >
>> >>
>> >> > thanks in advance,
>> >> >
>> >> > --
>> >> > Mariano
>> >> > http://marianopeck.wordpress.com
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Best regards,
>> >> Igor Stasenko AKA sig.
>> >>
>> >
>> >
>> >
>> > --
>> > Mariano
>> > http://marianopeck.wordpress.com
>> >
>> >
>>
>>
>
>
> --
> Mariano
> http://marianopeck.wordpress.com
>
>


-- 
Mariano
http://marianopeck.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gforge.inria.fr/pipermail/pharo-project/attachments/20110509/407c4527/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screen shot 2011-05-09 at 11.06.26 AM.png
Type: image/png
Size: 148373 bytes
Desc: not available
URL: <http://lists.gforge.inria.fr/pipermail/pharo-project/attachments/20110509/407c4527/attachment.png>


More information about the Pharo-project mailing list