Eliot Miranda uploaded a new version of TemporaryVariableScopeEditor to project The Trunk: http://source.squeak.org/trunk/TemporaryVariableScopeEditor-eem.3.mcz
==================== Summary ====================
Name: TemporaryVariableScopeEditor-eem.3 Author: eem Time: 6 June 2018, 10:49:12.17059 am UUID: 6c4b939d-5460-44c5-a5c4-f188ec87b8ea Ancestors: TemporaryVariableScopeEditor-eem.2
Update the TempScopeEditor to work with arbitrary bytecode sets.
=============== Diff against TemporaryVariableScopeEditor-eem.2 ===============
Item was added: + ----- Method: TempScopeEditor class>>scanBlock (in category 'scanning') ----- + scanBlock + ^[:m| + m isQuick not + and: [(m abstractBytecodeMessageAt: m initialPC) selector = #pushNewArrayOfSize: + and: [(m abstractBytecodeMessageAt: (m concretePCForAbstractPC: 2)) selector = #popIntoTemporaryVariable: + and: [(self new forMethod: m) misplacedTempsExist]]]]!
Item was changed: ----- Method: TempScopeEditor>>edit (in category 'editing') ----- edit + self misplacedTempsExist ifTrue: - self buildTempMap. - tempMap notEmpty ifTrue: [| mr | mr := method methodReference. self copyMethodMovingTemps. Transcript cr; show: mr actualClass name, ' >> ', mr methodSymbol. method methodClass compile: out contents classified: mr category]!
Item was changed: ----- Method: TempScopeEditor>>editNoCompile (in category 'editing') ----- editNoCompile + ^self misplacedTempsExist ifTrue: - self buildTempMap. - ^tempMap isEmpty ifFalse: [self copyMethodMovingTemps. out contents]!
Item was added: + ----- Method: TempScopeEditor>>misplacedTempsExist (in category 'testing') ----- + misplacedTempsExist + self buildTempMap. + ^tempMap notEmpty!
packages@lists.squeakfoundation.org