[squeak-dev] Re: 64 bit images (was Re: The Trunk: Collections-dtl.268.mcz)

Laval Jannik jannik.laval at gmail.com
Mon Jan 4 14:47:26 UTC 2010


Hi Andreas,

> This may be the stupid question of the day, but can someone explain to me why we aren't just hard-wiring the word size (say in a CompiledMethod class var or so)? It's not like the primitive would *ever* return anything else unless you grind the image through SystemTracer,

the value of wordSize is initialized only one time,
If wordSize is nil, it takes the value of the primitive 40.

> and if you do that, SystemTracer can simply update those values.

Yes, it does. SystemTracer pushes the value of primitive 40 in wordSize. 

> It seems silly to build caches, primitives, cache invalidation for a value which will never ever change dynamically. Besides I think the cache invalidation might be wrong -

The "cache" is synchronized with the VM only one time after the creation of the image,
I think it is better than a hard-writing value.

> how do you know that initialPC or other word size related methods aren't sent before the startUp method is executed?

startUp method is the first method executed at the startup, no ?

But in SystemTracer, the value is initialized in "clonePreStartup" method. So there is no problem with potential method calls before startUp.

> 
> Cheers,
>  - Andreas


Cheers,

---
Jannik Laval
---




More information about the Squeak-dev mailing list