unicorn/qemu/target/arm
Peter Maydell 4b816fe0aa
target/arm: Implement BXNS, and banked stack pointers
Implement the BXNS v8M instruction, which is like BX but will do a
jump-and-switch-to-NonSecure if the branch target address has bit 0
clear.

This is the first piece of code which implements "switch to the
other security state", so the commit also includes the code to
switch the stack pointers around, which is the only complicated
part of switching security state.

BLXNS is more complicated than just "BXNS but set the link register",
so we leave it for a separate commit.

Backports commit fb602cb726b3ebdd01ef3b1732d74baf9fee7ec9 from qemu
2018-03-04 21:21:23 -05:00
..
arm-powerctl.c
arm-powerctl.h
arm_ldst.h
cpu-qom.h
cpu.c target/arm: Make CCR register banked for v8M 2018-03-04 21:09:34 -05:00
cpu.h target/arm: Implement BXNS, and banked stack pointers 2018-03-04 21:21:23 -05:00
cpu64.c
crypto_helper.c
helper-a64.c
helper-a64.h
helper.c target/arm: Implement BXNS, and banked stack pointers 2018-03-04 21:21:23 -05:00
helper.h target/arm: Implement BXNS, and banked stack pointers 2018-03-04 21:21:23 -05:00
internals.h target/arm: Move regime_is_secure() to target/arm/internals.h 2018-03-04 21:14:05 -05:00
iwmmxt_helper.c
kvm-consts.h
Makefile.objs
neon_helper.c
op_addsub.h
op_helper.c target/arm: Allow deliver_fault() caller to specify EA bit 2018-03-04 13:20:23 -05:00
psci.c
translate-a64.c target/arm: [a64] Move page and ss checks to init_disas_context 2018-03-04 20:32:45 -05:00
translate.c target/arm: Implement BXNS, and banked stack pointers 2018-03-04 21:21:23 -05:00
translate.h target/arm: Implement BXNS, and banked stack pointers 2018-03-04 21:21:23 -05:00
unicorn.h
unicorn_aarch64.c
unicorn_arm.c