[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 2/2] target-mips: Misaligned memory accesses
Re: [Qemu-devel] [PATCH v2 2/2] target-mips: Misaligned memory accesses for MSA
Tue, 12 May 2015 08:38:30 -0700
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0
On 05/12/2015 02:54 AM, Peter Maydell wrote:
> Ideally it would be nice to have support in TCG so that a frontend
> could output a TCG load/store op with a flag for "unaligned access
> OK" or not. ARM also has this issue of some load/stores wanting to
> do alignment traps and some not.
Yes, that would be ideal.
As I was looking at softmmu_template.h for Peter C this morning, I was
wondering about that possibility, since he would be needing to hook
cpu_unaligned_access and the #ifdef ALIGNED_ONLY would need to go away.
What we can't afford is yet another parameter to the helpers. So I turn my eye
to the mmu_idx parameter, of which we're only using a couple of bits.
What if we merge mmu_idx with TCGMemOp as a parameter, at the tcg-op.h
interface? Save a tiny bit o space within the tcg opcode buffer. We'd have to
teach each backend to pull them apart when generating code, but that's trivial.
But in the end, the helpers have all the info that the code generator did wrt
Then we add an "aligned" bit to TCGMemOp and use it instead of ifdef