Package org.candle.decompiler.intermediate.code

Examples of org.candle.decompiler.intermediate.code.AbstractIntermediate


  @Override
  public void visitBooleanBranchIntermediate(BooleanBranchIntermediate line) {
    InstructionHandle next = line.getInstruction().getNext();
   
    //find how that actually maps to the abstract line..
    AbstractIntermediate nextIntermediate = ilc.getNext(next.getPosition());
    igc.getGraph().addVertex(nextIntermediate);
   
    BranchHandle bi = ((BranchHandle)line.getInstruction());
    AbstractIntermediate targetIntermediate = ilc.getNext(bi.getTarget().getPosition());
    igc.getGraph().addVertex(targetIntermediate);
   
    AbstractIntermediate lowest = targetIntermediate.getInstruction().getPosition() < nextIntermediate.getInstruction().getPosition() ? targetIntermediate : nextIntermediate;
    AbstractIntermediate highest = targetIntermediate.getInstruction().getPosition() > nextIntermediate.getInstruction().getPosition() ? targetIntermediate : nextIntermediate;
   
   
    /*
    //add true path... (Conditional) -> (True) -> (Node A)
    BooleanBranchOutcome trueOutcome = new BooleanBranchOutcome(line.getInstruction(), line, Boolean.TRUE);
View Full Code Here


      //add an edge.
      igc.getGraph().addEdge(line, si);

      //add edge from outcome to edge.
      LOG.debug(si);
      AbstractIntermediate target = ilc.getNext(line.getDefaultCase().getTarget().getPosition());
     
      LOG.debug("TargeT:"+target);
      igc.getGraph().addVertex(target);
      igc.getGraph().addEdge(si, target);
    }
   
   
    for(Case caseVal : line.getCases()) {
      CaseIntermediate si = new CaseIntermediate(line.getInstruction(), caseVal);
      igc.getGraph().addVertex(si);
     
      //add an edge.
      igc.getGraph().addEdge(line, si);
     
      //add edge from outcome to edge.
      AbstractIntermediate target = ilc.getNext(caseVal.getTarget().getPosition());
      igc.getGraph().addVertex(target);
      igc.getGraph().addEdge(si, target);
    }
  }
View Full Code Here

TOP

Related Classes of org.candle.decompiler.intermediate.code.AbstractIntermediate

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.