EMIT(MIR_Move.create(IA32_MOV, R(getEAX()), oldValue)); EMIT(MIR_CompareExchange.create(IA32_LOCK_CMPXCHG, R(getEAX()), mo, (OPT_RegisterOperand)temp.copy()));
EMIT(MIR_Move.create(IA32_MOV, new OPT_RegisterOperand(getEAX(), VM_TypeReference.Int), oldValue)); EMIT(MIR_CompareExchange.create(IA32_LOCK_CMPXCHG, new OPT_RegisterOperand(getEAX(), VM_TypeReference.Int), mo, temp.copyRO()));
  protected final void ATTEMPT_IFCMP(OPT_MemoryOperand mo,                                     OPT_Operand oldValue,                                     OPT_Operand newValue,                                     OPT_ConditionOperand cond,                                     OPT_BranchOperand target,                                     OPT_BranchProfileOperand bp) {    OPT_RegisterOperand temp = regpool.makeTempInt();    EMIT(MIR_Move.create(IA32_MOV, temp, newValue));    EMIT(MIR_Move.create(IA32_MOV, R(getEAX()), oldValue));    EMIT(MIR_CompareExchange.create(IA32_LOCK_CMPXCHG, R(getEAX()),                                            mo, (OPT_RegisterOperand)temp.copy()));     EMIT(MIR_CondBranch.create(IA32_JCC, COND(cond), target, bp));  }