compiler/PPCPluggableNode.st
changeset 416 b0fd54ee0412
parent 414 0eaf09920532
child 421 7e08b31e0dae
equal deleted inserted replaced
415:f30eb7ea54cd 416:b0fd54ee0412
    28 acceptsEpsilonOpenSet: set
    28 acceptsEpsilonOpenSet: set
    29 	^ true
    29 	^ true
    30 !
    30 !
    31 
    31 
    32 asInlined
    32 asInlined
    33 	^ PPCInlinePluggableNode new
    33     "Sadly, on Smalltalk/X blocks cannot be inlined because
    34 		name: name;
    34      the VM does not provide enough information to map
    35 		block: block;
    35      it back to source code. Very bad indeed!!"
    36 		yourself
    36 
       
    37     ((Smalltalk respondsTo:#isSmalltalkX) and:[ Smalltalk isSmalltalkX ]) ifTrue:[
       
    38         ^ super asInlined
       
    39     ] ifFalse:[
       
    40         ^ PPCInlinePluggableNode new
       
    41                 name: name;
       
    42                 block: block;
       
    43                 yourself
       
    44     ]
       
    45 
       
    46     "Modified: / 06-11-2014 / 01:46:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    37 !
    47 !
    38 
    48 
    39 compileWith: compiler effect: effect id: id
    49 compileWith: compiler effect: effect id: id
    40 	| blockId |
    50 	| blockId |
    41 	blockId := compiler idFor: block prefixed: #block.
    51 	blockId := compiler idFor: block prefixed: #block.