public final VM_Address alloc(EXTENT bytes, boolean isScalar, int allocator,
final public VM_Address alloc(EXTENT bytes, boolean isScalar, int allocator,
  public final VM_Address alloc(EXTENT bytes, boolean isScalar, int allocator, 				AllocAdvice advice)    throws VM_PragmaInline {    if (VM.VerifyAssertions) VM._assert(bytes == (bytes & (~(WORD_SIZE-1))));    if (allocator == NURSERY_ALLOCATOR && bytes > LOS_SIZE_THRESHOLD)       allocator = MS_ALLOCATOR;    VM_Address region;    switch (allocator) {      case  NURSERY_ALLOCATOR: region = nursery.alloc(isScalar, bytes); break;      case       MS_ALLOCATOR: region = ms.alloc(isScalar, bytes); break;      case IMMORTAL_ALLOCATOR: region = immortal.alloc(isScalar, bytes); break;      default:                 region = VM_Address.zero(); VM.sysFail("No such allocator");    }    if (VM.VerifyAssertions) VM._assert(Memory.assertIsZeroed(region, bytes));    return region;  }