boolean (Instruction instruction) { if (instruction == myInstructions[0]) return true; if (!instruction.isLinear()) return true; if (instruction instanceof AssignInstruction && ((AssignInstruction)instruction).getAssignedValue() instanceof DfaVariableValue || instruction instanceof MethodCallInstruction || instruction instanceof FinishElementInstruction || instruction instanceof FlushFieldsInstruction) { return true; } return getReadVariables(instruction).findFirst().isPresent(); }