diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2018-10-08 14:55:04 +0100 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2018-10-08 14:55:04 +0100 |
commit | 597610eb39f8a2d5c8146007c1ac37c623c23645 (patch) | |
tree | a66845f5679ade0ca3a697d3c460ba7e053cd810 /target/arm/op_helper.c | |
parent | c32da7aa6205a5ff62ae8d5062f7cad0eae4c1fd (diff) |
target/arm: Add v8M stack limit checks on NS function calls
Check the v8M stack limits when pushing the frame for a
non-secure function call via BLXNS.
In order to be able to generate the exception we need to
promote raise_exception() from being local to op_helper.c
so we can call it from helper.c.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20181002163556.10279-8-peter.maydell@linaro.org
Diffstat (limited to 'target/arm/op_helper.c')
-rw-r--r-- | target/arm/op_helper.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/target/arm/op_helper.c b/target/arm/op_helper.c index ef3fd87e79..fb15a13e6c 100644 --- a/target/arm/op_helper.c +++ b/target/arm/op_helper.c @@ -28,8 +28,8 @@ #define SIGNBIT (uint32_t)0x80000000 #define SIGNBIT64 ((uint64_t)1 << 63) -static void raise_exception(CPUARMState *env, uint32_t excp, - uint32_t syndrome, uint32_t target_el) +void raise_exception(CPUARMState *env, uint32_t excp, + uint32_t syndrome, uint32_t target_el) { CPUState *cs = CPU(arm_env_get_cpu(env)); |