[Qemu-devel] [PULL 00/16] tcg queued patches

Richard Henderson posted 16 patches 4 years, 11 months ago
Test FreeBSD passed
Test docker-clang@ubuntu passed
Test s390x passed
Test docker-mingw@fedora passed
Test checkpatch passed
Test asan passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190522222821.23850-1-richard.henderson@linaro.org
Maintainers: Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson <rth@twiddle.net>, Claudio Fontana <claudio.fontana@huawei.com>
accel/tcg/tcg-runtime.h      |   2 +
tcg/aarch64/tcg-target.h     |   2 +
tcg/i386/tcg-target.h        |   2 +
tcg/tcg-op-gvec.h            |   7 +
tcg/tcg-op.h                 |   5 +
tcg/tcg-opc.h                |   5 +-
tcg/tcg.h                    |   2 +
accel/tcg/tcg-runtime-gvec.c |  14 ++
tcg/aarch64/tcg-target.inc.c | 371 ++++++++++++++++++++++++++++++++-----------
tcg/i386/tcg-target.inc.c    | 169 +++++++++++++-------
tcg/tcg-op-gvec.c            |  71 ++++++---
tcg/tcg-op-vec.c             | 142 ++++++++++++++---
tcg/tcg.c                    |   5 +
tcg/README                   |  11 ++
14 files changed, 620 insertions(+), 188 deletions(-)
[Qemu-devel] [PULL 00/16] tcg queued patches
Posted by Richard Henderson 4 years, 11 months ago
The following changes since commit a4f667b6714916683408b983cfe0a615a725775f:

  Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20190521-3' into staging (2019-05-21 16:30:13 +0100)

are available in the Git repository at:

  https://github.com/rth7680/qemu.git tags/pull-tcg-20190522

for you to fetch changes up to 11e2bfef799024be4a08fcf6797fe0b22fb16b58:

  tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store (2019-05-22 15:09:43 -0400)

----------------------------------------------------------------
Misc gvec improvements

----------------------------------------------------------------
Richard Henderson (16):
      tcg/i386: Fix dupi/dupm for avx1 and 32-bit hosts
      tcg: Fix missing checks and clears in tcg_gen_gvec_dup_mem
      tcg: Add support for vector bitwise select
      tcg: Add support for vector compare select
      tcg: Introduce do_op3_nofail for vector expansion
      tcg: Expand vector minmax using cmp+cmpsel
      tcg: Add TCG_OPF_NOT_PRESENT if TCG_TARGET_HAS_foo is negative
      tcg/i386: Support vector comparison select value
      tcg/i386: Remove expansion for missing minmax
      tcg/i386: Use umin/umax in expanding unsigned compare
      tcg/aarch64: Support vector bitwise select value
      tcg/aarch64: Split up is_fimm
      tcg/aarch64: Use MVNI in tcg_out_dupi_vec
      tcg/aarch64: Build vector immediates with two insns
      tcg/aarch64: Allow immediates for vector ORR and BIC
      tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store

 accel/tcg/tcg-runtime.h      |   2 +
 tcg/aarch64/tcg-target.h     |   2 +
 tcg/i386/tcg-target.h        |   2 +
 tcg/tcg-op-gvec.h            |   7 +
 tcg/tcg-op.h                 |   5 +
 tcg/tcg-opc.h                |   5 +-
 tcg/tcg.h                    |   2 +
 accel/tcg/tcg-runtime-gvec.c |  14 ++
 tcg/aarch64/tcg-target.inc.c | 371 ++++++++++++++++++++++++++++++++-----------
 tcg/i386/tcg-target.inc.c    | 169 +++++++++++++-------
 tcg/tcg-op-gvec.c            |  71 ++++++---
 tcg/tcg-op-vec.c             | 142 ++++++++++++++---
 tcg/tcg.c                    |   5 +
 tcg/README                   |  11 ++
 14 files changed, 620 insertions(+), 188 deletions(-)

