On Sat, Sep 24, 2022 at 10:56 PM Richard Henderson <richard.hender...@linaro.org> wrote: > > On 9/20/22 17:24, Paolo Bonzini wrote: > > For LDDQU, using gen_load_sse directly might corrupt the register if > > the second part of the load fails. > > Surely LDDQU is not unique in this? I would think ldo/ldy both need fixing > to load to > temps first.
The only other case with an M operand is MOVNTDQA, which is aligned and therefore in principle should not fail due to a page fault on the second half. However, it is still possible to have a race so I'll change it. Other loads use a W operand, for which the gen_load_sse() is always performed by the generic code in gen_load(). In that case the gen_load_sse() is always directed at xmm_t0. Paolo