[PULL 00/46] (mostly) target/i386 and meson changes for 2023-12-31

Paolo Bonzini posted 46 patches 11 months ago
Only 44 patches received!
Makefile                             |   1 +
accel/tcg/meson.build                |   4 +-
backends/meson.build                 |  10 +-
block/meson.build                    |  11 +-
bsd-user/meson.build                 |   2 +-
chardev/meson.build                  |  28 +-
configure                            | 159 +++---
contrib/ivshmem-client/meson.build   |   2 +-
contrib/ivshmem-server/meson.build   |   2 +-
contrib/vhost-user-blk/meson.build   |   2 +-
contrib/vhost-user-input/meson.build |   2 +-
contrib/vhost-user-scsi/meson.build  |   2 +-
docs/devel/build-system.rst          |  15 -
docs/devel/kconfig.rst               |   2 +-
fsdev/meson.build                    |   6 +-
gdbstub/meson.build                  |   4 +-
hw/9pfs/meson.build                  |   7 +-
hw/acpi/meson.build                  |   5 -
hw/cxl/meson.build                   |   2 -
hw/display/meson.build               |   8 +-
hw/i386/sgx-stub.c                   |   2 +-
hw/mem/meson.build                   |   1 -
hw/mips/meson.build                  |   2 +-
hw/net/meson.build                   |   2 -
hw/pci-bridge/meson.build            |   2 -
hw/pci/meson.build                   |   1 -
hw/ppc/meson.build                   |   8 +-
hw/remote/meson.build                |   1 -
hw/scsi/esp.c                        |   9 +
hw/smbios/meson.build                |   5 -
hw/usb/meson.build                   |   8 +-
hw/virtio/meson.build                |   2 -
meson.build                          | 943 +++++++++++++++++------------------
meson_options.txt                    |   2 +-
net/can/meson.build                  |   4 +-
net/meson.build                      |  10 +-
plugins/meson.build                  |   4 +-
qga/meson.build                      |  50 +-
scsi/meson.build                     |   8 +-
storage-daemon/meson.build           |   2 +-
system/meson.build                   |   4 +-
target/arm/meson.build               |   2 +-
target/i386/cpu.c                    |   2 +-
target/i386/cpu.h                    |   5 +-
target/i386/tcg/cc_helper.c          |   6 +-
target/i386/tcg/decode-new.c.inc     | 152 ++++--
target/i386/tcg/decode-new.h         |  29 +-
target/i386/tcg/emit.c.inc           | 224 +++++++--
target/i386/tcg/excp_helper.c        |   7 +-
target/i386/tcg/fpu_helper.c         |  10 +-
target/i386/tcg/helper-tcg.h         |   3 +-
target/i386/tcg/int_helper.c         |   8 +-
target/i386/tcg/misc_helper.c        |   4 +-
target/i386/tcg/seg_helper.c         |   8 +-
target/i386/tcg/translate.c          | 160 +++---
target/mips/meson.build              |   2 +-
tcg/meson.build                      |   2 +-
tests/bench/meson.build              |   6 +-
tests/fp/meson.build                 |   4 +-
tests/meson.build                    |   4 +-
tests/plugin/meson.build             |   2 +-
tests/qemu-iotests/meson.build       |   2 +-
tests/qtest/meson.build              |  20 +-
tests/tcg/i386/Makefile.target       |   2 +-
tests/tcg/i386/test-flags.c          |  37 ++
tests/unit/meson.build               |   8 +-
ui/dbus-display1.xml                 |  10 +-
ui/meson.build                       |  17 +-
util/meson.build                     |  58 ++-
69 files changed, 1188 insertions(+), 950 deletions(-)
create mode 100644 tests/tcg/i386/test-flags.c
[PULL 00/46] (mostly) target/i386 and meson changes for 2023-12-31
Posted by Paolo Bonzini 11 months ago
The following changes since commit 191710c221f65b1542f6ea7fa4d30dde6e134fd7:

  Merge tag 'pull-request-2023-12-20' of https://gitlab.com/thuth/qemu into staging (2023-12-20 09:40:16 -0500)

