Lines Matching refs:HReg

116       HReg*        vregmap;
117 HReg* vregmapHI;
133 static HReg lookupIRTemp(ISelEnv * env, IRTemp tmp) in lookupIRTemp()
140 static void lookupIRTemp64(HReg * vrHI, HReg * vrLO, ISelEnv * env, IRTemp tmp) in lookupIRTemp64()
150 lookupIRTempPair(HReg * vrHI, HReg * vrLO, ISelEnv * env, IRTemp tmp) in lookupIRTempPair()
169 static HReg newVRegI(ISelEnv * env) in newVRegI()
171 HReg reg = mkHReg(True/*virtual reg*/, in newVRegI()
177 static HReg newVRegD(ISelEnv * env) in newVRegD()
179 HReg reg = mkHReg(True/*virtual reg*/, in newVRegD()
185 static HReg newVRegF(ISelEnv * env) in newVRegF()
187 HReg reg = mkHReg(True/*virtual reg*/, in newVRegF()
195 HReg sp = StackPointer(mode64); in add_to_sp()
207 HReg sp = StackPointer(mode64); in sub_from_sp()
248 static HReg iselWordExpr_R_wrk(ISelEnv * env, IRExpr * e);
249 static HReg iselWordExpr_R(ISelEnv * env, IRExpr * e);
256 static void iselInt64Expr_wrk(HReg * rHi, HReg * rLo, ISelEnv * env,
258 static void iselInt64Expr(HReg * rHi, HReg * rLo, ISelEnv * env, IRExpr * e);
261 static void iselInt128Expr_wrk(HReg * rHi, HReg * rLo,
263 static void iselInt128Expr(HReg * rHi, HReg * rLo, ISelEnv * env, IRExpr * e);
268 static HReg iselDblExpr_wrk(ISelEnv * env, IRExpr * e);
269 static HReg iselDblExpr(ISelEnv * env, IRExpr * e);
271 static HReg iselFltExpr_wrk(ISelEnv * env, IRExpr * e);
272 static HReg iselFltExpr(ISelEnv * env, IRExpr * e);
285 HReg irrm = iselWordExpr_R(env, mode); in set_MIPS_rounding_mode()
286 HReg tmp = newVRegI(env); in set_MIPS_rounding_mode()
287 HReg fcsr_old = newVRegI(env); in set_MIPS_rounding_mode()
308 HReg fcsr = newVRegI(env); in set_MIPS_rounding_default()
326 static MIPSInstr *mk_iMOVds_RR(HReg r_dst, HReg r_src) in mk_iMOVds_RR()
355 static HReg mk_LoadRR32toFPR(ISelEnv * env, HReg r_srcHi, HReg r_srcLo) in mk_LoadRR32toFPR()
357 HReg fr_dst = newVRegD(env); in mk_LoadRR32toFPR()
401 HReg argregs[MIPS_N_REGPARMS]; in doHelperCall()
402 HReg tmpregs[MIPS_N_REGPARMS]; in doHelperCall()
406 HReg src = INVALID_HREG; in doHelperCall()
531 HReg rHi, rLo; in doHelperCall()
570 HReg raHi, raLo; in doHelperCall()
734 HReg r_base = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_AMode_wrk()
735 HReg r_idx = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_AMode_wrk()
753 HReg r_base = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_AMode_wrk()
754 HReg r_idx = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_AMode_wrk()
783 static HReg iselWordExpr_R(ISelEnv * env, IRExpr * e) in iselWordExpr_R()
785 HReg r = iselWordExpr_R_wrk(env, e); in iselWordExpr_R()
794 static HReg iselWordExpr_R_wrk(ISelEnv * env, IRExpr * e) in iselWordExpr_R_wrk()
809 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
877 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
878 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
923 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
924 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
935 HReg tmp = newVRegI(env); in iselWordExpr_R_wrk()
936 HReg r_srcL_se = newVRegI(env); in iselWordExpr_R_wrk()
984 HReg dst = newVRegI(env); in iselWordExpr_R_wrk()
985 HReg r1 = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
986 HReg r2 = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1050 HReg tmp = newVRegI(env); in iselWordExpr_R_wrk()
1051 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1052 HReg argL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1053 HReg argR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1069 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1070 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1071 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1080 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1081 HReg tHi = newVRegI(env); in iselWordExpr_R_wrk()
1082 HReg tLo = newVRegI(env); in iselWordExpr_R_wrk()
1083 HReg tLo_1 = newVRegI(env); in iselWordExpr_R_wrk()
1084 HReg tHi_1 = newVRegI(env); in iselWordExpr_R_wrk()
1085 HReg mask = newVRegI(env); in iselWordExpr_R_wrk()
1090 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1091 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1114 HReg r_srcL, r_srcR; in iselWordExpr_R_wrk()
1122 HReg tmp = newVRegI(env); in iselWordExpr_R_wrk()
1123 HReg r_ccMIPS = newVRegI(env); in iselWordExpr_R_wrk()
1124 HReg r_ccIR = newVRegI(env); in iselWordExpr_R_wrk()
1125 HReg r_ccIR_b0 = newVRegI(env); in iselWordExpr_R_wrk()
1126 HReg r_ccIR_b2 = newVRegI(env); in iselWordExpr_R_wrk()
1127 HReg r_ccIR_b6 = newVRegI(env); in iselWordExpr_R_wrk()
1199 HReg tLo = newVRegI(env); in iselWordExpr_R_wrk()
1200 HReg tHi = newVRegI(env); in iselWordExpr_R_wrk()
1201 HReg mask = newVRegI(env); in iselWordExpr_R_wrk()
1202 HReg tLo_1 = newVRegI(env); in iselWordExpr_R_wrk()
1203 HReg tHi_1 = newVRegI(env); in iselWordExpr_R_wrk()
1204 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1207 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1208 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1229 HReg tHi = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1230 HReg tLo = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1231 HReg tLo_1 = newVRegI(env); in iselWordExpr_R_wrk()
1232 HReg tHi_1 = newVRegI(env); in iselWordExpr_R_wrk()
1233 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1263 HReg tHi = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1264 HReg tLo = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1265 HReg tLo_1 = newVRegI(env); in iselWordExpr_R_wrk()
1266 HReg tHi_1 = newVRegI(env); in iselWordExpr_R_wrk()
1267 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1268 HReg mask = newVRegI(env); in iselWordExpr_R_wrk()
1284 HReg valS = newVRegI(env); in iselWordExpr_R_wrk()
1285 HReg tmpF = newVRegF(env); in iselWordExpr_R_wrk()
1286 HReg valF = iselFltExpr(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1301 HReg valD; in iselWordExpr_R_wrk()
1306 HReg valS = newVRegF(env); in iselWordExpr_R_wrk()
1307 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1351 HReg regL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1352 HReg regR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1353 HReg res = newVRegI(env); in iselWordExpr_R_wrk()
1381 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1382 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1435 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1436 HReg r_srcL = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1448 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1449 HReg r_srcL = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1457 HReg fr_src = iselFltExpr(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1458 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1469 HReg fr_src = iselFltExpr(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1470 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1480 HReg valD; in iselWordExpr_R_wrk()
1485 HReg valS = newVRegF(env); in iselWordExpr_R_wrk()
1486 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1506 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1507 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1516 HReg r_src, r_dst; in iselWordExpr_R_wrk()
1526 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1527 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1541 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1542 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1572 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1573 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1584 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1585 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1590 HReg rHi, rLo; in iselWordExpr_R_wrk()
1598 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1602 HReg rHi, rLo; in iselWordExpr_R_wrk()
1610 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1616 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1617 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1626 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1627 HReg tmp = newVRegI(env); in iselWordExpr_R_wrk()
1628 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1639 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1640 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1648 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1649 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1667 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1668 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1681 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1682 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1689 HReg hi, lo; in iselWordExpr_R_wrk()
1690 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1691 HReg r_src; in iselWordExpr_R_wrk()
1705 HReg tmp1; in iselWordExpr_R_wrk()
1706 HReg tmp2 = newVRegI(env); in iselWordExpr_R_wrk()
1721 HReg rHi, rLo; in iselWordExpr_R_wrk()
1728 HReg rHi, rLo; in iselWordExpr_R_wrk()
1762 HReg regL = iselWordExpr_R(env, e->Iex.Unop.arg); in iselWordExpr_R_wrk()
1763 HReg res = newVRegI(env); in iselWordExpr_R_wrk()
1780 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1796 HReg r_dst = iselWordExpr_R(env, e->Iex.ITE.iffalse); in iselWordExpr_R_wrk()
1797 HReg r1 = iselWordExpr_R(env, e->Iex.ITE.iftrue); in iselWordExpr_R_wrk()
1798 HReg r_cond = iselWordExpr_R(env, e->Iex.ITE.cond); in iselWordExpr_R_wrk()
1813 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
1839 HReg r_dst = newVRegI(env); in iselWordExpr_R_wrk()
2068 HReg dst = newVRegI(env); in iselCondCode_wrk()
2069 HReg r1 = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselCondCode_wrk()
2070 HReg r2 = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselCondCode_wrk()
2133 HReg r_dst = newVRegI(env); in iselCondCode_wrk()
2134 HReg r_srcL = iselWordExpr_R(env, e->Iex.Unop.arg); in iselCondCode_wrk()
2149 HReg r_dst = iselWordExpr_R_wrk(env, e); in iselCondCode_wrk()
2175 static void iselInt128Expr(HReg * rHi, HReg * rLo, ISelEnv * env, IRExpr * e) in iselInt128Expr()
2186 static void iselInt128Expr_wrk(HReg * rHi, HReg * rLo, ISelEnv * env, in iselInt128Expr_wrk()
2204 HReg tLo = newVRegI(env); in iselInt128Expr_wrk()
2205 HReg tHi = newVRegI(env); in iselInt128Expr_wrk()
2207 HReg r_dst = newVRegI(env); in iselInt128Expr_wrk()
2208 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselInt128Expr_wrk()
2209 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt128Expr_wrk()
2226 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselInt128Expr_wrk()
2227 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt128Expr_wrk()
2228 HReg tLo = newVRegI(env); in iselInt128Expr_wrk()
2229 HReg tHi = newVRegI(env); in iselInt128Expr_wrk()
2243 HReg rHi1, rLo1; in iselInt128Expr_wrk()
2246 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt128Expr_wrk()
2247 HReg tLo = newVRegI(env); in iselInt128Expr_wrk()
2248 HReg tHi = newVRegI(env); in iselInt128Expr_wrk()
2276 static void iselInt64Expr(HReg * rHi, HReg * rLo, ISelEnv * env, IRExpr * e) in iselInt64Expr()
2287 static void iselInt64Expr_wrk(HReg * rHi, HReg * rLo, ISelEnv * env, IRExpr * e) in iselInt64Expr_wrk()
2299 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2300 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2301 HReg r_addr = iselWordExpr_R(env, e->Iex.Load.addr); in iselInt64Expr_wrk()
2314 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2315 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2335 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2336 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2350 HReg expr0Lo, expr0Hi; in iselInt64Expr_wrk()
2351 HReg expr1Lo, expr1Hi; in iselInt64Expr_wrk()
2352 HReg desLo = newVRegI(env); in iselInt64Expr_wrk()
2353 HReg desHi = newVRegI(env); in iselInt64Expr_wrk()
2354 HReg cond = iselWordExpr_R(env, e->Iex.ITE.cond); in iselInt64Expr_wrk()
2382 HReg xLo, xHi, yLo, yHi, carryBit; in iselInt64Expr_wrk()
2384 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2385 HReg tHi1 = newVRegI(env); in iselInt64Expr_wrk()
2386 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2409 HReg xLo, xHi, yLo, yHi, borrow; in iselInt64Expr_wrk()
2413 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2414 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2436 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2437 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2438 HReg r_dst = newVRegI(env); in iselInt64Expr_wrk()
2440 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselInt64Expr_wrk()
2441 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2455 HReg r_sHi, r_sLo; in iselInt64Expr_wrk()
2456 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2457 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2459 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2481 HReg xLo, xHi, yLo, yHi; in iselInt64Expr_wrk()
2482 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2483 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2510 HReg a0, a1; in iselInt64Expr_wrk()
2511 HReg a0tmp = newVRegI(env); in iselInt64Expr_wrk()
2512 HReg a2 = newVRegI(env); in iselInt64Expr_wrk()
2513 HReg a3 = newVRegI(env); in iselInt64Expr_wrk()
2514 HReg v0 = newVRegI(env); in iselInt64Expr_wrk()
2515 HReg v1 = newVRegI(env); in iselInt64Expr_wrk()
2516 HReg zero = newVRegI(env); in iselInt64Expr_wrk()
2574 HReg a0, a1; in iselInt64Expr_wrk()
2575 HReg a2 = newVRegI(env); in iselInt64Expr_wrk()
2576 HReg a2tmp = newVRegI(env); in iselInt64Expr_wrk()
2577 HReg a3 = newVRegI(env); in iselInt64Expr_wrk()
2578 HReg v0 = newVRegI(env); in iselInt64Expr_wrk()
2579 HReg v1 = newVRegI(env); in iselInt64Expr_wrk()
2580 HReg zero = newVRegI(env); in iselInt64Expr_wrk()
2643 HReg a0, a1; in iselInt64Expr_wrk()
2644 HReg a2 = newVRegI(env); in iselInt64Expr_wrk()
2645 HReg a3 = newVRegI(env); in iselInt64Expr_wrk()
2646 HReg v0 = newVRegI(env); in iselInt64Expr_wrk()
2647 HReg v1 = newVRegI(env); in iselInt64Expr_wrk()
2648 HReg zero = newVRegI(env); in iselInt64Expr_wrk()
2709 HReg a0, a1; in iselInt64Expr_wrk()
2710 HReg a0tmp = newVRegI(env); in iselInt64Expr_wrk()
2711 HReg a1tmp = newVRegI(env); in iselInt64Expr_wrk()
2712 HReg a2 = newVRegI(env); in iselInt64Expr_wrk()
2713 HReg a3 = newVRegI(env); in iselInt64Expr_wrk()
2714 HReg v0 = newVRegI(env); in iselInt64Expr_wrk()
2715 HReg v1 = newVRegI(env); in iselInt64Expr_wrk()
2716 HReg zero = newVRegI(env); in iselInt64Expr_wrk()
2765 HReg tmpD = newVRegD(env); in iselInt64Expr_wrk()
2766 HReg valF = iselFltExpr(env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2767 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2768 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2811 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2812 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2813 HReg src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselInt64Expr_wrk()
2814 HReg tmp = newVRegI(env); in iselInt64Expr_wrk()
2831 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2832 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2833 HReg src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselInt64Expr_wrk()
2845 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2846 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2847 HReg src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselInt64Expr_wrk()
2859 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2860 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2861 HReg src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselInt64Expr_wrk()
2871 HReg yHi, yLo; in iselInt64Expr_wrk()
2872 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2873 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2874 HReg tmp = newVRegI(env); in iselInt64Expr_wrk()
2875 HReg tmp1 = newVRegI(env); in iselInt64Expr_wrk()
2876 HReg tmp2 = newVRegI(env); in iselInt64Expr_wrk()
2877 HReg zero = newVRegI(env); in iselInt64Expr_wrk()
2902 HReg srcLo, srcHi; in iselInt64Expr_wrk()
2903 HReg tmp1 = newVRegI(env); in iselInt64Expr_wrk()
2904 HReg tmp2 = newVRegI(env); in iselInt64Expr_wrk()
2924 HReg tLo = newVRegI(env); in iselInt64Expr_wrk()
2925 HReg tHi = newVRegI(env); in iselInt64Expr_wrk()
2927 HReg fr_src = iselDblExpr(env, e->Iex.Unop.arg); in iselInt64Expr_wrk()
2973 static HReg iselFltExpr(ISelEnv * env, IRExpr * e) in iselFltExpr()
2975 HReg r = iselFltExpr_wrk(env, e); in iselFltExpr()
2981 static HReg iselFltExpr_wrk(ISelEnv * env, IRExpr * e) in iselFltExpr_wrk()
2993 HReg r_dst; in iselFltExpr_wrk()
3008 HReg r_dst; in iselFltExpr_wrk()
3022 HReg fr_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3023 HReg r_dst = newVRegF(env); in iselFltExpr_wrk()
3033 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3034 HReg dst = newVRegD(env); in iselFltExpr_wrk()
3040 HReg r_dst; in iselFltExpr_wrk()
3042 HReg fr_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3048 HReg Hi, Lo; in iselFltExpr_wrk()
3057 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3058 HReg tmp = newVRegF(env); in iselFltExpr_wrk()
3059 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3073 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3074 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3081 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3082 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3088 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3089 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3095 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3096 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3102 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3103 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3109 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3110 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3131 HReg argL = iselFltExpr(env, e->Iex.Triop.details->arg2); in iselFltExpr_wrk()
3132 HReg argR = iselFltExpr(env, e->Iex.Triop.details->arg3); in iselFltExpr_wrk()
3133 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3179 HReg valD; in iselFltExpr_wrk()
3184 HReg valS = newVRegF(env); in iselFltExpr_wrk()
3193 HReg valS = newVRegF(env); in iselFltExpr_wrk()
3194 HReg valF = iselFltExpr(env, e->Iex.Binop.arg2); in iselFltExpr_wrk()
3203 HReg valS = newVRegF(env); in iselFltExpr_wrk()
3204 HReg valF = iselFltExpr(env, e->Iex.Binop.arg2); in iselFltExpr_wrk()
3213 HReg r_dst = newVRegF(env); in iselFltExpr_wrk()
3214 HReg fr_src = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselFltExpr_wrk()
3215 HReg tmp = newVRegF(env); in iselFltExpr_wrk()
3229 HReg r_dst = newVRegF(env); in iselFltExpr_wrk()
3231 HReg tmp, fr_src; in iselFltExpr_wrk()
3248 HReg Hi, Lo; in iselFltExpr_wrk()
3262 HReg r_dst = newVRegF(env); in iselFltExpr_wrk()
3264 HReg fr_src, tmp; in iselFltExpr_wrk()
3281 HReg Hi, Lo; in iselFltExpr_wrk()
3297 HReg src = iselFltExpr(env, e->Iex.Binop.arg2); in iselFltExpr_wrk()
3298 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3334 HReg dst = newVRegF(env); in iselFltExpr_wrk()
3335 HReg src1 = iselFltExpr(env, e->Iex.Qop.details->arg2); in iselFltExpr_wrk()
3336 HReg src2 = iselFltExpr(env, e->Iex.Qop.details->arg3); in iselFltExpr_wrk()
3337 HReg src3 = iselFltExpr(env, e->Iex.Qop.details->arg4); in iselFltExpr_wrk()
3379 HReg fsrc = iselDblExpr(env, e->Iex.Unop.arg); in iselFltExpr_wrk()
3380 HReg fdst = newVRegF(env); in iselFltExpr_wrk()
3397 HReg r0 = iselFltExpr(env, e->Iex.ITE.iffalse); in iselFltExpr_wrk()
3398 HReg r1 = iselFltExpr(env, e->Iex.ITE.iftrue); in iselFltExpr_wrk()
3399 HReg r_cond = iselWordExpr_R(env, e->Iex.ITE.cond); in iselFltExpr_wrk()
3400 HReg r_dst = newVRegF(env); in iselFltExpr_wrk()
3413 static HReg iselDblExpr(ISelEnv * env, IRExpr * e) in iselDblExpr()
3415 HReg r = iselDblExpr_wrk(env, e); in iselDblExpr()
3422 static HReg iselDblExpr_wrk(ISelEnv * env, IRExpr * e) in iselDblExpr_wrk()
3434 HReg r_dst = newVRegD(env); in iselDblExpr_wrk()
3445 HReg r_dst = newVRegD(env); in iselDblExpr_wrk()
3463 HReg src = iselFltExpr(env, e->Iex.Unop.arg); in iselDblExpr_wrk()
3464 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3470 HReg Hi, Lo; in iselDblExpr_wrk()
3471 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3480 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3481 HReg tmp = newVRegF(env); in iselDblExpr_wrk()
3482 HReg r_src = iselWordExpr_R(env, e->Iex.Unop.arg); in iselDblExpr_wrk()
3498 HReg src = iselDblExpr(env, e->Iex.Unop.arg); in iselDblExpr_wrk()
3499 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3508 HReg src = iselDblExpr(env, e->Iex.Binop.arg2); in iselDblExpr_wrk()
3509 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3519 HReg src = iselDblExpr(env, e->Iex.Binop.arg2); in iselDblExpr_wrk()
3520 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3541 HReg argL = iselDblExpr(env, e->Iex.Triop.details->arg2); in iselDblExpr_wrk()
3542 HReg argR = iselDblExpr(env, e->Iex.Triop.details->arg3); in iselDblExpr_wrk()
3543 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3596 HReg dst = newVRegD(env); in iselDblExpr_wrk()
3597 HReg src1 = iselDblExpr(env, e->Iex.Qop.details->arg2); in iselDblExpr_wrk()
3598 HReg src2 = iselDblExpr(env, e->Iex.Qop.details->arg3); in iselDblExpr_wrk()
3599 HReg src3 = iselDblExpr(env, e->Iex.Qop.details->arg4); in iselDblExpr_wrk()
3616 HReg r0 = iselDblExpr(env, e->Iex.ITE.iffalse); in iselDblExpr_wrk()
3617 HReg r1 = iselDblExpr(env, e->Iex.ITE.iftrue); in iselDblExpr_wrk()
3618 HReg r_cond = iselWordExpr_R(env, e->Iex.ITE.cond); in iselDblExpr_wrk()
3619 HReg r_dst = newVRegD(env); in iselDblExpr_wrk()
3657 HReg r_src = iselWordExpr_R(env, stmt->Ist.Store.data); in iselStmt()
3663 HReg vHi, vLo; in iselStmt()
3664 HReg r_addr = iselWordExpr_R(env, stmt->Ist.Store.addr); in iselStmt()
3675 HReg fr_src = iselFltExpr(env, stmt->Ist.Store.data); in iselStmt()
3681 HReg fr_src = iselFltExpr(env, stmt->Ist.Store.data); in iselStmt()
3687 HReg fr_src = iselDblExpr(env, stmt->Ist.Store.data); in iselStmt()
3702 HReg r_src = iselWordExpr_R(env, stmt->Ist.Put.data); in iselStmt()
3711 HReg vHi, vLo; in iselStmt()
3726 HReg fr_src = iselFltExpr(env, stmt->Ist.Put.data); in iselStmt()
3735 HReg fr_src = iselFltExpr(env, stmt->Ist.Put.data); in iselStmt()
3751 HReg r_dst = lookupIRTemp(env, tmp); in iselStmt()
3752 HReg r_src = iselWordExpr_R(env, stmt->Ist.WrTmp.data); in iselStmt()
3759 HReg r_dst = lookupIRTemp(env, tmp); in iselStmt()
3760 HReg r_src = iselWordExpr_R(env, stmt->Ist.WrTmp.data); in iselStmt()
3764 HReg rHi, rLo, dstHi, dstLo; in iselStmt()
3774 HReg rHi, rLo, dstHi, dstLo; in iselStmt()
3783 HReg fr_dst = lookupIRTemp(env, tmp); in iselStmt()
3784 HReg fr_src = iselFltExpr(env, stmt->Ist.WrTmp.data); in iselStmt()
3791 HReg src = iselFltExpr(env, stmt->Ist.WrTmp.data); in iselStmt()
3792 HReg dst = lookupIRTemp(env, tmp); in iselStmt()
3796 HReg src = iselDblExpr(env, stmt->Ist.WrTmp.data); in iselStmt()
3797 HReg dst = lookupIRTemp(env, tmp); in iselStmt()
3848 HReg r_dst = lookupIRTemp(env, d->tmp); in iselStmt()
3858 HReg r_dst = lookupIRTemp(env, d->tmp); in iselStmt()
3864 HReg rHi = newVRegI(env); in iselStmt()
3865 HReg rLo = newVRegI(env); in iselStmt()
3866 HReg dstHi, dstLo; in iselStmt()
3883 HReg dst = lookupIRTemp(env, d->tmp); in iselStmt()
3915 HReg r_dst = lookupIRTemp(env, res); in iselStmt()
3927 HReg r_src = iselWordExpr_R(env, stmt->Ist.LLSC.storedata); in iselStmt()
3928 HReg r_dst = lookupIRTemp(env, res); in iselStmt()
3948 HReg old = lookupIRTemp(env, cas->oldLo); in iselStmt()
3949 HReg addr = iselWordExpr_R(env, cas->addr); in iselStmt()
3950 HReg expd = iselWordExpr_R(env, cas->expdLo); in iselStmt()
3951 HReg data = iselWordExpr_R(env, cas->dataLo); in iselStmt()
4009 HReg r = iselWordExpr_R(env, IRExpr_Const(stmt->Ist.Exit.dst)); in iselStmt()
4031 HReg r = iselWordExpr_R(env, IRExpr_Const(stmt->Ist.Exit.dst)); in iselStmt()
4093 HReg r = iselWordExpr_R(env, next); in iselNext()
4104 HReg r = iselWordExpr_R(env, next); in iselNext()
4134 HReg r = iselWordExpr_R(env, next); in iselNext()
4167 HReg hreg, hregHI; in iselSB_MIPS()
4203 env->vregmap = LibVEX_Alloc_inline(env->n_vregmap * sizeof(HReg)); in iselSB_MIPS()
4204 env->vregmapHI = LibVEX_Alloc_inline(env->n_vregmap * sizeof(HReg)); in iselSB_MIPS()