| commit | e57ed3695a65ecbc76c195ad0535657150b7d5d9 | [log] [tgz] |
|---|---|---|
| author | Tsukasa OI <research_trasio@irq.a4lg.com> | Thu Aug 03 05:35:53 2023 +0000 |
| committer | Tsukasa OI <research_trasio@irq.a4lg.com> | Thu Aug 03 05:58:21 2023 +0000 |
| tree | 26bb86e48e1be037a018bb2fc90e206476658dd5 | |
| parent | 92f46037a0f672d1480f754f76a9bfa0334d099c [diff] |
RISC-V: Add support for 'Zvfh' and 'Zvfhmin' This commit adds support for recently ratified vector FP16 extensions: 'Zvfh' and 'Zvfhmin'. This is based on: <https://github.com/riscv/riscv-v-spec/blob/master/v-spec.adoc#zvfhmin-vector-extension-for-minimal-half-precision-floating-point> <https://github.com/riscv/riscv-v-spec/blob/master/v-spec.adoc#zvfh-vector-extension-for-half-precision-floating-point> Despite not having any new instructions, it will be necessary since those extensions are already implemented in GCC. Note that however, in this commit, following dependencies are implemented. 1. 'Zvfhmin' -> 'Zve32f' 2. 'Zvfh' -> 'Zvfhmin' (not 'Zvfh' -> 'Zve32f' as in the documentation) 3. 'Zvfh' -> 'Zfhmin' This is because the instructions and configurations supported by the 'Zvfh' extension is a strict superset of the 'Zvfhmin' extension and 'Zvfh' -> 'Zve32f' dependency is indirectly derived from that fact. bfd/ChangeLog: * elfxx-riscv.c (riscv_implicit_subsets): Add implications related to 'Zvfh' and 'Zvfhmin' extensions. (riscv_supported_std_z_ext) Add 'Zvfh' and 'Zvfhmin' to the list.