From: Vishal Chourasia <vishalc@linux.ibm.com>
To: Chinmay Rath <rathc@linux.ibm.com>,
qemu-devel@nongnu.org, qemu-ppc@nongnu.org, npiggin@gmail.com,
harshpb@linux.ibm.com, richard.henderson@linaro.org,
peter.maydell@linaro.org, stefanha@redhat.com
Cc: milesg@linux.ibm.com, tshah@linux.ibm.com,
shivangu@linux.ibm.com, ojaswin@linux.ibm.com,
aboorvad@linux.ibm.com, amachhiw@linux.ibm.com, sv@linux.ibm.com,
shivani@linux.ibm.com, mkchauras@gmail.com, uverma@linux.ibm.com,
nikhilks@linux.ibm.com
Subject: Re: [RFC PATCH 00/28] target/ppc: Moving instructions to decodetree specification
Date: Thu, 28 May 2026 16:38:02 +0530 [thread overview]
Message-ID: <ahgiEkyC3vreEWbH@linux.ibm.com> (raw)
In-Reply-To: <ca4dfe89-78ea-4fc1-bb0c-71650ca2d8f8@linux.ibm.com>
On Fri, May 22, 2026 at 01:59:27PM +0530, Vishal Chourasia wrote:
> Hi All,
>
> I see there is a test case that fails during the CI run.
> https://gitlab.com/rathc/qemu/-/jobs/14481511189/
>
> Looking into it
Hi All,
In v1, do_rfi() effectively only handled user-only and 64-bit builds, so
on 32-bit qemu-system-ppc every rfi was treated as invalid.
OpenBIOS uses rfi to return from exceptions, so it got stuck in the
exception path and the test timed out.
I have a fix that restores the 32-bit system-emulation rfi path while
keeping rfid, hrfid, and rfscv 64-bit-only.
https://lore.kernel.org/all/20260528105907.623794-2-vishalc@linux.ibm.com/
Link to the Gitlab CI
https://gitlab.com/vishalc-ibm/qemu/-/pipelines/2558504095
Thanks,
vishalc
>
> Thanks,
> vishalc
>
> On 20/05/26 21:37, Chinmay Rath wrote:
> > We recently had a QEMU decodetree hackathon at our org focusing on moving
> > instructions to decodetree specification. I have consolidated the patches
> > generated out of this effort in this series. Though I have done a round
> > of review on all of them, might share some more review comments later.
> >
> > The checkpatch.pl script emits false error for a couple of patches which
> > are of the following nature :
> >
> > TRANS(STWAT, do_st_atomic, DEF_MEMOP(MO_UL))
> >
> > static bool trans_LDAT(DisasContext *ctx, arg_LDAT *a)
> > ^
> > I see this happening in the last pointer argument in function
> > definitions after macros (like TRANS(..) in this case).
> >
> > Richard, Peter, Stefan,
> > Could you please advise if it would be okay to have the above false
> > positive in the patches ?
> >
> > Gitlab CI: https://gitlab.com/rathc/qemu/-/pipelines/2540725424
> > Please note that check-python-tox and migration-compat-aarch64 from CI
> > fails in the upstream master branch as seen in the following:
> > https://gitlab.com/rathc/qemu/-/pipelines/2537246569
> >
> > Thanks,
> > Chinmay
> >
> > Aboorva Devarajan (3):
> > target/ppc: Move vector merge instructions to decodetree
> > target/ppc: Move vector pack instructions to decodetree
> > target/ppc: Move GPR atomic load/store instructions to decodetree
> >
> > Amit Machhiwal (2):
> > target/ppc: Move fixed-point Shift insns to decodetree
> > target/ppc: Move fixed-point byte-reversal store insns to decodetree
> >
> > Mukesh Kumar Chaurasiya (IBM) (2):
> > target/ppc: convert slw,srw instruction via decode spec
> > target/ppc: convert sraw[i] instruction via decode spec
> >
> > Nikhil Kumar Singh (3):
> > target/ppc: Migrate extswsli to decodetree
> > target/ppc: Migrate atomic loads to decodetree
> > target/ppc: Convert cache instructions to decodetree
> >
> > Ojaswin Mujoo (7):
> > target/ppc: Move isync instruction to decodetree.
> > target/ppc: Convert b{a, l, la} to decode tree
> > target/ppc: move various conditional branch insns to decodetree
> > target/ppc: Fix TRANS* macro variadic arguments handling
> > target/ppc: Move wait instruction to decodetree
> > target/ppc: Move sleep & friends to decodetree
> > target/ppc: Refactor sleep and its variants to use a common helper
> >
> > Shivang Upadhyay (4):
> > target/ppc: Move Condition Register access instructions to decodetree.
> > target/ppc: Move Condition Register logical instructions to
> > decodetree.
> > target/ppc: Move Fixed-Point Load/Store String instructions to
> > decodetree.
> > target/ppc: Move VMX integer arithmetic and BCD instructions to
> > decodetree.
> >
> > Shivani Nittor (1):
> > target/ppc : Convert mcrf to decode tree
> >
> > Tanushree Shah (2):
> > target/ppc: Move rlwimi, rlwinm instructions to decodetree
> > target/ppc: Move lmw, stmw instructions to decodetree
> >
> > Utkarsh Verma (1):
> > target/ppc: Move st{b, h, w, d, q}cx instructions to decodetree
> >
> > Vishal Chourasia (3):
> > target/ppc: Move mfmsr, mtmsr[d] instructions to decodetree
> > target/ppc: Move byte-reverse instructions to decodetree
> > target/ppc: Move system call and rfi instructions to decodetree
> >
> > target/ppc/helper.h | 100 +-
> > target/ppc/insn32.decode | 244 ++
> > target/ppc/int_helper.c | 76 +-
> > target/ppc/internal.h | 7 -
> > target/ppc/mem_helper.c | 18 +-
> > target/ppc/tcg-excp_helper.c | 10 +-
> > target/ppc/translate.c | 2592 ++++-------------
> > target/ppc/translate/branch-impl.c.inc | 181 ++
> > target/ppc/translate/fixedpoint-impl.c.inc | 936 ++++++
> > target/ppc/translate/misc-impl.c.inc | 175 ++
> > .../ppc/translate/processor-ctrl-impl.c.inc | 30 +
> > target/ppc/translate/storage-ctrl-impl.c.inc | 117 +
> > target/ppc/translate/vmx-impl.c.inc | 360 +--
> > target/ppc/translate/vmx-ops.c.inc | 41 -
> > 14 files changed, 2529 insertions(+), 2358 deletions(-)
> >
>
next prev parent reply other threads:[~2026-05-28 11:10 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-20 16:07 [RFC PATCH 00/28] target/ppc: Moving instructions to decodetree specification Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 01/28] target/ppc: Migrate extswsli to decodetree Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 02/28] target/ppc: Migrate atomic loads " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 03/28] target/ppc: Convert cache instructions " Chinmay Rath
2026-06-01 16:06 ` Shivang Upadhyay
2026-05-20 16:07 ` [RFC PATCH 04/28] target/ppc: Move vector merge " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 05/28] target/ppc: Move vector pack " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 06/28] target/ppc: Move st{b, h, w, d, q}cx " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 07/28] target/ppc: convert slw, srw instruction via decode spec Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 08/28] target/ppc: convert sraw[i] " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 09/28] target/ppc : Convert mcrf to decode tree Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 10/28] target/ppc: Move fixed-point Shift insns to decodetree Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 11/28] target/ppc: Move fixed-point byte-reversal store " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 12/28] target/ppc: Move GPR atomic load/store instructions " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 13/28] target/ppc: Move isync instruction " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 14/28] target/ppc: Convert b{a, l, la} to decode tree Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 15/28] target/ppc: move various conditional branch insns to decodetree Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 16/28] target/ppc: Fix TRANS* macro variadic arguments handling Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 17/28] target/ppc: Move wait instruction to decodetree Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 18/28] target/ppc: Move sleep & friends " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 19/28] target/ppc: Refactor sleep and its variants to use a common helper Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 20/28] target/ppc: Move Condition Register access instructions to decodetree Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 21/28] target/ppc: Move Condition Register logical " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 22/28] target/ppc: Move Fixed-Point Load/Store String " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 23/28] target/ppc: Move VMX integer arithmetic and BCD " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 24/28] target/ppc: Move rlwimi, rlwinm " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 25/28] target/ppc: Move lmw, stmw " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 26/28] target/ppc: Move mfmsr, mtmsr[d] " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 27/28] target/ppc: Move byte-reverse " Chinmay Rath
2026-05-20 16:07 ` [RFC PATCH 28/28] target/ppc: Move system call and rfi " Chinmay Rath
2026-05-22 8:29 ` [RFC PATCH 00/28] target/ppc: Moving instructions to decodetree specification Vishal Chourasia
2026-05-28 10:59 ` [RFC PATCH v2] target/ppc: Move system call and rfi instructions to decodetree Vishal Chourasia
2026-05-28 11:08 ` Vishal Chourasia [this message]
2026-06-03 11:39 ` [RFC PATCH 00/28] target/ppc: Moving instructions to decodetree specification Chinmay Rath
2026-06-03 14:10 ` Miles Glenn
2026-06-04 10:29 ` Chinmay Rath
2026-06-03 14:30 ` Richard Henderson
2026-06-04 10:27 ` Chinmay Rath
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=ahgiEkyC3vreEWbH@linux.ibm.com \
--to=vishalc@linux.ibm.com \
--cc=aboorvad@linux.ibm.com \
--cc=amachhiw@linux.ibm.com \
--cc=harshpb@linux.ibm.com \
--cc=milesg@linux.ibm.com \
--cc=mkchauras@gmail.com \
--cc=nikhilks@linux.ibm.com \
--cc=npiggin@gmail.com \
--cc=ojaswin@linux.ibm.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=rathc@linux.ibm.com \
--cc=richard.henderson@linaro.org \
--cc=shivangu@linux.ibm.com \
--cc=shivani@linux.ibm.com \
--cc=stefanha@redhat.com \
--cc=sv@linux.ibm.com \
--cc=tshah@linux.ibm.com \
--cc=uverma@linux.ibm.com \
/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 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.