de.rwth.dfa.jvm.samples
Class  LVAnalyser
java.lang.Object
  |
  +--de.rwth.utils.AbstractClassProcessor
        |
        +--de.rwth.dfa.jvm.samples.AbstractAnalyser
              |
              +--de.rwth.dfa.jvm.samples.LVAnalyser
- public class LVAnalyser- extends AbstractAnalyser
An application for finding live variables in the local variables at each
 instruction of all methods of a class file.
- Version: 
- $Id: LVAnalyser.java,v 1.2 2002/09/17 06:53:53 mohnen Exp $
- Author: 
- Markus Mohnen
 
 
| Constructor Summary | 
| LVAnalyser(java.lang.String[] args)Creates a new
 LVAnalyserinstance. | 
 
| Method Summary | 
|  Abstraction | getAbstraction(de.fub.bytecode.classfile.Method method,
               de.fub.bytecode.classfile.Code code,
               de.fub.bytecode.classfile.CodeException[] methodExceptions,
               de.fub.bytecode.generic.InstructionList instrs)Returns a
 LVAbstractionfor a method. | 
|  Solver[] | getSolvers(Abstraction abstraction,
           java.lang.String methodName,
           de.fub.bytecode.generic.InstructionList methodInstrs,
           de.fub.bytecode.classfile.CodeException[] methodExceptions,
           Stopwatch stopwatch)Returns two groups of solvers:
 FlowGraphSolver,BasicBlockGraphSolver, andFactorisedFlowGraphSolver,FactorisedBasicBlockGraphSolver. | 
| static void | main(java.lang.String[] args)Program entry point.
 | 
|  void | process(de.fub.bytecode.classfile.Method method,
        java.lang.String filename)Does additional statistics in addition to
 AbstractAnalyser.process(Method,String). | 
 
 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
LVAnalyser
public LVAnalyser(java.lang.String[] args)
- Creates a new LVAnalyserinstance.
- 
- Parameters:
- args- a- String[]value
- See Also: 
- AbstractAnalyser
 
main
public static void main(java.lang.String[] args)
- Program entry point.- 
- Parameters:
- args- a- String[]value
- See Also: 
- AbstractAnalyser
 
getAbstraction
public Abstraction getAbstraction(de.fub.bytecode.classfile.Method method,
                                  de.fub.bytecode.classfile.Code code,
                                  de.fub.bytecode.classfile.CodeException[] methodExceptions,
                                  de.fub.bytecode.generic.InstructionList instrs)
- Returns a LVAbstractionfor a method.
- 
- Overrides:
- getAbstractionin class- AbstractAnalyser
 
- 
- Parameters:
- method- a- Methodvalue
- code- a- Codevalue
- methodExceptions- a- CodeException[]value
- instrs- an- InstructionListvalue
- Returns:
- an Abstractionvalue
 
getSolvers
public Solver[] getSolvers(Abstraction abstraction,
                           java.lang.String methodName,
                           de.fub.bytecode.generic.InstructionList methodInstrs,
                           de.fub.bytecode.classfile.CodeException[] methodExceptions,
                           Stopwatch stopwatch)
- Returns two groups of solvers: FlowGraphSolver,BasicBlockGraphSolver, andFactorisedFlowGraphSolver,FactorisedBasicBlockGraphSolver.
- 
- Overrides:
- getSolversin class- AbstractAnalyser
 
- 
- Parameters:
- abstraction- an- Abstractionvalue
- methodName- a- Stringvalue
- methodInstrs- an- InstructionListvalue
- methodExceptions- a- CodeException[]value
- stopwatch- a- Stopwatchvalue
- Returns:
- a Solver[]value
 
process
public void process(de.fub.bytecode.classfile.Method method,
                    java.lang.String filename)
- Does additional statistics in addition to AbstractAnalyser.process(Method,String).
- 
- Overrides:
- processin class- AbstractAnalyser
 
- 
- Parameters:
- method- a- Methodvalue
- filename- a- Stringvalue