qemu-e2k/target
Paul Brook d1da229ff1 i386: pcmpestr 64-bit sign extension bug
The abs1 function in ops_sse.h only works sorrectly when the result fits
in a signed int. This is fine most of the time because we're only dealing
with byte sized values.

However pcmp_elen helper function uses abs1 to calculate the absolute value
of a cpu register. This incorrectly truncates to 32 bits, and will give
the wrong anser for the most negative value.

Fix by open coding the saturation check before taking the absolute value.

Signed-off-by: Paul Brook <paul@nowt.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-04-28 08:51:56 +02:00
..
alpha
arm target/arm: Use tcg_constant_i32 in translate.h 2022-04-22 14:44:55 +01:00
avr
cris
hexagon
hppa
i386 i386: pcmpestr 64-bit sign extension bug 2022-04-28 08:51:56 +02:00
m68k
microblaze
mips target/mips: Remove stale TODO file 2022-04-26 12:36:04 +02:00
nios2 target/nios2: Advance pc when raising exceptions 2022-04-26 08:17:05 -07:00
openrisc
ppc
riscv
rx
s390x target/s390x: Fix the accumulation of ccm in op_icm 2022-04-26 19:58:43 -07:00
sh4
sparc
tricore
xtensa
Kconfig
meson.build