[squeak-dev] [Vm-dev] So who broke bitOr: ?

tim Rowledge tim at rowledge.org
Thu Feb 19 22:08:07 UTC 2015


On 18-02-2015, at 7:56 PM, Eliot Miranda <eliot.miranda at gmail.com> wrote:
> Mea culpa.  In getting 64-bit Sour working I broke Slang and that broke the bit logic primitives.  I just committed a working VMMaker.oscog.

Fired up a vmmaker image as built by your script, updated  to oscog-eem1071.
Ran VMMaker generateConfiguration
	- attempted Squeak Stack VM (for Pi) 
	- Boom!
	- attempted Squeak Spur Stack VM
	- seemed to generate ok.

So maybe it produces a working spur vm but it doesn’t seem to want to make a non-spur one!

The problem with the plain stack vm appears to be to do with 
CCodeGenerator>sizeOfIntegralCType: which complained about #void. In translating NewObjectMemory>fwdTableInit: the ‘sendNode args first’ is ‘self baseHeaderSize’ and the result of -
	argType := self typeFor: sendNode args first self baseHeaderSize in: aTMethod.
is #void. That doesn’t seem quite right though since ObjectMemory>baseHeaderSIze is returning something -  though I can’t help noticing that a method 

ObjectMemory>baseHeaderSize
"To support SmartSyntaxPluginCodeGenerator"
	^self baseHeaderSize

.. somehow looks a touch *odd*. Can’t quite put my finger on it…

If I do the obvious and ugly hack of making #baseHeaderSize just return 4, then the codegen completes. I wonder if it will make a working vm?

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Klingon Code Warrior:- 6) "Our competitors are without honor!"




More information about the Squeak-dev mailing list