tcg-mips: Add bswap32u and bswap64
Without the mips32r2 instructions to perform swapping, bswap is quite large, dominating the size of each reverse-endian qemu_ld/qemu_st operation. Create two subroutines in the prologue block. The subroutines require extra reserved registers (TCG_TMP[2, 3]). Using these within qemu_ld means that we need not place additional restrictions on the qemu_ld outputs. Tested-by:Aurelien Jarno <aurelien@aurel32.net> Tested-by:
James Hogan <james.hogan@imgtec.com> Tested-by:
YunQiang Su <wzssyqa@gmail.com> Signed-off-by:
Richard Henderson <rth@twiddle.net> Signed-off-by:
Jin Guojie <jinguojie@loongson.cn> Message-Id: <1483592275-4496-5-git-send-email-jinguojie@loongson.cn>
Loading
Please register or sign in to comment