Message ID | 20240124075609.14756-5-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | accel/tcg: Move perf and debuginfo support to tcg | expand |
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...
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',