All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] [RFC] target-ppc: fix RFI by clearing TGPR and ILE
@ 2010-04-23 16:09 Thomas Monjalon
  0 siblings, 0 replies; only message in thread
From: Thomas Monjalon @ 2010-04-23 16:09 UTC (permalink / raw)
  To: qemu-devel; +Cc: Blue Swirl

From: Thomas Monjalon <thomas@monjalon.net>

Since commit 2ada0ed, the PPC processors which have TGPR support
should be broken because the bit TGPR was not cleared.

After testing with e300, it seems that ILE should be cleared also.

Feedbacks welcomed, thanks.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
 target-ppc/op_helper.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/target-ppc/op_helper.c b/target-ppc/op_helper.c
index 8f2ee98..22d7530 100644
--- a/target-ppc/op_helper.c
+++ b/target-ppc/op_helper.c
@@ -1645,8 +1645,10 @@ static inline void do_rfi(target_ulong nip, target_ulong msr,
 
 void helper_rfi (void)
 {
-    do_rfi(env->spr[SPR_SRR0], env->spr[SPR_SRR1],
-           ~((target_ulong)0x0), 1);
+    target_ulong msrm = 1 << MSR_ILE;
+    if (env->flags & POWERPC_FLAG_TGPR)
+       msrm |= 1 << MSR_TGPR;
+    do_rfi(env->spr[SPR_SRR0], env->spr[SPR_SRR1], ~((target_ulong)msrm), 1);
 }
 
 #if defined(TARGET_PPC64)
-- 
1.7.0.6

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2010-04-23 16:09 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-04-23 16:09 [Qemu-devel] [PATCH] [RFC] target-ppc: fix RFI by clearing TGPR and ILE Thomas Monjalon

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.