@Override public boolean invalidate(IRScope scope) { super.invalidate(scope); scope.putStoreLocalVarPlacementProblem(null); return true; } }
@Override public boolean invalidate(IRScope scope) { super.invalidate(scope); scope.putLiveVariablesProblem(null); return true; } }
@Override public boolean invalidate(IRScope scope) { super.invalidate(scope); scope.putStoreLocalVarPlacementProblem(null); return true; } }
@Override public boolean invalidate(IRScope scope) { super.invalidate(scope); scope.putLiveVariablesProblem(null); return true; } }
public void resetState() { interpreterContext = null; fullInterpreterContext = null; // reset flags flagsComputed = false; flags.add(CAN_CAPTURE_CALLERS_BINDING); flags.add(BINDING_HAS_ESCAPED); flags.add(USES_EVAL); flags.add(USES_ZSUPER); flags.remove(HAS_BREAK_INSTRS); flags.remove(HAS_NONLOCAL_RETURNS); flags.remove(CAN_RECEIVE_BREAKS); flags.remove(CAN_RECEIVE_NONLOCAL_RETURNS); // Invalidate compiler pass state. // // SSS FIXME: Re-grabbing passes each iter is to get around concurrent-modification issues // since CompilerPass.invalidate modifies this, but some passes cannot be invalidated. This // should be wrapped in an iterator. FullInterpreterContext fic = getFullInterpreterContext(); if (fic != null) { int i = 0; while (i < fic.getExecutedPasses().size()) { if (!fic.getExecutedPasses().get(i).invalidate(this)) { i++; } } } }
public void resetState() { interpreterContext = null; fullInterpreterContext = null; // reset flags flagsComputed = false; flags.add(CAN_CAPTURE_CALLERS_BINDING); flags.add(BINDING_HAS_ESCAPED); flags.add(USES_EVAL); flags.add(USES_ZSUPER); flags.remove(HAS_BREAK_INSTRS); flags.remove(HAS_NONLOCAL_RETURNS); flags.remove(CAN_RECEIVE_BREAKS); flags.remove(CAN_RECEIVE_NONLOCAL_RETURNS); // Invalidate compiler pass state. // // SSS FIXME: Re-grabbing passes each iter is to get around concurrent-modification issues // since CompilerPass.invalidate modifies this, but some passes cannot be invalidated. This // should be wrapped in an iterator. FullInterpreterContext fic = getFullInterpreterContext(); if (fic != null) { int i = 0; while (i < fic.getExecutedPasses().size()) { if (!fic.getExecutedPasses().get(i).invalidate(this)) { i++; } } } }