On 8/3/23 06:10, Peter Maydell wrote:
On Thu, 27 Jul 2023 at 17:33, Richard Henderson- mop = MO_128; - if (s->align_mem) { - mop |= MO_ALIGN_8; - } - mop = finalize_memop_pair(s, mop); + mop = MO_128 | MO_ALIGN | MO_ATOM_IFALIGN_PAIR;So here we're implicitly assuming TAG_GRANULE is 16 and then relying on the codegen for a MO_128 | MO_ALIGN operation to give us the alignment fault if the guest address isn't aligned to the tag granule, right ?
Yes.
Previously we also put s->be_data into the MemOp (via finalize_memop_pair() calling finalize_memop_atom()). Don't we still need to do that ?
Whoops, yes. r~
