qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 for-2.4 0/2] Implement YIELD to yield in ARM and Thumb translators
@ 2015-06-30 13:51 Peter Maydell
  2015-06-30 13:51 ` [Qemu-devel] [PATCH v2 for-2.4 1/2] target-arm: Split DISAS_YIELD from DISAS_WFE Peter Maydell
  2015-06-30 13:51 ` [Qemu-devel] [PATCH v2 for-2.4 2/2] target-arm: Implement YIELD insn to yield in ARM and Thumb translators Peter Maydell
  0 siblings, 2 replies; 5+ messages in thread
From: Peter Maydell @ 2015-06-30 13:51 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Crosthwaite, patches

This patchset makes the ARM and Thumb encodings of the YIELD hint
instruction in the ARM cause the TCG CPU to yield control back
to the top level loop. This brings them into line with the A64
encoding which already did this.

Patch 1 splits out DISAS_YIELD from DISAS_WFE, because although
we currently implement them both the same way they're semantically
different, and in future we might well make WFE do something
else. (In particular when I was reviewing Greg's patches that
proposed enabling trap-to-EL2-on-WFE I didn't notice that we
would also have ended up trapping on YIELD !)

Changes v1->v2:
 * split the CPUARMState->CPUState casting into two lines as
   requested by Andreas
 * make HELPER(wfe) call HELPER(yield) and put the comments about
   wfe in the former, not the latter, as suggested by Peter C

This seems worth putting into 2.4 to me, since it's fairly minor
and a bugfix of sorts.

Peter Maydell (2):
  target-arm: Split DISAS_YIELD from DISAS_WFE
  target-arm: Implement YIELD insn to yield in ARM and Thumb translators

 target-arm/helper.h        |  1 +
 target-arm/op_helper.c     | 18 +++++++++++++++---
 target-arm/translate-a64.c |  6 ++++++
 target-arm/translate.c     |  7 +++++++
 target-arm/translate.h     |  1 +
 5 files changed, 30 insertions(+), 3 deletions(-)

-- 
1.9.1

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

end of thread, other threads:[~2015-06-30 17:40 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-30 13:51 [Qemu-devel] [PATCH v2 for-2.4 0/2] Implement YIELD to yield in ARM and Thumb translators Peter Maydell
2015-06-30 13:51 ` [Qemu-devel] [PATCH v2 for-2.4 1/2] target-arm: Split DISAS_YIELD from DISAS_WFE Peter Maydell
2015-06-30 17:39   ` Peter Crosthwaite
2015-06-30 13:51 ` [Qemu-devel] [PATCH v2 for-2.4 2/2] target-arm: Implement YIELD insn to yield in ARM and Thumb translators Peter Maydell
2015-06-30 17:40   ` Peter Crosthwaite

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).