[PULL 0/9] tcg patch queue

Richard Henderson posted 9 patches 2 years, 7 months ago
Test checkpatch failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210912155809.196236-1-richard.henderson@linaro.org
Maintainers: Laurent Vivier <laurent@vivier.eu>, Richard Henderson <richard.henderson@linaro.org>, David Gibson <david@gibson.dropbear.id.au>, Max Filippov <jcmvbkbc@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, Thomas Huth <thuth@redhat.com>, Palmer Dabbelt <palmer@dabbelt.com>, Greg Kurz <groug@kaod.org>, Bin Meng <bin.meng@windriver.com>, Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>, Stafford Horne <shorne@gmail.com>, Alistair Francis <alistair.francis@wdc.com>, David Hildenbrand <david@redhat.com>, Artyom Tarasenko <atar4qemu@gmail.com>, Yoshinori Sato <ysato@users.sourceforge.jp>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Eduardo Habkost <ehabkost@redhat.com>, Taylor Simpson <tsimpson@quicinc.com>, "Philippe Mathieu-Daudé" <f4bug@amsat.org>, Aurelien Jarno <aurelien@aurel32.net>, Cornelia Huck <cohuck@redhat.com>, Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>, Peter Maydell <peter.maydell@linaro.org>
There is a newer version of this series
meson.build                               |  6 ----
include/exec/translate-all.h              |  1 +
include/exec/translator.h                 | 44 +++++++++++++----------
include/qemu/bswap.h                      | 53 ++-------------------------
include/tcg/tcg-op.h                      |  2 --
target/arm/arm_ldst.h                     | 12 +++----
accel/tcg/tcg-accel-ops-rr.c              |  2 --
accel/tcg/translate-all.c                 | 59 ++++++++++++++++++-------------
accel/tcg/translator.c                    | 39 ++++++++++++++++++++
target/alpha/translate.c                  |  2 +-
target/arm/translate-a64.c                |  2 +-
target/arm/translate.c                    |  9 ++---
target/hexagon/translate.c                |  3 +-
target/hppa/translate.c                   |  5 +--
target/i386/tcg/translate.c               | 10 +++---
target/m68k/translate.c                   |  2 +-
target/mips/tcg/translate.c               |  8 ++---
target/openrisc/translate.c               |  2 +-
target/ppc/translate.c                    |  5 +--
target/riscv/translate.c                  |  5 +--
target/s390x/tcg/translate.c              | 16 +++++----
target/sh4/translate.c                    |  4 +--
target/sparc/translate.c                  |  2 +-
target/xtensa/translate.c                 |  5 +--
target/mips/tcg/micromips_translate.c.inc |  2 +-
target/mips/tcg/mips16e_translate.c.inc   |  4 +--
target/mips/tcg/nanomips_translate.c.inc  |  4 +--
tcg/arm/tcg-target.c.inc                  |  3 +-
tcg/i386/tcg-target.c.inc                 | 13 +++----
tcg/ppc/tcg-target.c.inc                  | 25 ++++++++++---
30 files changed, 185 insertions(+), 164 deletions(-)
[PULL 0/9] tcg patch queue
Posted by Richard Henderson 2 years, 7 months ago
Note that I've extended the expiration date of my gpg key
and have uploaded it to keyserver.ubuntu.com.


r~


The following changes since commit 99c44988d5ba1866a411450c877ed818b1b70081:

  Merge remote-tracking branch 'remotes/bsdimp/tags/pull-bsd-user-20210910' into staging (2021-09-11 14:00:39 +0100)

are available in the Git repository at:

  https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20210912

for you to fetch changes up to 267a3ec3e2a8fb3e06a9d46d09fcfc57dfefd118:

  tcg/arm: Fix tcg_out_vec_op function signature (2021-09-12 05:07:36 -0700)

----------------------------------------------------------------
Fix translation race condition for user-only.
Fix tcg/i386 encoding for VPSLLVQ, VPSRLVQ.
Fix tcg/arm tcg_out_vec_op signature.
Fix tcg/ppc (32bit) build with clang.
Remove dupluate TCG_KICK_PERIOD definition.
Remove unused tcg_global_reg_new.
Use __builtin_bswap*.

----------------------------------------------------------------
Bin Meng (1):
      tcg: Remove tcg_global_reg_new defines

Ilya Leoshkevich (2):
      accel/tcg: Add DisasContextBase argument to translator_ld*
      accel/tcg: Clear PAGE_WRITE before translation

