[PATCH 0/2] RISC-V: Use only real extension names on testsuite

Tsukasa OI research_trasio@irq.a4lg.com
Fri Sep 23 07:49:15 GMT 2022


Hi,

Most of the RISC-V GAS testsuite uses real extension names but there are a
few counterexamples.  I will talk about following tests:

-   b-ext{,-64} for ("Zb*" except "Zbk*")
-   k-ext{,-64} for ("Zk*" and "Zbk*")

They:
-   provide unnecessary confusion (that major "B" and "K" extensions exist),
    for example shown in:
    <https://sourceware.org/bugzilla/show_bug.cgi?id=29341> and
-   do not test separate extension
    (they are multiple subextensions).

To avoid confusion and test individual extensions separately, this patchset
provides per-extension testcases and removes b-ext{,-64} and k-ext{,-64}.

There's another effect.  Splitting "B" testcases will clarify that "zext.h"
and "zext.w" (seemingly similar) instructions belong to different extension:

-   "zext.h" (RV32/64_Zbb)
-   "zext.w" (RV64_Zba)  <-- not Zbb!

[Changes]

-   Split b-ext and b-ext-64 to:
    -   zba{,-64}
    -   zbb{,-64}
    -   zbc
    -   zbs{,-64}
-   Reuse existing "zk*" and "zbk*" testcases because they are fine as is,
-   Add new testcases for separate extension:
    -   zkr (along with 'Zicsr', to test "seed" CSR accessibility)
    -   zkt (just to test extension support)
-   Remove:
    -   b-ext{,-64}
    -   k-ext{,-64}

For vector-insn*, I'll leave this for now but it might possible to split
(e.g. to three testcases for two instruction classes and INSN_V_EEW64).
Still, I think this is not as important as b-ext{,-64} and k-ext{,-64} and
I don't complain about using vector-insn* names themselves.

Thanks,
Tsukasa




Tsukasa OI (2):
  RISC-V: Reorganize "K"-related subextension tests
  RISC-V: Reorganize "B"-related subextension tests

 gas/testsuite/gas/riscv/b-ext-64.d | 72 ------------------------------
 gas/testsuite/gas/riscv/b-ext-64.s | 64 --------------------------
 gas/testsuite/gas/riscv/b-ext.d    | 51 ---------------------
 gas/testsuite/gas/riscv/b-ext.s    | 43 ------------------
 gas/testsuite/gas/riscv/k-ext-64.d | 47 -------------------
 gas/testsuite/gas/riscv/k-ext-64.s | 38 ----------------
 gas/testsuite/gas/riscv/k-ext.d    | 44 ------------------
 gas/testsuite/gas/riscv/k-ext.s    | 35 ---------------
 gas/testsuite/gas/riscv/zba-64.d   | 19 ++++++++
 gas/testsuite/gas/riscv/zba.d      | 12 +++++
 gas/testsuite/gas/riscv/zba.s      | 14 ++++++
 gas/testsuite/gas/riscv/zbb-64.d   | 36 +++++++++++++++
 gas/testsuite/gas/riscv/zbb.d      | 28 ++++++++++++
 gas/testsuite/gas/riscv/zbb.s      | 34 ++++++++++++++
 gas/testsuite/gas/riscv/zbc.d      | 12 +++++
 gas/testsuite/gas/riscv/zbc.s      |  4 ++
 gas/testsuite/gas/riscv/zbs-64.d   | 34 ++++++++++++++
 gas/testsuite/gas/riscv/zbs.d      | 25 +++++++++++
 gas/testsuite/gas/riscv/zbs.s      | 32 +++++++++++++
 gas/testsuite/gas/riscv/zkr.d      | 10 +++++
 gas/testsuite/gas/riscv/zkr.s      |  2 +
 gas/testsuite/gas/riscv/zkt.d      |  5 +++
 22 files changed, 267 insertions(+), 394 deletions(-)
 delete mode 100644 gas/testsuite/gas/riscv/b-ext-64.d
 delete mode 100644 gas/testsuite/gas/riscv/b-ext-64.s
 delete mode 100644 gas/testsuite/gas/riscv/b-ext.d
 delete mode 100644 gas/testsuite/gas/riscv/b-ext.s
 delete mode 100644 gas/testsuite/gas/riscv/k-ext-64.d
 delete mode 100644 gas/testsuite/gas/riscv/k-ext-64.s
 delete mode 100644 gas/testsuite/gas/riscv/k-ext.d
 delete mode 100644 gas/testsuite/gas/riscv/k-ext.s
 create mode 100644 gas/testsuite/gas/riscv/zba-64.d
 create mode 100644 gas/testsuite/gas/riscv/zba.d
 create mode 100644 gas/testsuite/gas/riscv/zba.s
 create mode 100644 gas/testsuite/gas/riscv/zbb-64.d
 create mode 100644 gas/testsuite/gas/riscv/zbb.d
 create mode 100644 gas/testsuite/gas/riscv/zbb.s
 create mode 100644 gas/testsuite/gas/riscv/zbc.d
 create mode 100644 gas/testsuite/gas/riscv/zbc.s
 create mode 100644 gas/testsuite/gas/riscv/zbs-64.d
 create mode 100644 gas/testsuite/gas/riscv/zbs.d
 create mode 100644 gas/testsuite/gas/riscv/zbs.s
 create mode 100644 gas/testsuite/gas/riscv/zkr.d
 create mode 100644 gas/testsuite/gas/riscv/zkr.s
 create mode 100644 gas/testsuite/gas/riscv/zkt.d


base-commit: 8e037eae6823caf5b9cb5b4feb3de838abb25956
-- 
2.34.1



More information about the Binutils mailing list