qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] [PATCH 0/4] target-arm: get IT bits right at exceptions
Date: Mon, 10 Jan 2011 23:11:48 +0000	[thread overview]
Message-ID: <1294701112-14071-1-git-send-email-peter.maydell@linaro.org> (raw)

This patchset (when combined with my previous patchset "Translate
based on TB flags, not CPUState") is a fix for
https://bugs.launchpad.net/qemu/+bug/581335
where we were not getting the IT (conditional execution) bits in
the CPSR right when we took an unexpected exception in Thumb mode.

The linux-user patch fixes an issue exposed by fixing this, where we
weren't clearing the IT bits before entering the signal handler, so
that if we took the signal inside an IT block the first part of the
signal handler wouldn't be executed.

The first two patches in the series and the long comment in patch 4
are aimed at making it a bit clearer how we handle the IT bits; it
took me quite a long time to figure out exactly what the existing
code was doing...

Peter Maydell (4):
  target-arm: Remove redundant setting of IT bits before Thumb SWI
  target-arm: Refactor translation of exception generating instructions
  linux-user: ARM: clear the IT bits when invoking a signal handler
  target-arm: Restore IT bits when resuming after an exception

 linux-user/signal.c    |   16 +++++----
 target-arm/translate.c |   80 ++++++++++++++++++++++++++++++-----------------
 2 files changed, 60 insertions(+), 36 deletions(-)

             reply	other threads:[~2011-01-10 23:11 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-10 23:11 Peter Maydell [this message]
2011-01-10 23:11 ` [Qemu-devel] [PATCH 1/4] target-arm: Remove redundant setting of IT bits before Thumb SWI Peter Maydell
2011-01-11 23:06   ` Aurelien Jarno
2011-01-10 23:11 ` [Qemu-devel] [PATCH 2/4] target-arm: Refactor translation of exception generating instructions Peter Maydell
2011-01-11 23:07   ` Aurelien Jarno
2011-01-10 23:11 ` [Qemu-devel] [PATCH 3/4] linux-user: ARM: clear the IT bits when invoking a signal handler Peter Maydell
2011-01-11 23:09   ` Aurelien Jarno
2011-01-10 23:11 ` [Qemu-devel] [PATCH 4/4] target-arm: Restore IT bits when resuming after an exception Peter Maydell
2011-01-11 23:32   ` Aurelien Jarno
2011-01-14 19:40 ` [Qemu-devel] [PATCH 0/4] target-arm: get IT bits right at exceptions Aurelien Jarno

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1294701112-14071-1-git-send-email-peter.maydell@linaro.org \
    --to=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).