[squeak-dev] The Trunk: Compiler-eem.465.mcz
commits at source.squeak.org
commits at source.squeak.org
Tue Dec 14 22:35:13 UTC 2021
Eliot Miranda uploaded a new version of Compiler to project The Trunk:
http://source.squeak.org/trunk/Compiler-eem.465.mcz
==================== Summary ====================
Name: Compiler-eem.465
Author: eem
Time: 14 December 2021, 2:35:10.745443 pm
UUID: 7b05fe2b-b3a7-4776-804b-23cd44581644
Ancestors: Compiler-mt.464
Decompiler>>decompileBlock: shopuld use #== when matching block methods to block nodes, not #=. It could get confused between blocks with the same code.
=============== Diff against Compiler-mt.464 ===============
Item was changed:
----- Method: Decompiler>>decompileBlock: (in category 'public access') -----
decompileBlock: aBlock
+ "Decompile aBlock, returning the result as a BlockNode.
+ Show temp names from source if available."
- "Decompile aBlock, returning the result as a BlockNode.
- Show temp names from source if available."
"Decompiler new decompileBlock: [3 + 4]"
+ "[3 + 4] decompile decompileString"
aBlock method decompileWithTemps
ifNil: [^nil]
ifNotNil:
[:methodNode|
methodNode nodesDo:
(aBlock isFullBlock
+ ifTrue: [[:node| (node pc isVariableBinding and: [node pc key == aBlock method]) ifTrue: [^node]]]
- ifTrue: [[:node| (node pc isVariableBinding and: [node pc key = aBlock method]) ifTrue: [^node]]]
ifFalse: [[:node| node pc = aBlock startpc ifTrue: [^node]]])].
^self error: 'cannot find block node matching aBlock'!
More information about the Squeak-dev
mailing list
|