if (!(arrayType.isInitialized() || arrayType.isInBootImage())) {
if (!(arrayType.isInitialized() || arrayType.isInBootImage()) && VM_Type.JavaLangObjectType.isInstantiated()) {
  public OPT_Instruction generateAnewarray (VM_TypeReference elementTypeRef) {    VM_TypeReference array = elementTypeRef.getArrayTypeForElementType();    OPT_RegisterOperand t = gc.temps.makeTemp(array);    t.setPreciseType();    markGuardlessNonNull(t);    // We can do early resolution of the array type if the element type     // is already initialized.    VM_Type arrayType = array.peekResolvedType();    OPT_Operator op = NEWARRAY_UNRESOLVED;    OPT_TypeOperand arrayOp = makeTypeOperand(array);    if (arrayType != null) {      if (!(arrayType.isInitialized() || arrayType.isInBootImage())) {	VM_Type elementType = elementTypeRef.peekResolvedType(); 	if (elementType != null) {	  if (elementType.isInitialized() || elementType.isInBootImage()) {	    arrayType.resolve();	    arrayType.instantiate();	  }	}      }      if (arrayType.isInitialized() || arrayType.isInBootImage()) {	op = NEWARRAY;	arrayOp = makeTypeOperand(arrayType);      }    }    OPT_Instruction s = NewArray.create(op, t, arrayOp, popInt());    push(t.copyD2U());     rectifyStateWithErrorHandler();    rectifyStateWithExceptionHandler(VM_TypeReference.JavaLangNegativeArraySizeException);          return s;  }