Lines Matching refs:CAS
3990 if (stmt->Ist.CAS.details->oldHi == IRTemp_INVALID) {
3991 /* "normal" singleton CAS */
3993 IRCAS* cas = stmt->Ist.CAS.details;
3994 IRType ty = typeOfIRExpr(env->type_env, cas->dataLo);
3995 /* get: cas->expdLo into %eax, and cas->dataLo into %ebx */
3996 X86AMode* am = iselIntExpr_AMode(env, cas->addr);
3997 HReg rDataLo = iselIntExpr_R(env, cas->dataLo);
3998 HReg rExpdLo = iselIntExpr_R(env, cas->expdLo);
3999 HReg rOldLo = lookupIRTemp(env, cas->oldLo);
4000 vassert(cas->expdHi == NULL);
4001 vassert(cas->dataHi == NULL);
4017 /* double CAS */
4018 IRCAS* cas = stmt->Ist.CAS.details;
4019 IRType ty = typeOfIRExpr(env->type_env, cas->dataLo);
4021 /* get: cas->expdLo into %eax, and cas->dataLo into %ebx */
4022 /* get: cas->expdHi into %edx, and cas->dataHi into %ecx */
4023 X86AMode* am = iselIntExpr_AMode(env, cas->addr);
4024 HReg rDataHi = iselIntExpr_R(env, cas->dataHi);
4025 HReg rDataLo = iselIntExpr_R(env, cas->dataLo);
4026 HReg rExpdHi = iselIntExpr_R(env, cas->expdHi);
4027 HReg rExpdLo = iselIntExpr_R(env, cas->expdLo);
4028 HReg rOldHi = lookupIRTemp(env, cas->oldHi);
4029 HReg rOldLo = lookupIRTemp(env, cas->oldLo);