Re: [Qemu-devel] [PULL 00/16] tcg queued patches
Posted by Aleksandar Markovic 4 years, 11 months ago
On May 23, 2019 12:32 AM, "Richard Henderson" <richard.henderson@linaro.org>
wrote:
>
> The following changes since commit
a4f667b6714916683408b983cfe0a615a725775f:
>
>   Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20190521-3'
into staging (2019-05-21 16:30:13 +0100)
>
> are available in the Git repository at:
>
>   https://github.com/rth7680/qemu.git tags/pull-tcg-20190522
>
> for you to fetch changes up to 11e2bfef799024be4a08fcf6797fe0b22fb16b58:
>
>   tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store (2019-05-22 15:09:43
-0400)
>
> ----------------------------------------------------------------
> Misc gvec improvements
>
> ----------------------------------------------------------------

Why are “Reviewed-by:” lines missing from all patches of this pull request?

Regerds,
Aleksandar

> Richard Henderson (16):
>       tcg/i386: Fix dupi/dupm for avx1 and 32-bit hosts
>       tcg: Fix missing checks and clears in tcg_gen_gvec_dup_mem
>       tcg: Add support for vector bitwise select
>       tcg: Add support for vector compare select
>       tcg: Introduce do_op3_nofail for vector expansion
>       tcg: Expand vector minmax using cmp+cmpsel
>       tcg: Add TCG_OPF_NOT_PRESENT if TCG_TARGET_HAS_foo is negative
>       tcg/i386: Support vector comparison select value
>       tcg/i386: Remove expansion for missing minmax
>       tcg/i386: Use umin/umax in expanding unsigned compare
>       tcg/aarch64: Support vector bitwise select value
>       tcg/aarch64: Split up is_fimm
>       tcg/aarch64: Use MVNI in tcg_out_dupi_vec
>       tcg/aarch64: Build vector immediates with two insns
>       tcg/aarch64: Allow immediates for vector ORR and BIC
>       tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store
>
>  accel/tcg/tcg-runtime.h      |   2 +
>  tcg/aarch64/tcg-target.h     |   2 +
>  tcg/i386/tcg-target.h        |   2 +
>  tcg/tcg-op-gvec.h            |   7 +
>  tcg/tcg-op.h                 |   5 +
>  tcg/tcg-opc.h                |   5 +-
>  tcg/tcg.h                    |   2 +
>  accel/tcg/tcg-runtime-gvec.c |  14 ++
>  tcg/aarch64/tcg-target.inc.c | 371
++++++++++++++++++++++++++++++++-----------
>  tcg/i386/tcg-target.inc.c    | 169 +++++++++++++-------
>  tcg/tcg-op-gvec.c            |  71 ++++++---
>  tcg/tcg-op-vec.c             | 142 ++++++++++++++---
>  tcg/tcg.c                    |   5 +
>  tcg/README                   |  11 ++
>  14 files changed, 620 insertions(+), 188 deletions(-)
>
Re: [Qemu-devel] [PULL 00/16] tcg queued patches
Posted by Richard Henderson 4 years, 11 months ago
On 5/23/19 4:17 AM, Aleksandar Markovic wrote:
> Why are “Reviewed-by:” lines missing from all patches of this pull request?
> 

Because it's hard to get people to review code under tcg/.
I post patches and wait a few days to a week and then give a pull.

This has been true since forever, when I was the only one giving
reviews to Aurelien, and thus wound up with this job when he left.


r~

