qemu/target-s390x
Aurelien Jarno a3084e8055 target-s390x: use softmmu functions for mvcp/mvcs
mvcp and mvcs helper get access to the physical memory by a call to
mmu_translate for the virtual to real conversion and then using ldb_phys
and stb_phys to physically access the data. In practice this is quite
slow because it bypasses the QEMU softmmu TLB and because stb_phys calls
try to invalidate the corresponding memory for each access.

Instead use cpu_ldb_{primary,secondary} for the loads and
cpu_stb_{primary,secondary} for the stores. Ideally this should be
further optimized by a call to memcpy, but that already improves the
boot time of a guest by a factor 1.8.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Alexander Graf <agraf@suse.de>
2015-06-05 01:37:59 +02:00
..
arch_dump.c s390x: Add vector registers to ELF dump 2015-05-27 17:52:03 +02:00
cc_helper.c target-s390x: fix CC computation for LOAD POSITIVE instructions 2015-06-05 01:37:57 +02:00
cpu-qom.h s390x/kvm: migrate vcpu interrupt state 2015-05-08 10:36:19 +02:00
cpu.c target-s390x: detect tininess before rounding for FP operations 2015-06-05 01:37:58 +02:00
cpu.h target-s390x: add a cpu_mmu_idx_to_asc function 2015-06-05 01:37:59 +02:00
fpu_helper.c target-s390x: implement LOAD FP INTEGER instructions 2015-06-05 01:37:59 +02:00
gdbstub.c s390x: gdb updates for vector registers 2015-05-27 17:52:03 +02:00
helper.c target-s390x: support non current ASC in s390_cpu_handle_mmu_fault 2015-06-05 01:37:59 +02:00
helper.h target-s390x: implement TRANSLATE EXTENDED instruction 2015-06-05 01:37:59 +02:00
insn-data.def target-s390x: implement high-word facility 2015-06-05 01:37:59 +02:00
insn-format.def target-s390: Add format based disassassmbly infrastructure 2013-01-05 12:00:27 -08:00
int_helper.c target-s390x: remove unused helpers 2015-06-05 01:37:57 +02:00
interrupt.c s390x: Fix sclp console input 2014-11-05 12:01:28 +01:00
ioinst.c s390x/kvm: Support access register mode for KVM_S390_MEM_OP ioctl 2015-04-30 13:21:42 +02:00
ioinst.h s390x/ioinst: Rework memory access in TPI instruction 2015-02-18 09:37:15 +01:00
kvm.c kvm: introduce kvm_arch_msi_data_to_gsi 2015-06-02 14:56:25 +01:00
machine.c s390x: Migrate vector registers 2015-05-27 17:52:03 +02:00
Makefile.objs s390x/mmu: Move mmu_translate() and friends to separate file 2015-02-18 09:36:38 +01:00
mem_helper.c target-s390x: use softmmu functions for mvcp/mvcs 2015-06-05 01:37:59 +02:00
misc_helper.c target-s390x: fix PSW value on dynamical exception from helpers 2015-06-05 01:37:58 +02:00
mmu_helper.c trivial patches for 2015-04-30 2015-04-30 15:18:30 +01:00
translate.c target-s390x: implement high-word facility 2015-06-05 01:37:59 +02:00