On Tue, May 07, 2019 at 10:48:11AM +1000, Anton Blanchard wrote: > A recent cleanup changed the pre zeroing of the result from 64 bit > to 32 bit operations: > > - result.u64[i] = 0; > + result.VsrW(i) = 0; > > This corrupts the result. > > Fixes: 60594fea298d ("target/ppc: remove various HOST_WORDS_BIGENDIAN hacks > in int_helper.c") > Signed-off-by: Anton Blanchard <an...@ozlabs.org>
Applied, thanks. > --- > target/ppc/int_helper.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/target/ppc/int_helper.c b/target/ppc/int_helper.c > index 111586c981..b8b3279f71 100644 > --- a/target/ppc/int_helper.c > +++ b/target/ppc/int_helper.c > @@ -2038,7 +2038,7 @@ void helper_vsum2sws(CPUPPCState *env, ppc_avr_t *r, > ppc_avr_t *a, ppc_avr_t *b) > for (i = 0; i < ARRAY_SIZE(r->u64); i++) { > int64_t t = (int64_t)b->VsrSW(upper + i * 2); > > - result.VsrW(i) = 0; > + result.VsrD(i) = 0; > for (j = 0; j < ARRAY_SIZE(r->u64); j++) { > t += a->VsrSW(2 * i + j); > } -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature