qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v2 for-2.4 0/2] Implement YIELD to yield in ARM and


From: Peter Maydell
Subject: [Qemu-devel] [PATCH v2 for-2.4 0/2] Implement YIELD to yield in ARM and Thumb translators
Date: Tue, 30 Jun 2015 14:51:54 +0100

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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]