All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull
@ 2018-07-20  4:03 Richard Henderson
  2018-07-20  4:03 ` [Qemu-devel] [PULL for-3.0 1/1] tcg/aarch64: limit mul_vec size Richard Henderson
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Richard Henderson @ 2018-07-20  4:03 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell

Just one patch for rc2, fixing a bug with an aarch64 host
emulating sve instructions.


r~


The following changes since commit e1ea55668ffe6ce558a063f3a9621b761738e1f2:

  Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging (2018-07-19 15:38:06 +0100)

are available in the Git repository at:

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

for you to fetch changes up to e65a5f227d77a5dbae7a7123c3ee915ee4bd80cf:

  tcg/aarch64: limit mul_vec size (2018-07-19 09:07:31 -0700)

----------------------------------------------------------------
Fix aarch64 host vector mul

----------------------------------------------------------------
Alex Bennée (1):
      tcg/aarch64: limit mul_vec size

 tcg/aarch64/tcg-target.inc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Qemu-devel] [PULL for-3.0 1/1] tcg/aarch64: limit mul_vec size
  2018-07-20  4:03 [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull Richard Henderson
@ 2018-07-20  4:03 ` Richard Henderson
  2018-07-20  4:16 ` [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull no-reply
  2018-07-20 10:58 ` Peter Maydell
  2 siblings, 0 replies; 4+ messages in thread
From: Richard Henderson @ 2018-07-20  4:03 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, Alex Bennée

From: Alex Bennée <alex.bennee@linaro.org>

In AdvSIMD we can only do 32x32 integer multiples although SVE is
capable of larger 64 bit multiples. As a result we can end up
generating invalid opcodes. Fix this by only reprting we can emit
mul vector ops if the size is small enough.

Fixes a crash on:

  sve-all-short-v8.3+sve@vq3/insn_mul_z_zi___INC.risu.bin

When running on AArch64 hardware.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20180719154248.29669-1-alex.bennee@linaro.org>
[rth: Removed the tcg_debug_assert -- there are plenty of other
cases that we do not diagnose within the insn encoding helpers.]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 tcg/aarch64/tcg-target.inc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tcg/aarch64/tcg-target.inc.c b/tcg/aarch64/tcg-target.inc.c
index 4562d36d1b..083592a4d7 100644
--- a/tcg/aarch64/tcg-target.inc.c
+++ b/tcg/aarch64/tcg-target.inc.c
@@ -2219,7 +2219,6 @@ int tcg_can_emit_vec_op(TCGOpcode opc, TCGType type, unsigned vece)
     switch (opc) {
     case INDEX_op_add_vec:
     case INDEX_op_sub_vec:
-    case INDEX_op_mul_vec:
     case INDEX_op_and_vec:
     case INDEX_op_or_vec:
     case INDEX_op_xor_vec:
@@ -2232,6 +2231,8 @@ int tcg_can_emit_vec_op(TCGOpcode opc, TCGType type, unsigned vece)
     case INDEX_op_shri_vec:
     case INDEX_op_sari_vec:
         return 1;
+    case INDEX_op_mul_vec:
+        return vece < MO_64;
 
     default:
         return 0;
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull
  2018-07-20  4:03 [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull Richard Henderson
  2018-07-20  4:03 ` [Qemu-devel] [PULL for-3.0 1/1] tcg/aarch64: limit mul_vec size Richard Henderson
@ 2018-07-20  4:16 ` no-reply
  2018-07-20 10:58 ` Peter Maydell
  2 siblings, 0 replies; 4+ messages in thread
From: no-reply @ 2018-07-20  4:16 UTC (permalink / raw)
  To: richard.henderson; +Cc: famz, qemu-devel, peter.maydell

Hi,

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

Type: series
Message-id: 20180720040337.21426-1-richard.henderson@linaro.org
Subject: [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull

=== TEST SCRIPT BEGIN ===
#!/bin/bash

BASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0

git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram

commits="$(git log --format=%H --reverse $BASE..)"
for c in $commits; do
    echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..."
    if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then
        failed=1
        echo
    fi
    n=$((n+1))
done

exit $failed
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
fatal: unable to access 'https://github.com/patchew-project/qemu/': Encountered end of file
error: Could not fetch 3c8cf5a9c21ff8782164d1def7f44bd888713384
Traceback (most recent call last):
  File "/usr/bin/patchew", line 442, in test_one
    git_clone_repo(clone, r["repo"], r["head"], logf)
  File "/usr/bin/patchew", line 48, in git_clone_repo
    stdout=logf, stderr=logf)
  File "/usr/lib64/python3.6/subprocess.py", line 291, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['git', 'remote', 'add', '-f', '--mirror=fetch', '3c8cf5a9c21ff8782164d1def7f44bd888713384', 'https://github.com/patchew-project/qemu']' returned non-zero exit status 1.



---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull
  2018-07-20  4:03 [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull Richard Henderson
  2018-07-20  4:03 ` [Qemu-devel] [PULL for-3.0 1/1] tcg/aarch64: limit mul_vec size Richard Henderson
  2018-07-20  4:16 ` [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull no-reply
@ 2018-07-20 10:58 ` Peter Maydell
  2 siblings, 0 replies; 4+ messages in thread
From: Peter Maydell @ 2018-07-20 10:58 UTC (permalink / raw)
  To: Richard Henderson; +Cc: QEMU Developers

On 20 July 2018 at 05:03, Richard Henderson
<richard.henderson@linaro.org> wrote:
> Just one patch for rc2, fixing a bug with an aarch64 host
> emulating sve instructions.
>
>
> r~
>
>
> The following changes since commit e1ea55668ffe6ce558a063f3a9621b761738e1f2:
>
>   Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging (2018-07-19 15:38:06 +0100)
>
> are available in the Git repository at:
>
>   https://github.com/rth7680/qemu.git tags/pull-tcg-20180719
>
> for you to fetch changes up to e65a5f227d77a5dbae7a7123c3ee915ee4bd80cf:
>
>   tcg/aarch64: limit mul_vec size (2018-07-19 09:07:31 -0700)
>
> ----------------------------------------------------------------
> Fix aarch64 host vector mul
>
> ----------------------------------------------------------------

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-07-21 16:04 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-20  4:03 [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull Richard Henderson
2018-07-20  4:03 ` [Qemu-devel] [PULL for-3.0 1/1] tcg/aarch64: limit mul_vec size Richard Henderson
2018-07-20  4:16 ` [Qemu-devel] [PULL for-3.0 0/1] tcg-next pull no-reply
2018-07-20 10:58 ` Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.