<div dir="ltr">Hi All,<div><br></div><div>    mea culpa.  Yesterday I managed to generate completely broken sources and broke CI servers etc.  I've realized what went wrong.  For the past week I've been doing VM development in a 64-bit Squeak image (*) and yesterday for the first time I generated sources from the 64-bit image.  There was old very broken code in VMMaker:</div><div><br></div><div>VMMaker>>initialize<div><span class="gmail-Apple-tab-span" style="white-space:pre">     </span>logger := Transcript.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">  </span>inline := true.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">        </span>forBrowser := false.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">   </span>internalPlugins := SortedCollection new.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">       </span>externalPlugins := SortedCollection new.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">       </span>platformName := self class machinesDirName.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">>>    </span>is64BitVM := Smalltalk wordSize == 8.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">  </span>interpreterClassName := Interpreter name.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">      </span>optionsDictionary := Dictionary new.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">>>   </span>optionsDictionary at: #BytesPerWord put: Smalltalk wordSize.</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">   </span>VMStructType voidStructTypeCache</div><div><br></div><div>which caused mayhem.  In particular, invalid types were inferred for plugin files.  These files ahem to be generated choosing types such that the generated files work on both 64 and 32-bit.  That means /not/ initializing the VMMaker instance as above.  </div><div><br></div><div>I'm not sure when things will be back to normal but it should be soon, given that I finally understand what went wrong.  Apologies for all the breakages.</div><div><br></div><div><br></div><div>(*) I was looking at Juan Vuletich's 64-bit scavenger crash due to remember set overflow that Clément fixed recently.  I was adding logging to the scavenger so we can better analyse failures like this and better tune the GC.  Simulation of a 64-bit image is somewhat quicker in 64-bits (less work synthesizing 64-bit values from the heap) and so I thought I'd try developing in 64-bits.</div><div class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div>