On 30/04/2019 17:32, Richard Henderson wrote: > On 4/28/19 7:38 AM, Mark Cave-Ayland wrote: >> void helper_xxextractuw(CPUPPCState *env, target_ulong xtn, >> target_ulong xbn, uint32_t index) >> { >> - ppc_vsr_t xt, xb; >> + ppc_vsr_t *xt = &env->vsr[xtn]; >> + ppc_vsr_t *xb = &env->vsr[xbn]; >> size_t es = sizeof(uint32_t); >> uint32_t ext_index; >> int i; >> >> - getVSR(xbn, &xb, env); >> - memset(&xt, 0, sizeof(xt)); >> + memset(xt, 0, sizeof(ppc_vsr_t)); > > This fails if xt == xb. > > Similarly for xxinsertw.
Yeah. Again I can easily fix this up with a local variable. ATB, Mark.