[Pharo-project] [update 1.3] #13127 - 13129

Marcus Denker marcus.denker at inria.fr
Fri Apr 1 17:51:45 CEST 2011

[update 1.3] #13127 - 13129

Issue 3934:	Add isDisplayed in SystemWindow (Benjamin)
Issue 3933:	Better behavior for selection in PluggableListMorphOfMany and PluggableMorphListMorphOfMany (Benjamin)
Issue 2360:	[Failing Test] nil out locals in a block if readBeforeWritten (Nicolas)

Thanks a lot Nicolas!!


First stage for reducing Squeak/Pharo Compiler differences:
This is a pre-requisite for 
issue 2360

- let visitor pattern #accept: return its own result rather than the node
- remove old code generation methods
- merge ByteCodeAgnosticMethodNode into MethodNode

MessageNode initialize must be performed at the end of this stage.

Part 2:

- correctly move 'locationCounter localsPool' in MethodNode ivar (they were undeclared)
- use #notOptimizedIn: rather #than noteOptimized.
- do not optimize a todo that would overwrite its limit (common changes with 3677)
- connect the OptimizedBlockLocalTempReadBeforeWrittenVisitor to nilReadBeforeWrittenTemps in optimized blocks
- add #testOptimizedBlockLocalNilling1 and #testOptimizedBlockLocalNilling2

Part 3:

This change includes Compiler and Decompiler changes to handle optimized #repeat loops.
Note that MessageNode class>>#initialize of Part2 already includes necessary hook.
(Sorry, some methods have changed several times in trunk, and it's easier to upgrade several fixes at once).
If you don't want this change in Pharo (why ?) then don't forget to change  MessageNode class>>#initialize

Marcus Denker  -- http://www.marcusdenker.de
INRIA Lille -- Nord Europe. Team RMoD.

More information about the Pharo-project mailing list