qemu-ppc
[Top][All Lists]
Advanced

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

Re: [PULL 02/41] target/ppc: 603: fix restore of GPRs 0-3 on rfi


From: Cédric Le Goater
Subject: Re: [PULL 02/41] target/ppc: 603: fix restore of GPRs 0-3 on rfi
Date: Tue, 1 Feb 2022 09:01:39 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.3.0

On 1/31/22 20:08, Mark Cave-Ayland wrote:
On 31/01/2022 17:50, Cédric Le Goater wrote:

diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c
index bc646c67a0f5..980f62fd7964 100644
--- a/target/ppc/excp_helper.c
+++ b/target/ppc/excp_helper.c
@@ -1164,6 +1164,10 @@ static void do_rfi(CPUPPCState *env, target_ulong nip, 
target_ulong msr)
      /* MSR:POW cannot be set by any form of rfi */
      msr &= ~(1ULL << MSR_POW);
+    /* MSR:TGPR cannot be set by any form of rfi */
+    if (env->flags & POWERPC_FLAG_TGPR)
+        msr &= ~(1ULL << MSR_TGPR);
+
  #if defined(TARGET_PPC64)
      /* Switching to 32-bit ? Crop the nip */
      if (!msr_is_64bit(env, msr)) {

Have you tried a pre-PR push to Gitlab CI for your pull-ppc-20220130 tag? I'd 
expect this to fail the check-patch job due to the missing braces around the 
if() statement.

It seems that ctx_statement_block() is confused because
the patch ends with a '{'.

Nice work! My experience with Perl is fairly minimal so that would have 
probably taken me some time to figure out.

Fixing the issue is another story. This part looks like forth to me !

Thanks,

C.



reply via email to

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