Home | History | Annotate | Download | only in priv

Lines Matching refs:hreg

55    - A mapping from IRTemp to HReg.  This tells the insn selector
108 HReg *vregmap;
109 HReg *vregmapHI;
128 static HReg s390_isel_int_expr(ISelEnv *, IRExpr *);
132 static void s390_isel_int128_expr(HReg *, HReg *, ISelEnv *, IRExpr *);
133 static HReg s390_isel_float_expr(ISelEnv *, IRExpr *);
134 static void s390_isel_float128_expr(HReg *, HReg *, ISelEnv *, IRExpr *);
135 static HReg s390_isel_dfp_expr(ISelEnv *, IRExpr *);
136 static void s390_isel_dfp128_expr(HReg *, HReg *, ISelEnv *, IRExpr *);
195 static HReg
207 lookupIRTemp128(HReg *hi, HReg *lo, ISelEnv *env, IRTemp tmp)
218 static HReg
221 HReg reg = mkHReg(env->vreg_ctr, HRcInt64, True /* virtual */ );
229 static HReg
232 HReg reg = mkHReg(env->vreg_ctr, HRcFlt64, True /* virtual */ );
241 static __inline__ HReg
249 static __inline__ HReg
362 s390_opnd_copy(UChar size, HReg dst, s390_opnd_RMI opnd)
382 s390_opnd_reg(HReg reg)
480 HReg tmpregs[S390_NUM_GPRPARMS];
542 HReg r_vecRetAddr = INVALID_HREG;
546 HReg sp = make_gpr(S390_REGNO_STACK_POINTER);
595 HReg finalreg;
676 HReg ir = s390_isel_int_expr(env, irrm);
678 HReg mode = newVRegI(env);
754 HReg ir = s390_isel_int_expr(env, irrm);
756 HReg mode = newVRegI(env);
855 static HReg
856 convert_s390_to_vex_bfpcc(ISelEnv *env, HReg cc_s390)
858 HReg cc0, cc1, b2, b6, cc_vex;
890 static HReg
891 convert_s390_to_vex_dfpcc(ISelEnv *env, HReg cc_s390)
902 s390_isel_int128_expr_wrk(HReg *dst_hi, HReg *dst_lo, ISelEnv *env,
948 HReg r10, r11, h1;
979 HReg r10, r11, h1;
1007 HReg r10, r11, hi, lo;
1046 s390_isel_int128_expr(HReg *dst_hi, HReg *dst_lo, ISelEnv *env, IRExpr *expr)
1078 static HReg
1099 HReg dst = newVRegI(env);
1114 HReg h1, res;
1136 HReg r10, r11;
1176 HReg r10, r11;
1246 HReg op_hi, op_lo, f13, f15;
1280 HReg op_hi, op_lo, f13, f15;
1303 HReg h2;
1334 HReg cc_s390, h2;
1348 HReg op1_hi, op1_lo, op2_hi, op2_lo, f12, f13, f14, f15, cc_s390;
1376 HReg cc_s390, h2;
1395 HReg op1_hi, op1_lo, op2_hi, op2_lo, f12, f13, f14, f15, cc_s390;
1544 HReg dst, h1;
1601 HReg op_hi, op_lo, f13, f15;
1667 HReg dst_hi, dst_lo;
1674 HReg dst_hi, dst_lo;
1774 HReg r10, r11;
1799 HReg dst = newVRegI(env);
1817 HReg dst = newVRegI(env);
1818 HReg ret = make_gpr(S390_REGNO_RETURN_VALUE);
1838 HReg dst = newVRegI(env);
1858 HReg dst, r1;
1888 static HReg
1891 HReg dst = s390_isel_int_expr_wrk(env, expr);
1946 s390_isel_float128_expr_wrk(HReg *dst_hi, HReg *dst_lo, ISelEnv *env,
1998 HReg op1_hi, op1_lo, op2_hi, op2_lo, f12, f13, f14, f15;
2042 HReg op_hi, op_lo, f12, f13, f14, f15;
2078 HReg h1; /* virtual reg. to hold source */
2079 HReg f0, f2, f4, r1; /* real registers used by PFPO */
2116 HReg op_hi, op_lo;
2117 HReg f0, f2, f4, f6, r1; /* real registers used by PFPO */
2153 HReg op_hi, op_lo, op, f12, f13, f14, f15;
2224 s390_isel_float128_expr(HReg *dst_hi, HReg *dst_lo, ISelEnv *env, IRExpr *expr)
2240 static HReg
2257 HReg dst = newVRegF(env);
2270 HReg dst = newVRegF(env);
2284 HReg dst = newVRegF(env);
2303 HReg op1, op2, op3, dst;
2334 HReg h1, op2, dst;
2364 HReg h1, dst;
2417 HReg f0, f4, r1; /* real registers used by PFPO */
2435 HReg op_hi, op_lo;
2436 HReg f0, f4, f6, r1; /* real registers used by PFPO */
2460 HReg op_hi, op_lo, f12, f13, f14, f15;
2505 HReg h1, dst;
2508 HReg dst_hi, dst_lo;
2580 static HReg
2583 HReg dst = s390_isel_float_expr_wrk(env, expr);
2597 s390_isel_dfp128_expr_wrk(HReg *dst_hi, HReg *dst_lo, ISelEnv *env,
2650 HReg op1_hi, op1_lo, op2_hi, op2_lo, f9, f11, f12, f13, f14, f15;
2702 HReg op1 = s390_isel_int_expr(env, left);
2737 HReg op1_hi, op1_lo, op2, f9, f11, f13, f15;
2792 HReg h1; /* virtual reg. to hold source */
2793 HReg f0, f2, f4, r1; /* real registers used by PFPO */
2830 HReg op_hi, op_lo;
2831 HReg f0, f2, f4, f6, r1; /* real registers used by PFPO */
2866 HReg op, f12, f14;
2917 s390_isel_dfp128_expr(HReg *dst_hi, HReg *dst_lo, ISelEnv *env, IRExpr *expr)
2933 static HReg
2950 HReg dst = newVRegF(env);
2963 HReg dst = newVRegF(env);
2976 HReg h1, dst;
3017 HReg f0, f4, r1; /* real registers used by PFPO */
3035 HReg op_hi, op_lo;
3036 HReg f0, f4, f6, r1; /* real registers used by PFPO */
3056 HReg op_hi, op_lo, f12, f13, f14, f15;
3094 HReg op2;
3095 HReg op3;
3137 HReg h1, dst;
3140 HReg dst_hi, dst_lo;
3189 HReg op2, op3, dst;
3240 static HReg
3243 HReg dst = s390_isel_dfp_expr_wrk(env, expr);
3277 HReg reg = lookupIRTemp(env, tmp);
3300 HReg dst = newVRegI(env);
3301 HReg h1 = s390_isel_int_expr(env, arg);
3315 HReg dst;
3345 HReg reg1, reg2;
3409 HReg op1;
3426 HReg op1;
3442 HReg op1;
3484 HReg src;
3545 HReg src;
3692 HReg src, dst;
3696 HReg dst_hi, dst_lo, res_hi, res_lo;
3728 HReg dst_hi, dst_lo, res_hi, res_lo;
3745 HReg dst_hi, dst_lo, res_hi, res_lo;
3767 HReg dst;
3801 HReg ret = make_gpr(S390_REGNO_RETURN_VALUE);
3816 HReg sp = make_gpr(S390_REGNO_STACK_POINTER);
3848 HReg op3 = s390_isel_int_expr(env, cas->dataLo); /* new value */
3849 HReg op1 = s390_isel_int_expr(env, cas->expdLo); /* expected value */
3850 HReg old = lookupIRTemp(env, cas->oldLo);
3861 HReg r8, r9, r10, r11, r1;
3862 HReg op3_high = s390_isel_int_expr(env, cas->dataHi); /* new value */
3863 HReg op3_low = s390_isel_int_expr(env, cas->dataLo); /* new value */
3864 HReg op1_high = s390_isel_int_expr(env, cas->expdHi); /* expected value */
3865 HReg op1_low = s390_isel_int_expr(env, cas->expdLo); /* expected value */
3866 HReg old_low = lookupIRTemp(env, cas->oldLo);
3867 HReg old_high = lookupIRTemp(env, cas->oldHi);
3927 HReg dst = s390_isel_int_expr(env,
3945 HReg dst = s390_isel_int_expr(env, IRExpr_Const(stmt->Ist.Exit.dst));
4023 HReg dst = s390_isel_int_expr(env, next);
4036 HReg dst = s390_isel_int_expr(env, next);
4060 HReg dst = s390_isel_int_expr(env, next);
4087 HReg hreg, hregHI;
4113 /* Make up an IRTemp -> virtual HReg mapping. This doesn't
4120 env->vregmap = LibVEX_Alloc(env->n_vregmap * sizeof(HReg));
4121 env->vregmapHI = LibVEX_Alloc(env->n_vregmap * sizeof(HReg));
4136 hregHI = hreg = INVALID_HREG;
4142 hreg = mkHReg(j++, HRcInt64, True);
4146 hreg = mkHReg(j++, HRcInt64, True);
4150 hreg = mkHReg(j++, HRcInt64, True);
4158 hreg = mkHReg(j++, HRcFlt64, True);
4163 hreg = mkHReg(j++, HRcFlt64, True);
4173 env->vregmap[i] = hreg;