[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 15/29] tcg: Provide guest_base fallback for system mode
|
From: |
Stefan Hajnoczi |
|
Subject: |
Re: [PULL 15/29] tcg: Provide guest_base fallback for system mode |
|
Date: |
Thu, 19 Oct 2023 09:37:39 -0700 |
On Wed, 18 Oct 2023 at 15:30, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> Provide a define to allow !tcg_use_softmmu code paths to
> compile in system mode, but require elimination.
>
> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> tcg/tcg.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/tcg/tcg.c b/tcg/tcg.c
> index d3a4a17ef2..35158a0846 100644
> --- a/tcg/tcg.c
> +++ b/tcg/tcg.c
> @@ -178,6 +178,10 @@ static bool tcg_target_const_match(int64_t val, TCGType
> type, int ct, int vece);
> static int tcg_out_ldst_finalize(TCGContext *s);
> #endif
>
> +#ifndef CONFIG_USER_ONLY
> +#define guest_base ({ qemu_build_not_reached(); (uintptr_t)0; })
> +#endif
Please take a look at this CI failure:
cc -m64 -mcx16 -Itcg/libtcg_system.fa.p -Itcg -I../tcg -I. -Iqapi
-Itrace -Iui -Iui/shader -I/usr/local/include/glib-2.0
-I/usr/local/lib/glib-2.0/include -I/usr/local/include
-fcolor-diagnostics -Wall -Winvalid-pch -Werror -std=gnu11 -O2 -g
-fstack-protector-strong -Wundef -Wwrite-strings -Wmissing-prototypes
-Wstrict-prototypes -Wredundant-decls -Wold-style-definition
-Wtype-limits -Wformat-security -Wformat-y2k -Winit-self
-Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels
-Wexpansion-to-defined -Wmissing-format-attribute
-Wno-initializer-overrides -Wno-missing-include-dirs
-Wno-shift-negative-value -Wno-string-plus-int
-Wno-typedef-redefinition -Wno-tautological-type-limit-compare
-Wno-psabi -Wno-gnu-variable-sized-type-not-at-end -Wthread-safety
-iquote . -iquote /tmp/cirrus-ci-build -iquote
/tmp/cirrus-ci-build/include -iquote
/tmp/cirrus-ci-build/host/include/x86_64 -iquote
/tmp/cirrus-ci-build/host/include/generic -iquote
/tmp/cirrus-ci-build/tcg/i386 -pthread -D_GNU_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing
-fno-common -fwrapv -fPIE -DCONFIG_SOFTMMU -MD -MQ
tcg/libtcg_system.fa.p/tcg.c.o -MF tcg/libtcg_system.fa.p/tcg.c.o.d -o
tcg/libtcg_system.fa.p/tcg.c.o -c ../tcg/tcg.c
In file included from ../tcg/tcg.c:744:
/tmp/cirrus-ci-build/tcg/i386/tcg-target.c.inc:1953:35: error: cannot
take the address of an rvalue of type 'uintptr_t' (aka 'unsigned
long')
if (sysarch(AMD64_SET_GSBASE, &guest_base) == 0) {
^~~~~~~~~~~
1 error generated.
https://gitlab.com/qemu-project/qemu/-/jobs/5329820109
> +
> typedef struct TCGLdstHelperParam {
> TCGReg (*ra_gen)(TCGContext *s, const TCGLabelQemuLdst *l, int arg_reg);
> unsigned ntmp;
> --
> 2.34.1
>
>
- [PULL 11/29] tcg/ppc: Use prefixed instructions in tcg_out_dupi_vec, (continued)
- [PULL 11/29] tcg/ppc: Use prefixed instructions in tcg_out_dupi_vec, Richard Henderson, 2023/10/18
- [PULL 12/29] tcg/ppc: Use PLD in tcg_out_goto_tb, Richard Henderson, 2023/10/18
- [PULL 13/29] tcg/ppc: Disable TCG_REG_TB for Power9/Power10, Richard Henderson, 2023/10/18
- [PULL 14/29] tcg: Introduce tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 17/29] tcg/aarch64: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 20/29] tcg/mips: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 19/29] tcg/loongarch64: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 22/29] tcg/riscv: Do not reserve TCG_GUEST_BASE_REG for guest_base zero, Richard Henderson, 2023/10/18
- [PULL 21/29] tcg/ppc: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 15/29] tcg: Provide guest_base fallback for system mode, Richard Henderson, 2023/10/18
- Re: [PULL 15/29] tcg: Provide guest_base fallback for system mode,
Stefan Hajnoczi <=
- [PULL 16/29] tcg/arm: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 25/29] tcg: drop unused tcg_temp_free define, Richard Henderson, 2023/10/18
- [PULL 18/29] tcg/i386: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 26/29] tcg: Use constant zero when expanding with divu2, Richard Henderson, 2023/10/18
- [PULL 27/29] tcg: Optimize past conditional branches, Richard Henderson, 2023/10/18
- [PULL 24/29] tcg/s390x: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 28/29] tcg: Add tcg_gen_{ld,st}_i128, Richard Henderson, 2023/10/18
- [PULL 23/29] tcg/riscv: Use tcg_use_softmmu, Richard Henderson, 2023/10/18
- [PULL 29/29] target/i386: Use i128 for 128 and 256-bit loads and stores, Richard Henderson, 2023/10/18