diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2015-12-29 03:13:13 +0300 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2015-12-29 11:59:47 +0100 |
commit | 382f51ae1cafb977d7a17b9aee62e098396886f3 (patch) | |
tree | 7e3fa03bd5cc5d63bab024c26da6381972f67746 /libc/sysdeps/linux/h8300/bits/endian.h | |
parent | 0ad73077c230093ae004829da44418597f330c6a (diff) |
xtensa: fix vfork return address calculations
vfork internally unwinds stack up one frame, saving the original return
address in the a3 of the unwound frame. To do this in windowed ABI it
needs to exchange two topmost bits of the original return address and of
the helper entry point. Current code doesn't do it correctly for
addresses above 0x40000000, resulting in illegal instruction exception
for configurations that put code high, e.g. for noMMU.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'libc/sysdeps/linux/h8300/bits/endian.h')
0 files changed, 0 insertions, 0 deletions