executionPredecessors = (List<InstructionContext>) execPreds.clone();
//sanity check
if ( (lastExecutionJSR() == null) && (subroutines.subroutineOf(getInstruction()) != subroutines.getTopLevel() ) ){
throw new AssertionViolatedException("Huh?! Am I '"+this+"' part of a subroutine or not?");
}
if ( (lastExecutionJSR() != null) && (subroutines.subroutineOf(getInstruction()) == subroutines.getTopLevel() ) ){
throw new AssertionViolatedException("Huh?! Am I '"+this+"' part of a subroutine or not?");
}
Frame inF = inFrames.get(lastExecutionJSR());
if (inF == null){// no incoming frame was set, so set it.
inFrames.put(lastExecutionJSR(), inFrame);