Re: [Qemu-devel] [PULL 00/16] tcg queued patches
Posted by David Hildenbrand 4 years, 11 months ago
On 23.05.19 00:28, Richard Henderson wrote:
> The following changes since commit a4f667b6714916683408b983cfe0a615a725775f:
> 
>   Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20190521-3' into staging (2019-05-21 16:30:13 +0100)
> 
> are available in the Git repository at:
> 
>   https://github.com/rth7680/qemu.git tags/pull-tcg-20190522
> 
> for you to fetch changes up to 11e2bfef799024be4a08fcf6797fe0b22fb16b58:
> 
>   tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store (2019-05-22 15:09:43 -0400)
> 
> ----------------------------------------------------------------
> Misc gvec improvements
> 
> ----------------------------------------------------------------
> Richard Henderson (16):
>       tcg/i386: Fix dupi/dupm for avx1 and 32-bit hosts
>       tcg: Fix missing checks and clears in tcg_gen_gvec_dup_mem
>       tcg: Add support for vector bitwise select
>       tcg: Add support for vector compare select
>       tcg: Introduce do_op3_nofail for vector expansion
>       tcg: Expand vector minmax using cmp+cmpsel
>       tcg: Add TCG_OPF_NOT_PRESENT if TCG_TARGET_HAS_foo is negative
>       tcg/i386: Support vector comparison select value
>       tcg/i386: Remove expansion for missing minmax
>       tcg/i386: Use umin/umax in expanding unsigned compare
>       tcg/aarch64: Support vector bitwise select value
>       tcg/aarch64: Split up is_fimm
>       tcg/aarch64: Use MVNI in tcg_out_dupi_vec
>       tcg/aarch64: Build vector immediates with two insns
>       tcg/aarch64: Allow immediates for vector ORR and BIC
>       tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store
> 
>  accel/tcg/tcg-runtime.h      |   2 +
>  tcg/aarch64/tcg-target.h     |   2 +
>  tcg/i386/tcg-target.h        |   2 +
>  tcg/tcg-op-gvec.h            |   7 +
>  tcg/tcg-op.h                 |   5 +
>  tcg/tcg-opc.h                |   5 +-
>  tcg/tcg.h                    |   2 +
>  accel/tcg/tcg-runtime-gvec.c |  14 ++
>  tcg/aarch64/tcg-target.inc.c | 371 ++++++++++++++++++++++++++++++++-----------
>  tcg/i386/tcg-target.inc.c    | 169 +++++++++++++-------
>  tcg/tcg-op-gvec.c            |  71 ++++++---
>  tcg/tcg-op-vec.c             | 142 ++++++++++++++---
>  tcg/tcg.c                    |   5 +
>  tcg/README                   |  11 ++
>  14 files changed, 620 insertions(+), 188 deletions(-)
> 

Rebasing my vx branch to latest qemu/master, I get segfaults when trying
to boot a Linux kernel:

[    2.652368] Unpacking initramfs...
Segmentation fault (Speicherabzug geschrieben)


"Auto-loading safe path" section in the GDB manual.  E.g., run from the
shell:
        info "(gdb)Auto-loading safe path"
(gdb) bt
#0  0x00007feb460409d0 in code_gen_buffer ()
#1  0x000055679d5322d3 in cpu_tb_exec (itb=<optimized out>,
cpu=0x7feb46040600 <code_gen_buffer+100926931>)
    at /home/dhildenb/git/qemu/accel/tcg/cpu-exec.c:171
#2  cpu_loop_exec_tb (tb_exit=<synthetic pointer>, last_tb=<synthetic
pointer>, tb=<optimized out>,
    cpu=0x7feb46040600 <code_gen_buffer+100926931>) at
/home/dhildenb/git/qemu/accel/tcg/cpu-exec.c:618
#3  cpu_exec (cpu=cpu@entry=0x55679fb37330) at
/home/dhildenb/git/qemu/accel/tcg/cpu-exec.c:729
#4  0x000055679d4f0ecf in tcg_cpu_exec (cpu=0x55679fb37330) at
/home/dhildenb/git/qemu/cpus.c:1434
#5  0x000055679d4f302b in qemu_tcg_cpu_thread_fn
(arg=arg@entry=0x55679fb37330)
    at /home/dhildenb/git/qemu/cpus.c:1743
#6  0x000055679d79a26a in qemu_thread_start (args=<optimized out>) at
util/qemu-thread-posix.c:502
#7  0x00007febd07a458e in ?? ()
#8  0x0000000000000000 in ?? ()

Any idea what this could be? (this series?)

-- 

Thanks,

David / dhildenb

Re: [Qemu-devel] [PULL 00/16] tcg queued patches
Posted by Peter Maydell 4 years, 11 months ago
On Wed, 22 May 2019 at 23:28, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> The following changes since commit a4f667b6714916683408b983cfe0a615a725775f:
>
>   Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20190521-3' into staging (2019-05-21 16:30:13 +0100)
>
> are available in the Git repository at:
>
>   https://github.com/rth7680/qemu.git tags/pull-tcg-20190522
>
> for you to fetch changes up to 11e2bfef799024be4a08fcf6797fe0b22fb16b58:
>
>   tcg/i386: Use MOVDQA for TCG_TYPE_V128 load/store (2019-05-22 15:09:43 -0400)
>
> ----------------------------------------------------------------
> Misc gvec improvements
>


Applied, thanks.

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

-- PMM