All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] Convert MUL/DIV to fastop
@ 2013-02-09  9:31 Avi Kivity
  2013-02-09  9:31 ` [PATCH 1/8] KVM: x86 emulator: add support for writing back the source operand Avi Kivity
                   ` (7 more replies)
  0 siblings, 8 replies; 13+ messages in thread
From: Avi Kivity @ 2013-02-09  9:31 UTC (permalink / raw)
  To: Gleb Natapov, Marcelo Tosatti; +Cc: kvm

This patchset converts MUL/DIV to fastop.  We depart from the plan, which
was to encode rdx:rax as a single operand, and instead encode it as two
separate operands.  This reduces register pressure on i386, and is simpler
besides.

As a bonus, XADD is converted as well.

The series results in a nice code size reduction:

  60147	      0	      0	  60147	   eaf3	arch/x86/kvm/emulate.o.before
  56899	      0	      0	  56899	   de43	arch/x86/kvm/emulate.o.after


Avi Kivity (8):
  KVM: x86 emulator: add support for writing back the source operand
  KVM: x86 emulator: decode extended accumulator explicity
  KVM: x86 emulator: switch MUL/DIV to DstXacc
  KVM: x86 emulator: Switch fastop src operand to RDX
  KVM: x86 emulator: convert single-operand MUL/IMUL to fastop
  KVM: x86 emulator: convert DIV/IDIV to fastop
  KVM: x86 emulator: drop unused old-style inline emulation
  KVM: x86 emulator: convert XADD to fastop

 arch/x86/kvm/emulate.c | 388 ++++++++++++++-----------------------------------
 1 file changed, 106 insertions(+), 282 deletions(-)

-- 
1.8.1.2


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2013-05-20 12:32 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-09  9:31 [PATCH 0/8] Convert MUL/DIV to fastop Avi Kivity
2013-02-09  9:31 ` [PATCH 1/8] KVM: x86 emulator: add support for writing back the source operand Avi Kivity
2013-02-10 11:56   ` Gleb Natapov
2013-02-09  9:31 ` [PATCH 2/8] KVM: x86 emulator: decode extended accumulator explicity Avi Kivity
2013-02-10 12:19   ` Gleb Natapov
2013-05-20 12:32     ` Gleb Natapov
2013-02-09  9:31 ` [PATCH 3/8] KVM: x86 emulator: switch MUL/DIV to DstXacc Avi Kivity
2013-02-09  9:31 ` [PATCH 4/8] KVM: x86 emulator: Switch fastop src operand to RDX Avi Kivity
2013-02-09  9:31 ` [PATCH 5/8] KVM: x86 emulator: convert single-operand MUL/IMUL to fastop Avi Kivity
2013-02-09  9:31 ` [PATCH 6/8] KVM: x86 emulator: convert DIV/IDIV " Avi Kivity
2013-02-10 12:26   ` Gleb Natapov
2013-02-09  9:31 ` [PATCH 7/8] KVM: x86 emulator: drop unused old-style inline emulation Avi Kivity
2013-02-09  9:31 ` [PATCH 8/8] KVM: x86 emulator: convert XADD to fastop Avi Kivity

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.