IRJump.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 02 Dec 2008 08:14:54 +0000
changeset 6 49a61123c743
parent 1 0dd36941955f
child 23 377bc46cad12
permissions -rw-r--r--
A new IRLine pseudoinstruction added to include debugging info into the bytecode. See IRBuilderTests for examples.

"{ Package: 'stx:goodies/newcompiler' }"

IRInstruction subclass:#IRJump
	instanceVariableNames:'destination'
	classVariableNames:''
	poolDictionaries:''
	category:'NewCompiler-IR'
!

IRJump comment:'Instruction "goto: labelNum"'
!


!IRJump methodsFor:'accessing'!

destination

	^ destination
!

destination: aSequence

	destination := aSequence
!

successorSequences

	^ {destination}
! !

!IRJump methodsFor:'interpret'!

executeOn: interpreter

	^ interpreter goto: destination orderNumber
! !

!IRJump methodsFor:'testing'!

isGoto
	"is unconditional jump"

	^ true
!

isJump
	"goto or if"

	^ true
! !

!IRJump class methodsFor:'documentation'!

version
    ^'$Id$'
! !