d0ebde22 | 30-Aug-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Move load of tlb addend into tcg_out_tlb_read
This allows us to make more intelligent decisions about the relative offsets of the tlb comparator and the addend, avoiding any need of writeba
tcg-arm: Move load of tlb addend into tcg_out_tlb_read
This allows us to make more intelligent decisions about the relative offsets of the tlb comparator and the addend, avoiding any need of writeback addressing.
Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
f2488736 | 28-Aug-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Use QEMU_BUILD_BUG_ON to verify constraints on tlb
One of the two constraints we already checked via #if, but the tlb offset distance was only checked at runtime.
Signed-off-by: Richard He
tcg-arm: Use QEMU_BUILD_BUG_ON to verify constraints on tlb
One of the two constraints we already checked via #if, but the tlb offset distance was only checked at runtime.
Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
d9f4dde4 | 27-Jul-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Rearrange slow-path qemu_ld/st
Use the new helper_ret_*_mmu routines. Use a conditional call to arrange for a tail-call from the store path, and to load the return address for the helper f
tcg-arm: Rearrange slow-path qemu_ld/st
Use the new helper_ret_*_mmu routines. Use a conditional call to arrange for a tail-call from the store path, and to load the return address for the helper for the load path.
Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
1e709f38 | 06-Jun-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Use AT_PLATFORM to detect the host ISA
With this we can generate armv7 insns even when the OS compiles for a lower common denominator. The macros are arranged so that when we do compile fo
tcg-arm: Use AT_PLATFORM to detect the host ISA
With this we can generate armv7 insns even when the OS compiles for a lower common denominator. The macros are arranged so that when we do compile for a given ISA, all of the runtime checks for that ISA are optimized away.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
cb91021a | 06-Jun-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Simplify logic in detecting the ARM ISA in use
GCC 4.8 defines a handy __ARM_ARCH symbol that we can use, which will make us nicely forward compatible with ARMv8 AArch32.
Reviewed-by: Pete
tcg-arm: Simplify logic in detecting the ARM ISA in use
GCC 4.8 defines a handy __ARM_ARCH symbol that we can use, which will make us nicely forward compatible with ARMv8 AArch32.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
fb822738 | 04-Jul-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Rename use_armv5_instructions to use_armvt5_instructions
As it really controls the availability of a thumb interworking instruction on armv5t.
Reviewed-by: Peter Maydell <peter.maydell@lin
tcg-arm: Rename use_armv5_instructions to use_armvt5_instructions
As it really controls the availability of a thumb interworking instruction on armv5t.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
72e1ccfc | 02-May-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Make use of conditional availability of opcodes for divide
We can now detect and use divide instructions at runtime, rather than having to restrict their availability to compile-time.
Revi
tcg-arm: Make use of conditional availability of opcodes for divide
We can now detect and use divide instructions at runtime, rather than having to restrict their availability to compile-time.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
c9e53a4c | 29-Apr-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Use movi32 in exit_tb
Avoid the mini constant pool for armv7, and avoid replicating the test for pre-v7.
Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <a
tcg-arm: Use movi32 in exit_tb
Avoid the mini constant pool for armv7, and avoid replicating the test for pre-v7.
Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
df5e0ef7 | 13-Mar-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Convert to CONFIG_QEMU_LDST_OPTIMIZATION
Move the slow path out of line, as the TODO's mention. This allows the fast path to be unconditional, which can speed up the fast path as well, depe
tcg-arm: Convert to CONFIG_QEMU_LDST_OPTIMIZATION
Move the slow path out of line, as the TODO's mention. This allows the fast path to be unconditional, which can speed up the fast path as well, depending on the core.
Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
302fdde7 | 13-Mar-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Use movi32 + blx for calls on v7
Work better with branch predition when we have movw+movt, as the size of the code is the same. Perhaps re-evaluate when we have a proper constant pool.
Re
tcg-arm: Use movi32 + blx for calls on v7
Work better with branch predition when we have movw+movt, as the size of the code is the same. Perhaps re-evaluate when we have a proper constant pool.
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|
702b33b1 | 13-Mar-2013 |
Richard Henderson <rth@twiddle.net> |
tcg-arm: Improve scheduling of tcg_out_tlb_read
The schedule was fully serial, with no possibility for dual issue. The old schedule had a minimal issue of 7 cycles; the new schedule has a minimal is
tcg-arm: Improve scheduling of tcg_out_tlb_read
The schedule was fully serial, with no possibility for dual issue. The old schedule had a minimal issue of 7 cycles; the new schedule has a minimal issue of 5 cycles.
Signed-off-by: Richard Henderson <rth@twiddle.net>
show more ...
|