if (VM.VerifyAssertions) VM.assert((value & ~0x1) == 0);
if (VM.VerifyAssertions) VM._assert((value & ~0x1) == 0);
  void atomicWriteMarkBit(Object object, int value) throws VM_PragmaUninterruptible {    if (VM.VerifyAssertions) VM.assert((value & ~0x1) == 0);    if (DEBUG) VM.sysWriteln("atomicWriteMarkBit ", VM_Magic.objectAsAddress(object));    int word   = wordIndex(object);    int offset = word << LOG_WORDSIZE;    int bitnum = bitIndex(object, word);    int mask   = mask(bitnum);    int newval = value << bitnum;    int oldValue;    int newValue;    do {      oldValue = VM_Magic.prepare(marks, offset);      newValue = (oldValue & mask) | newval;    } while (! VM_Magic.attempt(marks, offset, oldValue, newValue));  }