[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 06/37] semihosting/console: Avoid including 'cpu.h'
From: |
Alex Bennée |
Subject: |
[PATCH v3 06/37] semihosting/console: Avoid including 'cpu.h' |
Date: |
Thu, 16 Jan 2025 16:02:35 +0000 |
From: Philippe Mathieu-Daudé <philmd@linaro.org>
The CPUState structure is declared in "hw/core/cpu.h",
the EXCP_HALTED definition in "exec/cpu-common.h".
Both headers are indirectly include by "cpu.h". In
order to remove "cpu.h" from "semihosting/console.h",
explicitly include them in console.c, otherwise we'd
get:
../semihosting/console.c:88:11: error: incomplete definition of type 'struct
CPUState'
88 | cs->exception_index = EXCP_HALTED;
| ~~^
../semihosting/console.c:88:31: error: use of undeclared identifier
'EXCP_HALTED'
88 | cs->exception_index = EXCP_HALTED;
| ^
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20250103171037.11265-5-philmd@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
include/semihosting/console.h | 2 --
semihosting/console.c | 3 ++-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/include/semihosting/console.h b/include/semihosting/console.h
index bd78e5f03f..1c12e178ee 100644
--- a/include/semihosting/console.h
+++ b/include/semihosting/console.h
@@ -9,8 +9,6 @@
#ifndef SEMIHOST_CONSOLE_H
#define SEMIHOST_CONSOLE_H
-#include "cpu.h"
-
/**
* qemu_semihosting_console_read:
* @cs: CPUState
diff --git a/semihosting/console.c b/semihosting/console.c
index 60102bbab6..c3683a1566 100644
--- a/semihosting/console.c
+++ b/semihosting/console.c
@@ -18,14 +18,15 @@
#include "qemu/osdep.h"
#include "semihosting/semihost.h"
#include "semihosting/console.h"
+#include "exec/cpu-common.h"
#include "exec/gdbstub.h"
-#include "exec/exec-all.h"
#include "qemu/log.h"
#include "chardev/char.h"
#include "chardev/char-fe.h"
#include "qemu/main-loop.h"
#include "qapi/error.h"
#include "qemu/fifo8.h"
+#include "hw/core/cpu.h"
/* Access to this structure is protected by the BQL */
typedef struct SemihostingConsole {
--
2.39.5
- [PATCH v3 07/37] semihosting/meson: Build config.o and console.o once, (continued)
- [PATCH v3 07/37] semihosting/meson: Build config.o and console.o once, Alex Bennée, 2025/01/16
- [PATCH v3 12/37] contrib/plugins/howvec: ensure we don't regress if this plugin is extended, Alex Bennée, 2025/01/16
- [PATCH v3 13/37] tests/tcg/plugins/syscall: fix 32-bit build, Alex Bennée, 2025/01/16
- [PATCH v3 04/37] semihosting/uaccess: Include missing 'exec/cpu-all.h' header, Alex Bennée, 2025/01/16
- [PATCH v3 21/37] configure: reenable plugins by default for 32-bit hosts, Alex Bennée, 2025/01/16
- [PATCH v3 02/37] semihosting/uaccess: Briefly document returned values, Alex Bennée, 2025/01/16
- [PATCH v3 09/37] system: squash usb_parse into a single function, Alex Bennée, 2025/01/16
- [PATCH v3 10/37] system: propagate Error to gdbserver_start (and other device setups), Alex Bennée, 2025/01/16
- [PATCH v3 14/37] tests/tcg/plugins/mem: fix 32-bit build, Alex Bennée, 2025/01/16
- [PATCH v3 30/37] include/exec: remove warning_printed from MemoryRegion, Alex Bennée, 2025/01/16
- [PATCH v3 06/37] semihosting/console: Avoid including 'cpu.h',
Alex Bennée <=
- [PATCH v3 37/37] scripts/nsis.py: Run dependency check for each DLL file only once, Alex Bennée, 2025/01/16
- [PATCH v3 11/37] tests/tcg/plugins/insn: remove unused callback parameter, Alex Bennée, 2025/01/16
- [PATCH v3 08/37] system/vl: more error exit into config enumeration code, Alex Bennée, 2025/01/16
- [PATCH v3 16/37] contrib/plugins/cache: fix 32-bit build, Alex Bennée, 2025/01/16
- [PATCH v3 29/37] include/exec: fix some copy and paste errors in kdoc, Alex Bennée, 2025/01/16
- Re: [PATCH v3 00/37] maintainer updates for jan '25 (semihosting, gdb, plugins, docs) pre-PR-FINAL, Alex Bennée, 2025/01/16
- [PATCH v3 22/37] accel/tcg: also suppress asynchronous IRQs for cpu_io_recompile, Alex Bennée, 2025/01/16
- [PATCH v3 32/37] docs/devel: add git-publish for patch submitting, Alex Bennée, 2025/01/16
- [PATCH v3 26/37] plugins: fix kdoc annotation, Alex Bennée, 2025/01/16
- [PATCH v3 19/37] contrib/plugins/hwprofile: fix 32-bit build, Alex Bennée, 2025/01/16