SMUAD and SMLAD are supposed to set the Q bit if the addition of the two 16x16 multiply products and optional accumulator overflows considered as a signed value. However we were only doing this check for the addition of the accumulator, not when adding the products, with the effect that we were mishandling the edge case where both inputs are 0x80008000. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> |
||
---|---|---|
.. | ||
cpu.h | ||
exec.h | ||
helper.c | ||
helpers.h | ||
iwmmxt_helper.c | ||
machine.c | ||
neon_helper.c | ||
op_addsub.h | ||
op_helper.c | ||
translate.c |