Lines Matching refs:IRExpr
277 static IRExpr* mkU64 ( ULong i )
282 static IRExpr* mkU32 ( UInt i )
287 static IRExpr* mkU8 ( UInt i )
293 static IRExpr* mkexpr ( IRTemp tmp )
298 static IRExpr* unop ( IROp op, IRExpr* a )
303 static IRExpr* binop ( IROp op, IRExpr* a1, IRExpr* a2 )
308 static IRExpr* triop ( IROp op, IRExpr* a1, IRExpr* a2, IRExpr* a3 )
313 static IRExpr* loadLE ( IRType ty, IRExpr* addr )
324 static void assign ( IRTemp dst, IRExpr* e )
329 static void storeLE ( IRExpr* addr, IRExpr* data )
334 static void storeGuardedLE ( IRExpr* addr, IRExpr* data, IRTemp guardT )
346 IRExpr* addr, IRExpr* alt,
351 IRExpr* loaded = NULL;
386 static IRExpr* /* :: Ity_I32 */ get_FAKE_roundingmode ( void )
392 static IRExpr* genROR32( IRTemp src, Int rot )
403 static IRExpr* mkU128 ( ULong i )
410 static IRExpr* align4if ( IRExpr* e, Bool b )
521 static IRExpr* llGetIReg ( UInt iregNo )
529 static IRExpr* getIRegA ( UInt iregNo )
531 IRExpr* e;
551 static IRExpr* getIRegT ( UInt iregNo )
553 IRExpr* e;
568 static void llPutIReg ( UInt iregNo, IRExpr* e )
581 IRExpr* e,
620 IRExpr* e,
694 static IRExpr* llGetDReg ( UInt dregNo )
701 static IRExpr* getDReg ( UInt dregNo ) {
706 static void llPutDReg ( UInt dregNo, IRExpr* e )
717 IRExpr* e,
737 static IRExpr* llGetDRegI64 ( UInt dregNo )
744 static IRExpr* getDRegI64 ( UInt dregNo ) {
749 static void llPutDRegI64 ( UInt dregNo, IRExpr* e )
760 IRExpr* e,
803 static IRExpr* llGetQReg ( UInt qregNo )
810 static IRExpr* getQReg ( UInt qregNo ) {
815 static void llPutQReg ( UInt qregNo, IRExpr* e )
826 IRExpr* e,
862 static IRExpr* llGetFReg ( UInt fregNo )
869 static IRExpr* getFReg ( UInt fregNo ) {
874 static void llPutFReg ( UInt fregNo, IRExpr* e )
885 IRExpr* e,
904 IRExpr* e, /* :: Ity_I32 */
960 static void or_into_QFLAG32 ( IRExpr* e, IRTemp condT )
980 IRExpr* e, /* Ity_I32 */
1002 static IRExpr* get_GEFLAG32( Int flagNo /* 0, 1, 2, 3 */ )
1129 static IRExpr* mk_armg_calculate_condition_dyn ( IRExpr* cond )
1143 IRExpr** args
1150 IRExpr* call
1170 static IRExpr* mk_armg_calculate_condition ( ARMCondcode cond )
1183 static IRExpr* mk_armg_calculate_flag_c ( void )
1185 IRExpr** args
1190 IRExpr* call
1207 static IRExpr* mk_armg_calculate_flag_v ( void )
1209 IRExpr** args
1214 IRExpr* call
1230 static IRExpr* mk_armg_calculate_flags_nzcv ( void )
1232 IRExpr** args
1237 IRExpr* call
1250 static IRExpr* mk_armg_calculate_flag_qc ( IRExpr* resL, IRExpr* resR, Bool Q )
1252 IRExpr** args1;
1253 IRExpr** args2;
1254 IRExpr *call1, *call2, *res;
1296 static void setFlag_QC ( IRExpr* resL, IRExpr* resR, Bool Q,
1523 IRExpr* ge0
1525 IRExpr* ge1
1527 IRExpr* ge2
1529 IRExpr* ge3
1677 IRExpr* signed_overflow_after_Add32 ( IRExpr* resE,
1692 IRExpr* signed_overflow_after_Sub32 ( IRExpr* resE,
2369 IRExpr* mk_EA_reg_plusminus_imm12 ( UInt rN, UInt bU, UInt imm12,
2388 IRExpr* mk_EA_reg_plusminus_shifted_reg ( UInt rN, UInt bU, UInt rM,
2398 IRExpr* index = NULL;
2458 IRExpr* mk_EA_reg_plusminus_imm8 ( UInt rN, UInt bU, UInt imm8,
2475 IRExpr* mk_EA_reg_plusminus_reg ( UInt rN, UInt bU, UInt rM,
2482 IRExpr* index = getIRegA(rM);
2881 IRExpr* binop_w_fake_RM ( IROp op, IRExpr* argL, IRExpr* argR )
3074 IRExpr *imm_val;
3484 IRExpr *imm_val;
5944 IRExpr *imm_val;
6397 IRExpr *imm_val;
6847 IRExpr *zero1, *zero2;
6848 IRExpr *neg, *neg2;
6908 IRExpr *zero;
6961 IRExpr *zero;
6991 IRExpr *zero;
7022 IRExpr *zero;
7052 IRExpr *zero;
7084 IRExpr *zero;
7137 IRExpr *zero;
7658 IRExpr *imm_val;
7659 IRExpr *expr;
8009 static IRExpr* math_PERM_8x8x3(const UChar* desc,
8503 IRExpr* e = binop(Iop_Add32,
8511 IRExpr* e = binop(Iop_Add32,
8619 IRExpr* a0 = binop(Iop_Add32, mkexpr(addr), mkU32(0));
8620 IRExpr* a1 = binop(Iop_Add32, mkexpr(addr), mkU32(8));
8644 IRExpr* a0 = binop(Iop_Add32, mkexpr(addr), mkU32(0));
8645 IRExpr* a1 = binop(Iop_Add32, mkexpr(addr), mkU32(8));
8646 IRExpr* a2 = binop(Iop_Add32, mkexpr(addr), mkU32(16));
8647 IRExpr* a3 = binop(Iop_Add32, mkexpr(addr), mkU32(24));
8692 IRExpr* a0 = binop(Iop_Add32, mkexpr(addr), mkU32(0));
8693 IRExpr* a1 = binop(Iop_Add32, mkexpr(addr), mkU32(8));
8694 IRExpr* a2 = binop(Iop_Add32, mkexpr(addr), mkU32(16));
8727 IRExpr* a0 = binop(Iop_Add32, mkexpr(addr), mkU32(0));
8728 IRExpr* a1 = binop(Iop_Add32, mkexpr(addr), mkU32(8));
8729 IRExpr* a2 = binop(Iop_Add32, mkexpr(addr), mkU32(16));
8730 IRExpr* a3 = binop(Iop_Add32, mkexpr(addr), mkU32(24));
8772 IRExpr* e;
9043 IRExpr* ire_result = binop(Iop_Or32,
9105 IRExpr* ire_result
9289 IRExpr* ire_result
9350 IRExpr* ire_result = binop( Iop_Or32,
10222 IRExpr* ire_result = binop( Iop_Or32,
10291 IRExpr* ire_result
10355 IRExpr* ire_result
10435 IRExpr* ire_result
10523 IRExpr* ire_result = binop(Iop_Add32, mkexpr(irt_sum), mkexpr(irt_regA));
10601 IRExpr* ire_result = binop(Iop_Add32, mkexpr(irt_prod), mkexpr(irt_regA));
10747 IRExpr* ire_result = binop(Iop_Add32, mkexpr(prod32), mkexpr(irt_regA));
10805 IRExpr* ire_ge_flag0_or
10808 IRExpr* ire_ge_flag1_or
10811 IRExpr* ire_ge_flag2_or
10814 IRExpr* ire_ge_flag3_or
10818 IRExpr* ire_ge_flags
10835 IRExpr* ire_result
10893 IRExpr* resLo
10898 IRExpr* resHi
10903 IRExpr* ire_result
10947 IRExpr* rNe = isT ? getIRegT(rN) : getIRegA(rN);
10948 IRExpr* rMe = isT ? getIRegT(rM) : getIRegA(rM);
10949 IRExpr* rAe = rA == 15 ? mkU32(0)
10951 IRExpr* res = binop(Iop_Add32,
11468 IRExpr* ire_result = binop( Iop_Or32,
11537 IRExpr* ire_result
11603 IRExpr* ire_result
11679 IRExpr* ire_result
11755 IRExpr* ire_result
11863 IRExpr* resLo
11872 IRExpr* resHi
11886 IRExpr* ire_result
12373 IRExpr* res
12636 IRExpr* e = binop(opADDorSUB, mkexpr(oldRnT), mkU32(4*nRegs));
12736 IRExpr* e = loadLE(Ity_I32,
12760 IRExpr* e = binop(opADDorSUB, mkexpr(oldRnT), mkU32(4*nRegs));
12927 IRExpr* addr = binop(Iop_Add32, mkexpr(taT), mkU32(8*i));
13064 IRExpr* addr = binop(Iop_Add32, mkexpr(taT), mkU32(8*i));
13121 IRExpr* e = IRExpr_Get(OFFB_FPSCR, Ity_I32);
13179 IRExpr* hi32 = unop(Iop_64HIto32, mkexpr(i64));
13180 IRExpr* lo32 = unop(Iop_64to32, mkexpr(i64));
13224 IRExpr* res0 = unop(Iop_ReinterpF32asI32, getFReg(sD));
13225 IRExpr* res1 = unop(Iop_ReinterpF32asI32, getFReg(sD+1));
13298 IRExpr* e = unop(U ? Iop_8Uto32 : Iop_8Sto32,
13312 IRExpr* e = unop(U ? Iop_16Uto32 : Iop_16Sto32,
13326 IRExpr* e = binop(Iop_GetElem32x2, getDRegI64(rN), mkU8(index));
13383 IRExpr* e = isT ? getIRegT(rT) : getIRegA(rT);
13469 IRExpr* rm = get_FAKE_roundingmode(); /* XXXROUNDINGFIXME */
13681 IRExpr* rm = get_FAKE_roundingmode(); /* XXXROUNDINGFIXME */
13856 IRExpr* addr = binop(Iop_Add32, mkexpr(taT), mkU32(4*i));
13911 IRExpr* res = unop(Iop_ReinterpF32asI32, getFReg(fN));
13977 IRExpr* rm = get_FAKE_roundingmode(); /* XXXROUNDINGFIXME */
14195 IRExpr* rm = get_FAKE_roundingmode(); /* XXXROUNDINGFIXME */
14342 IRExpr* rm = mkU32(Irrm_NEAREST);
14355 IRExpr* as_F64 = unop( unsyned ? Iop_I32UtoF64 : Iop_I32StoF64,
14357 IRExpr* resF64 = triop(Iop_DivF64,
14361 IRExpr* resF32 = binop(Iop_F64toF32, mkexpr(rmode), resF64);
14374 IRExpr* as_F64 = unop( unsyned ? Iop_I32UtoF64 : Iop_I32StoF64,
14376 IRExpr* resF64 = triop(Iop_DivF64,
14489 IRExpr* eaE = mk_EA_reg_plusminus_shifted_reg(rN, bU, rM,
15143 IRExpr* eaE = NULL;
15394 IRExpr* eaE = NULL;
16514 IRExpr* eaE = NULL;
16749 IRExpr* res
16771 IRExpr* res
16801 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
16832 IRExpr* erN = mk_EA_reg_plusminus_shifted_reg(rN, bU, rM,
16856 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
16887 IRExpr* erN = mk_EA_reg_plusminus_shifted_reg(rN, bU, rM,
16915 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
16942 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
16971 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
16998 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
17027 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
17054 IRExpr* erN = binop(bU ? Iop_Add32 : Iop_Sub32,
17075 IRExpr* address = getIRegA(rN);
17076 IRExpr* data = unop(Iop_32to8, getIRegA(rT));
17078 IRExpr* newRn = binop(bU ? Iop_Add32 : Iop_Sub32,
17102 IRExpr* address = getIRegA(rN);
17103 IRExpr* data = unop(Iop_32to8, getIRegA(rT));
17106 IRExpr* erN = mk_EA_reg_plusminus_shifted_reg(rN, bU, rM,
17129 IRExpr* address = getIRegA(rN);
17130 IRExpr* data = unop(Iop_32to16, getIRegA(rT));
17132 IRExpr* newRn = binop(bU ? Iop_Add32 : Iop_Sub32,
17154 IRExpr* address = getIRegA(rN);
17155 IRExpr* data = unop(Iop_32to16, getIRegA(rT));
17157 IRExpr* newRn = binop(bU ? Iop_Add32 : Iop_Sub32,
17178 IRExpr* address = getIRegA(rN);
17180 IRExpr* newRn = binop(bU ? Iop_Add32 : Iop_Sub32,
17208 IRExpr* erN = mk_EA_reg_plusminus_shifted_reg(rN, bU, rM,
18698 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), getIRegT(rM));
18723 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), getIRegT(rM));
18745 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), getIRegT(rM));
18763 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), getIRegT(rM));
18784 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), getIRegT(rM));
18913 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm5 * 4));
18938 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm5 * 2));
18963 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm5));
18987 IRExpr* ea = binop(Iop_Add32, getIRegT(13), mkU32(imm8 * 4));
20194 IRExpr* data = NULL;
20362 IRExpr* data = NULL;
20523 IRExpr* data = NULL;
20776 IRExpr* ea
21118 IRExpr* res
21140 IRExpr* res
21681 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
21704 IRExpr* address = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
21725 IRExpr* address = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
21726 IRExpr* data = unop(Iop_32to8, llGetIReg(rT));
21753 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
21782 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
21805 IRExpr* address = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
21806 IRExpr* data = unop(Iop_32to16, llGetIReg(rT));
21828 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
21852 IRExpr* ea = binop(Iop_Add32, getIRegT(rN), mkU32(imm8));
22209 static IRExpr* mk_InterleaveLO16x4 ( IRTemp a3210, IRTemp b3210 )
22218 static IRExpr* mk_InterleaveHI16x4 ( IRTemp a3210, IRTemp b3210 )
22227 static IRExpr* mk_CatEvenLanes16x4 ( IRTemp a3210, IRTemp b3210 )
22236 static IRExpr* mk_CatOddLanes16x4 ( IRTemp a3210, IRTemp b3210 )
22245 static IRExpr* mk_InterleaveOddLanes16x4 ( IRTemp a3210, IRTemp b3210 )
22254 static IRExpr* mk_InterleaveEvenLanes16x4 ( IRTemp a3210, IRTemp b3210 )
22347 static IRExpr* mk_InterleaveLO8x8 ( IRTemp a76543210, IRTemp b76543210 )
22356 static IRExpr* mk_InterleaveHI8x8 ( IRTemp a76543210, IRTemp b76543210 )
22365 static IRExpr* mk_CatEvenLanes8x8 ( IRTemp a76543210, IRTemp b76543210 )
22374 static IRExpr
22383 static IRExpr* mk_InterleaveEvenLanes8x8 ( IRTemp a76543210, IRTemp b76543210 )
22392 static IRExpr* mk_InterleaveOddLanes8x8 ( IRTemp a76543210, IRTemp b76543210 )
22401 static IRExpr* mk_InterleaveLO32x2 ( IRTemp a10, IRTemp b10 )
22408 static IRExpr* mk_InterleaveHI32x2 ( IRTemp a10, IRTemp b10 )