ARC: unaligned access emulation broken if callee-reg dest of LD/ST

The fixup code correctly updates the callee-regs on stack, but
fails to unwind it into actual register file. Thus userspace won't see
the update.

Reported-by: Noam Camus <noamc@ezchip.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
This commit is contained in:
Vineet Gupta 2013-04-06 17:11:58 +05:30
parent c723ea4620
commit ce147c7445

View File

@ -396,7 +396,9 @@ ARC_ENTRY EV_TLBProtV
bl do_misaligned_access
DISCARD_CALLEE_SAVED_USER
; TBD: optimize - do this only if a callee reg was involved
; either a dst of emulated LD/ST or src with address-writeback
RESTORE_CALLEE_SAVED_USER
#else
bl do_misaligned_error
#endif