diff options
author | Richard Henderson | 2019-03-23 08:46:23 +0100 |
---|---|---|
committer | Richard Henderson | 2019-06-10 16:03:42 +0200 |
commit | 057b6e370b0947613b0e829c0bb0ddf960003d15 (patch) | |
tree | 9ce1f90e582471cb99a282f815216241591f488b /hw/misc/mips_cpc.c | |
parent | tcg/aarch64: Use LDP to load tlb mask+table (diff) | |
download | qemu-057b6e370b0947613b0e829c0bb0ddf960003d15.tar.gz qemu-057b6e370b0947613b0e829c0bb0ddf960003d15.tar.xz qemu-057b6e370b0947613b0e829c0bb0ddf960003d15.zip |
tcg/arm: Use LDRD to load tlb mask+table
This changes the code generation for the tlb from e.g.
ldr ip, [r6, #-0x10]
ldr r2, [r6, #-0xc]
and ip, ip, r4, lsr #8
ldrd r0, r1, [r2, ip]!
ldr r2, [r2, #0x18]
to
ldrd r0, r1, [r6, #-0x10]
and r0, r0, r4, lsr #8
ldrd r2, r3, [r1, r0]!
ldr r1, [r1, #0x18]
for armv7 hosts. Rearranging the register allocation in
order to avoid overlap between the two ldrd pairs causes
the patch to be larger than it ordinarily would be.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'hw/misc/mips_cpc.c')
0 files changed, 0 insertions, 0 deletions