are available in the Git repository at:

  https://gitlab.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to f705c1f25d9a075534f8279048082af4ce2066bf:

  meson.build: report graphics backends separately (2023-12-31 09:11:29 +0100)

----------------------------------------------------------------
* configure: use a native non-cross compiler for linux-user
* meson: cleanups
* target/i386: miscellaneous cleanups and optimizations
* target/i386: implement CMPccXADD
* target/i386: the sgx_epc_get_section stub is reachable
* esp: check for NULL result from scsi_device_find()

----------------------------------------------------------------
Alex Bennée (1):
      meson.build: report graphics backends separately

Alexandra Diupina (1):
      esp: check for NULL result from scsi_device_find()

Paolo Bonzini (44):
      configure: use a native non-cross compiler for linux-user
      target/i386: optimize computation of JL and JLE from flags
      target/i386: speedup JO/SETO after MUL or IMUL
      target/i386: remove unnecessary arguments from raise_interrupt
      target/i386: remove unnecessary truncations
      target/i386: clean up cpu_cc_compute_all
      target/i386: document more deviations from the manual
      target/i386: reimplement check for validity of LOCK prefix
      target/i386: avoid trunc and ext for MULX and RORX
      target/i386: rename zext0/zext2 and make them closer to the manual
      target/i386: add X86_SPECIALs for MOVSX and MOVZX
      target/i386: do not decode string source/destination into decode->mem
      target/i386: do not clobber A0 in POP translation
      target/i386: do not clobber T0 on string operations
      target/i386: split eflags computation out of gen_compute_eflags
      target/i386: do not use s->tmp4 for push
      target/i386: do not use s->tmp0 for jumps on ECX ==/!= 0
      target/i386: prepare for implementation of STOS/SCAS in new decoder
      target/i386: move operand load and writeback out of gen_cmovcc1
      target/i386: adjust decoding of J operand
      target/i386: introduce flags writeback mechanism
      target/i386: implement CMPccXADD
      target/i386: the sgx_epc_get_section stub is reachable
      meson: fix type of "relocatable" option
      meson: remove unused variable
      meson: use version_compare() to compare version
      Makefile: clean qemu-iotests output
      configure: remove unnecessary subshell
      configure: unify again the case arms in probe_target_compiler
      meson: add more sections to main meson.build
      meson: move program checks together
      meson: move option validation together
      meson: move accelerator dependency checks together
      meson: keep subprojects together
      meson: move CFI detection code with other compiler flags
      meson: move config-host.h definitions together
      meson: move subdirs to "Collect sources" section
      meson: always probe u2f and canokey if the option is enabled
      meson: remove OS definitions from config_targetos
      meson: remove CONFIG_POSIX and CONFIG_WIN32 from config_targetos
      meson: remove config_targetos
      meson: remove CONFIG_ALL
      meson: rename config_all
      configure, meson: rename targetos to host_os

 Makefile                             |   1 +
 accel/tcg/meson.build                |   4 +-
 backends/meson.build                 |  10 +-
 block/meson.build                    |  11 +-
 bsd-user/meson.build                 |   2 +-
 chardev/meson.build                  |  28 +-
 configure                            | 159 +++---
 contrib/ivshmem-client/meson.build   |   2 +-
 contrib/ivshmem-server/meson.build   |   2 +-
 contrib/vhost-user-blk/meson.build   |   2 +-
 contrib/vhost-user-input/meson.build |   2 +-
 contrib/vhost-user-scsi/meson.build  |   2 +-
 docs/devel/build-system.rst          |  15 -
 docs/devel/kconfig.rst               |   2 +-
 fsdev/meson.build                    |   6 +-
 gdbstub/meson.build                  |   4 +-
 hw/9pfs/meson.build                  |   7 +-
 hw/acpi/meson.build                  |   5 -
 hw/cxl/meson.build                   |   2 -
 hw/display/meson.build               |   8 +-
 hw/i386/sgx-stub.c                   |   2 +-
 hw/mem/meson.build                   |   1 -
 hw/mips/meson.build                  |   2 +-
 hw/net/meson.build                   |   2 -
 hw/pci-bridge/meson.build            |   2 -
 hw/pci/meson.build                   |   1 -
 hw/ppc/meson.build                   |   8 +-
 hw/remote/meson.build                |   1 -
 hw/scsi/esp.c                        |   9 +
 hw/smbios/meson.build                |   5 -
 hw/usb/meson.build                   |   8 +-
 hw/virtio/meson.build                |   2 -
 meson.build                          | 943 +++++++++++++++++------------------
 meson_options.txt                    |   2 +-
 net/can/meson.build                  |   4 +-
 net/meson.build                      |  10 +-
 plugins/meson.build                  |   4 +-
 qga/meson.build                      |  50 +-
 scsi/meson.build                     |   8 +-
 storage-daemon/meson.build           |   2 +-
 system/meson.build                   |   4 +-
 target/arm/meson.build               |   2 +-
 target/i386/cpu.c                    |   2 +-
 target/i386/cpu.h                    |   5 +-
 target/i386/tcg/cc_helper.c          |   6 +-
 target/i386/tcg/decode-new.c.inc     | 152 ++++--
 target/i386/tcg/decode-new.h         |  29 +-
 target/i386/tcg/emit.c.inc           | 224 +++++++--
 target/i386/tcg/excp_helper.c        |   7 +-
 target/i386/tcg/fpu_helper.c         |  10 +-
 target/i386/tcg/helper-tcg.h         |   3 +-
 target/i386/tcg/int_helper.c         |   8 +-
 target/i386/tcg/misc_helper.c        |   4 +-
 target/i386/tcg/seg_helper.c         |   8 +-
 target/i386/tcg/translate.c          | 160 +++---
 target/mips/meson.build              |   2 +-
 tcg/meson.build                      |   2 +-
 tests/bench/meson.build              |   6 +-
 tests/fp/meson.build                 |   4 +-
 tests/meson.build                    |   4 +-
 tests/plugin/meson.build             |   2 +-
 tests/qemu-iotests/meson.build       |   2 +-
 tests/qtest/meson.build              |  20 +-
 tests/tcg/i386/Makefile.target       |   2 +-
 tests/tcg/i386/test-flags.c          |  37 ++
 tests/unit/meson.build               |   8 +-
 ui/dbus-display1.xml                 |  10 +-
 ui/meson.build                       |  17 +-
 util/meson.build                     |  58 ++-
 69 files changed, 1188 insertions(+), 950 deletions(-)
 create mode 100644 tests/tcg/i386/test-flags.c
-- 
2.43.0


Re: [PULL 00/46] (mostly) target/i386 and meson changes for 2023-12-31
Posted by Peter Maydell 10 months, 3 weeks ago
On Sun, 31 Dec 2023 at 08:50, Paolo Bonzini <pbonzini@redhat.com> wrote:
>
> The following changes since commit 191710c221f65b1542f6ea7fa4d30dde6e134fd7:
>
>   Merge tag 'pull-request-2023-12-20' of https://gitlab.com/thuth/qemu into staging (2023-12-20 09:40:16 -0500)
>
> are available in the Git repository at:
>
>   https://gitlab.com/bonzini/qemu.git tags/for-upstream
>
> for you to fetch changes up to f705c1f25d9a075534f8279048082af4ce2066bf:
>
>   meson.build: report graphics backends separately (2023-12-31 09:11:29 +0100)
>
> ----------------------------------------------------------------
> * configure: use a native non-cross compiler for linux-user
> * meson: cleanups
> * target/i386: miscellaneous cleanups and optimizations
> * target/i386: implement CMPccXADD
> * target/i386: the sgx_epc_get_section stub is reachable
> * esp: check for NULL result from scsi_device_find()
>


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/9.0
for any user-visible changes.

-- PMM