diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/pseudocode/PseudocodeImpl.java b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/pseudocode/PseudocodeImpl.java index 7df4278e93b..f709d76b499 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/cfg/pseudocode/PseudocodeImpl.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/cfg/pseudocode/PseudocodeImpl.java @@ -77,8 +77,6 @@ public class PseudocodeImpl implements Pseudocode { private final List mutableInstructionList = new ArrayList(); private final List instructions = new ArrayList(); - private List reversedInstructions = null; - private List deadInstructions; private Set localDeclarations = null; //todo getters @@ -139,21 +137,18 @@ public class PseudocodeImpl implements Pseudocode { @NotNull @Override public List getReversedInstructions() { - if (reversedInstructions == null) { - LinkedHashSet traversedInstructions = Sets.newLinkedHashSet(); - traverseFollowingInstructions(sinkInstruction, traversedInstructions, false); - if (traversedInstructions.size() < instructions.size()) { - List simplyReversedInstructions = Lists.newArrayList(instructions); - Collections.reverse(simplyReversedInstructions); - for (Instruction instruction : simplyReversedInstructions) { - if (!traversedInstructions.contains(instruction)) { - traverseFollowingInstructions(instruction, traversedInstructions, false); - } + LinkedHashSet traversedInstructions = Sets.newLinkedHashSet(); + traverseFollowingInstructions(sinkInstruction, traversedInstructions, false); + if (traversedInstructions.size() < instructions.size()) { + List simplyReversedInstructions = Lists.newArrayList(instructions); + Collections.reverse(simplyReversedInstructions); + for (Instruction instruction : simplyReversedInstructions) { + if (!traversedInstructions.contains(instruction)) { + traverseFollowingInstructions(instruction, traversedInstructions, false); } } - reversedInstructions = Lists.newArrayList(traversedInstructions); } - return reversedInstructions; + return Lists.newArrayList(traversedInstructions); } //for tests only @@ -165,11 +160,7 @@ public class PseudocodeImpl implements Pseudocode { @Override @NotNull public List getDeadInstructions() { - if (deadInstructions != null) { - return deadInstructions; - } - deadInstructions = Lists.newArrayList(); - + List deadInstructions = Lists.newArrayList(); for (Instruction instruction : mutableInstructionList) { if (isDead(instruction)) { deadInstructions.add(instruction);