mbox series

[v6,00/26] TCI fixes and cleanups

Message ID 20210502235727.1979457-1-richard.henderson@linaro.org
Headers show
Series TCI fixes and cleanups | expand

Message

Richard Henderson May 2, 2021, 11:57 p.m. UTC
Changes since v5:
  * More patches now upstream.
  * Re-work how ffi is used, to avoid breaking plugins.

Changes since v4:
  * 19 more patches now upstream.

Changes since v3:
  * First patch fixes g2h() breakage.  This shows a hole in our CI,
    in that we only build softmmu with TCI, not linux-user.
  * Tidy-up for the magic qemu_ld/st macros.
  * Fix libffi return value case with ffi_arg.

Changes since v2:
  * 20-something patches are now upstream.
  * Increase testing timeout for tci.
  * Gitlab testing for tci w/ 32-bit host.


r~


Richard Henderson (26):
  tcg: Combine dh_is_64bit and dh_is_signed to dh_typecode
  tcg: Add tcg_call_flags
  accel/tcg/plugin-gen: Drop inline markers
  plugins: Drop tcg_flags from struct qemu_plugin_dyn_cb
  accel/tcg: Add tcg call flags to plugins helpers
  tcg: Store the TCGHelperInfo in the TCGOp for call
  tcg: Add tcg_call_func
  tcg: Build ffi data structures for helpers
  tcg/tci: Improve tcg_target_call_clobber_regs
  tcg/tci: Move call-return regs to end of tcg_target_reg_alloc_order
  tcg/tci: Use ffi for calls
  tcg/tci: Reserve r13 for a temporary
  tcg/tci: Emit setcond before brcond
  tcg/tci: Remove tci_write_reg
  tcg/tci: Change encoding to uint32_t units
  tcg/tci: Implement goto_ptr
  tcg/tci: Implement movcond
  tcg/tci: Implement andc, orc, eqv, nand, nor
  tcg/tci: Implement extract, sextract
  tcg/tci: Implement clz, ctz, ctpop
  tcg/tci: Implement mulu2, muls2
  tcg/tci: Implement add2, sub2
  tcg/tci: Split out tci_qemu_ld, tci_qemu_st
  tests/tcg: Increase timeout for TCI
  gitlab: Rename ACCEL_CONFIGURE_OPTS to EXTRA_CONFIGURE_OPTS
  gitlab: Enable cross-i386 builds of TCI

 configure                                     |    3 +
 meson.build                                   |    9 +-
 accel/tcg/plugin-helpers.h                    |    5 +-
 include/exec/helper-head.h                    |   37 +-
 include/exec/helper-tcg.h                     |   34 +-
 include/qemu/plugin.h                         |    1 -
 include/tcg/tcg-opc.h                         |    4 +-
 include/tcg/tcg.h                             |    1 +
 target/hppa/helper.h                          |    3 -
 target/i386/ops_sse_header.h                  |    3 -
 target/m68k/helper.h                          |    1 -
 target/ppc/helper.h                           |    3 -
 tcg/internal.h                                |   50 +
 tcg/tci/tcg-target-con-set.h                  |    1 +
 tcg/tci/tcg-target.h                          |   68 +-
 accel/tcg/plugin-gen.c                        |   20 +-
 plugins/core.c                                |   30 +-
 tcg/optimize.c                                |    3 +-
 tcg/tcg.c                                     |  250 ++--
 tcg/tci.c                                     | 1120 ++++++++---------
 tcg/tci/tcg-target.c.inc                      |  550 ++++----
 .gitlab-ci.d/crossbuilds.yml                  |   21 +-
 tcg/tci/README                                |   20 +-
 tests/docker/dockerfiles/alpine.docker        |    1 +
 tests/docker/dockerfiles/centos7.docker       |    1 +
 tests/docker/dockerfiles/centos8.docker       |    1 +
 tests/docker/dockerfiles/debian10.docker      |    1 +
 .../dockerfiles/fedora-i386-cross.docker      |    1 +
 .../dockerfiles/fedora-win32-cross.docker     |    1 +
 .../dockerfiles/fedora-win64-cross.docker     |    1 +
 tests/docker/dockerfiles/fedora.docker        |    1 +
 tests/docker/dockerfiles/ubuntu.docker        |    1 +
 tests/docker/dockerfiles/ubuntu1804.docker    |    1 +
 tests/docker/dockerfiles/ubuntu2004.docker    |    1 +
 tests/tcg/Makefile.target                     |    6 +-
 35 files changed, 1179 insertions(+), 1075 deletions(-)
 create mode 100644 tcg/internal.h

