unicorn/qemu/target
Peter Maydell ee9b8a20c9
target/arm: Implement secure function return
Secure function return happens when a non-secure function has been
called using BLXNS and so has a particular magic LR value (either
0xfefffffe or 0xfeffffff). The function return via BX behaves
specially when the new PC value is this magic value, in the same
way that exception returns are handled.

Adjust our BX excret guards so that they recognize the function
return magic number as well, and perform the function-return
unstacking in do_v7m_exception_exit().

Backports commit d02a8698d7ae2bfed3b11fe5b064cb0aa406863b from qemu
2018-03-05 03:33:42 -05:00
..
arm target/arm: Implement secure function return 2018-03-05 03:33:42 -05:00
i386 tcg: remove addr argument from lookup_tb_ptr 2018-03-05 02:16:34 -05:00
m68k target/m68k: Switch fpu_rom from make_floatx80() to make_floatx80_init() 2018-03-04 23:05:01 -05:00
mips tcg: remove addr argument from lookup_tb_ptr 2018-03-05 02:16:34 -05:00
sparc sparc: Fix typedef clash 2018-03-04 23:05:50 -05:00