[squeak-dev] Daily Commit Log
commits at source.squeak.org
commits at source.squeak.org
Tue Aug 17 23:55:03 UTC 2010
Changes to Trunk (http://source.squeak.org/trunk.html) in the last 24 hours:
http://lists.squeakfoundation.org/pipermail/packages/2010-August/003609.html
Name: Compiler-eem.163
Ancestors: Compiler-eem.159
Fix compilation after error correction. If interactive then on correction
the entire text should be recompiled if the entire text was input (e.g.
compiling a method in a browser). But if a selection was compiled
(e.g. doit in a workspace) then the current selection should be
recompiled.
Fix VariableScopeFinder for cascades.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2010-August/003610.html
Name: System-eem.357
Ancestors: System-eem.356
Call a spade a spade. methodSymbol, bah humbug!
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2010-August/003611.html
Name: Compiler-nice.164
Ancestors: Compiler-eem.163
Fix the case of special write binding.
Reminder: in case of special write binding, we must:
1) load the VariableBinding
2) push assigned value
3) send value:
(see AssignmentNode>>emitCodeForEffect:encoder: )
#sizeCodeForLoad: read inst var writeNode
#sizeCodeForStore: write inst var writeNode
#sizeCodeForLoad: is sent before #sizeCodeForStore:
Therefore writeNode is read before written and the door is open for bugs.
Fortunately, #sizeCodeForStore: redo the job of #sizeCodeForLoad: and reserve space for pushing the VariableBinding on stack.
Unfortunately, it sometimes happens that the sizeCodeFor... is requested twice, the writeNode is then initialized and sizeCodeForLoad: reserve space for pushing VariableBinding a second time leading to a code size discrepancy...
Present fix implement following solution:
1) let sizeCodeForLoad: reserve size for emitCodeForLoad:encoder: operations, but don't trust writeNode isNil for this job.
2) let sizeCodeForStore: reserve size for - and only for - emitCodeForStore:encoder: operations.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2010-August/003612.html
Name: Tests-eem.90
Ancestors: Tests-eem.89
As of Compiler-eem.154 DecompilerTests>>testRemoteTemp
no longer fails.
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2010-August/003613.html
Name: Compiler-eem.164
Ancestors: Compiler-eem.163
Stage one cleanup of the old parse node sizers & emitters
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2010-August/003614.html
Name: Compiler-eem.165
Ancestors: Compiler-eem.164
Stage two cleanup of the old parse node sizers & emitters
Also:
Streamline Compiler>>#compile:in:classified:notifying:ifFail: . requestor: send is unnecessary.
Fix comment typo inScanner>>scanAllTokenPositionsInto:
=============================================
http://lists.squeakfoundation.org/pipermail/packages/2010-August/003615.html
Name: Compiler-eem.166
Ancestors: Compiler-eem.165
Third and final stage of old parse node emitters and sizers cleanup.
Merges BytecodeAgnosticMethodNode into MethodNode and
deletes BytecodeAgnosticMethodNode.
=============================================
More information about the Squeak-dev
mailing list
|