Lines Matching refs:IRExpr
504 static void assign ( IRTemp dst, IRExpr* e ) in assign()
510 static void storeBE ( IRExpr* addr, IRExpr* data ) in storeBE()
517 static IRExpr* unop ( IROp op, IRExpr* a ) in unop()
522 static IRExpr* binop ( IROp op, IRExpr* a1, IRExpr* a2 ) in binop()
527 static IRExpr* triop ( IROp op, IRExpr* a1, IRExpr* a2, IRExpr* a3 ) in triop()
532 static IRExpr* qop ( IROp op, IRExpr* a1, IRExpr* a2, in qop()
533 IRExpr* a3, IRExpr* a4 ) in qop()
538 static IRExpr* mkexpr ( IRTemp tmp ) in mkexpr()
543 static IRExpr* mkU8 ( UChar i ) in mkU8()
548 static IRExpr* mkU16 ( UInt i ) in mkU16()
553 static IRExpr* mkU32 ( UInt i ) in mkU32()
558 static IRExpr* mkU64 ( ULong i ) in mkU64()
563 static IRExpr* mkV128 ( UShort i ) in mkV128()
570 static IRExpr* loadBE ( IRType ty, IRExpr* addr ) in loadBE()
575 static IRExpr* mkOR1 ( IRExpr* arg1, IRExpr* arg2 ) in mkOR1()
583 static IRExpr* mkAND1 ( IRExpr* arg1, IRExpr* arg2 ) in mkAND1()
592 static void expand8Ux16( IRExpr* vIn, in expand8Ux16()
610 static void expand8Sx16( IRExpr* vIn, in expand8Sx16()
628 static void expand16Ux8( IRExpr* vIn, in expand16Ux8()
646 static void expand16Sx8( IRExpr* vIn, in expand16Sx8()
664 static void breakV128to4xF64( IRExpr* t128, in breakV128to4xF64()
702 static void breakV128to4x64S( IRExpr* t128, in breakV128to4x64S()
729 static void breakV128to4x64U ( IRExpr* t128, in breakV128to4x64U()
755 static void breakV128to4x32( IRExpr* t128, in breakV128to4x32()
783 static IRExpr* mkQNarrow64Sto32 ( IRExpr* t64 ) in mkQNarrow64Sto32()
806 static IRExpr* mkQNarrow64Uto32 ( IRExpr* t64 ) in mkQNarrow64Uto32()
826 static IRExpr* mkV128from4x64S ( IRExpr* t3, IRExpr* t2, in mkV128from4x64S()
827 IRExpr* t1, IRExpr* t0 ) in mkV128from4x64S()
843 static IRExpr* mkV128from4x64U ( IRExpr* t3, IRExpr* t2, in mkV128from4x64U()
844 IRExpr* t1, IRExpr* t0 ) in mkV128from4x64U()
880 static IRExpr* /* :: Ity_I64 */ mk64lo32Sto64 ( IRExpr* src ) in mk64lo32Sto64()
886 static IRExpr* /* :: Ity_I64 */ mk64lo32Uto64 ( IRExpr* src ) in mk64lo32Uto64()
916 static IRExpr* mkSzImm ( IRType ty, ULong imm64 ) in mkSzImm()
932 static IRExpr* mkSzExtendS16 ( IRType ty, UInt imm16 ) in mkSzExtendS16()
941 static IRExpr* mkSzExtendS32 ( IRType ty, UInt imm32 ) in mkSzExtendS32()
950 static IRExpr* mkNarrowTo8 ( IRType ty, IRExpr* src ) in mkNarrowTo8()
956 static IRExpr* mkNarrowTo16 ( IRType ty, IRExpr* src ) in mkNarrowTo16()
962 static IRExpr* mkNarrowTo32 ( IRType ty, IRExpr* src ) in mkNarrowTo32()
969 static IRExpr* mkWidenFrom8 ( IRType ty, IRExpr* src, Bool sined ) in mkWidenFrom8()
978 static IRExpr* mkWidenFrom16 ( IRType ty, IRExpr* src, Bool sined ) in mkWidenFrom16()
987 static IRExpr* mkWidenFrom32 ( IRType ty, IRExpr* src, Bool sined ) in mkWidenFrom32()
1043 static IRExpr* getIReg ( UInt archreg ) in getIReg()
1051 static void putIReg ( UInt archreg, IRExpr* e ) in putIReg()
1103 static IRExpr* getFReg ( UInt archreg ) in getFReg()
1110 static void putFReg ( UInt archreg, IRExpr* e ) in putFReg()
1233 static IRExpr* getVReg ( UInt archreg ) in getVReg()
1240 static void putVReg ( UInt archreg, IRExpr* e ) in putVReg()
1248 static IRExpr* getVSReg ( UInt archreg ) in getVSReg()
1255 static void putVSReg ( UInt archreg, IRExpr* e ) in putVSReg()
1357 static IRExpr* /* :: Ity_I32/64 */ ROTL ( IRExpr* src, in ROTL()
1358 IRExpr* rot_amt ) in ROTL()
1360 IRExpr *mask, *rot; in ROTL()
1385 static IRExpr* ea_rA_idxd ( UInt rA, UInt rB ) in ea_rA_idxd()
1394 static IRExpr* ea_rA_simm ( UInt rA, UInt simm16 ) in ea_rA_simm()
1403 static IRExpr* ea_rAor0 ( UInt rA ) in ea_rAor0()
1415 static IRExpr* ea_rAor0_idxd ( UInt rA, UInt rB ) in ea_rAor0_idxd()
1423 static IRExpr* ea_rAor0_simm ( UInt rA, UInt simm16 ) in ea_rAor0_simm()
1436 static IRExpr* addr_align( IRExpr* addr, UChar align ) in addr_align()
1553 static void putCR321 ( UInt cr, IRExpr* e ) in putCR321()
1560 static void putCR0 ( UInt cr, IRExpr* e ) in putCR0()
1567 static IRExpr* /* :: Ity_I8 */ getCR0 ( UInt cr ) in getCR0()
1573 static IRExpr* /* :: Ity_I8 */ getCR321 ( UInt cr ) in getCR321()
1582 static IRExpr* /* :: Ity_I32 */ getCRbit ( UInt bi ) in getCRbit()
1604 static void putCRbit ( UInt bi, IRExpr* bit ) in putCRbit()
1607 IRExpr* safe; in putCRbit()
1642 IRExpr* /* :: Ity_I32 */ getCRbit_anywhere ( UInt bi, Int* where ) in getCRbit_anywhere()
1665 static IRExpr* getXER_SO ( void );
1666 static void set_CR0 ( IRExpr* result ) in set_CR0()
1684 static void set_AV_CR6 ( IRExpr* result, Bool test_all_ones ) in set_AV_CR6()
1736 static void putXER_SO ( IRExpr* e ) in putXER_SO()
1738 IRExpr* so; in putXER_SO()
1744 static void putXER_OV ( IRExpr* e ) in putXER_OV()
1746 IRExpr* ov; in putXER_OV()
1752 static void putXER_CA ( IRExpr* e ) in putXER_CA()
1754 IRExpr* ca; in putXER_CA()
1760 static void putXER_BC ( IRExpr* e ) in putXER_BC()
1762 IRExpr* bc; in putXER_BC()
1768 static IRExpr* /* :: Ity_I8 */ getXER_SO ( void ) in getXER_SO()
1773 static IRExpr* /* :: Ity_I32 */ getXER_SO32 ( void ) in getXER_SO32()
1778 static IRExpr* /* :: Ity_I8 */ getXER_OV ( void ) in getXER_OV()
1783 static IRExpr* /* :: Ity_I32 */ getXER_OV32 ( void ) in getXER_OV32()
1788 static IRExpr* /* :: Ity_I32 */ getXER_CA32 ( void ) in getXER_CA32()
1790 IRExpr* ca = IRExpr_Get( OFFB_XER_CA, Ity_I8 ); in getXER_CA32()
1794 static IRExpr* /* :: Ity_I8 */ getXER_BC ( void ) in getXER_BC()
1799 static IRExpr* /* :: Ity_I32 */ getXER_BC32 ( void ) in getXER_BC32()
1801 IRExpr* bc = IRExpr_Get( OFFB_XER_BC, Ity_I8 ); in getXER_BC32()
1809 static void set_XER_OV_32( UInt op, IRExpr* res, in set_XER_OV_32()
1810 IRExpr* argL, IRExpr* argR ) in set_XER_OV_32()
1813 IRExpr* xer_ov; in set_XER_OV_32()
1943 static void set_XER_OV_64( UInt op, IRExpr* res, in set_XER_OV_64()
1944 IRExpr* argL, IRExpr* argR ) in set_XER_OV_64()
1946 IRExpr* xer_ov; in set_XER_OV_64()
2068 static void set_XER_OV ( IRType ty, UInt op, IRExpr* res, in set_XER_OV()
2069 IRExpr* argL, IRExpr* argR ) in set_XER_OV()
2082 static void set_XER_CA_32 ( UInt op, IRExpr* res, in set_XER_CA_32()
2083 IRExpr* argL, IRExpr* argR, IRExpr* oldca ) in set_XER_CA_32()
2085 IRExpr* xer_ca; in set_XER_CA_32()
2200 static void set_XER_CA_64 ( UInt op, IRExpr* res, in set_XER_CA_64()
2201 IRExpr* argL, IRExpr* argR, IRExpr* oldca ) in set_XER_CA_64()
2203 IRExpr* xer_ca; in set_XER_CA_64()
2376 static void set_XER_CA ( IRType ty, UInt op, IRExpr* res, in set_XER_CA()
2377 IRExpr* argL, IRExpr* argR, IRExpr* oldca ) in set_XER_CA()
2391 static IRExpr* /* :: Ity_I32/64 */ getGST ( PPC_GST reg ) in getGST()
2455 static IRExpr* /* ::Ity_I32 */ getGST_masked ( PPC_GST reg, UInt mask ) in getGST_masked()
2492 static IRExpr* /* ::Ity_I32 */ getGST_field ( PPC_GST reg, UInt fld ) in getGST_field()
2522 static void putGST ( PPC_GST reg, IRExpr* src ) in putGST()
2584 static void putGST_masked ( PPC_GST reg, IRExpr* src, UInt mask ) in putGST_masked()
2642 static void putGST_field ( PPC_GST reg, IRExpr* src, UInt fld ) in putGST_field()
2683 static IRExpr * fp_exp_part_sp(IRTemp src) in fp_exp_part_sp()
2691 static IRExpr * fp_exp_part(IRTemp src, Bool sp) in fp_exp_part()
2693 IRExpr * exp; in fp_exp_part()
2709 static IRExpr * is_Inf_sp(IRTemp src) in is_Inf_sp()
2712 IRExpr * Inf_exp; in is_Inf_sp()
2721 static IRExpr * is_Inf(IRTemp src, Bool sp) in is_Inf()
2723 IRExpr * Inf_exp, * hi32, * low32; in is_Inf()
2738 static IRExpr * is_Zero_sp(IRTemp src) in is_Zero_sp()
2746 static IRExpr * is_Zero(IRTemp src, Bool sp) in is_Zero()
2748 IRExpr * hi32, * low32; in is_Zero()
2766 static IRExpr * is_NaN(IRTemp src) in is_NaN()
2768 IRExpr * NaN_exp, * hi32, * low32; in is_NaN()
2784 static IRExpr * is_NaN_32(IRTemp src) in is_NaN_32()
2791 IRExpr * frac_part = FP_FRAC_PART32(src); in is_NaN_32()
2792 IRExpr * exp_part = binop( Iop_And32, in is_NaN_32()
2795 IRExpr * NaN_exp = binop( Iop_CmpEQ32, exp_part, mkU32( 0xff ) ); in is_NaN_32()
3039 IRExpr *min_one; in dis_int_arith()
3100 IRExpr* dividend = mk64lo32Sto64( mkexpr(rA) ); in dis_int_arith()
3101 IRExpr* divisor = mk64lo32Sto64( mkexpr(rB) ); in dis_int_arith()
3131 IRExpr* dividend = mk64lo32Uto64( mkexpr(rA) ); in dis_int_arith()
3132 IRExpr* divisor = mk64lo32Uto64( mkexpr(rB) ); in dis_int_arith()
3200 IRExpr *a = unop(Iop_64to32, mkexpr(rA) ); in dis_int_arith()
3201 IRExpr *b = unop(Iop_64to32, mkexpr(rB) ); in dis_int_arith()
3289 IRExpr *min_one; in dis_int_arith()
3415 IRExpr * dividend, * divisor; in dis_int_arith()
3450 IRExpr * dividend, * divisor; in dis_int_arith()
3543 IRExpr *a = getIReg(rA_addr); in dis_int_cmp()
3544 IRExpr *b; in dis_int_cmp()
3664 IRExpr* irx; in dis_int_logic()
3732 IRExpr* lo32; in dis_int_logic()
3938 IRExpr * rS_expr = mkexpr(rS); in dis_int_logic()
3939 IRExpr * res = binop(Iop_And64, mkU64(0), mkU64(0)); in dis_int_logic()
4156 IRExpr *r; in dis_int_rot()
4401 IRExpr* val; in dis_int_load()
4845 IRExpr* irx_addr; in dis_int_ldst_mult()
4892 IRExpr* e_nbytes = mkexpr(tNBytes); in generate_lsw_sequence()
4893 IRExpr* e_EA = mkexpr(EA); in generate_lsw_sequence()
4943 IRExpr* e_nbytes = mkexpr(tNBytes); in generate_stsw_sequence()
4944 IRExpr* e_EA = mkexpr(EA); in generate_stsw_sequence()
5080 static IRExpr* /* :: Ity_I32 */ branch_ctr_ok( UInt BO ) in branch_ctr_ok()
5109 static IRExpr* /* :: Ity_I32 */ branch_cond_ok( UInt BO, UInt BI ) in branch_cond_ok()
5163 IRExpr* e_nia = mkSzImm(ty, nextInsnAddr()); in dis_branch()
5451 IRExpr* argL0, IRExpr* argR0, Addr64 cia ) in do_trap()
5454 IRExpr *argLe, *argRe, *cond, *tmp; in do_trap()
5464 IRExpr* const0 = is32bit ? mkU32(0) : mkU64(0); in do_trap()
5465 IRExpr* const2 = is32bit ? mkU32(2) : mkU64(2); in do_trap()
5466 IRExpr* const4 = is32bit ? mkU32(4) : mkU64(4); in do_trap()
5467 IRExpr* const8 = is32bit ? mkU32(8) : mkU64(8); in do_trap()
5914 IRExpr* e_tmp; in dis_int_shift()
6134 static IRExpr* /* :: Ity_I32 */ gen_byterev32 ( IRTemp t ) in gen_byterev32()
6153 static IRExpr* /* :: Ity_I32 */ gen_byterev16 ( IRTemp t ) in gen_byterev16()
6208 IRExpr * nextAddr; in dis_int_ldst_rev()
6369 IRExpr** args = mkIRExprVec_1( mkU32(arg) ); in dis_proc_ctl()
6390 IRExpr** args = mkIRExprVec_0(); in dis_proc_ctl()
6415 IRExpr** args = mkIRExprVec_0(); in dis_proc_ctl()
6591 IRExpr* irx_addr; in dis_cache_manage()
6671 static IRExpr* /* :: Ity_I32 */ get_IR_roundingmode ( void ) in get_IR_roundingmode()
6984 IRExpr* rm = get_IR_roundingmode(); in dis_fp_arith()
7048 { IRExpr* ieee_one in dis_fp_arith()
7152 { IRExpr* ieee_one in dis_fp_arith()
7224 IRExpr* rm; in dis_fp_multadd()
7369 IRExpr * fe_flag, * fg_flag; in do_fp_tsqrt()
7372 IRExpr * frbNaN, * frbDenorm, * frBNeg; in do_fp_tsqrt()
7373 IRExpr * eb_LTE; in do_fp_tsqrt()
7421 IRExpr * hi32, * low32, * fraction_is_nonzero; in do_fp_tsqrt()
7489 IRExpr * fraNaN, * frbNaN, * frbDenorm; in _do_fp_tdiv()
7490 IRExpr * eb_LTE, * eb_GTE, * ea_eb_GTE, * ea_eb_LTE, * ea_LTE; in _do_fp_tdiv()
7499 IRExpr * fe_flag, * fg_flag; in _do_fp_tdiv()
7607 IRExpr * fraction_is_nonzero; in _do_fp_tdiv()
7613 IRExpr * hi32, * low32; in _do_fp_tdiv()
7656 static IRExpr * do_fp_tdiv(IRTemp frA_int, IRTemp frB_int) in do_fp_tdiv()
7663 IRExpr * fl_flag = unop(Iop_Not32, mkU32(0xFFFFFE)); in do_fp_tdiv()
7853 IRExpr* rm = get_IR_roundingmode(); in dis_fp_round()
8260 IRExpr* fpscr_all; in dis_fp_scr()
8308 IRExpr* fpscr_all = getGST_masked( PPC_GST_FPSCR, MASK_FPSCR_RN ); in dis_fp_scr()
8598 IRExpr* rmZero = mkU32(Irrm_ZERO); in dis_vx_conv()
8613 IRExpr * b0_result, * b1_result, * b2_result, * b3_result; in dis_vx_conv()
8916 IRExpr* rm = get_IR_roundingmode(); in dis_vxv_dp_arith()
9159 IRExpr* rm = get_IR_roundingmode(); in dis_vxv_sp_arith()
9494 get_fp_cmp_CR_val (IRExpr * ccIR_expr) in get_fp_cmp_CR_val()
9529 static IRExpr * _get_maxmin_fp_NaN(IRTemp frA_I64, IRTemp frB_I64) in _get_maxmin_fp_NaN()
9595 static IRExpr * _get_maxmin_fp_cmp(IRTemp src1, IRTemp src2, Bool isMin) in _get_maxmin_fp_cmp()
9618 static IRExpr * get_max_min_fp(IRTemp frA_I64, IRTemp frB_I64, Bool isMin) in get_max_min_fp()
9661 static IRExpr * _do_vsx_fp_roundToInt(IRTemp frB_I64, UInt opc2, UChar * insn_suffix) in _do_vsx_fp_roundToInt()
9669 IRExpr * hi32; in _do_vsx_fp_roundToInt()
9670 IRExpr * rxpi_rm; in _do_vsx_fp_roundToInt()
9767 IRExpr* ieee_one = IRExpr_Const(IRConst_F64i(0x3ff0000000000000ULL)); in dis_vxv_misc()
9768 IRExpr* rm = get_IR_roundingmode(); in dis_vxv_misc()
9819 IRExpr* rm = get_IR_roundingmode(); in dis_vxv_misc()
9822 IRExpr* ieee_one = IRExpr_Const(IRConst_F64i(0x3ff0000000000000ULL)); in dis_vxv_misc()
10119 IRExpr * frD_fp_roundHi = NULL; in dis_vxv_misc()
10120 IRExpr * frD_fp_roundLo = NULL; in dis_vxv_misc()
10171 IRExpr * frD_fp_roundb3, * frD_fp_roundb2, * frD_fp_roundb1, * frD_fp_roundb0; in dis_vxv_misc()
10225 IRExpr* rm = get_IR_roundingmode(); in dis_vxs_arith()
10727 IRExpr * frD_fp_round = NULL; in dis_vxs_misc()
10746 IRExpr* ieee_one = IRExpr_Const(IRConst_F64i(0x3ff0000000000000ULL)); in dis_vxs_misc()
10747 IRExpr* rm = get_IR_roundingmode(); in dis_vxs_misc()
10856 IRExpr * exp; in dis_vx_load()
10868 IRExpr * high, *low; in dis_vx_load()
10870 IRExpr* high_addr; in dis_vx_load()
10889 IRExpr * t3, *t2, *t1, *t0; in dis_vx_load()
10891 IRExpr* irx_addr; in dis_vx_load()
10947 IRExpr * high64; in dis_vx_store()
10955 IRExpr * high64, *low64; in dis_vx_store()
10967 IRExpr* irx_addr; in dis_vx_store()
11152 IRExpr** args = mkIRExprVec_3( in dis_av_load()
11185 IRExpr** args = mkIRExprVec_3( in dis_av_load()