Lines Matching refs:instructionOffset

339     public boolean isTraced(int instructionOffset)
341 return evaluationCounts[instructionOffset] > 0;
348 public boolean isInstruction(int instructionOffset)
350 return branchTargetFinder.isInstruction(instructionOffset);
358 public boolean isBranchOrExceptionTarget(int instructionOffset)
360 return branchTargetFinder.isBranchTarget(instructionOffset) ||
361 branchTargetFinder.isExceptionHandler(instructionOffset);
369 public boolean isSubroutineStart(int instructionOffset)
371 return branchTargetFinder.isSubroutineStart(instructionOffset);
379 public boolean isSubroutineInvocation(int instructionOffset)
381 return branchTargetFinder.isSubroutineInvocation(instructionOffset);
389 public boolean isSubroutine(int instructionOffset)
391 return branchTargetFinder.isSubroutine(instructionOffset);
399 public boolean isSubroutineReturning(int instructionOffset)
401 return branchTargetFinder.isSubroutineReturning(instructionOffset);
409 public int subroutineEnd(int instructionOffset)
411 return branchTargetFinder.subroutineEnd(instructionOffset);
420 public int initializationOffset(int instructionOffset)
422 return branchTargetFinder.initializationOffset(instructionOffset);
463 public TracedVariables getVariablesBefore(int instructionOffset)
465 return variablesBefore[instructionOffset];
473 public TracedVariables getVariablesAfter(int instructionOffset)
475 return variablesAfter[instructionOffset];
483 public TracedStack getStackBefore(int instructionOffset)
485 return stacksBefore[instructionOffset];
493 public TracedStack getStackAfter(int instructionOffset)
495 return stacksAfter[instructionOffset];
503 public InstructionOffsetValue branchOrigins(int instructionOffset)
505 return branchOriginValues[instructionOffset];
513 public InstructionOffsetValue branchTargets(int instructionOffset)
515 return branchTargetValues[instructionOffset];
644 int instructionOffset = startOffset;
651 if (maxOffset < instructionOffset)
653 maxOffset = instructionOffset;
658 int evaluationCount = evaluationCounts[instructionOffset];
662 if (variablesBefore[instructionOffset] == null)
665 variablesBefore[instructionOffset] = new TracedVariables(variables);
666 stacksBefore[instructionOffset] = new TracedStack(stack);
671 variablesBefore[instructionOffset].initialize(variables);
672 stacksBefore[instructionOffset].copy(stack);
677 generalizedContexts[instructionOffset] = true;
682 boolean variablesChanged = variablesBefore[instructionOffset].generalize(variables, true);
683 boolean stackChanged = stacksBefore[instructionOffset].generalize(stack);
685 //System.out.println("GVars: "+variablesBefore[instructionOffset]);
686 //System.out.println("GStack: "+stacksBefore[instructionOffset]);
691 generalizedContexts[instructionOffset])
708 variables.generalize(variablesBefore[instructionOffset], false);
709 stack.generalize(stacksBefore[instructionOffset]);
712 generalizedContexts[instructionOffset] = true;
717 generalizedContexts[instructionOffset] = false;
722 evaluationCounts[instructionOffset]++;
725 Value storeValue = new InstructionOffsetValue(instructionOffset);
733 Instruction instruction = InstructionFactory.create(code, instructionOffset);
737 int nextInstructionOffset = instructionOffset +
738 instruction.length(instructionOffset);
745 System.out.println(instruction.toString(instructionOffset));
756 instructionOffset,
764 System.err.println(" Instruction = "+instruction.toString(instructionOffset));
783 if (branchTargetValues[instructionOffset] != null)
785 System.out.println(" has up till now been branching to "+branchTargetValues[instructionOffset]);
797 if (variablesAfter[instructionOffset] == null)
800 variablesAfter[instructionOffset] = new TracedVariables(variables);
801 stacksAfter[instructionOffset] = new TracedStack(stack);
806 variablesAfter[instructionOffset].initialize(variables);
807 stacksAfter[instructionOffset].copy(stack);
813 variablesAfter[instructionOffset].generalize(variables, true);
814 stacksAfter[instructionOffset].generalize(stack);
821 branchTargetValues[instructionOffset] = branchTargetValues[instructionOffset] == null ?
823 branchTargetValues[instructionOffset].generalize(branchTargets).instructionOffsetValue();
833 InstructionOffsetValue instructionOffsetValue = new InstructionOffsetValue(instructionOffset);
836 int branchTarget = branchTargets.instructionOffset(index);
848 if (DEBUG) System.out.println("Pushing alternative branch #"+index+" out of "+branchTargetCount+", from ["+instructionOffset+"] to ["+branchTargets.instructionOffset(index)+"]");
852 branchTargets.instructionOffset(index));
858 if (DEBUG) System.out.println("Definite branch from ["+instructionOffset+"] to ["+branchTargets.instructionOffset(0)+"]");
862 instructionOffset = branchTargets.instructionOffset(0);
874 instructionOffset,
885 instructionOffset);