[squeak-dev] The Trunk: TemporaryVariableScopeEditor-eem.3.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Jun 6 17:49:26 UTC 2018


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!



More information about the Squeak-dev mailing list