return false;
else { return false; }
  private static boolean loopInvariant (OPT_Operand op, OPT_BitVector nloop,                                        int depth)  {    if (depth <= 0) return false;    if (op instanceof OPT_ConstantOperand) return true;    if (op instanceof OPT_RegisterOperand) {      boolean invariant = true;      OPT_Register reg = ((OPT_RegisterOperand)op).register;      OPT_RegisterOperandEnumeration defs = OPT_DefUse.defs(reg);      while (defs.hasMoreElements()) {        OPT_Instruction inst = defs.next().instruction;        if (OPT_CFGTransformations.inLoop (inst.getBasicBlock(), nloop)) {          if (Move.conforms (inst)) {            invariant &= loopInvariant (Move.getVal(inst), nloop, depth - 1);          } else if (inst.operator.opcode == ARRAYLENGTH_opcode) {            invariant &= loopInvariant (GuardedUnary.getVal(inst),nloop,depth);          } else {            invariant = false;          }        }        if (!invariant) break;      }      return invariant;    }    return false;  }