--- a/compiler/PPCInliningVisitor.st Thu Apr 30 23:43:14 2015 +0200
+++ b/compiler/PPCInliningVisitor.st Sun May 10 06:28:36 2015 +0100
@@ -12,61 +12,61 @@
!PPCInliningVisitor methodsFor:'initialization'!
initialize
- super initialize.
-
- acceptedNodes := 0
+ super initialize.
+
+ acceptedNodes := 0
! !
!PPCInliningVisitor methodsFor:'testing'!
canInline
- ^ acceptedNodes > 1
+ ^ acceptedNodes > 1
! !
!PPCInliningVisitor methodsFor:'visiting'!
beforeAccept: node
- acceptedNodes := acceptedNodes + 1.
- super beforeAccept: node
+ acceptedNodes := acceptedNodes + 1.
+ super beforeAccept: node
!
markForInline: node
- self canInline ifTrue: [
- node markForInline.
- ].
- ^ node
+ self canInline ifTrue: [
+ node markForInline.
+ ].
+ ^ node
!
visitCharSetPredicateNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitCharacterNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitLiteralNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitMessagePredicateNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitNilNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitNotCharSetPredicateNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitNotLiteralNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitNotMessagePredicateNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitPluggableNode: node
@@ -74,18 +74,32 @@
the VM does not provide enough information to map
it back to source code. Very bad indeed!!"
((Smalltalk respondsTo:#isSmalltalkX) and:[ Smalltalk isSmalltalkX ]) ifFalse:[
- ^ self markForInline: node
+ self markForInline: node
].
^ super visitPluggableNode: node.
"Modified: / 23-04-2015 / 12:15:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+visitTokenConsumeNode: node
+ super visitTokenConsumeNode: node.
+ node name isNil ifTrue: [
+ self markForInline: node
+ ].
+ ^ node
+!
+
visitTokenStarMessagePredicateNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
!
visitTokenStarSeparatorNode: node
- ^ self markForInline: node
+ ^ self markForInline: node
+!
+
+visitTokenWhitespaceNode: node
+ super visitTokenWhitespaceNode: node.
+ self markForInline: node.
+ ^ node
! !