Home | History | Annotate | Download | only in priv

Lines Matching refs:IRTemp

230 static IRTemp newTemp ( IRType ty )
243 static void assign ( IRTemp dst, IRExpr* e )
263 static IRExpr* mkexpr ( IRTemp tmp )
1480 IRTemp oldTmp = newTemp(tyE);
1481 IRTemp expTmp = newTemp(tyE);
1645 void setFlags_DEP1_DEP2 ( IROp op8, IRTemp dep1, IRTemp dep2, IRType ty )
1670 void setFlags_DEP1 ( IROp op8, IRTemp dep1, IRType ty )
1698 IRTemp res,
1699 IRTemp resUS,
1701 IRTemp guard )
1744 static void setFlags_INC_DEC ( Bool inc, IRTemp res, IRType ty )
1769 void setFlags_MUL ( IRType ty, IRTemp arg1, IRTemp arg2, ULong base_op )
1859 IRTemp tres, IRTemp ta1, IRTemp ta2,
1861 IRTemp taddr, IRTemp texpVal, Addr32 restart_point )
1865 IRTemp oldc = newTemp(Ity_I64);
1866 IRTemp oldcn = newTemp(ty);
1918 IRTemp tres, IRTemp ta1, IRTemp ta2,
1920 IRTemp taddr, IRTemp texpVal, Addr32 restart_point )
1924 IRTemp oldc = newTemp(Ity_I64);
1925 IRTemp oldcn = newTemp(ty);
2079 static void jmp_treg( IRJumpKind kind, IRTemp t )
2114 IRTemp new_rsp, IRTemp nia, HChar* who )
2198 //.. IRTemp ldt_ptr, gdt_ptr, seg_selector, r64;
2274 static IRTemp disAMode_copy2tmp ( IRExpr* addr64 )
2276 IRTemp tmp = newTemp(Ity_I64);
2282 IRTemp disAMode ( /*OUT*/Int* len,
2673 IRTemp dst1 = newTemp(ty);
2674 IRTemp src = newTemp(ty);
2675 IRTemp dst0 = newTemp(ty);
2677 IRTemp addr = IRTemp_INVALID;
2789 IRTemp dst1 = newTemp(ty);
2790 IRTemp src = newTemp(ty);
2791 IRTemp dst0 = newTemp(ty);
2793 IRTemp addr = IRTemp_INVALID;
2929 IRTemp addr = disAMode ( &len, vbi, pfx, delta0, dis_buf, 0 );
2975 IRTemp addr = disAMode ( &len, vbi, pfx, delta0, dis_buf, 0 );
2996 IRTemp dst0 = newTemp(ty);
2997 IRTemp src = newTemp(ty);
2998 IRTemp dst1 = newTemp(ty);
3059 IRTemp addr = disAMode ( &len, vbi, pfx, delta, dis_buf, 0 );
3075 the 64 / 32 / 16 / 8 bit quantity in the given IRTemp. */
3077 void codegen_div ( Int sz, IRTemp t, Bool signed_divide )
3083 IRTemp src128 = newTemp(Ity_I128);
3084 IRTemp dst128 = newTemp(Ity_I128);
3094 IRTemp src64 = newTemp(Ity_I64);
3095 IRTemp dst64 = newTemp(Ity_I64);
3149 IRTemp dst1 = newTemp(ty);
3150 IRTemp src = newTemp(ty);
3151 IRTemp dst0 = newTemp(ty);
3152 IRTemp addr = IRTemp_INVALID;
3262 IRTemp dst0 = newTemp(ty);
3263 IRTemp dst1 = newTemp(ty);
3264 IRTemp addr = IRTemp_INVALID;
3307 IRTemp new_value = newTemp(Ity_I64);
3308 IRTemp new_rflags = newTemp(Ity_I64);
3309 IRTemp old_rflags = newTemp(Ity_I64);
3353 IRTemp pre64 = newTemp(Ity_I64);
3354 IRTemp res64 = newTemp(Ity_I64);
3355 IRTemp res64ss = newTemp(Ity_I64);
3356 IRTemp shift_amt = newTemp(Ity_I8);
3414 IRTemp rot_amt = newTemp(Ity_I8);
3415 IRTemp rot_amt64 = newTemp(Ity_I8);
3416 IRTemp oldFlags = newTemp(Ity_I64);
3531 IRTemp t2 = newTemp(Ity_I64);
3532 IRTemp t2m = newTemp(Ity_I64);
3533 IRTemp t_addr = IRTemp_INVALID;
3635 value in RAX/EAX/AX/AL by the given IRTemp, and park the result in
3639 IRTemp tmp, HChar* tmp_txt )
3642 IRTemp t1 = newTemp(ty);
3648 IRTemp res128 = newTemp(Ity_I128);
3649 IRTemp resHi = newTemp(Ity_I64);
3650 IRTemp resLo = newTemp(Ity_I64);
3662 IRTemp res64 = newTemp(Ity_I64);
3663 IRTemp resHi = newTemp(Ity_I32);
3664 IRTemp resLo = newTemp(Ity_I32);
3676 IRTemp res32 = newTemp(Ity_I32);
3677 IRTemp resHi = newTemp(Ity_I16);
3678 IRTemp resLo = newTemp(Ity_I16);
3690 IRTemp res16 = newTemp(Ity_I16);
3691 IRTemp resHi = newTemp(Ity_I8);
3692 IRTemp resLo = newTemp(Ity_I8);
3719 IRTemp addr;
3721 IRTemp t1 = newTemp(ty);
3722 IRTemp dst1, src, dst0;
3883 IRTemp t1 = newTemp(ty);
3884 IRTemp t2 = newTemp(ty);
3910 IRTemp addr = disAMode ( &alen, vbi, pfx, delta, dis_buf, 0 );
3953 IRTemp addr = IRTemp_INVALID;
3955 IRTemp t1 = newTemp(ty);
3956 IRTemp t2 = IRTemp_INVALID;
3957 IRTemp t3 = IRTemp_INVALID;
4104 void dis_string_op_increment ( Int sz, IRTemp t_inc )
4121 void dis_string_op( void (*dis_OP)( Int, IRTemp, Prefix pfx ),
4124 IRTemp t_inc = newTemp(Ity_I64);
4134 void dis_MOVS ( Int sz, IRTemp t_inc, Prefix pfx )
4137 IRTemp td = newTemp(Ity_I64); /* RDI */
4138 IRTemp ts = newTemp(Ity_I64); /* RSI */
4162 void dis_LODS ( Int sz, IRTemp t_inc, Prefix pfx )
4165 IRTemp ts = newTemp(Ity_I64); /* RSI */
4182 void dis_STOS ( Int sz, IRTemp t_inc, Prefix pfx )
4185 IRTemp ta = newTemp(ty); /* rAX */
4186 IRTemp td = newTemp(Ity_I64); /* RDI */
4205 void dis_CMPS ( Int sz, IRTemp t_inc, Prefix pfx )
4208 IRTemp tdv = newTemp(ty); /* (RDI) */
4209 IRTemp tsv = newTemp(ty); /* (RSI) */
4210 IRTemp td = newTemp(Ity_I64); /* RDI */
4211 IRTemp ts = newTemp(Ity_I64); /* RSI */
4239 void dis_SCAS ( Int sz, IRTemp t_inc, Prefix pfx )
4242 IRTemp ta = newTemp(ty); /* rAX */
4243 IRTemp td = newTemp(Ity_I64); /* RDI */
4244 IRTemp tdv = newTemp(ty); /* (RDI) */
4270 void (*dis_OP)(Int, IRTemp, Prefix),
4274 IRTemp t_inc = newTemp(Ity_I64);
4275 IRTemp tc;
4329 IRTemp te = newTemp(ty);
4330 IRTemp tg = newTemp(ty);
4331 IRTemp resLo = newTemp(ty);
4337 IRTemp addr = disAMode( &alen, vbi, pfx, delta0, dis_buf, 0 );
4374 IRTemp te = newTemp(ty);
4375 IRTemp tl = newTemp(ty);
4376 IRTemp resLo = newTemp(ty);
4384 IRTemp addr = disAMode( &alen, vbi, pfx, delta, dis_buf,
4410 IRTemp, and return a new IRTemp holding the result. 'ty' may be
4412 static IRTemp gen_POPCOUNT ( IRType ty, IRTemp src )
4416 IRTemp old = IRTemp_INVALID;
4417 IRTemp nyu = IRTemp_INVALID;
4418 IRTemp mask[4], shift[4];
4443 IRTemp old = IRTemp_INVALID;
4444 IRTemp nyu = IRTemp_INVALID;
4445 IRTemp mask[5], shift[5];
4471 IRTemp old = IRTemp_INVALID;
4472 IRTemp nyu = IRTemp_INVALID;
4473 IRTemp mask[6], shift[6];
4505 the supplied IRTemp, and return a new IRTemp holding the result.
4509 static IRTemp gen_LZCNT ( IRType ty, IRTemp src )
4513 IRTemp src64 = newTemp(Ity_I64);
4516 IRTemp src64x = newTemp(Ity_I64);
4523 IRTemp res64 = newTemp(Ity_I64);
4532 IRTemp res = newTemp(ty);
4751 void fp_do_op_mem_ST_0 ( IRTemp addr, HChar* op_txt, HChar* dis_buf,
4777 void fp_do_oprev_mem_ST_0 ( IRTemp addr, HChar* op_txt, HChar* dis_buf,
4866 IRTemp t32 = newTemp(Ity_I32);
4887 IRTemp t1, t2;
4901 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
5038 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
5066 IRTemp ew = newTemp(Ity_I32);
5067 IRTemp w64 = newTemp(Ity_I64);
5130 IRTemp t64 = newTemp(Ity_I64);
5131 IRTemp ew = newTemp(Ity_I32);
5367 IRTemp argF = newTemp(Ity_F64);
5368 IRTemp sigF = newTemp(Ity_F64);
5369 IRTemp expF = newTemp(Ity_F64);
5370 IRTemp argI = newTemp(Ity_I64);
5371 IRTemp sigI = newTemp(Ity_I64);
5372 IRTemp expI = newTemp(Ity_I64);
5403 IRTemp a1 = newTemp(Ity_F64);
5404 IRTemp a2 = newTemp(Ity_F64);
5430 IRTemp a1 = newTemp(Ity_F64);
5431 IRTemp a2 = newTemp(Ity_F64);
5470 IRTemp a1 = newTemp(Ity_F64);
5534 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
5666 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
5703 IRTemp val = newTemp(Ity_I64);
5882 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
5991 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6023 //.. IRTemp ew = newTemp(Ity_I32);
6209 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6329 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6519 IRTemp res = newTemp(Ity_I64);
6612 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6661 IRTemp addr;
6664 IRTemp g0 = newTemp(Ity_I64);
6665 IRTemp g1 = newTemp(Ity_I64);
6666 IRTemp amt = newTemp(Ity_I64);
6667 IRTemp amt8 = newTemp(Ity_I8);
6736 IRTemp e0 = newTemp(Ity_I64);
6737 IRTemp e1 = newTemp(Ity_I64);
6816 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6838 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6862 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6881 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6905 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
6924 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
7130 IRTemp addr = newTemp(Ity_I64);
7131 IRTemp regD = newTemp(Ity_I64);
7132 IRTemp regM = newTemp(Ity_I64);
7133 IRTemp mask = newTemp(Ity_I64);
7134 IRTemp olddata = newTemp(Ity_I64);
7135 IRTemp newdata = newTemp(Ity_I64);
7181 IRExpr* shiftL64_with_extras ( IRTemp base, IRTemp xtra, IRTemp amt )
7202 IRExpr* shiftR64_with_extras ( IRTemp xtra, IRTemp base, IRTemp amt )
7238 IRTemp gsrc = newTemp(ty);
7239 IRTemp esrc = newTemp(ty);
7240 IRTemp addr = IRTemp_INVALID;
7241 IRTemp tmpSH = newTemp(Ity_I8);
7242 IRTemp tmpSS = newTemp(Ity_I8);
7243 IRTemp tmp64 = IRTemp_INVALID;
7244 IRTemp res64 = IRTemp_INVALID;
7245 IRTemp rss64 = IRTemp_INVALID;
7246 IRTemp resTy = IRTemp_INVALID;
7247 IRTemp rssTy = IRTemp_INVALID;
7414 IRTemp t_fetched, t_bitno0, t_bitno1, t_bitno2, t_addr0,
7574 IRTemp src = newTemp(ty);
7575 IRTemp dst = newTemp(ty);
7576 IRTemp src64 = newTemp(Ity_I64);
7577 IRTemp dst64 = newTemp(Ity_I64);
7578 IRTemp src8 = newTemp(Ity_I8);
7589 IRTemp addr = disAMode( &len, vbi, pfx, delta, dis_buf, 0 );
7686 IRTemp t1 = newTemp(ty);
7687 IRTemp t2 = newTemp(ty);
7723 IRTemp oldflags = newTemp(Ity_I64);
7749 IRTemp flags = newTemp(Ity_I64);
7775 IRTemp acc = newTemp(ty);
7776 IRTemp src = newTemp(ty);
7777 IRTemp dest = newTemp(ty);
7778 IRTemp dest2 = newTemp(ty);
7779 IRTemp acc2 = newTemp(ty);
7780 IRTemp cond8 = newTemp(Ity_I8);
7781 IRTemp addr = IRTemp_INVALID;
7884 IRTemp tmps = newTemp(ty);
7885 IRTemp tmpd = newTemp(ty);
7905 IRTemp addr = disAMode ( &len, vbi, pfx, delta0, dis_buf, 0 );
7934 IRTemp tmpd = newTemp(ty);
7935 IRTemp tmpt0 = newTemp(ty);
7936 IRTemp tmpt1 = newTemp(ty);
7966 IRTemp addr = disAMode ( &len, vbi, pfx, delta0, dis_buf, 0 );
7981 IRTemp addr = disAMode ( &len, vbi, pfx, delta0, dis_buf, 0 );
8005 //.. IRTemp addr;
8030 //.. IRTemp addr;
8056 //.. IRTemp t1 = newTemp(Ity_I16);
8057 //.. IRTemp ta = newTemp(Ity_I32);
8071 //.. IRTemp t1 = newTemp(Ity_I16);
8072 //.. IRTemp ta = newTemp(Ity_I32);
8086 IRTemp t1 = newTemp(Ity_I64);
8087 IRTemp t2 = newTemp(Ity_I64);
8088 IRTemp t3 = newTemp(Ity_I64);
8115 IRTemp addr;
8170 IRTemp addr;
8184 IRTemp epart = newTemp(Ity_V128);
8206 IRTemp addr;
8220 IRTemp epart = newTemp(Ity_V128);
8244 IRTemp addr;
8277 IRTemp addr;
8279 IRTemp oldG0 = newTemp(Ity_V128);
8280 IRTemp oldG1 = newTemp(Ity_V128);
8321 IRTemp addr;
8323 IRTemp oldG0 = newTemp(Ity_V128);
8324 IRTemp oldG1 = newTemp(Ity_V128);
8366 IRTemp addr;
8451 IRTemp addr;
8454 IRTemp plain = newTemp(Ity_V128);
8515 IRTemp addr;
8518 IRTemp g0 = newTemp(Ity_V128);
8519 IRTemp g1 = newTemp(Ity_V128);
8520 IRTemp amt = newTemp(Ity_I32);
8521 IRTemp amt8 = newTemp(Ity_I8);
8591 IRTemp e0 = newTemp(Ity_V128);
8592 IRTemp e1 = newTemp(Ity_V128);
8658 static void breakup128to32s ( IRTemp t128,
8660 IRTemp* t3, IRTemp* t2,
8661 IRTemp* t1, IRTemp* t0 )
8663 IRTemp hi64 = newTemp(Ity_I64);
8664 IRTemp lo64 = newTemp(Ity_I64);
8685 static IRExpr* mk128from32s ( IRTemp t3, IRTemp t2,
8686 IRTemp t1, IRTemp t0 )
8697 static void breakup64to16s ( IRTemp t64,
8699 IRTemp* t3, IRTemp* t2,
8700 IRTemp* t1, IRTemp* t0 )
8702 IRTemp hi32 = newTemp(Ity_I32);
8703 IRTemp lo32 = newTemp(Ity_I32);
8724 static IRExpr* mk64from16s ( IRTemp t3, IRTemp t2,
8725 IRTemp t1, IRTemp t0 )
8742 IRTemp aa = newTemp(Ity_I64);
8743 IRTemp bb = newTemp(Ity_I64);
8744 IRTemp aahi32s = newTemp(Ity_I64);
8745 IRTemp aalo32s = newTemp(Ity_I64);
8746 IRTemp bbhi32s = newTemp(Ity_I64);
8747 IRTemp bblo32s = newTemp(Ity_I64);
8748 IRTemp rHi = newTemp(Ity_I64);
8749 IRTemp rLo = newTemp(Ity_I64);
8750 IRTemp one32x2 = newTemp(Ity_I64);
8815 IRTemp aa = newTemp(Ity_I64);
8816 IRTemp bb = newTemp(Ity_I64);
8817 IRTemp zero = newTemp(Ity_I64);
8818 IRTemp bbNeg = newTemp(Ity_I64);
8819 IRTemp negMask = newTemp(Ity_I64);
8820 IRTemp posMask = newTemp(Ity_I64);
8856 IRTemp aa = newTemp(Ity_I64);
8857 IRTemp zero = newTemp(Ity_I64);
8858 IRTemp aaNeg = newTemp(Ity_I64);
8859 IRTemp
8860 IRTemp posMask = newTemp(Ity_I64);
8882 static IRExpr* dis_PALIGNR_XMM_helper ( IRTemp hi64,
8883 IRTemp lo64, Long byteShift )
8901 static void gen_SEGV_if_not_16_aligned ( IRTemp effective_addr )
9065 IRTemp addr, t0, t1, t2, t3, t4, t5, t6;
9461 IRTemp argL = newTemp(Ity_F32);
9462 IRTemp argR = newTemp(Ity_F32);
9501 IRTemp arg64 = newTemp(Ity_I64);
9502 IRTemp rmode = newTemp(Ity_I32);
9544 IRTemp rmode = newTemp(Ity_I32);
9549 IRTemp arg32 = newTemp(Ity_I32);
9569 IRTemp arg64 = newTemp(Ity_I64);
9598 IRTemp dst64 = newTemp(Ity_I64);
9599 IRTemp rmode = newTemp(Ity_I32);
9600 IRTemp f32lo = newTemp(Ity_F32);
9601 IRTemp f32hi = newTemp(Ity_F32);
9663 IRTemp rmode = newTemp(Ity_I32);
9664 IRTemp f32lo = newTemp(Ity_F32);
9724 IRTemp t64 = newTemp(Ity_I64);
9725 IRTemp ew = newTemp(Ity_I32);
10122 IRTemp sV = newTemp(Ity_I64);
10318 IRTemp sV, dV, s3, s2, s1, s0;
10402 IRTemp sV, dV;
10403 IRTemp s3, s2, s1, s0, d3, d2, d1, d0;
10508 IRTemp sV, dV;
10509 IRTemp s3, s2, s1, s0, d3, d2, d1, d0;
10607 IRTemp argL = newTemp(Ity_F64);
10608 IRTemp argR = newTemp(Ity_F64);
10644 IRTemp arg64 = newTemp(Ity_I64);
10678 IRTemp argV = newTemp(Ity_V128);
10679 IRTemp rmode = newTemp(Ity_I32);
10721 IRTemp argV = newTemp(Ity_V128);
10722 IRTemp rmode = newTemp(Ity_I32);
10774 IRTemp dst64 = newTemp(Ity_I64);
10775 IRTemp rmode = newTemp(Ity_I32);
10776 IRTemp f64lo = newTemp(Ity_F64);
10777 IRTemp f64hi = newTemp(Ity_F64);
10828 IRTemp argV = newTemp(Ity_V128);
10829 IRTemp rmode = newTemp(Ity_I32);
10871 IRTemp arg64 = newTemp(Ity_I64);
10915 IRTemp argV = newTemp(Ity_V128);
10916 IRTemp rmode = newTemp(Ity_I32);
10963 IRTemp f32lo = newTemp(Ity_F32);
10964 IRTemp f32hi = newTemp(Ity_F32);
11006 IRTemp rmode = newTemp(Ity_I32);
11007 IRTemp f64lo = newTemp(Ity_F64);
11048 IRTemp rmode = newTemp(Ity_I32);
11049 IRTemp f64lo = newTemp(Ity_F64);
11084 IRTemp arg32 = newTemp(Ity_I32);
11102 IRTemp arg64 = newTemp(Ity_I64);
11133 IRTemp f32lo = newTemp(Ity_F32);
11521 IRTemp regD = newTemp(Ity_V128);
11522 IRTemp mask = newTemp(Ity_V128);
11523 IRTemp olddata = newTemp(Ity_V128);
11524 IRTemp newdata = newTemp(Ity_V128);
11718 IRTemp sV = newTemp(Ity_V128);
11719 IRTemp dV = newTemp(Ity_V128);
11720 IRTemp s1 = newTemp(Ity_I64);
11721 IRTemp s0 = newTemp(Ity_I64);
11722 IRTemp d1 = newTemp(Ity_I64);
11723 IRTemp d0 = newTemp(Ity_I64);
11801 IRTemp s1 = newTemp(Ity_I64);
11802 IRTemp s0 = newTemp(Ity_I64);
11803 IRTemp d1 = newTemp(Ity_I64);
11804 IRTemp d0 = newTemp(Ity_I64);
11805 IRTemp sV = newTemp(Ity_V128);
11806 IRTemp dV = newTemp(Ity_V128);
12098 IRTemp s1V = newTemp(Ity_V128);
12099 IRTemp s2V = newTemp(Ity_V128);
12100 IRTemp dV = newTemp(Ity_V128);
12101 IRTemp s1Hi = newTemp(Ity_I64);
12102 IRTemp s1Lo = newTemp(Ity_I64);
12103 IRTemp s2Hi = newTemp(Ity_I64);
12104 IRTemp s2Lo = newTemp(Ity_I64);
12105 IRTemp dHi = newTemp(Ity_I64);
12106 IRTemp dLo = newTemp(Ity_I64);
12232 IRTemp sV = newTemp(Ity_I64);
12233 IRTemp dV = newTemp(Ity_I64);
12268 IRTemp sV, dV;
12269 IRTemp s3, s2, s1, s0, d3, d2, d1, d0;
12312 IRTemp s1V = newTemp(Ity_V128);
12313 IRTemp s2V = newTemp(Ity_V128);
12314 IRTemp dV = newTemp(Ity_V128);
12315 IRTemp s1Hi = newTemp(Ity_I64);
12316 IRTemp s1Lo = newTemp(Ity_I64);
12317 IRTemp s2Hi = newTemp(Ity_I64);
12318 IRTemp s2Lo = newTemp(Ity_I64);
12319 IRTemp dHi = newTemp(Ity_I64);
12320 IRTemp dLo = newTemp(Ity_I64);
12360 IRTemp sV, dV, s3, s2, s1, s0;
12400 IRTemp sVhi, dVhi, sV, dV, s3, s2, s1, s0;
12446 IRTemp sVlo, dVlo, sV, dV, s3, s2, s1, s0;
12509 IRTemp sV, dV, hi64, lo64, hi64r, lo64r;
12651 IRTemp sV, dV, hi64, lo64, hi64r, lo64r;
12956 IRTemp s3, s2, s1, s0;
12957 IRTemp sV = newTemp(Ity_V128);
12990 IRTemp sV = newTemp(Ity_V128);
12991 IRTemp d0 = newTemp(Ity_I64);
13016 IRTemp a3, a2, a1, a0, s3, s2, s1, s0;
13017 IRTemp eV = newTemp(Ity_V128);
13018 IRTemp gV = newTemp(Ity_V128);
13019 IRTemp addV = newTemp(Ity_V128);
13020 IRTemp subV = newTemp(Ity_V128);
13052 IRTemp eV = newTemp(Ity_V128);
13053 IRTemp gV = newTemp(Ity_V128);
13054 IRTemp addV = newTemp(Ity_V128);
13055 IRTemp subV = newTemp(Ity_V128);
13056 IRTemp a1 = newTemp(Ity_I64);
13057 IRTemp s0 = newTemp(Ity_I64);
13090 IRTemp e3, e2, e1, e0, g3, g2, g1, g0;
13091 IRTemp eV = newTemp(Ity_V128);
13092 IRTemp gV = newTemp(Ity_V128);
13093 IRTemp leftV = newTemp(Ity_V128);
13094 IRTemp rightV = newTemp(Ity_V128);
13131 IRTemp e1 = newTemp(Ity_I64);
13132 IRTemp e0 = newTemp(Ity_I64);
13133 IRTemp g1 = newTemp(Ity_I64);
13134 IRTemp g0 = newTemp(Ity_I64);
13135 IRTemp eV = newTemp(Ity_V128);
13136 IRTemp gV = newTemp(Ity_V128);
13137 IRTemp leftV = newTemp(Ity_V128);
13138 IRTemp rightV = newTemp(Ity_V128);
13202 IRTemp sV = newTemp(Ity_I64);
13203 IRTemp dV = newTemp(Ity_I64);
13204 IRTemp sVoddsSX = newTemp(Ity_I64);
13205 IRTemp sVevensSX = newTemp(Ity_I64);
13206 IRTemp dVoddsZX = newTemp(Ity_I64);
13207 IRTemp dVevensZX = newTemp(Ity_I64);
13255 IRTemp sV = newTemp(Ity_V128);
13256 IRTemp dV = newTemp(Ity_V128);
13257 IRTemp sVoddsSX = newTemp(Ity_V128);
13258 IRTemp sVevensSX = newTemp(Ity_V128);
13259 IRTemp dVoddsZX = newTemp(Ity_V128);
13260 IRTemp dVevensZX = newTemp(Ity_V128);
13326 IRTemp sV = newTemp(Ity_I64);
13327 IRTemp dV = newTemp(Ity_I64);
13393 IRTemp sV = newTemp(Ity_V128);
13394 IRTemp dV = newTemp(Ity_V128);
13395 IRTemp sHi = newTemp(Ity_I64);
13396 IRTemp sLo = newTemp(Ity_I64);
13397 IRTemp dHi = newTemp(Ity_I64);
13398 IRTemp dLo = newTemp(Ity_I64);
13461 IRTemp sV = newTemp(Ity_I64);
13462 IRTemp dV = newTemp(Ity_I64);
13493 IRTemp sV = newTemp(Ity_V128);
13494 IRTemp dV = newTemp(Ity_V128);
13495 IRTemp sHi = newTemp(Ity_I64);
13496 IRTemp sLo = newTemp(Ity_I64);
13497 IRTemp dHi = newTemp(Ity_I64);
13498 IRTemp dLo = newTemp(Ity_I64);
13539 IRTemp sV = newTemp(Ity_I64);
13540 IRTemp dV = newTemp(Ity_I64);
13582 IRTemp sV = newTemp(Ity_V128);
13583 IRTemp dV = newTemp(Ity_V128);
13584 IRTemp sHi = newTemp(Ity_I64);
13585 IRTemp sLo = newTemp(Ity_I64);
13586 IRTemp dHi = newTemp(Ity_I64);
13587 IRTemp dLo = newTemp(Ity_I64);
13637 IRTemp sV = newTemp(Ity_I64);
13678 IRTemp sV = newTemp(Ity_V128);
13679 IRTemp sHi = newTemp(Ity_I64);
13680 IRTemp sLo = newTemp(Ity_I64);
13723 IRTemp sV = newTemp(Ity_I64);
13724 IRTemp dV = newTemp(Ity_I64);
13725 IRTemp res = newTemp(Ity_I64);
13778 IRTemp sV = newTemp(Ity_V128);
13779 IRTemp dV = newTemp(Ity_V128);
13780 IRTemp sHi = newTemp(Ity_I64);
13781 IRTemp sLo = newTemp(Ity_I64);
13782 IRTemp dHi = newTemp(Ity_I64);
13783 IRTemp dLo = newTemp(Ity_I64);
13784 IRTemp rHi = newTemp(Ity_I64);
13785 IRTemp rLo = newTemp(Ity_I64);
13863 IRTemp sV = newTemp(Ity_I64);
13864 IRTemp dV = newTemp(Ity_I64);
13904 IRTemp sV = newTemp(Ity_V128);
13905 IRTemp dV = newTemp(Ity_V128);
13906 IRTemp sHi = newTemp(Ity_I64);
13907 IRTemp sLo = newTemp(Ity_I64);
13908 IRTemp dHi = newTemp(Ity_I64);
13909 IRTemp dLo = newTemp(Ity_I64);
13910 IRTemp rHi = newTemp(Ity_I64);
13911 IRTemp rLo = newTemp(Ity_I64);
13912 IRTemp sevens = newTemp(Ity_I64);
13913 IRTemp mask0x80hi = newTemp(Ity_I64);
13914 IRTemp mask0x80lo = newTemp(Ity_I64);
13915 IRTemp maskBit3hi = newTemp(Ity_I64);
13916 IRTemp maskBit3lo = newTemp(Ity_I64);
13917 IRTemp sAnd7hi = newTemp(Ity_I64);
13918 IRTemp sAnd7lo = newTemp(Ity_I64);
13919 IRTemp permdHi = newTemp(Ity_I64);
13920 IRTemp permdLo = newTemp(Ity_I64);
14030 IRTemp dst_vec = newTemp(Ity_V128);
14031 IRTemp src_vec = newTemp(Ity_V128);
14032 IRTemp imm8_mask = newTemp(Ity_V128);
14081 IRTemp dst_vec = newTemp(Ity_V128);
14082 IRTemp src_vec = newTemp(Ity_V128);
14109 IRTemp imm8_mask = newTemp(Ity_V128);
14129 IRTemp dst_vec = newTemp(Ity_V128);
14130 IRTemp src_vec = newTemp(Ity_V128);
14162 IRTemp imm16_mask = newTemp(Ity_V128);
14184 IRTemp svec = newTemp(Ity_V128);
14185 IRTemp dvec = newTemp(Ity_V128);
14228 IRTemp res = newTemp(Ity_V128);
14242 IRTemp src_vec = newTemp(Ity_V128);
14243 IRTemp dst_vec = newTemp(Ity_V128);
14244 IRTemp and_vec = newTemp(Ity_V128);
14245 IRTemp sum_vec = newTemp(Ity_V128);
14301 IRTemp xmm1_vec = newTemp(Ity_V128);
14302 IRTemp xmm2_vec = newTemp(Ity_V128);
14303 IRTemp tmp_prod_vec = newTemp(Ity_V128);
14304 IRTemp prod_vec = newTemp(Ity_V128);
14305 IRTemp sum_vec = newTemp(Ity_V128);
14306 IRTemp v3, v2, v1, v0;
14371 IRTemp dstVec = newTemp(Ity_V128);
14372 IRTemp srcDWord = newTemp(Ity_I32);
14379 IRTemp src_vec = newTemp(Ity_V128);
14382 IRTemp src_lane_0 = IRTemp_INVALID;
14383 IRTemp src_lane_1 = IRTemp_INVALID;
14384 IRTemp src_lane_2 = IRTemp_INVALID;
14385 IRTemp src_lane_3 = IRTemp_INVALID;
14414 IRTemp dst_lane_0 = IRTemp_INVALID;
14415 IRTemp dst_lane_1 = IRTemp_INVALID;
14416 IRTemp dst_lane_2 = IRTemp_INVALID;
14417 IRTemp dst_lane_3 = IRTemp_INVALID;
14431 IRTemp zero_32 = newTemp(Ity_I32);
14453 IRTemp xmm_vec = newTemp(Ity_V128);
14454 IRTemp sel_lane = newTemp(Ity_I32);
14455 IRTemp shr_lane = newTemp(Ity_I32);
14506 IRTemp xmm_vec = newTemp(Ity_V128);
14507 IRTemp src_dword = newTemp(Ity_I32);
14554 IRTemp xmm_vec = newTemp(Ity_V128);
14555 IRTemp src_qword = newTemp(Ity_I64);
14596 IRTemp xmm_vec = newTemp(Ity_V128);
14597 IRTemp src_word = newTemp(Ity_I16);
14646 IRTemp src_elems = newTemp(Ity_I64);
14647 IRTemp src_vec = newTemp(Ity_V128);
14693 IRTemp src_elems = newTemp(Ity_I32);
14694 IRTemp src_vec = newTemp(Ity_V128);
14695 IRTemp z32 = newTemp(Ity_I32);
14750 IRTemp new8 = newTemp(Ity_I64);
14775 IRTemp tmp128 = newTemp(Ity_V128);
14776 IRTemp halfshift = newTemp(Ity_I64);
14808 IRTemp xmm_vec = newTemp(Ity_V128);
14809 IRTemp src_dword = newTemp(Ity_I32);
14940 IRTemp srcVec = newTemp(Ity_V128);
14978 IRTemp srcVec = newTemp(Ity_V128);
14995 IRTemp zeroVec = newTemp(Ity_V128);
15020 IRTemp srcBytes = newTemp(Ity_I16);
15056 IRTemp srcVec = newTemp(Ity_V128);
15094 IRTemp srcBytes = newTemp(Ity_I32);
15129 IRTemp srcBytes = newTemp(Ity_I64);
15164 IRTemp srcVec = newTemp(Ity_V128);
15197 IRTemp srcVec = newTemp(Ity_V128);
15214 IRTemp zeroVec = newTemp(Ity_V128);
15235 IRTemp srcVec = newTemp(Ity_V128);
15253 IRTemp zeroVec = newTemp(Ity_V128);
15276 IRTemp srcVec = newTemp(Ity_V128);
15310 IRTemp srcVec = newTemp(Ity_V128);
15327 IRTemp zeroVec = newTemp( Ity_V128 );
15348 IRTemp srcVec = newTemp(Ity_V128);
15382 IRTemp argL = newTemp(Ity_V128);
15383 IRTemp argR = newTemp(Ity_V128);
15416 IRTemp src = newTemp(ty);
15431 IRTemp result = gen_POPCOUNT(ty, src);
15461 IRTemp src = newTemp(isD ? Ity_F64 : Ity_F32);
15462 IRTemp res = newTemp(isD ? Ity_F64 : Ity_F32);
15512 IRTemp src0 = newTemp(Ity_F64);
15513 IRTemp src1 = newTemp(Ity_F64);
15514 IRTemp res0 = newTemp(Ity_F64);
15515 IRTemp res1 = newTemp(Ity_F64);
15516 IRTemp rm = newTemp(Ity_I32);
15567 IRTemp src0 = newTemp(Ity_F32);
15568 IRTemp src1 = newTemp(Ity_F32);
15569 IRTemp src2 = newTemp(Ity_F32);
15570 IRTemp src3 = newTemp(Ity_F32);
15571 IRTemp res0 = newTemp(Ity_F32);
15572 IRTemp res1 = newTemp(Ity_F32);
15573 IRTemp res2 = newTemp(Ity_F32);
15574 IRTemp res3 = newTemp(Ity_F32);
15575 IRTemp rm = newTemp(Ity_I32);
15642 IRTemp src = newTemp(ty);
15657 IRTemp res = gen_LZCNT(ty, src);
15664 IRTemp src64 = newTemp(Ity_I64);
15665 IRTemp res64 = newTemp(Ity_I64);
15669 IRTemp oszacp = newTemp(Ity_I64);
15764 IRTemp resT = newTemp(Ity_I64);
15825 IRTemp vecE = newTemp(Ity_V128);
15826 IRTemp vecG = newTemp(Ity_V128);
15850 IRTemp andV = newTemp(Ity_V128);
15851 IRTemp andnV = newTemp(Ity_V128);
15869 IRTemp and64 = newTemp(Ity_I64);
15870 IRTemp andn64 = newTemp(Ity_I64);
15897 IRTemp z64 = newTemp(Ity_I64);
15898 IRTemp c64 = newTemp(Ity_I64);
15921 IRTemp newOSZACP = newTemp(Ity_I64);
15964 IRTemp vecE = newTemp(Ity_V128);
15965 IRTemp vecG = newTemp(Ity_V128);
15966 IRTemp vec0 = newTemp(Ity_V128);
15989 IRTemp sh = newTemp(Ity_I8);
15992 IRTemp mask = newTemp(Ity_V128);
15995 IRTemp notmask = newTemp(Ity_V128);
16022 IRTemp valE = newTemp(tyE);
16041 IRTemp valG0 = newTemp(Ity_I64);
16058 IRTemp valG1 = newTemp(Ity_I64);
16076 IRTemp argL = newTemp(Ity_V128);
16077 IRTemp argR = newTemp(Ity_V128);
16110 IRTemp sV, dV;
16111 IRTemp s3, s2, s1, s0, d3, d2, d1, d0;
17996 IRTemp m8 = newTemp(Ity_I64);
17997 IRTemp s8 = newTemp(Ity_I64);
17998 IRTemp m16 = newTemp(Ity_I64);
17999 IRTemp s16 = newTemp(Ity_I64);
18000 IRTemp m32 = newTemp(Ity_I64);
18116 IRTemp expdHi = newTemp(elemTy);
18117 IRTemp expdLo = newTemp(elemTy);
18118 IRTemp dataHi = newTemp(elemTy);
18119 IRTemp dataLo = newTemp(elemTy);
18120 IRTemp oldHi = newTemp(elemTy);
18121 IRTemp oldLo = newTemp(elemTy);
18122 IRTemp flags_old = newTemp(Ity_I64);
18123 IRTemp flags_new = newTemp(Ity_I64);
18124 IRTemp success = newTemp(Ity_I1);
18129 IRTemp expdHi64 = newTemp(Ity_I64);
18130 IRTemp expdLo64 = newTemp(Ity_I64);
18454 IRTemp val = newTemp(Ity_I64);
18867 //static IRTemp gen_LZCNT ( IRType ty, IRTemp src )
18877 // IRTemp t[7];