JML

org.multijava.util.backend
Class TraceControlFlow

java.lang.Object
  extended byorg.multijava.util.backend.Trace
      extended byorg.multijava.util.backend.TraceControlFlow

public class TraceControlFlow
extends Trace

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


Field Summary
private  BasicBlock[] bblocks
           
private  BasicBlock[] eblocks
           
 
Fields inherited from class org.multijava.util.backend.Trace
 
Constructor Summary
TraceControlFlow(BasicBlock[] bblocks, BasicBlock[] eblocks)
          Creates a new instruction handle.
 
Method Summary
private  void generateBlock(int pos, String label)
           
private  void generateHeader()
           
private  void generateLink(int pos, int toPos, int nb, int count)
           
 void run()
           
private  void trace(BasicBlock block)
          Prints a trace of quadruples
 
Methods inherited from class org.multijava.util.backend.Trace
close, generateEdge, generateNode, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

bblocks

private BasicBlock[] bblocks

eblocks

private BasicBlock[] eblocks
Constructor Detail

TraceControlFlow

public TraceControlFlow(BasicBlock[] bblocks,
                        BasicBlock[] eblocks)
Creates a new instruction handle.

Method Detail

run

public void run()

trace

private void trace(BasicBlock block)
            throws IOException
Prints a trace of quadruples

Throws:
IOException

generateBlock

private void generateBlock(int pos,
                           String label)
                    throws IOException
Throws:
IOException

generateLink

private void generateLink(int pos,
                          int toPos,
                          int nb,
                          int count)
                   throws IOException
Throws:
IOException

generateHeader

private void generateHeader()
                     throws IOException
Throws:
IOException

JML

JML is Copyright (C) 1998-2002 by Iowa State University and is distributed under the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This release depends on code from the MultiJava project and is based in part on the Kopi project Copyright (C) 1990-99 DMS Decision Management Systems Ges.m.b.H.