<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jul 8, 2015 at 3:29 PM, Levente Uzonyi <span dir="ltr"><<a href="mailto:leves@elte.hu" target="_blank">leves@elte.hu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There's one difference between the two versions. Using Compiler-eem.300, the following methods are compiled with small frame instead of large frame:<br></blockquote><div><br></div><div>Thanks Levente; that'll be it.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
BitBltDisplayScanner>>#displayLines:in:clippedBy:<br>
GradientFillStyle>>#computePixelRampOfSize:<br>
InterpolatedGradientFillStyle>>#computePixelRampOfSize:<br>
NewParagraph>>#clickAt:for:controller:<br>
PackageInfo>>#changeRecordsForMethod:do:<br>
PaintBoxMorph>>#addBrushesOffImage:<br>
PaintBoxMorph>>#addShapeButtonsOffImage:onImage:<br>
PaintBoxMorph>>#addToolsOffImage:onImage:<br>
Paragraph>>#clickAt:for:controller:<br>
PianoRollScoreMorph>>#addNotes<br>
PolygonMorph>>#lineSegmentsDo:<br>
PostscriptCharacterScanner>>#displayLine:offset:leftInRun:<br>
SmalltalkImage>>#appendChangesTo:<br>
StrikeFontSet>>#characters:in:displayAt:clippedBy:rule:fillColor:kernDelta:on:<br>
SuperSwikiServer>>#fastParseEntriesFrom:<br>
TTFontReader>>#processGlyphDataTable:offsets:<br>
TextStyle class>>#fontMenuForStyle:target:selector:highlight:<br>
Unicode class>>#parseCompositionMappingFrom:<br>
<br>
Levente<div class="HOEnZb"><div class="h5"><br>
<br>
On Tue, 7 Jul 2015, David T. Lewis wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Tue, Jul 07, 2015 at 05:20:52PM -0700, Eliot Miranda wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi David,<br>
<br>
On Tue, Jul 7, 2015 at 4:33 PM, David T. Lewis <<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
The problem was introduced in Compiler-eem.300, which does this:<br>
<br>
Use the size/emitPushNClosureTemps: api in block generation.<br>
<br>
There are two affected methods:<br>
<br>
BlockNode>>sizeCodeForEvaluatedClosureValue:<br>
BlockNode>>emitCodeForEvaluatedClosureValue:encoder:<br>
<br>
Reverting these two methods fixes the problem.<br>
<br>
I don't know the background on this change but my guess would be that<br>
it is something that works on a stack interpreter but not on a context<br>
interpreter, so maybe the methods need to be tweaked to account for the<br>
difference.<br>
<br>
</blockquote>
<br>
It should make no difference to the code produced. It adds a new way of<br>
saying "push N nils" that allows the Sista bytecode set to use its<br>
"pushNClosureNils" bytecode to push several nils in one bytecode. But with<br>
the standard encoder EncoderForV3PlusClosures exactly the same code as the<br>
previous version should be produced.<br>
<br>
How do the changes in the compiler cause the crash?<br>
<br>
</blockquote>
<br>
I don't know.<br>
<br>
I'm doing brute-force debugging, just rolling the versions back until the<br>
problem goes away.<br>
<br>
All I can say with confidence is that those two methods changes, followed by<br>
a system recompile, result in an image that crashes a context interpreter VM.<br>
Reverting these two methods and recompiling brings the image back to a sane<br>
condition.<br>
<br>
It might turn out to be a trivial problem, but I am suggesting that we should<br>
temporarily revert and work it out after the 4.6 release.<br>
<br>
Dave<br>
<br>
<br>
<br>
</blockquote>
<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">best,<div>Eliot</div></div>
</div></div>