include/exec/memory: extract devend_big_endian from devend_memop

we'll use it in system/memory.c.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20250317183417.285700-16-pierrick.bouvier@linaro.org>
This commit is contained in:
Pierrick Bouvier
2025-04-23 13:52:37 -07:00
committed by Richard Henderson
parent 822baa8242
commit 5519a52c0c
+12 -6
View File
@@ -3138,16 +3138,22 @@ address_space_write_cached(MemoryRegionCache *cache, hwaddr addr,
MemTxResult address_space_set(AddressSpace *as, hwaddr addr,
uint8_t c, hwaddr len, MemTxAttrs attrs);
/* enum device_endian to MemOp. */
static inline MemOp devend_memop(enum device_endian end)
/* returns true if end is big endian. */
static inline bool devend_big_endian(enum device_endian end)
{
QEMU_BUILD_BUG_ON(DEVICE_HOST_ENDIAN != DEVICE_LITTLE_ENDIAN &&
DEVICE_HOST_ENDIAN != DEVICE_BIG_ENDIAN);
bool big_endian = (end == DEVICE_NATIVE_ENDIAN
? target_words_bigendian()
: end == DEVICE_BIG_ENDIAN);
return big_endian ? MO_BE : MO_LE;
if (end == DEVICE_NATIVE_ENDIAN) {
return target_words_bigendian();
}
return end == DEVICE_BIG_ENDIAN;
}
/* enum device_endian to MemOp. */
static inline MemOp devend_memop(enum device_endian end)
{
return devend_big_endian(end) ? MO_BE : MO_LE;
}
/*