1
A last collection of patches to squeeze in before rc0.
1
The following changes since commit e3debd5e7d0ce031356024878a0a18b9d109354a:
2
The patches from me are all bugfixes. Philippe's are just
3
code-movement, but I wanted to get these into 4.1 because
4
that kind of patch is so painful to have to rebase.
5
(The diffstat is huge but it's just code moving from file to file.)
6
2
7
v2: fix up for clash with the qapi refactor which only
3
Merge tag 'pull-request-2023-03-24' of https://gitlab.com/thuth/qemu into staging (2023-03-24 16:08:46 +0000)
8
showed up in a build-from-clean.
9
10
thanks
11
-- PMM
12
13
14
The following changes since commit c3e1d838cfa5aac1a6210c8ddf182d0ef7d95dd8:
15
16
Merge remote-tracking branch 'remotes/kraxel/tags/ui-20190704-pull-request' into staging (2019-07-04 16:43:13 +0100)
17
4
18
are available in the Git repository at:
5
are available in the Git repository at:
19
6
20
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20190704-1
7
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20230328
21
8
22
for you to fetch changes up to 89a11ff756410aecb87d2c774df6e45dbf4105c1:
9
for you to fetch changes up to 46e3b237c52e0c48bfd81bce020b51fbe300b23a:
23
10
24
target/arm: Correct VMOV_imm_dp handling of short vectors (2019-07-04 17:25:30 +0100)
11
target/arm/gdbstub: Only advertise M-profile features if TCG available (2023-03-28 10:53:40 +0100)
25
12
26
----------------------------------------------------------------
13
----------------------------------------------------------------
27
target-arm queue:
14
target-arm queue:
28
* more code-movement to separate TCG-only functions into their own files
15
* fix part of the "TCG-disabled builds are broken" issue
29
* Correct VMOV_imm_dp handling of short vectors
30
* Execute Thumb instructions when their condbits are 0xf
31
* armv7m_systick: Forbid non-privileged accesses
32
* Use _ra versions of cpu_stl_data() in v7M helpers
33
* v8M: Check state of exception being returned from
34
* v8M: Forcibly clear negative-priority exceptions on deactivate
35
16
36
----------------------------------------------------------------
17
----------------------------------------------------------------
37
Peter Maydell (6):
18
Philippe Mathieu-Daudé (1):
38
arm v8M: Forcibly clear negative-priority exceptions on deactivate
19
target/arm/gdbstub: Only advertise M-profile features if TCG available
39
target/arm: v8M: Check state of exception being returned from
40
target/arm: Use _ra versions of cpu_stl_data() in v7M helpers
41
hw/timer/armv7m_systick: Forbid non-privileged accesses
42
target/arm: Execute Thumb instructions when their condbits are 0xf
43
target/arm: Correct VMOV_imm_dp handling of short vectors
44
20
45
Philippe Mathieu-Daudé (3):
21
target/arm/gdbstub.c | 5 +++--
46
target/arm: Move debug routines to debug_helper.c
22
1 file changed, 3 insertions(+), 2 deletions(-)
47
target/arm: Restrict semi-hosting to TCG
48
target/arm/helper: Move M profile routines to m_helper.c
49
23
50
target/arm/Makefile.objs | 5 +-
51
target/arm/cpu.h | 7 +
52
hw/intc/armv7m_nvic.c | 54 +-
53
hw/timer/armv7m_systick.c | 26 +-
54
target/arm/cpu.c | 9 +-
55
target/arm/debug_helper.c | 311 +++++
56
target/arm/helper.c | 2646 +--------------------------------------
57
target/arm/m_helper.c | 2679 ++++++++++++++++++++++++++++++++++++++++
58
target/arm/op_helper.c | 295 -----
59
target/arm/translate-vfp.inc.c | 2 +-
60
target/arm/translate.c | 15 +-
61
11 files changed, 3096 insertions(+), 2953 deletions(-)
62
create mode 100644 target/arm/debug_helper.c
63
create mode 100644 target/arm/m_helper.c
64
diff view generated by jsdifflib
New patch
1
From: Philippe Mathieu-Daudé <philmd@linaro.org>
1
2
3
Cortex-M profile is only emulable from TCG accelerator. Restrict
4
the GDBstub features to its availability in order to avoid a link
5
error when TCG is not enabled:
6
7
Undefined symbols for architecture arm64:
8
"_arm_v7m_get_sp_ptr", referenced from:
9
_m_sysreg_get in target_arm_gdbstub.c.o
10
"_arm_v7m_mrs_control", referenced from:
11
_arm_gdb_get_m_systemreg in target_arm_gdbstub.c.o
12
ld: symbol(s) not found for architecture arm64
13
clang: error: linker command failed with exit code 1 (use -v to see invocation)
14
15
Fixes: 7d8b28b8b5 ("target/arm: Implement gdbstub m-profile systemreg and secext")
16
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
17
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
18
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
19
Message-id: 20230322142902.69511-3-philmd@linaro.org
20
[PMM: add #include since I cherry-picked this patch from the series]
21
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
22
---
23
target/arm/gdbstub.c | 5 +++--
24
1 file changed, 3 insertions(+), 2 deletions(-)
25
26
diff --git a/target/arm/gdbstub.c b/target/arm/gdbstub.c
27
index XXXXXXX..XXXXXXX 100644
28
--- a/target/arm/gdbstub.c
29
+++ b/target/arm/gdbstub.c
30
@@ -XXX,XX +XXX,XX @@
31
#include "cpu.h"
32
#include "exec/gdbstub.h"
33
#include "gdbstub/helpers.h"
34
+#include "sysemu/tcg.h"
35
#include "internals.h"
36
#include "cpregs.h"
37
38
@@ -XXX,XX +XXX,XX @@ void arm_cpu_register_gdb_regs_for_features(ARMCPU *cpu)
39
2, "arm-vfp-sysregs.xml", 0);
40
}
41
}
42
- if (cpu_isar_feature(aa32_mve, cpu)) {
43
+ if (cpu_isar_feature(aa32_mve, cpu) && tcg_enabled()) {
44
gdb_register_coprocessor(cs, mve_gdb_get_reg, mve_gdb_set_reg,
45
1, "arm-m-profile-mve.xml", 0);
46
}
47
@@ -XXX,XX +XXX,XX @@ void arm_cpu_register_gdb_regs_for_features(ARMCPU *cpu)
48
arm_gen_dynamic_sysreg_xml(cs, cs->gdb_num_regs),
49
"system-registers.xml", 0);
50
51
- if (arm_feature(env, ARM_FEATURE_M)) {
52
+ if (arm_feature(env, ARM_FEATURE_M) && tcg_enabled()) {
53
gdb_register_coprocessor(cs,
54
arm_gdb_get_m_systemreg, arm_gdb_set_m_systemreg,
55
arm_gen_dynamic_m_systemreg_xml(cs, cs->gdb_num_regs),
56
--
57
2.34.1
58
59
diff view generated by jsdifflib