Jose R. Ziviani (1):
      tcg/arm: Fix tcg_out_vec_op function signature

Luc Michel (1):
      accel/tcg: remove redundant TCG_KICK_PERIOD define

Richard Henderson (4):
      tcg/i386: Split P_VEXW from P_REXW
      include/qemu: Use builtins for bswap
      tcg/ppc: Replace TCG_TARGET_CALL_DARWIN with _CALL_DARWIN
      tcg/ppc: Ensure _CALL_SYSV is set for 32-bit ELF

 meson.build                               |  6 ----
 include/exec/translate-all.h              |  1 +
 include/exec/translator.h                 | 44 +++++++++++++----------
 include/qemu/bswap.h                      | 53 ++-------------------------
 include/tcg/tcg-op.h                      |  2 --
 target/arm/arm_ldst.h                     | 12 +++----
 accel/tcg/tcg-accel-ops-rr.c              |  2 --
 accel/tcg/translate-all.c                 | 59 ++++++++++++++++++-------------
 accel/tcg/translator.c                    | 39 ++++++++++++++++++++
 target/alpha/translate.c                  |  2 +-
 target/arm/translate-a64.c                |  2 +-
 target/arm/translate.c                    |  9 ++---
 target/hexagon/translate.c                |  3 +-
 target/hppa/translate.c                   |  5 +--
 target/i386/tcg/translate.c               | 10 +++---
 target/m68k/translate.c                   |  2 +-
 target/mips/tcg/translate.c               |  8 ++---
 target/openrisc/translate.c               |  2 +-
 target/ppc/translate.c                    |  5 +--
 target/riscv/translate.c                  |  5 +--
 target/s390x/tcg/translate.c              | 16 +++++----
 target/sh4/translate.c                    |  4 +--
 target/sparc/translate.c                  |  2 +-
 target/xtensa/translate.c                 |  5 +--
 target/mips/tcg/micromips_translate.c.inc |  2 +-
 target/mips/tcg/mips16e_translate.c.inc   |  4 +--
 target/mips/tcg/nanomips_translate.c.inc  |  4 +--
 tcg/arm/tcg-target.c.inc                  |  3 +-
 tcg/i386/tcg-target.c.inc                 | 13 +++----
 tcg/ppc/tcg-target.c.inc                  | 25 ++++++++++---
 30 files changed, 185 insertions(+), 164 deletions(-)

Re: [PULL 0/9] tcg patch queue
Posted by Peter Maydell 2 years, 7 months ago
On Sun, 12 Sept 2021 at 16:58, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> Note that I've extended the expiration date of my gpg key
> and have uploaded it to keyserver.ubuntu.com.
>
>
> r~
>
>
> The following changes since commit 99c44988d5ba1866a411450c877ed818b1b70081:
>
>   Merge remote-tracking branch 'remotes/bsdimp/tags/pull-bsd-user-20210910' into staging (2021-09-11 14:00:39 +0100)
>
> are available in the Git repository at:
>
>   https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20210912
>
> for you to fetch changes up to 267a3ec3e2a8fb3e06a9d46d09fcfc57dfefd118:
>
>   tcg/arm: Fix tcg_out_vec_op function signature (2021-09-12 05:07:36 -0700)
>
> ----------------------------------------------------------------
> Fix translation race condition for user-only.
> Fix tcg/i386 encoding for VPSLLVQ, VPSRLVQ.
> Fix tcg/arm tcg_out_vec_op signature.
> Fix tcg/ppc (32bit) build with clang.
> Remove dupluate TCG_KICK_PERIOD definition.
> Remove unused tcg_global_reg_new.
> Use __builtin_bswap*.
>

Hi; this fails to build on NetBSD:

In file included from /usr/include/stdarg.h:37:0,
                 from /home/qemu/qemu-test.X505HZ/src/include/qemu/osdep.h:79,
                 from ../src/tests/qtest/test-arm-mptimer.c:10:
/home/qemu/qemu-test.X505HZ/src/include/qemu/bswap.h:10:24: error:
expected declaration specifiers or '...' before '__builtin_constant_p'
 static inline uint16_t bswap16(uint16_t x)
                        ^
/home/qemu/qemu-test.X505HZ/src/include/qemu/bswap.h:15:24: error:
expected declaration specifiers or '...' before '__builtin_constant_p'
 static inline uint32_t bswap32(uint32_t x)
                        ^
