if (def.type.isPrimitiveType()) {
if (def.type == null || def.type.isPrimitiveType()) {
  private AnalysisResult checkAllAppearances (OPT_Register reg, OPT_IR ir) {    AnalysisResult result = new AnalysisResult();    result.threadLocal = true;    result.methodLocal = true;    for (OPT_RegisterOperand use = reg.useList; use != null;         use = (OPT_RegisterOperand)use.getNext()) {      // if the type is primitive, just say it escapes      // TODO: handle this more cleanly      if (use.type.isPrimitiveType()) {        result.threadLocal = false;        result.methodLocal = false;        break;      }      if (checkEscapesThread(use, ir)) {        result.threadLocal = false;      }      if (checkEscapesMethod(use, ir)) {        result.methodLocal = false;      }    }    for (OPT_RegisterOperand def = reg.defList; def != null;         def = (OPT_RegisterOperand)def.getNext()) {      // if the type is primitive, just say it escapes      // TODO: handle this more cleanly      if (def.type.isPrimitiveType()) {        result.threadLocal = false;        result.methodLocal = false;        break;      }      if (checkEscapesThread(def, ir)) {        result.threadLocal = false;      }      if (checkEscapesMethod(def, ir)) {        result.methodLocal = false;      }    }    return  result;  }