]> git.ipfire.org Git - thirdparty/qemu.git/commit
target-xtensa: add missing window check for entry
authorMax Filippov <jcmvbkbc@gmail.com>
Fri, 7 Nov 2014 18:11:07 +0000 (21:11 +0300)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Wed, 7 Jan 2015 20:31:19 +0000 (14:31 -0600)
commitea227e222bacb16539128b6b201614847374453c
tree4c033a99936053f6319704e61028edd67aaed712
parentaae114b7edd25c2c15bd126ffc6dbe4696f74f7f
target-xtensa: add missing window check for entry

Entry opcode needs to check if moving to new register frame would cause
register window overflow. Entry used in function prologue never
overflows because preceding windowed call* opcode writes return address
to the target register window frame, causing overflow exceptions at the
point of call. But when a sequence of entry opcodes is used for register
window spilling there may not be a call or other opcode that would cause
window check between entries and they would not raise overflow exception
themselves resulting in data corruption.

Cc: qemu-stable@nongnu.org
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
(cherry picked from commit 1b3e71f8ee17ced609213d9b41758110f3c026e9)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
target-xtensa/cpu.h
target-xtensa/op_helper.c