/home/qemu/qemu-test.X505HZ/src/include/qemu/bswap.h:20:24: error:
expected declaration specifiers or '...' before '__builtin_constant_p'
 static inline uint64_t bswap64(uint64_t x)
                        ^

and on FreeBSD:

In file included from ../src/disas/nanomips.cpp:31:
In file included from
/usr/home/qemu/qemu-test.UUfQa1/src/include/disas/dis-asm.h:12:
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:10:24: error:
unknown type name '__builtin_constant_p'
static inline uint16_t bswap16(uint16_t x)
                       ^
/usr/include/sys/endian.h:61:20: note: expanded from macro 'bswap16'
#define bswap16(x)      __bswap16(x)
                        ^
/usr/include/x86/endian.h:76:16: note: expanded from macro '__bswap16'
        ((__uint16_t)(__builtin_constant_p(x) ? \
                      ^
In file included from ../src/disas/nanomips.cpp:31:
In file included from
/usr/home/qemu/qemu-test.UUfQa1/src/include/disas/dis-asm.h:12:
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:10:24: error:
expected ')'
/usr/include/sys/endian.h:61:20: note: expanded from macro 'bswap16'
#define bswap16(x)      __bswap16(x)
                        ^
/usr/include/x86/endian.h:76:40: note: expanded from macro '__bswap16'
        ((__uint16_t)(__builtin_constant_p(x) ? \
                                              ^
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:10:24: note:
to match this '('
/usr/include/sys/endian.h:61:20: note: expanded from macro 'bswap16'
#define bswap16(x)      __bswap16(x)
                        ^
/usr/include/x86/endian.h:76:15: note: expanded from macro '__bswap16'
        ((__uint16_t)(__builtin_constant_p(x) ? \
                     ^
In file included from ../src/disas/nanomips.cpp:31:
In file included from
/usr/home/qemu/qemu-test.UUfQa1/src/include/disas/dis-asm.h:12:
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:12:30: error:
use of undeclared identifier 'x'
    return __builtin_bswap16(x);
                             ^
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:15:24: error:
expected ')'
static inline uint32_t bswap32(uint32_t x)
                       ^
/usr/include/sys/endian.h:62:20: note: expanded from macro 'bswap32'
#define bswap32(x)      __bswap32(x)
                        ^
/usr/include/x86/endian.h:79:27: note: expanded from macro '__bswap32'
        (__builtin_constant_p(x) ?      \
                                 ^
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:15:24: note:
to match this '('
/usr/include/sys/endian.h:62:20: note: expanded from macro 'bswap32'
#define bswap32(x)      __bswap32(x)
                        ^
/usr/include/x86/endian.h:79:2: note: expanded from macro '__bswap32'
        (__builtin_constant_p(x) ?      \
        ^
In file included from ../src/disas/nanomips.cpp:31:
In file included from
/usr/home/qemu/qemu-test.UUfQa1/src/include/disas/dis-asm.h:12:
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:15:24: error:
cannot redeclare builtin function '__builtin_constant_p'
static inline uint32_t bswap32(uint32_t x)
                       ^
/usr/include/sys/endian.h:62:20: note: expanded from macro 'bswap32'
#define bswap32(x)      __bswap32(x)
                        ^
/usr/include/x86/endian.h:79:3: note: expanded from macro '__bswap32'
        (__builtin_constant_p(x) ?      \
         ^
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:10:24: note:
'__builtin_constant_p' is a builtin with type 'int (...) noexcept'
static inline uint16_t bswap16(uint16_t x)
                       ^
/usr/include/sys/endian.h:61:20: note: expanded from macro 'bswap16'
#define bswap16(x)      __bswap16(x)
                        ^
/usr/include/x86/endian.h:76:16: note: expanded from macro '__bswap16'
        ((__uint16_t)(__builtin_constant_p(x) ? \
                      ^
In file included from ../src/disas/nanomips.cpp:31:
In file included from
/usr/home/qemu/qemu-test.UUfQa1/src/include/disas/dis-asm.h:12:
/usr/home/qemu/qemu-test.UUfQa1/src/include/qemu/bswap.h:15:24: error:
definition of builtin function '__builtin_constant_p'
static inline uint32_t bswap32(uint32_t x)
                       ^
/usr/include/sys/endian.h:62:20: note: expanded from macro 'bswap32'
#define bswap32(x)      __bswap32(x)
                        ^
/usr/include/x86/endian.h:79:3: note: expanded from macro '__bswap32'
        (__builtin_constant_p(x) ?      \
         ^

[etc etc]

thanks
-- PMM