-- 
2.25.1

Comments

no-reply@patchew.org May 3, 2021, 12:30 a.m. UTC | #1
Patchew URL: https://patchew.org/QEMU/20210502235727.1979457-1-richard.henderson@linaro.org/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20210502235727.1979457-1-richard.henderson@linaro.org
Subject: [PATCH v6 00/26] TCI fixes and cleanups

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git rev-parse base > /dev/null || exit 0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 * [new tag]         patchew/20210502235727.1979457-1-richard.henderson@linaro.org -> patchew/20210502235727.1979457-1-richard.henderson@linaro.org
Switched to a new branch 'test'
01e0405 gitlab: Enable cross-i386 builds of TCI
1882510 gitlab: Rename ACCEL_CONFIGURE_OPTS to EXTRA_CONFIGURE_OPTS
b56eadf tests/tcg: Increase timeout for TCI
fdb1066 tcg/tci: Split out tci_qemu_ld, tci_qemu_st
d6605fd tcg/tci: Implement add2, sub2
f04d4f3 tcg/tci: Implement mulu2, muls2
69fad15 tcg/tci: Implement clz, ctz, ctpop
2fbf686 tcg/tci: Implement extract, sextract
efab217 tcg/tci: Implement andc, orc, eqv, nand, nor
d9aa439 tcg/tci: Implement movcond
2de969d tcg/tci: Implement goto_ptr
64e5e70 tcg/tci: Change encoding to uint32_t units
b1796e1 tcg/tci: Remove tci_write_reg
0e6573e tcg/tci: Emit setcond before brcond
950bc0a tcg/tci: Reserve r13 for a temporary
08cbe1b tcg/tci: Use ffi for calls
53c1179 tcg/tci: Move call-return regs to end of tcg_target_reg_alloc_order
d92a4d6 tcg/tci: Improve tcg_target_call_clobber_regs
e8011a7 tcg: Build ffi data structures for helpers
d93a2d9 tcg: Add tcg_call_func
5667907 tcg: Store the TCGHelperInfo in the TCGOp for call
1d862ba accel/tcg: Add tcg call flags to plugins helpers
b48239a plugins: Drop tcg_flags from struct qemu_plugin_dyn_cb
12c1809 accel/tcg/plugin-gen: Drop inline markers
193076d tcg: Add tcg_call_flags
fb7be00 tcg: Combine dh_is_64bit and dh_is_signed to dh_typecode

=== OUTPUT BEGIN ===
1/26 Checking commit fb7be0073c11 (tcg: Combine dh_is_64bit and dh_is_signed to dh_typecode)
2/26 Checking commit 193076de086e (tcg: Add tcg_call_flags)
Use of uninitialized value $acpi_testexpected in string eq at ./scripts/checkpatch.pl line 1529.
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#19: 
new file mode 100644

total: 0 errors, 1 warnings, 106 lines checked

Patch 2/26 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
3/26 Checking commit 12c18093b594 (accel/tcg/plugin-gen: Drop inline markers)
4/26 Checking commit b48239a1927f (plugins: Drop tcg_flags from struct qemu_plugin_dyn_cb)
5/26 Checking commit 1d862ba71caf (accel/tcg: Add tcg call flags to plugins helpers)
WARNING: line over 80 characters
#25: FILE: accel/tcg/plugin-helpers.h:3:
+DEF_HELPER_FLAGS_4(plugin_vcpu_mem_cb, TCG_CALL_NO_RWG, void, i32, i32, i64, ptr)

total: 0 errors, 1 warnings, 6 lines checked

