From: Ilya Leoshkevich <iii@linux.ibm.com>
tcg/ should not depend on accel/tcg/, but perf and debuginfo
support provided by the latter are being used by tcg/tcg.c.
Since that's the only user, move both to tcg/.
Suggested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-ID: <20231208003754.3688038-5-iii@linux.ibm.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
{accel/tcg => tcg}/debuginfo.h | 4 ++--
{accel/tcg => tcg}/perf.h | 4 ++--
accel/tcg/translate-all.c | 2 +-
hw/core/loader.c | 2 +-
linux-user/elfload.c | 2 +-
linux-user/exit.c | 2 +-
linux-user/main.c | 2 +-
system/vl.c | 2 +-
{accel/tcg => tcg}/debuginfo.c | 0
{accel/tcg => tcg}/perf.c | 2 +-
tcg/tcg.c | 2 +-
accel/tcg/meson.build | 4 ----
tcg/meson.build | 5 +++++
13 files changed, 17 insertions(+), 16 deletions(-)
rename {accel/tcg => tcg}/debuginfo.h (96%)
rename {accel/tcg => tcg}/perf.h (95%)
rename {accel/tcg => tcg}/debuginfo.c (100%)
rename {accel/tcg => tcg}/perf.c (99%)
diff --git a/accel/tcg/debuginfo.h b/tcg/debuginfo.h
similarity index 96%
rename from accel/tcg/debuginfo.h
rename to tcg/debuginfo.h
index f064e1c144..858535b5da 100644
--- a/accel/tcg/debuginfo.h
+++ b/tcg/debuginfo.h
@@ -4,8 +4,8 @@
* SPDX-License-Identifier: GPL-2.0-or-later
*/
-#ifndef ACCEL_TCG_DEBUGINFO_H
-#define ACCEL_TCG_DEBUGINFO_H
+#ifndef TCG_DEBUGINFO_H
+#define TCG_DEBUGINFO_H
#include "qemu/bitops.h"
diff --git a/accel/tcg/perf.h b/tcg/perf.h
similarity index 95%
rename from accel/tcg/perf.h
rename to tcg/perf.h
index f92dd52c69..c96b5920a3 100644
--- a/accel/tcg/perf.h
+++ b/tcg/perf.h
@@ -4,8 +4,8 @@
* SPDX-License-Identifier: GPL-2.0-or-later
*/
-#ifndef ACCEL_TCG_PERF_H
-#define ACCEL_TCG_PERF_H
+#ifndef TCG_PERF_H
+#define TCG_PERF_H
#if defined(CONFIG_TCG) && defined(CONFIG_LINUX)
/* Start writing perf-<pid>.map. */
diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
index 1737bb3da5..1c695efe02 100644
--- a/accel/tcg/translate-all.c
+++ b/accel/tcg/translate-all.c
@@ -63,7 +63,7 @@
#include "tb-context.h"
#include "internal-common.h"
#include "internal-target.h"
-#include "perf.h"
+#include "tcg/perf.h"
#include "tcg/insn-start-words.h"
TBContext tb_ctx;
diff --git a/hw/core/loader.c b/hw/core/loader.c
index e7a9b3775b..b8e52f3fb0 100644
--- a/hw/core/loader.c
+++ b/hw/core/loader.c
@@ -62,7 +62,7 @@
#include "hw/boards.h"
#include "qemu/cutils.h"
#include "sysemu/runstate.h"
-#include "accel/tcg/debuginfo.h"
+#include "tcg/debuginfo.h"
#include <zlib.h>
diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index cf9e74468b..62120c7615 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -21,7 +21,7 @@
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "target_signal.h"
-#include "accel/tcg/debuginfo.h"
+#include "tcg/debuginfo.h"
#ifdef TARGET_ARM
#include "target/arm/cpu-features.h"
diff --git a/linux-user/exit.c b/linux-user/exit.c
index 50266314e0..1ff8fe4f07 100644
--- a/linux-user/exit.c
+++ b/linux-user/exit.c
@@ -17,7 +17,7 @@
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "qemu/osdep.h"
-#include "accel/tcg/perf.h"
+#include "tcg/perf.h"
#include "gdbstub/syscalls.h"
#include "qemu.h"
#include "user-internals.h"
diff --git a/linux-user/main.c b/linux-user/main.c
index c9470eeccf..74b2fbb393 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -54,7 +54,7 @@
#include "signal-common.h"
#include "loader.h"
#include "user-mmap.h"
-#include "accel/tcg/perf.h"
+#include "tcg/perf.h"
#ifdef CONFIG_SEMIHOSTING
#include "semihosting/semihost.h"
diff --git a/system/vl.c b/system/vl.c
index 788d88ea03..60fd1e56b6 100644
--- a/system/vl.c
+++ b/system/vl.c
@@ -96,7 +96,7 @@
#endif
#include "sysemu/qtest.h"
#ifdef CONFIG_TCG
-#include "accel/tcg/perf.h"
+#include "tcg/perf.h"
#endif
#include "disas/disas.h"
diff --git a/accel/tcg/debuginfo.c b/tcg/debuginfo.c
similarity index 100%
rename from accel/tcg/debuginfo.c
rename to tcg/debuginfo.c
diff --git a/accel/tcg/perf.c b/tcg/perf.c
similarity index 99%
rename from accel/tcg/perf.c
rename to tcg/perf.c
index 68a46b1b52..de34248d92 100644
--- a/accel/tcg/perf.c
+++ b/tcg/perf.c
@@ -11,7 +11,7 @@
#include "qemu/osdep.h"
#include "elf.h"
#include "exec/target_page.h"
-#include "exec/exec-all.h"
+#include "exec/translation-block.h"
#include "qemu/timer.h"
#include "tcg/tcg.h"
diff --git a/tcg/tcg.c b/tcg/tcg.c
index e2c38f6d11..eeff4c1d51 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -55,7 +55,7 @@
#include "tcg/tcg-ldst.h"
#include "tcg/tcg-temp-internal.h"
#include "tcg-internal.h"
-#include "accel/tcg/perf.h"
+#include "tcg/perf.h"
#ifdef CONFIG_USER_ONLY
#include "exec/user/guest-base.h"
#endif
diff --git a/accel/tcg/meson.build b/accel/tcg/meson.build
index c15ac9ac8f..46f7d53eeb 100644
--- a/accel/tcg/meson.build
+++ b/accel/tcg/meson.build
@@ -16,10 +16,6 @@ tcg_ss.add(when: 'CONFIG_SYSTEM_ONLY', if_false: files('user-exec-stub.c'))
if get_option('plugins')
tcg_ss.add(files('plugin-gen.c'))
endif
-tcg_ss.add(when: libdw, if_true: files('debuginfo.c'))
-if host_os == 'linux'
- tcg_ss.add(files('perf.c'))
-endif
specific_ss.add_all(when: 'CONFIG_TCG', if_true: tcg_ss)
specific_ss.add(when: ['CONFIG_SYSTEM_ONLY', 'CONFIG_TCG'], if_true: files(
diff --git a/tcg/meson.build b/tcg/meson.build
index 5afdec1e1a..8251589fd4 100644
--- a/tcg/meson.build
+++ b/tcg/meson.build
@@ -22,6 +22,11 @@ if get_option('tcg_interpreter')
tcg_ss.add(files('tci.c'))
endif
+tcg_ss.add(when: libdw, if_true: files('debuginfo.c'))
+if host_os == 'linux'
+ tcg_ss.add(files('perf.c'))
+endif
+
tcg_ss = tcg_ss.apply({})
libtcg_user = static_library('tcg_user',
--
2.41.0
On 1/24/24 17:56, Philippe Mathieu-Daudé wrote:
> From: Ilya Leoshkevich <iii@linux.ibm.com>
>
> tcg/ should not depend on accel/tcg/, but perf and debuginfo
> support provided by the latter are being used by tcg/tcg.c.
>
> Since that's the only user, move both to tcg/.
>
> Suggested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
> Message-ID: <20231208003754.3688038-5-iii@linux.ibm.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> {accel/tcg => tcg}/debuginfo.h | 4 ++--
> {accel/tcg => tcg}/perf.h | 4 ++--
Headers should be in include/tcg/.
> --- a/accel/tcg/translate-all.c
> +++ b/accel/tcg/translate-all.c
> @@ -63,7 +63,7 @@
> #include "tb-context.h"
> #include "internal-common.h"
> #include "internal-target.h"
> -#include "perf.h"
> +#include "tcg/perf.h"
Since it is used from accel/tcg/,
> #include "tcg/insn-start-words.h"
>
> TBContext tb_ctx;
> diff --git a/hw/core/loader.c b/hw/core/loader.c
> index e7a9b3775b..b8e52f3fb0 100644
> --- a/hw/core/loader.c
> +++ b/hw/core/loader.c
> @@ -62,7 +62,7 @@
> #include "hw/boards.h"
> #include "qemu/cutils.h"
> #include "sysemu/runstate.h"
> -#include "accel/tcg/debuginfo.h"
> +#include "tcg/debuginfo.h"
... and hw/core/.
Otherwise,
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
On Thu, 2024-01-25 at 07:11 +1000, Richard Henderson wrote:
> On 1/24/24 17:56, Philippe Mathieu-Daudé wrote:
> > From: Ilya Leoshkevich <iii@linux.ibm.com>
> >
> > tcg/ should not depend on accel/tcg/, but perf and debuginfo
> > support provided by the latter are being used by tcg/tcg.c.
> >
> > Since that's the only user, move both to tcg/.
> >
> > Suggested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> > Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> > Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
> > Message-ID: <20231208003754.3688038-5-iii@linux.ibm.com>
> > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> > ---
> > {accel/tcg => tcg}/debuginfo.h | 4 ++--
> > {accel/tcg => tcg}/perf.h | 4 ++--
>
> Headers should be in include/tcg/.
>
> > --- a/accel/tcg/translate-all.c
> > +++ b/accel/tcg/translate-all.c
> > @@ -63,7 +63,7 @@
> > #include "tb-context.h"
> > #include "internal-common.h"
> > #include "internal-target.h"
> > -#include "perf.h"
> > +#include "tcg/perf.h"
>
> Since it is used from accel/tcg/,
>
> > #include "tcg/insn-start-words.h"
> >
> > TBContext tb_ctx;
> > diff --git a/hw/core/loader.c b/hw/core/loader.c
> > index e7a9b3775b..b8e52f3fb0 100644
> > --- a/hw/core/loader.c
> > +++ b/hw/core/loader.c
> > @@ -62,7 +62,7 @@
> > #include "hw/boards.h"
> > #include "qemu/cutils.h"
> > #include "sysemu/runstate.h"
> > -#include "accel/tcg/debuginfo.h"
> > +#include "tcg/debuginfo.h"
>
> ... and hw/core/.
>
> Otherwise,
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
>
> r~
Can it be that this is the rebased v3?
v4 seems to have these issues fixed:
https://patchew.org/QEMU/20231212003837.64090-1-iii@linux.ibm.com/
On 25/1/24 04:04, Ilya Leoshkevich wrote:
> On Thu, 2024-01-25 at 07:11 +1000, Richard Henderson wrote:
>> On 1/24/24 17:56, Philippe Mathieu-Daudé wrote:
>>> From: Ilya Leoshkevich <iii@linux.ibm.com>
>>>
>>> tcg/ should not depend on accel/tcg/, but perf and debuginfo
>>> support provided by the latter are being used by tcg/tcg.c.
>>>
>>> Since that's the only user, move both to tcg/.
>>>
>>> Suggested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
>>> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
>>> Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
>>> Message-ID: <20231208003754.3688038-5-iii@linux.ibm.com>
>>> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
>>> ---
>>> {accel/tcg => tcg}/debuginfo.h | 4 ++--
>>> {accel/tcg => tcg}/perf.h | 4 ++--
>>
>> Headers should be in include/tcg/.
>>
>>> --- a/accel/tcg/translate-all.c
>>> +++ b/accel/tcg/translate-all.c
>>> @@ -63,7 +63,7 @@
>>> #include "tb-context.h"
>>> #include "internal-common.h"
>>> #include "internal-target.h"
>>> -#include "perf.h"
>>> +#include "tcg/perf.h"
>>
>> Since it is used from accel/tcg/,
>>
>>> #include "tcg/insn-start-words.h"
>>>
>>> TBContext tb_ctx;
>>> diff --git a/hw/core/loader.c b/hw/core/loader.c
>>> index e7a9b3775b..b8e52f3fb0 100644
>>> --- a/hw/core/loader.c
>>> +++ b/hw/core/loader.c
>>> @@ -62,7 +62,7 @@
>>> #include "hw/boards.h"
>>> #include "qemu/cutils.h"
>>> #include "sysemu/runstate.h"
>>> -#include "accel/tcg/debuginfo.h"
>>> +#include "tcg/debuginfo.h"
>>
>> ... and hw/core/.
>>
>> Otherwise,
>> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
>>
>> r~
>
> Can it be that this is the rebased v3?
> v4 seems to have these issues fixed:
>
> https://patchew.org/QEMU/20231212003837.64090-1-iii@linux.ibm.com/
Indeed 🤦♂️ v6 on the way...
© 2016 - 2026 Red Hat, Inc.