[Vm-dev] CompiledMethod basicAt: problem

Camillo Bruni camillobruni at gmail.com
Sun May 26 14:49:45 UTC 2013

We had recently the "same" problem.
CompiledMethods are dual objects, storing literals (full oops) in the first
section and storing bytes in the second part. It does not make sense to read
a single byte from an OOPs (and even worse, change a byte)

In short you have to use #header and #literalAt: for the first part and
#basicAt: for the byte part. 

On 2013-05-26, at 16:34, Pavel Krivanek <pavel.krivanek at gmail.com> wrote:
> Hi,
> for the Pharo Kernel ImageMap job I do something like
> m := CompiledMethod allInstances anyOne.
> 1 to: m basicSize do:[:i | m basicAt:i ].
> For previous VMs it worked well without error but now the primitive fails
> and the SubscriptOutOfBounds error is raised at index 1.
> Fails on the latest Pharo VM and VM by Eliot r2714.
> Cheers,
> -- Pavel

More information about the Vm-dev mailing list