[Vm-dev] I think I've found a bug in the 64-bit Squeak VM memory compactor

David T. Lewis lewis at mail.msen.com
Tue Jun 22 01:51:51 UTC 2010


On Tue, Jun 15, 2010 at 08:57:54PM -0700, John M McIntosh wrote:
>  
> BTW has anyone done an audit of comparing an oops offset to ZERO to see if there is other interesting issues when 64bit vm and 32bit mode
> with a free space or oops at offset 0? 

I did a search for Interpreter and ObjectMemory  methods with '= nil'
in the source and came up with these:

	Interpreter>>allAccessibleObjectsOkay
	Interpreter>>okayFields:
	Interpreter>>primitiveNextObject
	ObjectMemory>>incCompMakeFwd
	ObjectMemory>>incCompMove:
	ObjectMemory>>initForwardBlock:mapping:to:withBackPtr:
	ObjectMemory>>initialInstanceOf:
	ObjectMemory>>instanceAfter:
	ObjectMemory>>sweepPhase

Aside from the issue in #sweepPhase (http://bugs.squeak.org/view.php?id=7549)
I don't think that the other methods will cause any problems. A second
set of eyes on this would not hurt though.

WRT the use of nil to represent object pointer value 0, I think this
is a matter of style and is functionally not a problem. I see no reason
to change it.

Dave



More information about the Vm-dev mailing list