[PATCH v2 4/8] RISC-V: Fix disassembling Zfinx with -M numeric
Nelson Chu
nelson.chu@sifive.com
Thu Jul 7 04:25:26 GMT 2022
Committed, thanks.
Nelson
On Thu, Jul 7, 2022 at 10:58 AM Kito Cheng <kito.cheng@gmail.com> wrote:
>
> LGTM
>
> On Mon, Jun 27, 2022 at 10:08 AM Tsukasa OI via Binutils
> <binutils@sourceware.org> wrote:
> >
> > This commit fixes floating point operand register names from ABI ones
> > to dynamically set ones.
> >
> > gas/ChangeLog:
> >
> > * testsuite/gas/riscv/zfinx-dis-numeric.s: Test new behavior of
> > Zfinx extension and -M numeric disassembler option.
> > * testsuite/gas/riscv/zfinx-dis-numeric.d: Likewise.
> >
> > opcodes/ChangeLog:
> >
> > * riscv-dis.c (riscv_disassemble_insn): Use dynamically set GPR
> > names to disassemble Zfinx instructions.
> > ---
> > gas/testsuite/gas/riscv/zfinx-dis-numeric.d | 10 ++++++++++
> > gas/testsuite/gas/riscv/zfinx-dis-numeric.s | 2 ++
> > opcodes/riscv-dis.c | 2 +-
> > 3 files changed, 13 insertions(+), 1 deletion(-)
> > create mode 100644 gas/testsuite/gas/riscv/zfinx-dis-numeric.d
> > create mode 100644 gas/testsuite/gas/riscv/zfinx-dis-numeric.s
> >
> > diff --git a/gas/testsuite/gas/riscv/zfinx-dis-numeric.d b/gas/testsuite/gas/riscv/zfinx-dis-numeric.d
> > new file mode 100644
> > index 00000000000..ba3f62295eb
> > --- /dev/null
> > +++ b/gas/testsuite/gas/riscv/zfinx-dis-numeric.d
> > @@ -0,0 +1,10 @@
> > +#as: -march=rv64ima_zfinx
> > +#source: zfinx-dis-numeric.s
> > +#objdump: -dr -Mnumeric
> > +
> > +.*:[ ]+file format .*
> > +
> > +Disassembly of section .text:
> > +
> > +0+000 <target>:
> > +[ ]+[0-9a-f]+:[ ]+a0c5a553[ ]+feq.s[ ]+x10,x11,x12
> > diff --git a/gas/testsuite/gas/riscv/zfinx-dis-numeric.s b/gas/testsuite/gas/riscv/zfinx-dis-numeric.s
> > new file mode 100644
> > index 00000000000..b55cbd56b21
> > --- /dev/null
> > +++ b/gas/testsuite/gas/riscv/zfinx-dis-numeric.s
> > @@ -0,0 +1,2 @@
> > +target:
> > + feq.s a0, a1, a2
> > diff --git a/opcodes/riscv-dis.c b/opcodes/riscv-dis.c
> > index 9ff31167775..164fd209dbd 100644
> > --- a/opcodes/riscv-dis.c
> > +++ b/opcodes/riscv-dis.c
> > @@ -639,7 +639,7 @@ riscv_disassemble_insn (bfd_vma memaddr, insn_t word, disassemble_info *info)
> >
> > /* If arch has ZFINX flags, use gpr for disassemble. */
> > if(riscv_subset_supports (&riscv_rps_dis, "zfinx"))
> > - riscv_fpr_names = riscv_gpr_names_abi;
> > + riscv_fpr_names = riscv_gpr_names;
> >
> > for (; op->name; op++)
> > {
> > --
> > 2.25.1
> >
More information about the Binutils
mailing list