Home | History | Annotate | Download | only in aarch64

Lines Matching refs:mem_op

485 uint64_t Simulator::ComputeMemOperandAddress(const MemOperand& mem_op) const {
486 VIXL_ASSERT(mem_op.IsValid());
487 mem_op.GetBaseRegister());
488 if (mem_op.IsImmediateOffset()) {
489 return base + mem_op.GetOffset();
491 VIXL_ASSERT(mem_op.GetRegisterOffset().IsValid());
492 int64_t offset = ReadRegister<int64_t>(mem_op.GetRegisterOffset());
493 unsigned shift_amount = mem_op.GetShiftAmount();
494 if (mem_op.GetShift() != NO_SHIFT) {
495 offset = ShiftOperand(kXRegSize, offset, mem_op.GetShift(), shift_amount);
497 if (mem_op.GetExtend() != NO_EXTEND) {
498 offset = ExtendValue(kXRegSize, offset, mem_op.GetExtend(), shift_amount);