VM_Magic.setMemoryWord(isCopyAddress, ((temp & 0x00ffffff)));
VM_Magic.setMemoryInt(isCopyAddress, ((temp & 0x00ffffff)));
  private static VM_Address GetPrimitiveArrayCritical(int envHandler, int arrayJREF, VM_Address isCopyAddress) {    if (traceJNI) VM.sysWrite("JNI called: GetPrimitiveArrayCritical \n");       VM_JNIEnvironment env;    try {      env = VM_Thread.getCurrentThread().getJNIEnv();      // retrieve the real String object from the side table      Object primitiveArray = env.getJNIRef(arrayJREF);      // not an array, return null      if (!primitiveArray.getClass().isArray())        return VM_Address.zero();      // set Copy flag to false, if it's a valid address      if (!isCopyAddress.isZero()) {        int temp = VM_Magic.getMemoryWord(isCopyAddress);        if (LittleEndian) {          VM_Magic.setMemoryWord(isCopyAddress, ((temp & 0xffffff00)));        } else {          VM_Magic.setMemoryWord(isCopyAddress, ((temp & 0x00ffffff)));        }      }      // For array of primitive, return the object address, which is the array itself      VM.disableGC();      return VM_Magic.objectAsAddress(primitiveArray);    } catch (Throwable unexpected) {      env = VM_Thread.getCurrentThread().getJNIEnv();      env.recordException(unexpected);      return VM_Address.zero();    }  }