-
Notifications
You must be signed in to change notification settings - Fork 2
riscv_use_real_ext_names_on_testcases
Tsukasa OI edited this page Nov 19, 2022
·
4 revisions
- Status: WITHDRAWN
(will be superseded by another testing patchset) - Branch:
riscv-use-real-ext-names-on-testcases - Tracking PR: #57 (view Pull Request and Diff)
- Mailing List:
- PATCH v1 (2022-09-23)
- PATCH v1 (PING 1) (2022-10-26)
Most of the RISC-V GAS testsuite uses real extension names but there are a few counterexamples. I will talk about following tests:
-
b-extandb-ext-64, forZb*exceptZbk* -
k-extandk-ext-64, forZk*andZbk*
They:
- provide unnecessary confusion (that major
BandKextensions 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) ← notZbb!
- Split
b-extandb-ext-64to:zba{,-64}zbb{,-64}zbczbs{,-64}
- Reuse existing
zk*andzbk*testcases because they are fine as is, - Add new testcases for separate extension:
-
zkr(along withZicsr, to testseedCSR 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.