Patch 5/26 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
6/26 Checking commit 56679077d311 (tcg: Store the TCGHelperInfo in the TCGOp for call)
7/26 Checking commit d93a2d98c62c (tcg: Add tcg_call_func)
8/26 Checking commit e8011a77992c (tcg: Build ffi data structures for helpers)
9/26 Checking commit d92a4d6f27e0 (tcg/tci: Improve tcg_target_call_clobber_regs)
10/26 Checking commit 53c117942812 (tcg/tci: Move call-return regs to end of tcg_target_reg_alloc_order)
11/26 Checking commit 08cbe1bb1ba1 (tcg/tci: Use ffi for calls)
ERROR: suspect code indent for conditional statements (8, 11)
#72: FILE: tcg/tcg.c:2150:
         if (TCG_TARGET_REG_BITS < 64 && is_64bit) {
+           /*

total: 1 errors, 0 warnings, 391 lines checked

Patch 11/26 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

12/26 Checking commit 950bc0a4007a (tcg/tci: Reserve r13 for a temporary)
13/26 Checking commit 0e6573ef0b75 (tcg/tci: Emit setcond before brcond)
14/26 Checking commit b1796e1da907 (tcg/tci: Remove tci_write_reg)
15/26 Checking commit 64e5e709764e (tcg/tci: Change encoding to uint32_t units)
16/26 Checking commit 2de969d06521 (tcg/tci: Implement goto_ptr)
17/26 Checking commit d9aa4393024b (tcg/tci: Implement movcond)
18/26 Checking commit efab21772da5 (tcg/tci: Implement andc, orc, eqv, nand, nor)
19/26 Checking commit 2fbf6868c5d3 (tcg/tci: Implement extract, sextract)
20/26 Checking commit 69fad1503f75 (tcg/tci: Implement clz, ctz, ctpop)
21/26 Checking commit f04d4f3e8da6 (tcg/tci: Implement mulu2, muls2)
22/26 Checking commit d6605fd6acb8 (tcg/tci: Implement add2, sub2)
23/26 Checking commit fdb1066aa804 (tcg/tci: Split out tci_qemu_ld, tci_qemu_st)
24/26 Checking commit b56eadf97378 (tests/tcg: Increase timeout for TCI)
25/26 Checking commit 188251027a70 (gitlab: Rename ACCEL_CONFIGURE_OPTS to EXTRA_CONFIGURE_OPTS)
26/26 Checking commit 01e0405a5819 (gitlab: Enable cross-i386 builds of TCI)
=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20210502235727.1979457-1-richard.henderson@linaro.org/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Philippe Mathieu-Daudé May 15, 2021, 11:01 a.m. UTC | #2
On 5/3/21 1:57 AM, Richard Henderson wrote:
> Richard Henderson (26):

>   tcg: Combine dh_is_64bit and dh_is_signed to dh_typecode

>   tcg: Add tcg_call_flags

>   accel/tcg/plugin-gen: Drop inline markers

>   plugins: Drop tcg_flags from struct qemu_plugin_dyn_cb

>   accel/tcg: Add tcg call flags to plugins helpers

>   tcg: Store the TCGHelperInfo in the TCGOp for call

>   tcg: Add tcg_call_func

>   tcg: Build ffi data structures for helpers

>   tcg/tci: Improve tcg_target_call_clobber_regs

>   tcg/tci: Move call-return regs to end of tcg_target_reg_alloc_order

>   tcg/tci: Use ffi for calls

>   tcg/tci: Reserve r13 for a temporary

>   tcg/tci: Emit setcond before brcond

>   tcg/tci: Remove tci_write_reg

>   tcg/tci: Change encoding to uint32_t units

>   tcg/tci: Implement goto_ptr

>   tcg/tci: Implement movcond

>   tcg/tci: Implement andc, orc, eqv, nand, nor

>   tcg/tci: Implement extract, sextract

>   tcg/tci: Implement clz, ctz, ctpop

>   tcg/tci: Implement mulu2, muls2

>   tcg/tci: Implement add2, sub2

>   tcg/tci: Split out tci_qemu_ld, tci_qemu_st


Patches 1 to 23:
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

(using parisc host).