aboutsummaryrefslogtreecommitdiff
path: root/target/arm/translate-m-nocp.c
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-06-10 13:16:48 -0700
committerRichard Henderson <richard.henderson@linaro.org>2022-06-10 13:16:48 -0700
commit2663c41cfa2c3be34c62de97902a375b81027efd (patch)
tree89068bbfcb58ec765994e97f08120d8931aea896 /target/arm/translate-m-nocp.c
parentb3cd3b5a66f0dddfe3d5ba2bef13cd4f5b89cde9 (diff)
parent90c072e063737e9e8f431489bbd334452f89056e (diff)
downloadqemu-2663c41cfa2c3be34c62de97902a375b81027efd.zip
qemu-2663c41cfa2c3be34c62de97902a375b81027efd.tar.gz
qemu-2663c41cfa2c3be34c62de97902a375b81027efd.tar.bz2
Merge tag 'pull-target-arm-20220610' of https://git.linaro.org/people/pmaydell/qemu-arm into staging
* refactor exception routing code * fix SCR_EL3 RAO/RAZ bits * gdbstub: Don't use GDB syscalls if no GDB is attached * semihosting/config: Merge --semihosting-config option groups * tests/qtest: Reduce npcm7xx_sdhci test image size # -----BEGIN PGP SIGNATURE----- # # iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmKjbBoZHHBldGVyLm1h # eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3iMGEACAA+c88ifpbMlqmDaxPArw # pcUNbwAel9IzCMSb/SiX0JYyf6omGx84RfKQ7hoCGnn23L47tTcRwGDXkr0vOKLG # +JUXvkIYO9Ylp0M/PnJFL90aO7B6uMGQVfK57yjn+URlchm+wzphI/6V1jGLMVk/ # UaUHCOW2jFWXxsiUnj3HTyh46T+ZPMMebv4ZEaMH41jZs8D8DrEM65UFmCaBljPB # eEZPMRUClveosB6O9cj9qAHT5198Za7emzvsWie6AQFI/7TVxQ5oPf8QaeB74w28 # EypXlIlMvOqF0W3mE00IPAgi8f/PgB0X6iqiwXxo+nFwm3J6rPoxo7aI5psXHQn4 # uo2U9Ngvz/A2KVm+j7Qpgst70MScDJey7h1c4w//P8gjqLGL8OxJiyGz+rv+xLkd # L9Q4gIRJ0FK6brOVZX5aRXMqsnDzVZ8Ki5b6tCoAnfNNAq5y8i3gOss/DDYTKmO0 # C4Ectuq65Qodp82EeMPW25UT1EouCQVDgD2VkaPumI3uVn6+XKDGpM36UOctPOXm # 6RsGvJAWsV7k0llAKjrl8p+B+bCoT6hH41oFkpl96nJuTdx7tS3+OccvEINKZwT1 # rJ5q7IcwbMJwVTbZIJckDXvbTwcj/A9e0SqSOb7AbBiHuATUZxyRbwsQFpazigsa # t7Lj+Y/obz5shrq3BsIlYQ== # =yMh4 # -----END PGP SIGNATURE----- # gpg: Signature made Fri 10 Jun 2022 09:06:50 AM PDT # gpg: using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE # gpg: issuer "peter.maydell@linaro.org" # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [full] # gpg: aka "Peter Maydell <pmaydell@gmail.com>" [full] # gpg: aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" [full] * tag 'pull-target-arm-20220610' of https://git.linaro.org/people/pmaydell/qemu-arm: (28 commits) semihosting/config: Merge --semihosting-config option groups gdbstub: Don't use GDB syscalls if no GDB is attached target/arm: SCR_EL3.RW is RAO/WI without AArch32 EL[12] target/arm: Adjust format test in scr_write tests/qtest: Reduce npcm7xx_sdhci test image size target/arm: Fix Secure PL1 tests in fp_exception_el target/arm: Move arm_debug_target_el to debug_helper.c target/arm: Create raise_exception_debug target/arm: Remove default_exception_el target/arm: Introduce helper_exception_with_syndrome target/arm: Introduce gen_exception_el_v target/arm: Introduce gen_exception target/arm: Rename gen_exception to gen_exception_el target/arm: Move gen_exception to translate.c target/arm: Remove TBFLAG_ANY.DEBUG_TARGET_EL target/arm: Create helper_exception_swstep target/arm: Introduce gen_exception_insn target/arm: Rename gen_exception_insn to gen_exception_insn_el target/arm: Introduce gen_exception_insn_el_v target/arm: Rename helper_exception_with_syndrome ... Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'target/arm/translate-m-nocp.c')
-rw-r--r--target/arm/translate-m-nocp.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/target/arm/translate-m-nocp.c b/target/arm/translate-m-nocp.c
index 27363a7..4029d7f 100644
--- a/target/arm/translate-m-nocp.c
+++ b/target/arm/translate-m-nocp.c
@@ -143,8 +143,8 @@ static bool trans_VSCCLRM(DisasContext *s, arg_VSCCLRM *a)
tcg_gen_brcondi_i32(TCG_COND_EQ, sfpa, 0, s->condlabel);
if (s->fp_excp_el != 0) {
- gen_exception_insn(s, s->pc_curr, EXCP_NOCP,
- syn_uncategorized(), s->fp_excp_el);
+ gen_exception_insn_el(s, s->pc_curr, EXCP_NOCP,
+ syn_uncategorized(), s->fp_excp_el);
return true;
}
@@ -376,7 +376,7 @@ static bool gen_M_fp_sysreg_write(DisasContext *s, int regno,
if (!vfp_access_check_m(s, true)) {
/*
* This was only a conditional exception, so override
- * gen_exception_insn()'s default to DISAS_NORETURN
+ * gen_exception_insn_el()'s default to DISAS_NORETURN
*/
s->base.is_jmp = DISAS_NEXT;
break;
@@ -532,7 +532,7 @@ static bool gen_M_fp_sysreg_read(DisasContext *s, int regno,
if (!vfp_access_check_m(s, true)) {
/*
* This was only a conditional exception, so override
- * gen_exception_insn()'s default to DISAS_NORETURN
+ * gen_exception_insn_el()'s default to DISAS_NORETURN
*/
s->base.is_jmp = DISAS_NEXT;
break;
@@ -765,14 +765,13 @@ static bool trans_NOCP(DisasContext *s, arg_nocp *a)
}
if (a->cp != 10) {
- gen_exception_insn(s, s->pc_curr, EXCP_NOCP,
- syn_uncategorized(), default_exception_el(s));
+ gen_exception_insn(s, s->pc_curr, EXCP_NOCP, syn_uncategorized());
return true;
}
if (s->fp_excp_el != 0) {
- gen_exception_insn(s, s->pc_curr, EXCP_NOCP,
- syn_uncategorized(), s->fp_excp_el);
+ gen_exception_insn_el(s, s->pc_curr, EXCP_NOCP,
+ syn_uncategorized(), s->fp_excp_el);
return true;
}