if (loop.get(in.getNumber())) {
if (inLoop(in, loop)) {
  private static OPT_BasicBlock[] inLoopPredecessors (OPT_LSTNode n) {    boolean headerExits = false;    boolean singleNodeLoop = true;    OPT_BasicBlock header = n.header;    OPT_BitVector loop = n.loop;    // check for the following condition:    // loop header `h' has a successor that is not part of the loop    // all in loop predecessors of `h' have `h' as single successor    OPT_BasicBlockEnumeration be = header.getOut();    while (be.hasMoreElements()) {      if (!loop.get(be.next().getNumber())) {        headerExits = true;        break;      }    }    if (!headerExits)      return  null;    OPT_BasicBlock res[] = new OPT_BasicBlock[header.getNumberOfIn()];    be = header.getIn();    int i = 0;    while (be.hasMoreElements()) {      OPT_BasicBlock in = (OPT_BasicBlock)be.nextElement();      if (loop.get(in.getNumber())) {        if (in.hasOneOut()) {          res[i] = in;          i++;        } else {          return  null;        }      }    }    return  res;  }