[squeak-dev] The Trunk: Compiler-eem.379.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Mar 20 22:27:44 UTC 2018


Eliot Miranda uploaded a new version of Compiler to project The Trunk:
http://source.squeak.org/trunk/Compiler-eem.379.mcz

==================== Summary ====================

Name: Compiler-eem.379
Author: eem
Time: 20 March 2018, 3:27:27.12646 pm
UUID: b3856f24-9d98-478a-936f-c6d24d667be4
Ancestors: Compiler-eem.378

Add initialization of the Undeclared variable addedExtraLiterals which is soon to be a replacement for Encoder's addedSelectorAndMethodClassLiterals, a name which is now misleading given the new full block support.  By adding the initialization of the Undeclared variable the compiler is not broken as the instance variable is renamed and Encoder's methods are recompiled.

=============== Diff against Compiler-eem.378 ===============

Item was changed:
  ----- Method: BytecodeEncoder>>resetForFullBlockGeneration (in category 'code generation') -----
  resetForFullBlockGeneration
  	literalStream := WriteStream on: (Array new: 8).
+ 	addedSelectorAndMethodClassLiterals := addedExtraLiterals := false.
- 	addedSelectorAndMethodClassLiterals := false.
  	optimizedSelectors := Set new!

Item was changed:
  ----- Method: BytecodeEncoder>>resetLiteralStreamForFullBlock (in category 'code generation') -----
  resetLiteralStreamForFullBlock
  	literalStream := WriteStream on: (Array new: 32).
+ 	addedSelectorAndMethodClassLiterals := addedExtraLiterals := false.
- 	addedSelectorAndMethodClassLiterals := false.
  	optimizedSelectors := Set new!

Item was changed:
  ----- Method: Encoder>>initScopeAndLiteralTables (in category 'initialize-release') -----
  initScopeAndLiteralTables
  
  	scopeTable := StdVariables copy.
  	litSet := StdLiterals copy.
  	"comments can be left hanging on nodes from previous compilations.
  	 probably better than this hack fix is to create the nodes afresh on each compilation."
  	scopeTable do:
  		[:varNode| varNode comment: nil].
  	litSet do:
  		[:varNode| varNode comment: nil].
  	selectorSet := StdSelectors copy.
  	litIndSet := Dictionary new: 16.
  	literalStream := WriteStream on: (Array new: 32).
+ 	addedSelectorAndMethodClassLiterals := addedExtraLiterals := false.
- 	addedSelectorAndMethodClassLiterals := false.
  	optimizedSelectors := Set new!



More information about the Squeak-dev mailing list