mirror of https://github.com/xemu-project/xemu.git
target/arm: Support 32-byte alignment in pow2_align
Now that we have removed TARGET_PAGE_BITS_MIN-6 from TLB_FLAGS_MASK, we can test for 32-byte alignment. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20240301204110.656742-2-richard.henderson@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
13d6c073f0
commit
707ded20a2
|
@ -900,13 +900,7 @@ static inline void store_reg_from_load(DisasContext *s, int reg, TCGv_i32 var)
|
||||||
MemOp pow2_align(unsigned i)
|
MemOp pow2_align(unsigned i)
|
||||||
{
|
{
|
||||||
static const MemOp mop_align[] = {
|
static const MemOp mop_align[] = {
|
||||||
0, MO_ALIGN_2, MO_ALIGN_4, MO_ALIGN_8, MO_ALIGN_16,
|
0, MO_ALIGN_2, MO_ALIGN_4, MO_ALIGN_8, MO_ALIGN_16, MO_ALIGN_32
|
||||||
/*
|
|
||||||
* FIXME: TARGET_PAGE_BITS_MIN affects TLB_FLAGS_MASK such
|
|
||||||
* that 256-bit alignment (MO_ALIGN_32) cannot be supported:
|
|
||||||
* see get_alignment_bits(). Enforce only 128-bit alignment for now.
|
|
||||||
*/
|
|
||||||
MO_ALIGN_16
|
|
||||||
};
|
};
|
||||||
g_assert(i < ARRAY_SIZE(mop_align));
|
g_assert(i < ARRAY_SIZE(mop_align));
|
||||||
return mop_align[i];
|
return mop_align[i];
|
||||||
|
|
Loading…
Reference in New Issue