unicorn/qemu
Richard Henderson b358f771f6 tcg/i386: Bound shift count expanding sari_vec
A given RISU testcase for SVE can produce

tcg-op-vec.c:511: do_shifti: Assertion `i >= 0 && i < (8 << vece)' failed.

because expand_vec_sari gave a shift count of 32 to a MO_32
vector shift.

In 44f1441dbe1, we changed from direct expansion of vector opcodes
to re-use of the tcg expanders. So while the comment correctly notes
that the hw will handle such a shift count, we now have to take our
own sanity checks into account. Which is easy in this particular case.

Fixes: 44f1441dbe1

Backports commit 312b426fea4d6dd322d7472c80010a8ba7a166d2 from qemu
2020-04-30 06:26:42 -04:00
..
accel Ensure that PC is not fixed up when code tracing or timing. (#1179) 2020-01-14 09:52:25 -05:00
crypto
default-configs
docs docs/devel/memory.txt: Document _with_attrs accessors 2018-10-04 04:46:26 -04:00
fpu fpu: rename softfloat-specialize.h -> .inc.c 2019-11-18 21:12:30 -05:00
hw Expose different 32-bit ARM CPU models to users via UC_MODE flags (#1165) 2020-01-14 09:37:21 -05:00
include tcg: Add support for a helper with 7 arguments 2020-03-21 16:53:56 -04:00
qapi
qobject
qom
scripts
target target/arm: don't bother with id_aa64pfr0_read for USER_ONLY 2020-04-30 06:24:10 -04:00
tcg tcg/i386: Bound shift count expanding sari_vec 2020-04-30 06:26:42 -04:00
util util/cutils: Turn FIXME comment into QEMU_BUILD_BUG_ON() 2020-01-14 08:04:30 -05:00
aarch64.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
aarch64eb.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
accel.c clean-up: removed duplicate #includes 2018-02-28 08:51:56 -05:00
arm.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
armeb.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
CODING_STYLE.rst
configure configure: Require Python >= 3.5 2020-01-14 08:09:23 -05:00
COPYING
COPYING.LIB
cpus.c Include qapi/error.h exactly where needed 2018-03-07 12:26:38 -05:00
exec.c Memory: Enable writeback for given memory region 2020-01-14 07:44:24 -05:00
gen_all_header.sh
glib_compat.c target/arm: Add VHE system register redirection and aliasing 2020-03-21 15:57:03 -04:00
header_gen.py header_gen: Add gen_{u,s}shl_i{32,64} to arm 2020-04-13 19:38:59 +01:00
ioport.c
LICENSE
m68k.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
Makefile Makefile: Rename targets for make recursion 2019-08-08 17:26:49 -04:00
Makefile.objs
Makefile.target
memory_ldst.inc.c memory: Single byte swap along the I/O path 2020-01-07 19:12:04 -05:00
memory_mapping.c
memory.c Memory: Enable writeback for given memory region 2020-01-14 07:44:24 -05:00
mips64.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
mips64el.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
mips.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
mipsel.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
powerpc.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
qemu-timer.c
riscv32.h target/riscv: Emulate TIME CSRs for privileged mode 2020-03-22 02:22:17 -04:00
riscv64.h target/riscv: Emulate TIME CSRs for privileged mode 2020-03-22 02:22:17 -04:00
rules.mak
sparc64.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
sparc.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00
unicorn_common.h
VERSION Open 5.0 development tree 2020-01-07 17:50:51 -05:00
vl.c
vl.h
x86_64.h target/arm: Convert PMULL.8 to gvec 2020-03-21 19:35:46 -04:00