at.dms.backend
Class ControlFlow

java.lang.Object
  |
  +--at.dms.backend.ControlFlow

public class ControlFlow
extends java.lang.Object

This is the entry point of the backend, this class constructs the control flow graf and applies optimizations


Constructor Summary
ControlFlow(MethodEnv env, InstructionHandle start, HandlerInfo[] handlers)
          Creates a new instruction handle.
 
Method Summary
static BasicBlock findBasicBlock(InstructionHandle handle)
           
 InstructionHandle getInstructions()
           
 void optimize()
           
protected static void setMarked(BasicBlock[] bblocks, boolean marked)
           
 void trace()
          Prints a trace of the control flow structure.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ControlFlow

public ControlFlow(MethodEnv env,
                   InstructionHandle start,
                   HandlerInfo[] handlers)
Creates a new instruction handle.
Parameters:
instruction - the instruction.
prev - the handle of the next instruction in textual order.
Method Detail

trace

public void trace()
Prints a trace of the control flow structure.

optimize

public void optimize()

getInstructions

public InstructionHandle getInstructions()

findBasicBlock

public static BasicBlock findBasicBlock(InstructionHandle handle)

setMarked

protected static final void setMarked(BasicBlock[] bblocks,
                                      boolean marked)