Lines Matching refs:IRExpr
243 static IRExpr* mkV128 ( UShort w ) in mkV128()
248 static IRExpr* mkU64 ( ULong i ) in mkU64()
253 static IRExpr* mkU32 ( UInt i ) in mkU32()
258 static IRExpr* mkU16 ( UInt i ) in mkU16()
264 static IRExpr* mkU8 ( UInt i ) in mkU8()
270 static IRExpr* mkexpr ( IRTemp tmp ) in mkexpr()
275 static IRExpr* unop ( IROp op, IRExpr* a ) in unop()
280 static IRExpr* binop ( IROp op, IRExpr* a1, IRExpr* a2 ) in binop()
285 static IRExpr* triop ( IROp op, IRExpr* a1, IRExpr* a2, IRExpr* a3 ) in triop()
290 static IRExpr* loadLE ( IRType ty, IRExpr* addr ) in loadLE()
301 static void assign ( IRTemp dst, IRExpr* e ) in assign()
306 static void storeLE ( IRExpr* addr, IRExpr* data ) in storeLE()
787 static IRExpr* mkU ( IRType ty, ULong imm ) { in mkU()
1038 static IRExpr* widenUto64 ( IRType srcTy, IRExpr* e ) in widenUto64()
1051 static IRExpr* narrowFrom64 ( IRType dstTy, IRExpr* e ) in narrowFrom64()
1218 static IRExpr* getIReg64orSP ( UInt iregNo ) in getIReg64orSP()
1224 static IRExpr* getIReg64orZR ( UInt iregNo ) in getIReg64orZR()
1233 static void putIReg64orSP ( UInt iregNo, IRExpr* e ) in putIReg64orSP()
1239 static void putIReg64orZR ( UInt iregNo, IRExpr* e ) in putIReg64orZR()
1269 static IRExpr* getIReg32orSP ( UInt iregNo ) in getIReg32orSP()
1276 static IRExpr* getIReg32orZR ( UInt iregNo ) in getIReg32orZR()
1286 static void putIReg32orSP ( UInt iregNo, IRExpr* e ) in putIReg32orSP()
1292 static void putIReg32orZR ( UInt iregNo, IRExpr* e ) in putIReg32orZR()
1314 static IRExpr* getIRegOrZR ( Bool is64, UInt iregNo ) in getIRegOrZR()
1320 static void putIRegOrZR ( Bool is64, UInt iregNo, IRExpr* e ) in putIRegOrZR()
1326 static void putPC ( IRExpr* e ) in putPC()
1377 static void putQReg128 ( UInt qregNo, IRExpr* e ) in putQReg128()
1385 static IRExpr* getQReg128 ( UInt qregNo ) in getQReg128()
1436 static void putQRegLO ( UInt qregNo, IRExpr* e ) in putQRegLO()
1451 static IRExpr* getQRegLO ( UInt qregNo, IRType ty ) in getQRegLO()
1517 static IRExpr* getQRegHI64 ( UInt qregNo ) in getQRegHI64()
1522 static void putQRegHI64 ( UInt qregNo, IRExpr* e ) in putQRegHI64()
1536 static void putQRegLane ( UInt qregNo, UInt laneNo, IRExpr* e ) in putQRegLane()
1553 static IRExpr* getQRegLane ( UInt qregNo, UInt laneNo, IRType laneTy ) in getQRegLane()
1716 static IRExpr* mk_arm64g_calculate_condition_dyn ( IRExpr* cond ) in mk_arm64g_calculate_condition_dyn()
1730 IRExpr** args in mk_arm64g_calculate_condition_dyn()
1737 IRExpr* call in mk_arm64g_calculate_condition_dyn()
1757 static IRExpr* mk_arm64g_calculate_condition ( ARM64Condcode cond ) in mk_arm64g_calculate_condition()
1770 static IRExpr* mk_arm64g_calculate_flag_c ( void ) in mk_arm64g_calculate_flag_c()
1772 IRExpr** args in mk_arm64g_calculate_flag_c()
1777 IRExpr* call in mk_arm64g_calculate_flag_c()
1817 static IRExpr* mk_arm64g_calculate_flags_nzcv ( void ) in mk_arm64g_calculate_flags_nzcv()
1819 IRExpr** args in mk_arm64g_calculate_flags_nzcv()
1824 IRExpr* call in mk_arm64g_calculate_flags_nzcv()
2170 static IRExpr* math_MAYBE_ZERO_HI64 ( UInt bitQ, IRTemp fullWidth ) in math_MAYBE_ZERO_HI64()
2178 static IRExpr* math_MAYBE_ZERO_HI64_fromE ( UInt bitQ, IRExpr* fullWidth ) in math_MAYBE_ZERO_HI64_fromE()
2509 IRExpr* argL = getIReg64orZR(nn); in dis_ARM64_data_processing_immediate()
2510 IRExpr* argR = mkU64(imm); in dis_ARM64_data_processing_immediate()
2524 IRExpr* argL = getIReg32orZR(nn); in dis_ARM64_data_processing_immediate()
2525 IRExpr* argR = mkU32((UInt)imm); in dis_ARM64_data_processing_immediate()
2582 IRExpr* res in dis_ARM64_data_processing_immediate()
2594 IRExpr* res in dis_ARM64_data_processing_immediate()
2876 IRExpr* one = is64 ? mkU64(1) : mkU32(1); in dis_ARM64_data_processing_register()
3033 IRExpr* argL = getIRegOrZR(is64, nn); in dis_ARM64_data_processing_register()
3034 IRExpr* argR = getIRegOrZR(is64, mm); in dis_ARM64_data_processing_register()
3111 IRExpr* xMw = mkexpr(xM); /* "xM widened" */ in dis_ARM64_data_processing_register()
3353 IRExpr* one = mkU8(1); in dis_ARM64_data_processing_register()
3415 IRExpr* width = mkU64(is64 ? 64: 32); in dis_ARM64_data_processing_register()
4518 IRExpr* rhs = NULL; in gen_indexed_EA()
4572 static void gen_narrowing_store ( UInt szB, IRTemp addr, IRExpr* dataE ) in gen_narrowing_store()
4574 IRExpr* addrE = mkexpr(addr); in gen_narrowing_store()
4599 IRExpr* addrE = mkexpr(addr); in gen_zwidening_load()
5029 IRExpr* ea = binop(Iop_Add64, in dis_ARM64_load_store()
6240 IRExpr* addr in dis_ARM64_load_store()
6250 IRExpr* addr in dis_ARM64_load_store()
6260 IRExpr* addr in dis_ARM64_load_store()
6270 IRExpr* addr in dis_ARM64_load_store()
6345 IRExpr* data = narrowFrom64(ty, getIReg64orZR(tt)); in dis_ARM64_load_store()
6390 IRExpr* data = narrowFrom64(ty, getIReg64orZR(tt)); in dis_ARM64_load_store()
6535 IRExpr* cond = NULL; in dis_ARM64_branch_etc()
6570 IRExpr* cond in dis_ARM64_branch_etc()
6654 IRExpr* qcV128 = binop(Iop_64HLtoV128, mkexpr(qc64), mkexpr(qc64)); in dis_ARM64_branch_etc()
6665 IRExpr* res = binop(Iop_Shl64, in dis_ARM64_branch_etc()
6744 IRExpr** args = mkIRExprVec_0(); in dis_ARM64_branch_etc()
6888 static IRExpr* mk_CatEvenLanes64x2 ( IRTemp a10, IRTemp b10 ) { in mk_CatEvenLanes64x2()
6893 static IRExpr* mk_CatOddLanes64x2 ( IRTemp a10, IRTemp b10 ) { in mk_CatOddLanes64x2()
6898 static IRExpr* mk_CatEvenLanes32x4 ( IRTemp a3210, IRTemp b3210 ) { in mk_CatEvenLanes32x4()
6903 static IRExpr* mk_CatOddLanes32x4 ( IRTemp a3210, IRTemp b3210 ) { in mk_CatOddLanes32x4()
6908 static IRExpr* mk_InterleaveLO32x4 ( IRTemp a3210, IRTemp b3210 ) { in mk_InterleaveLO32x4()
6913 static IRExpr* mk_InterleaveHI32x4 ( IRTemp a3210, IRTemp b3210 ) { in mk_InterleaveHI32x4()
6918 static IRExpr* mk_CatEvenLanes16x8 ( IRTemp a76543210, IRTemp b76543210 ) { in mk_CatEvenLanes16x8()
6923 static IRExpr* mk_CatOddLanes16x8 ( IRTemp a76543210, IRTemp b76543210 ) { in mk_CatOddLanes16x8()
6928 static IRExpr* mk_InterleaveLO16x8 ( IRTemp a76543210, IRTemp b76543210 ) { in mk_InterleaveLO16x8()
6933 static IRExpr* mk_InterleaveHI16x8 ( IRTemp a76543210, IRTemp b76543210 ) { in mk_InterleaveHI16x8()
6938 static IRExpr* mk_CatEvenLanes8x16 ( IRTemp aFEDCBA9876543210, in mk_CatEvenLanes8x16()
6945 static IRExpr* mk_CatOddLanes8x16 ( IRTemp aFEDCBA9876543210, in mk_CatOddLanes8x16()
6952 static IRExpr* mk_InterleaveLO8x16 ( IRTemp aFEDCBA9876543210, in mk_InterleaveLO8x16()
6959 static IRExpr* mk_InterleaveHI8x16 ( IRTemp aFEDCBA9876543210, in mk_InterleaveHI8x16()
7474 IRExpr* argL, IRExpr* argR ) in math_BINARY_WIDENING_V128()
7486 IRTemp math_ABD ( Bool isU, UInt size, IRExpr* argLE, IRExpr* argRE ) in math_ABD()
7514 UInt sizeNarrow, IRExpr* srcE ) in math_WIDEN_LO_OR_HI_LANES()
7559 UInt sizeNarrow, IRExpr* srcE ) in math_WIDEN_EVEN_OR_ODD_LANES()
7600 IRTemp math_DUP_VEC_ELEM ( IRExpr* src, UInt size, UInt laneNo ) in math_DUP_VEC_ELEM()
7658 IRExpr* srcV, UInt imm5 ) in handle_DUP_VEC_ELEM()
7755 IRExpr* srcE, UInt size ) in math_SQABS()
7778 IRExpr* srcE, UInt size ) in math_SQNEG()
7790 static IRTemp math_ZERO_ALL_EXCEPT_LOWEST_LANE ( UInt size, IRExpr* srcE ) in math_ZERO_ALL_EXCEPT_LOWEST_LANE()
8458 IRExpr* widened in dis_AdvSIMD_across_lanes()
8672 IRExpr* src = NULL; in dis_AdvSIMD_copy()
8737 IRExpr* res = NULL; in dis_AdvSIMD_copy()
8740 IRExpr* lane = getQRegLane(nn, laneNo, Ity_I8); in dis_AdvSIMD_copy()
8747 IRExpr* lane = getQRegLane(nn, laneNo, Ity_I8); in dis_AdvSIMD_copy()
8754 IRExpr* lane = getQRegLane(nn, laneNo, Ity_I16); in dis_AdvSIMD_copy()
8761 IRExpr* lane = getQRegLane(nn, laneNo, Ity_I16); in dis_AdvSIMD_copy()
8768 IRExpr* lane = getQRegLane(nn, laneNo, Ity_I32); in dis_AdvSIMD_copy()
8775 IRExpr* lane = getQRegLane(nn, laneNo, Ity_I32); in dis_AdvSIMD_copy()
8782 IRExpr* lane = getQRegLane(nn, laneNo, Ity_I64); in dis_AdvSIMD_copy()
8976 IRExpr* immV128 in dis_AdvSIMD_modified_immediate()
8978 IRExpr* res in dis_AdvSIMD_modified_immediate()
8993 IRExpr* immV128 = binop(Iop_64HLtoV128, mkU64(imm64hi), in dis_AdvSIMD_modified_immediate()
9190 IRExpr* src = getQReg128(nn); in dis_AdvSIMD_scalar_shift_by_imm()
9224 IRExpr* src = getQReg128(nn); in dis_AdvSIMD_scalar_shift_by_imm()
9227 IRExpr* amt = mkexpr(math_DUP_TO_V128(imm8, Ity_I8)); in dis_AdvSIMD_scalar_shift_by_imm()
9249 IRExpr* nmaskV = binop(Iop_64HLtoV128, mkU64(nmask), mkU64(nmask)); in dis_AdvSIMD_scalar_shift_by_imm()
9281 IRExpr* nmaskV = binop(Iop_64HLtoV128, mkU64(nmask), mkU64(nmask)); in dis_AdvSIMD_scalar_shift_by_imm()
9399 IRExpr* scaleE = isD ? IRExpr_Const(IRConst_F64(scale)) in dis_AdvSIMD_scalar_shift_by_imm()
9437 IRExpr* scaleE = isD ? IRExpr_Const(IRConst_F64(scale)) in dis_AdvSIMD_scalar_shift_by_imm()
9598 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_scalar_three_same()
9599 IRExpr* argR = getQReg128(mm); in dis_AdvSIMD_scalar_three_same()
9615 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_scalar_three_same()
9616 IRExpr* argR = getQReg128(mm); in dis_AdvSIMD_scalar_three_same()
9704 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_scalar_three_same()
9705 IRExpr* argR = getQReg128(mm); in dis_AdvSIMD_scalar_three_same()
9910 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_scalar_two_reg_misc()
9911 IRExpr* argR = mkV128(0x0000); in dis_AdvSIMD_scalar_two_reg_misc()
9924 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_scalar_two_reg_misc()
9925 IRExpr* argR = mkV128(0x0000); in dis_AdvSIMD_scalar_two_reg_misc()
9991 IRExpr* zero = mkV128(0x0000); in dis_AdvSIMD_scalar_two_reg_misc()
10386 IRExpr* src = getQReg128(nn); in dis_AdvSIMD_shift_by_immediate()
10435 IRExpr* src = getQReg128(nn); in dis_AdvSIMD_shift_by_immediate()
10438 IRExpr* amt = mkexpr(math_DUP_TO_V128(imm8, Ity_I8)); in dis_AdvSIMD_shift_by_immediate()
10472 IRExpr* src = getQReg128(nn); in dis_AdvSIMD_shift_by_immediate()
10478 IRExpr* nmask = binop(mkVecSHLN(size), in dis_AdvSIMD_shift_by_immediate()
10518 IRExpr* src = getQReg128(nn); in dis_AdvSIMD_shift_by_immediate()
10525 IRExpr* nmask = binop(mkVecSHRN(size), in dis_AdvSIMD_shift_by_immediate()
10688 IRExpr* res = NULL; in dis_AdvSIMD_shift_by_immediate()
10702 IRExpr* tmp = isQ ? mk_InterleaveHI32x4(src, zero) in dis_AdvSIMD_shift_by_immediate()
10711 IRExpr* tmp = isQ ? mk_InterleaveHI16x8(src, zero) in dis_AdvSIMD_shift_by_immediate()
10720 IRExpr* tmp = isQ ? mk_InterleaveHI8x16(src, zero) in dis_AdvSIMD_shift_by_immediate()
10756 IRExpr* scaleE = isD ? IRExpr_Const(IRConst_F64(scale)) in dis_AdvSIMD_shift_by_immediate()
10802 IRExpr* scaleE = isD ? IRExpr_Const(IRConst_F64(scale)) in dis_AdvSIMD_shift_by_immediate()
10925 IRExpr* wideE = binop(isADD ? mkVecADD(size+1) : mkVecSUB(size+1), in dis_AdvSIMD_three_different()
11272 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_three_same()
11273 IRExpr* argR = getQReg128(mm); in dis_AdvSIMD_three_same()
11291 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_three_same()
11292 IRExpr* argR = getQReg128(mm); in dis_AdvSIMD_three_same()
11427 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_three_same()
11428 IRExpr* argR = getQReg128(mm); in dis_AdvSIMD_three_same()
11505 IRExpr* res in dis_AdvSIMD_three_same()
11554 IRExpr* res in dis_AdvSIMD_three_same()
12007 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_two_reg_misc()
12008 IRExpr* argR = mkV128(0x0000); in dis_AdvSIMD_two_reg_misc()
12025 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_two_reg_misc()
12026 IRExpr* argR = mkV128(0x0000); in dis_AdvSIMD_two_reg_misc()
12041 IRExpr* argL = getQReg128(nn); in dis_AdvSIMD_two_reg_misc()
12042 IRExpr* argR = mkV128(0x0000); in dis_AdvSIMD_two_reg_misc()
12105 IRExpr* zero = mkV128(0x0000); in dis_AdvSIMD_two_reg_misc()
12612 IRExpr* prod = binop(opMUL, mkexpr(vecN), mkexpr(vecM)); in dis_AdvSIMD_vector_x_indexed_elem()
12931 IRExpr* nzcvF_28x0 = mkU64(((ULong)nzcv) << 28); in dis_AdvSIMD_fp_conditional_compare()
13144 IRExpr* irrmE = NULL; in dis_AdvSIMD_fp_data_proc_1_source()
13247 IRExpr* resE = unop(iopn, in dis_AdvSIMD_fp_data_proc_2_source()
13312 IRExpr* eA = getQRegLO(aa, ity); in dis_AdvSIMD_fp_data_proc_3_source()
13313 IRExpr* eN = getQRegLO(nn, ity); in dis_AdvSIMD_fp_data_proc_3_source()
13314 IRExpr* eM = getQRegLO(mm, ity); in dis_AdvSIMD_fp_data_proc_3_source()
13315 IRExpr* rm = mkexpr(mk_get_IR_rounding_mode()); in dis_AdvSIMD_fp_data_proc_3_source()
13316 IRExpr* eNxM = triop(opMUL, rm, eN, eM); in dis_AdvSIMD_fp_data_proc_3_source()
13419 IRExpr* scaleE = isF64 ? IRExpr_Const(IRConst_F64(scale)) in dis_AdvSIMD_fp_to_from_fixedp_conv()
13429 IRExpr* src = getQRegLO(nn, isF64 ? Ity_F64 : Ity_F32); in dis_AdvSIMD_fp_to_from_fixedp_conv()
13430 IRExpr* res = binop(ops[ix], mkexpr(irrm), in dis_AdvSIMD_fp_to_from_fixedp_conv()
13470 IRExpr* scaleE = isF64 ? IRExpr_Const(IRConst_F64(scale)) in dis_AdvSIMD_fp_to_from_fixedp_conv()
13477 IRExpr* src = getIRegOrZR(isI64, nn); in dis_AdvSIMD_fp_to_from_fixedp_conv()
13478 IRExpr* res = (isF64 && !isI64) in dis_AdvSIMD_fp_to_from_fixedp_conv()
13659 IRExpr* src = getIRegOrZR(isI64, nn); in dis_AdvSIMD_fp_to_from_int_conv()
13660 IRExpr* res = (isF64 && !isI64) in dis_AdvSIMD_fp_to_from_int_conv()