linux/arch/x86/kvm
Bandan Das 41061cdb98 KVM: emulate: do not initialize memopp
rip_relative is only set if decode_modrm runs, and if you have ModRM
you will also have a memopp.  We can then access memopp unconditionally.
Note that rip_relative cannot be hoisted up to decode_modrm, or you
break "mov $0, xyz(%rip)".

Also, move typecast on "out of range value" of mem.ea to decode_modrm.

Together, all these optimizations save about 50 cycles on each emulated
instructions (4-6%).

Signed-off-by: Bandan Das <bsd@redhat.com>
[Fix immediate operands with rip-relative addressing. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-07-11 09:14:01 +02:00
..
cpuid.c kvm: x86: emulate monitor and mwait instructions as nop 2014-05-08 15:40:49 +02:00
cpuid.h KVM: x86: Mark bit 7 in long-mode PDPTE according to 1GB pages support 2014-05-07 17:25:22 +02:00
emulate.c KVM: emulate: do not initialize memopp 2014-07-11 09:14:01 +02:00
i8254.c KVM: x86: limit PIT timer frequency 2014-01-15 12:43:54 +01:00
i8254.h KVM: fold kvm_pit_timer into kvm_kpit_state 2012-08-01 00:21:07 -03:00
i8259.c KVM: inject ExtINT interrupt before APIC interrupts 2012-12-13 23:05:21 -02:00
irq.c KVM: nVMX: Ack and write vector info to intr_info if L1 asks us to 2014-04-22 18:41:33 -03:00
irq.h KVM: switch to symbolic name for irq_states size 2012-07-20 16:12:16 -03:00
Kconfig kvm: make KVM_MMU_AUDIT help text more readable 2014-01-20 12:59:26 +01:00
kvm_cache_regs.h KVM: MMU: Do not unconditionally read PDPTE from guest memory 2011-09-25 19:18:01 +03:00
lapic.c KVM: x86: Fix lapic.c debug prints 2014-07-09 18:09:57 +02:00
lapic.h KVM: x86: Validate guest writes to MSR_IA32_APICBASE 2014-01-27 14:39:44 +01:00
Makefile kvm: Add VFIO device 2013-10-30 19:02:03 +01:00
mmu_audit.c kvm: mmu: delay mmu audit activation 2013-11-20 11:12:56 +02:00
mmu.c KVM: x86: Mark bit 7 in long-mode PDPTE according to 1GB pages support 2014-05-07 17:25:22 +02:00
mmu.h KVM: MMU: flush tlb out of mmu lock when write-protect the sptes 2014-04-23 17:49:52 -03:00
mmutrace.h KVM: MMU: add tracepoint for check_mmio_spte 2013-06-27 14:20:37 +03:00
paging_tmpl.h Revert "KVM: Simplify kvm->tlbs_dirty handling" 2014-04-23 17:49:48 -03:00
pmu.c KVM: x86: rdpmc emulation checks the counter incorrectly 2014-06-18 17:46:18 +02:00
svm.c KVM: x86: return all bits from get_interrupt_shadow 2014-07-11 09:13:56 +02:00
trace.h KVM: x86: improve the usability of the 'kvm_pio' tracepoint 2014-05-05 22:42:05 +02:00
tss.h
vmx.c KVM: x86: return all bits from get_interrupt_shadow 2014-07-11 09:13:56 +02:00
x86.c KVM: emulate: move init_decode_cache to emulate.c 2014-07-11 09:13:59 +02:00
x86.h KVM: vmx: vmx instructions handling does not consider cs.l 2014-06-19 12:52:15 +02:00