Lines Matching refs:eA
4454 /* Generate the EA for a "reg + reg" style amode. This is done from
4684 (at-Rn-then-Rn=EA) | | |
4688 (at-EA-then-Rn=EA)
4692 (at-EA)
4773 fmt_str = "%s %s, [%s], #%lld (at-Rn-then-Rn=EA)\n";
4776 fmt_str = "%s %s, [%s, #%lld]! (at-EA-then-Rn=EA)\n";
4798 (at-Rn-then-Rn=EA)
4801 (at-EA-then-Rn=EA)
4804 (at-EA)
4896 fmt_str = "%sp %s, %s, [%s], #%lld (at-Rn-then-Rn=EA)\n";
4899 fmt_str = "%sp %s, %s, [%s, #%lld]! (at-EA-then-Rn=EA)\n";
4927 ULong ea = guest_PC_curr_instr + sx_to_64(imm19 << 2, 21);
4929 putIReg64orZR(rT, loadLE(Ity_I64, mkU64(ea)));
4931 putIReg32orZR(rT, loadLE(Ity_I32, mkU64(ea)));
4933 DIP("ldr %s, 0x%llx (literal)\n", nameIRegOrZR(bX == 1, rT), ea);
4956 IRTemp ea = gen_indexed_EA(dis_buf, insn, True/*to/from int regs*/);
4957 if (ea != IRTemp_INVALID) {
4961 putIReg64orZR(tt, loadLE(Ity_I64, mkexpr(ea)));
4964 storeLE(mkexpr(ea), getIReg64orZR(tt));
4970 putIReg32orZR(tt, loadLE(Ity_I32, mkexpr(ea)));
4973 storeLE(mkexpr(ea), getIReg32orZR(tt));
4980 loadLE(Ity_I16, mkexpr(ea))));
4983 storeLE(mkexpr(ea), unop(Iop_64to16, getIReg64orZR(tt)));
4990 loadLE(Ity_I8, mkexpr(ea))));
4993 storeLE(mkexpr(ea), unop(Iop_64to8, getIReg64orZR(tt)));
5029 IRExpr* ea = binop(Iop_Add64,
5034 putIReg64orZR(tt, unop(Iop_32Sto64, loadLE(Ity_I32, ea)));
5040 putIReg32orZR(tt, unop(Iop_16Sto32, loadLE(Ity_I16, ea)));
5042 putIReg64orZR(tt, unop(Iop_16Sto64, loadLE(Ity_I16, ea)));
5050 putIReg32orZR(tt, unop(Iop_8Sto32, loadLE(Ity_I8, ea)));
5052 putIReg64orZR(tt, unop(Iop_8Sto64, loadLE(Ity_I8, ea)));
5067 /* (at-Rn-then-Rn=EA)
5073 (at-EA-then-Rn=EA)
5079 transfer-at-Rn when [11]==0, at EA when [11]==1
5237 (at-EA, with nontemporal hint)
5240 (at-Rn-then-Rn=EA)
5243 (at-EA)
5246 (at-EA-then-Rn=EA)
5335 fmt_str = "%sp %s, %s, [%s], #%lld (at-Rn-then-Rn=EA)\n";
5338 fmt_str = "%sp %s, %s, [%s, #%lld]! (at-EA-then-Rn=EA)\n";
5378 IRTemp ea = gen_indexed_EA(dis_buf, insn, False/*to/from vec regs*/);
5379 if (ea == IRTemp_INVALID) goto after_LDR_STR_vector_register;
5384 putQRegLO(tt, loadLE(Ity_I8, mkexpr(ea)));
5387 storeLE(mkexpr(ea), getQRegLO(tt, Ity_I8));
5394 putQRegLO(tt, loadLE(Ity_I16, mkexpr(ea)));
5397 storeLE(mkexpr(ea), getQRegLO(tt, Ity_I16));
5404 putQRegLO(tt, loadLE(Ity_I32, mkexpr(ea)));
5407 storeLE(mkexpr(ea), getQRegLO(tt, Ity_I32));
5414 putQRegLO(tt, loadLE(Ity_I64, mkexpr(ea)));
5417 storeLE(mkexpr(ea), getQRegLO(tt, Ity_I64));
5423 putQReg128(tt, loadLE(Ity_V128, mkexpr(ea)));
5426 storeLE(mkexpr(ea), getQReg128(tt));
5455 IRTemp ea = gen_indexed_EA(dis_buf, insn, True/*to/from int regs*/);
5456 if (ea == IRTemp_INVALID) goto after_LDRS_integer_register;
5459 putIReg64orZR(tt, unop(Iop_32Sto64, loadLE(Ity_I32, mkexpr(ea))));
5466 putIReg64orZR(tt, unop(Iop_16Sto64, loadLE(Ity_I16, mkexpr(ea))));
5469 putIReg32orZR(tt, unop(Iop_16Sto32, loadLE(Ity_I16, mkexpr(ea))));
5477 putIReg64orZR(tt, unop(Iop_8Sto64, loadLE(Ity_I8, mkexpr(ea))));
5480 putIReg32orZR(tt, unop(Iop_8Sto32, loadLE(Ity_I8, mkexpr(ea))));
5534 (at-Rn-then-Rn=EA)
5541 (at-EA-then-Rn=EA)
5632 ULong ea = guest_PC_curr_instr + sx_to_64(imm19 << 2, 21);
5635 putQRegLO(tt, loadLE(ty, mkU64(ea)));
5636 DIP("ldr %s, 0x%llx (literal)\n", nameQRegLO(tt, ty), ea);
6325 IRTemp ea = newTemp(Ity_I64);
6326 assign(ea, getIReg64orSP(nn));
6327 /* FIXME generate check that ea is szB-aligned */
6331 stmt(IRStmt_LLSC(Iend_LE, res, mkexpr(ea), NULL/*LL*/));
6346 stmt(IRStmt_LLSC(Iend_LE, res, mkexpr(ea), data));
6377 IRTemp ea = newTemp(Ity_I64);
6378 assign(ea, getIReg64orSP(nn));
6379 /* FIXME generate check that ea is szB-aligned */
6383 assign(res, loadLE(ty, mkexpr(ea)));
6391 storeLE(mkexpr(ea), data);
6408 IRTemp ea = newTemp(Ity_I64);
6409 assign(ea, binop(Iop_Add64, getIReg64orSP(nn), mkU64(imm12 * 8)));
6422 IRTemp ea = gen_indexed_EA(dis_buf, insn, True/*to/from int regs*/);
6423 if (ea != IRTemp_INVALID) {
13312 IRExpr* eA = getQRegLO(aa, ity);
13318 case 0: assign(res, triop(opADD, rm, eA, eNxM)); break;
13319 case 1: assign(res, triop(opSUB, rm, eA, eNxM)); break;
13320 case 2: assign(res, unop(opNEG, triop(opADD, rm, eA, eNxM))); break;
13321 case 3: assign(res, unop(opNEG, triop(opSUB, rm, eA, eNxM))); break;