The Trunk: Compiler-eem.379.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Compiler-eem.379.mcz

commits-2
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!