Lines Matching defs:am

309 static X86AMode* advance4 ( X86AMode* am )
311 X86AMode* am4 = dopyX86AMode(am);
1308 X86AMode* am
1314 addInstr(env, X86Instr_LoadEX( 1, False, am, dst ));
1318 addInstr(env, X86Instr_Alu32R(Xalu_MOV, X86RMI_Mem(am), dst));
1389 static Bool sane_AMode ( X86AMode* am )
1391 switch (am->tag) {
1394 toBool( hregClass(am->Xam.IR.reg) == HRcInt32
1395 && (hregIsVirtual(am->Xam.IR.reg)
1396 || am->Xam.IR.reg == hregX86_EBP()) );
1399 toBool( hregClass(am->Xam.IRRS.base) == HRcInt32
1400 && hregIsVirtual(am->Xam.IRRS.base)
1401 && hregClass(am->Xam.IRRS.index) == HRcInt32
1402 && hregIsVirtual(am->Xam.IRRS.index) );
1410 X86AMode* am = iselIntExpr_AMode_wrk(env, e);
1411 vassert(sane_AMode(am));
1412 return am;
1495 vassert(sane_AMode(rmi->Xrmi.Mem.am));
1529 X86AMode* am = iselIntExpr_AMode(env, e->Iex.Load.addr);
1530 return X86RMI_Mem(am);
1603 vassert(sane_AMode(rm->Xrm.Mem.am));
1743 X86AMode* am = X86AMode_IR(e->Iex.Unop.arg->Iex.Get.offset,
1745 addInstr(env, X86Instr_Alu32M(Xalu_CMP, X86RI_Imm(0), am));
1983 X86AMode* am = X86AMode_IR(e->Iex.Get.offset, hregX86_EBP());
1984 X86AMode* am4 = advance4(am);
1987 addInstr(env, X86Instr_Alu32R( Xalu_MOV, X86RMI_Mem(am), tLo ));
1996 X86AMode* am
1999 X86AMode* am4 = advance4(am);
2002 addInstr(env, X86Instr_Alu32R( Xalu_MOV, X86RMI_Mem(am), tLo ));
2773 X86AMode* am;
2776 am = iselIntExpr_AMode(env, e->Iex.Load.addr);
2777 addInstr(env, X86Instr_FpLdSt(True/*load*/, 4, res, am));
2795 X86AMode* am = X86AMode_IR( e->Iex.Get.offset,
2798 addInstr(env, X86Instr_FpLdSt( True/*load*/, 4, res, am ));
2916 X86AMode* am;
2919 am = iselIntExpr_AMode(env, e->Iex.Load.addr);
2920 addInstr(env, X86Instr_FpLdSt(True/*load*/, 8, res, am));
2925 X86AMode* am = X86AMode_IR( e->Iex.Get.offset,
2928 addInstr(env, X86Instr_FpLdSt( True/*load*/, 8, res, am ));
2933 X86AMode* am
2938 addInstr(env, X86Instr_FpLdSt( True/*load*/, 8, res, am ));
3170 X86AMode* am = iselIntExpr_AMode(env, e->Iex.Load.addr);
3171 addInstr(env, X86Instr_SseLdSt( True/*load*/, dst, am ));
3191 X86AMode* am = iselIntExpr_AMode(env, mi.bindee[0]);
3193 addInstr(env, X86Instr_SseLdzLO(8, dst, am));
3242 X86AMode* am;
3250 am = X86AMode_IR(i*4, hregX86_ESP());
3251 addInstr(env, X86Instr_Alu32R(Xalu_MOV, X86RMI_Mem(am), r32));
3254 addInstr(env, X86Instr_Alu32M(Xalu_MOV, X86RI_Reg(r32), am));
3715 X86AMode* am = iselIntExpr_AMode(env, stmt->Ist.Store.addr);
3717 addInstr(env, X86Instr_Alu32M(Xalu_MOV,ri,am));
3721 X86AMode* am = iselIntExpr_AMode(env, stmt->Ist.Store.addr);
3724 r,am ));
3728 X86AMode* am = iselIntExpr_AMode(env, stmt->Ist.Store.addr);
3730 addInstr(env, X86Instr_FpLdSt(False/*store*/, 8, r, am));
3734 X86AMode* am = iselIntExpr_AMode(env, stmt->Ist.Store.addr);
3736 addInstr(env, X86Instr_FpLdSt(False/*store*/, 4, r, am));
3750 X86AMode* am = iselIntExpr_AMode(env, stmt->Ist.Store.addr);
3752 addInstr(env, X86Instr_SseLdSt(False/*store*/, r, am));
3784 X86AMode* am = X86AMode_IR(stmt->Ist.Put.offset, hregX86_EBP());
3785 X86AMode* am4 = advance4(am);
3787 addInstr(env, X86Instr_Alu32M( Xalu_MOV, X86RI_Reg(vLo), am ));
3793 X86AMode* am = X86AMode_IR(stmt->Ist.Put.offset, hregX86_EBP());
3794 addInstr(env, X86Instr_SseLdSt(False/*store*/, vec, am));
3799 X86AMode* am = X86AMode_IR(stmt->Ist.Put.offset, hregX86_EBP());
3801 addInstr(env, X86Instr_FpLdSt( False/*store*/, 4, f32, am ));
3806 X86AMode* am = X86AMode_IR(stmt->Ist.Put.offset, hregX86_EBP());
3808 addInstr(env, X86Instr_FpLdSt( False/*store*/, 8, f64, am ));
3816 X86AMode* am
3824 addInstr(env, X86Instr_FpLdSt( False/*store*/, 8, val, am ));
3829 addInstr(env, X86Instr_Store( 1, r, am ));
3834 addInstr(env, X86Instr_Alu32M( Xalu_MOV, X86RI_Reg(r), am ));
3839 X86AMode* am4 = advance4(am);
3841 addInstr(env, X86Instr_Alu32M( Xalu_MOV, X86RI_Reg(rLo), am ));
3862 X86AMode* am = iselIntExpr_AMode(env, stmt->Ist.WrTmp.data);
3864 if (am->tag == Xam_IR && am->Xam.IR.imm == 0) {
3868 HReg src = am->Xam.IR.reg;
3871 addInstr(env, X86Instr_Lea32(am,dst));
3975 X86AMode* am = iselIntExpr_AMode(env, cas->addr);
3990 addInstr(env, X86Instr_ACAS(am, sz));
4002 X86AMode* am = iselIntExpr_AMode(env, cas->addr);
4017 addInstr(env, X86Instr_DACAS(am));