• Home
  • Raw
  • Download

Lines Matching refs:Binop

1192       switch (e->Iex.Binop.op) {  in iselWordExpr_R_wrk()
1210 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1216 e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1220 e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1230 switch (e->Iex.Binop.op) { in iselWordExpr_R_wrk()
1243 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1249 ri_srcR = iselWordExpr_RH5u(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1251 ri_srcR = iselWordExpr_RH6u(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1286 if (e->Iex.Binop.op == Iop_DivS32 || in iselWordExpr_R_wrk()
1287 e->Iex.Binop.op == Iop_DivU32 || in iselWordExpr_R_wrk()
1288 e->Iex.Binop.op == Iop_DivS32E || in iselWordExpr_R_wrk()
1289 e->Iex.Binop.op == Iop_DivU32E) { in iselWordExpr_R_wrk()
1290 Bool syned = toBool((e->Iex.Binop.op == Iop_DivS32) || (e->Iex.Binop.op == Iop_DivS32E)); in iselWordExpr_R_wrk()
1292 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1293 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1295 PPCInstr_Div( ( ( e->Iex.Binop.op == Iop_DivU32E ) in iselWordExpr_R_wrk()
1296 || ( e->Iex.Binop.op == Iop_DivS32E ) ) ? True in iselWordExpr_R_wrk()
1305 if (e->Iex.Binop.op == Iop_DivS64 || in iselWordExpr_R_wrk()
1306 e->Iex.Binop.op == Iop_DivU64 || e->Iex.Binop.op == Iop_DivS64E in iselWordExpr_R_wrk()
1307 || e->Iex.Binop.op == Iop_DivU64E ) { in iselWordExpr_R_wrk()
1308 Bool syned = toBool((e->Iex.Binop.op == Iop_DivS64) ||(e->Iex.Binop.op == Iop_DivS64E)); in iselWordExpr_R_wrk()
1310 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1311 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1314 PPCInstr_Div( ( ( e->Iex.Binop.op == Iop_DivS64E ) in iselWordExpr_R_wrk()
1315 || ( e->Iex.Binop.op in iselWordExpr_R_wrk()
1327 if (e->Iex.Binop.op == Iop_Mul32 in iselWordExpr_R_wrk()
1328 || e->Iex.Binop.op == Iop_Mul64) { in iselWordExpr_R_wrk()
1330 Bool sz32 = (e->Iex.Binop.op != Iop_Mul64); in iselWordExpr_R_wrk()
1332 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1333 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1341 && (e->Iex.Binop.op == Iop_MullU32 in iselWordExpr_R_wrk()
1342 || e->Iex.Binop.op == Iop_MullS32)) { in iselWordExpr_R_wrk()
1346 Bool syned = toBool(e->Iex.Binop.op == Iop_MullS32); in iselWordExpr_R_wrk()
1347 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1348 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1363 if (e->Iex.Binop.op == Iop_CmpORD32S in iselWordExpr_R_wrk()
1364 || e->Iex.Binop.op == Iop_CmpORD32U) { in iselWordExpr_R_wrk()
1365 Bool syned = toBool(e->Iex.Binop.op == Iop_CmpORD32S); in iselWordExpr_R_wrk()
1367 HReg srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1368 PPCRH* srcR = iselWordExpr_RH(env, syned, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1377 if (e->Iex.Binop.op == Iop_CmpORD64S in iselWordExpr_R_wrk()
1378 || e->Iex.Binop.op == Iop_CmpORD64U) { in iselWordExpr_R_wrk()
1379 Bool syned = toBool(e->Iex.Binop.op == Iop_CmpORD64S); in iselWordExpr_R_wrk()
1381 HReg srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1382 PPCRH* srcR = iselWordExpr_RH(env, syned, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1392 if (e->Iex.Binop.op == Iop_Max32U) { in iselWordExpr_R_wrk()
1393 HReg r1 = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1394 HReg r2 = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1404 if (e->Iex.Binop.op == Iop_32HLto64) { in iselWordExpr_R_wrk()
1405 HReg r_Hi = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1406 HReg r_Lo = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1421 if (e->Iex.Binop.op == Iop_CmpF64) { in iselWordExpr_R_wrk()
1422 HReg fr_srcL = iselDblExpr(env, e->Iex.Binop.arg1); in iselWordExpr_R_wrk()
1423 HReg fr_srcR = iselDblExpr(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1480 if ( e->Iex.Binop.op == Iop_F64toI32S || in iselWordExpr_R_wrk()
1481 e->Iex.Binop.op == Iop_F64toI32U ) { in iselWordExpr_R_wrk()
1485 HReg fsrc = iselDblExpr(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1490 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselWordExpr_R_wrk()
1494 e->Iex.Binop.op == Iop_F64toI32S ? True/*syned*/ in iselWordExpr_R_wrk()
1512 if (e->Iex.Binop.op == Iop_F64toI64S || e->Iex.Binop.op == Iop_F64toI64U ) { in iselWordExpr_R_wrk()
1516 HReg fsrc = iselDblExpr(env, e->Iex.Binop.arg2); in iselWordExpr_R_wrk()
1521 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselWordExpr_R_wrk()
1525 ( e->Iex.Binop.op == Iop_F64toI64S ) ? True in iselWordExpr_R_wrk()
2077 && e->Iex.Binop.op == Iop_Add64 in iselWordExpr_AMode_wrk()
2078 && e->Iex.Binop.arg2->tag == Iex_Const in iselWordExpr_AMode_wrk()
2079 && e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U64 in iselWordExpr_AMode_wrk()
2080 && (aligned4imm ? uLong_is_4_aligned(e->Iex.Binop.arg2 in iselWordExpr_AMode_wrk()
2083 && uLong_fits_in_16_bits(e->Iex.Binop.arg2 in iselWordExpr_AMode_wrk()
2085 return PPCAMode_IR( (Int)e->Iex.Binop.arg2->Iex.Const.con->Ico.U64, in iselWordExpr_AMode_wrk()
2086 iselWordExpr_R(env, e->Iex.Binop.arg1) ); in iselWordExpr_AMode_wrk()
2091 && e->Iex.Binop.op == Iop_Add64) { in iselWordExpr_AMode_wrk()
2092 HReg r_base = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_AMode_wrk()
2093 HReg r_idx = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_AMode_wrk()
2103 && e->Iex.Binop.op == Iop_Add32 in iselWordExpr_AMode_wrk()
2104 && e->Iex.Binop.arg2->tag == Iex_Const in iselWordExpr_AMode_wrk()
2105 && e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U32 in iselWordExpr_AMode_wrk()
2106 && uInt_fits_in_16_bits(e->Iex.Binop.arg2 in iselWordExpr_AMode_wrk()
2108 return PPCAMode_IR( (Int)e->Iex.Binop.arg2->Iex.Const.con->Ico.U32, in iselWordExpr_AMode_wrk()
2109 iselWordExpr_R(env, e->Iex.Binop.arg1) ); in iselWordExpr_AMode_wrk()
2114 && e->Iex.Binop.op == Iop_Add32) { in iselWordExpr_AMode_wrk()
2115 HReg r_base = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselWordExpr_AMode_wrk()
2116 HReg r_idx = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselWordExpr_AMode_wrk()
2414 && (e->Iex.Binop.op == Iop_CmpEQ32 in iselCondCode_wrk()
2415 || e->Iex.Binop.op == Iop_CmpNE32 in iselCondCode_wrk()
2416 || e->Iex.Binop.op == Iop_CmpLT32S in iselCondCode_wrk()
2417 || e->Iex.Binop.op == Iop_CmpLT32U in iselCondCode_wrk()
2418 || e->Iex.Binop.op == Iop_CmpLE32S in iselCondCode_wrk()
2419 || e->Iex.Binop.op == Iop_CmpLE32U)) { in iselCondCode_wrk()
2420 Bool syned = (e->Iex.Binop.op == Iop_CmpLT32S || in iselCondCode_wrk()
2421 e->Iex.Binop.op == Iop_CmpLE32S); in iselCondCode_wrk()
2422 HReg r1 = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselCondCode_wrk()
2423 PPCRH* ri2 = iselWordExpr_RH(env, syned, e->Iex.Binop.arg2); in iselCondCode_wrk()
2427 switch (e->Iex.Binop.op) { in iselCondCode_wrk()
2452 HReg r_src = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselCondCode_wrk()
2463 && (e->Iex.Binop.op == Iop_CmpEQ64 in iselCondCode_wrk()
2464 || e->Iex.Binop.op == Iop_CmpNE64 in iselCondCode_wrk()
2465 || e->Iex.Binop.op == Iop_CmpLT64S in iselCondCode_wrk()
2466 || e->Iex.Binop.op == Iop_CmpLT64U in iselCondCode_wrk()
2467 || e->Iex.Binop.op == Iop_CmpLE64S in iselCondCode_wrk()
2468 || e->Iex.Binop.op == Iop_CmpLE64U)) { in iselCondCode_wrk()
2469 Bool syned = (e->Iex.Binop.op == Iop_CmpLT64S || in iselCondCode_wrk()
2470 e->Iex.Binop.op == Iop_CmpLE64S); in iselCondCode_wrk()
2471 HReg r1 = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselCondCode_wrk()
2472 PPCRH* ri2 = iselWordExpr_RH(env, syned, e->Iex.Binop.arg2); in iselCondCode_wrk()
2477 switch (e->Iex.Binop.op) { in iselCondCode_wrk()
2544 switch (e->Iex.Binop.op) { in iselInt128Expr_wrk()
2550 Bool syned = toBool(e->Iex.Binop.op == Iop_MullS64); in iselInt128Expr_wrk()
2551 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselInt128Expr_wrk()
2552 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt128Expr_wrk()
2566 *rHi = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselInt128Expr_wrk()
2567 *rLo = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt128Expr_wrk()
2702 IROp op_binop = e->Iex.Binop.op; in iselInt64Expr_wrk()
2710 HReg r_srcL = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselInt64Expr_wrk()
2711 HReg r_srcR = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2732 iselInt64Expr(&xHi, &xLo, env, e->Iex.Binop.arg1); in iselInt64Expr_wrk()
2733 iselInt64Expr(&yHi, &yLo, env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2746 iselInt64Expr(&xHi, &xLo, env, e->Iex.Binop.arg1); in iselInt64Expr_wrk()
2747 iselInt64Expr(&yHi, &yLo, env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2759 *rHi = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselInt64Expr_wrk()
2760 *rLo = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2770 HReg fsrc = iselDblExpr(env, e->Iex.Binop.arg2); in iselInt64Expr_wrk()
2775 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselInt64Expr_wrk()
3056 if (e->tag == Iex_Binop && e->Iex.Binop.op == Iop_I64UtoF32) { in iselFltExpr_wrk()
3059 HReg isrc = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselFltExpr_wrk()
3064 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselFltExpr_wrk()
3087 iselInt64Expr(&isrcHi, &isrcLo, env, e->Iex.Binop.arg2); in iselFltExpr_wrk()
3090 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselFltExpr_wrk()
3262 switch (e->Iex.Binop.op) { in iselDblExpr_wrk()
3268 HReg fr_src = iselDblExpr(env, e->Iex.Binop.arg2); in iselDblExpr_wrk()
3269 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselDblExpr_wrk()
3277 if (e->Iex.Binop.op == Iop_RoundF64toF32) { in iselDblExpr_wrk()
3279 HReg r_src = iselDblExpr(env, e->Iex.Binop.arg2); in iselDblExpr_wrk()
3280 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselDblExpr_wrk()
3286 if (e->Iex.Binop.op == Iop_I64StoF64 || e->Iex.Binop.op == Iop_I64UtoF64) { in iselDblExpr_wrk()
3289 HReg isrc = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselDblExpr_wrk()
3294 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselDblExpr_wrk()
3301 e->Iex.Binop.op == Iop_I64StoF64, in iselDblExpr_wrk()
3318 iselInt64Expr(&isrcHi, &isrcLo, env, e->Iex.Binop.arg2); in iselDblExpr_wrk()
3321 set_FPU_rounding_mode( env, e->Iex.Binop.arg1 ); in iselDblExpr_wrk()
3329 e->Iex.Binop.op == Iop_I64StoF64, in iselDblExpr_wrk()
3578 return mk_AvDuplicateRI(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3586 switch (e->Iex.Binop.op) { in iselVecExpr_wrk()
3604 iselInt64Expr(&r1, &r0, env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3608 iselInt64Expr(&r3, &r2, env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3618 HReg rHi = iselWordExpr_R(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3619 HReg rLo = iselWordExpr_R(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3653 HReg argL = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3654 HReg argR = iselVecExpr(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3661 HReg argL = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3662 HReg argR = iselVecExpr(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3686 HReg arg1 = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3687 HReg arg2 = iselVecExpr(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3717 HReg arg1 = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3718 HReg arg2 = iselVecExpr(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3751 HReg arg1 = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3752 HReg arg2 = iselVecExpr(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3783 HReg arg1 = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3784 HReg arg2 = iselVecExpr(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3793 HReg r_src = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3795 HReg v_shft = mk_AvDuplicateRI(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3804 HReg r_src = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3806 HReg v_shft = mk_AvDuplicateRI(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3815 HReg r_src = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3817 HReg v_shft = mk_AvDuplicateRI(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3826 HReg r_src = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3827 HReg v_shft = mk_AvDuplicateRI(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()
3835 HReg v_src = iselVecExpr(env, e->Iex.Binop.arg1); in iselVecExpr_wrk()
3836 HReg v_ctl = iselVecExpr(env, e->Iex.Binop.arg2); in iselVecExpr_wrk()