Lines Matching defs:cas
4604 if (stmt->Ist.CAS.details->oldHi == IRTemp_INVALID) {
4605 /* "normal" singleton CAS */
4607 IRCAS* cas = stmt->Ist.CAS.details;
4608 IRType ty = typeOfIRExpr(env->type_env, cas->dataLo);
4609 /* get: cas->expd into %rax, and cas->data into %rbx */
4610 AMD64AMode* am = iselIntExpr_AMode(env, cas->addr);
4611 HReg rData = iselIntExpr_R(env, cas->dataLo);
4612 HReg rExpd = iselIntExpr_R(env, cas->expdLo);
4613 HReg rOld = lookupIRTemp(env, cas->oldLo);
4614 vassert(cas->expdHi == NULL);
4615 vassert(cas->dataHi == NULL);
4631 /* double CAS */
4633 IRCAS* cas = stmt->Ist.CAS.details;
4634 IRType ty = typeOfIRExpr(env->type_env, cas->dataLo);
4636 /* get: cas->expdLo into %rax, and cas->dataLo into %rbx */
4637 /* get: cas->expdHi into %rdx, and cas->dataHi into %rcx */
4638 AMD64AMode* am = iselIntExpr_AMode(env, cas->addr);
4639 HReg rDataHi = iselIntExpr_R(env, cas->dataHi);
4640 HReg rDataLo = iselIntExpr_R(env, cas->dataLo);
4641 HReg rExpdHi = iselIntExpr_R(env, cas->expdHi);
4642 HReg rExpdLo = iselIntExpr_R(env, cas->expdLo);
4643 HReg rOldHi = lookupIRTemp(env, cas->oldHi);
4644 HReg rOldLo = lookupIRTemp(env, cas->oldLo);