https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121312

            Bug ID: 121312
           Summary: [RISCV]Multilib does not support the `zhinx` and
                    `zhinxmin` extensions.
           Product: gcc
           Version: 15.2.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mumuxi_ll at outlook dot com
  Target Milestone: ---

Hi,

I am currently generating a multilib list on gcc through the following command:

```
./multilib-generator rv32i-ilp32--c rv32im-ilp32--c rv32iac-ilp32--
rv32imac-ilp32--zfinx*zhinx*zhinxmin*zdinx rv32imac-ilp32--zdinx
rv32imafc-ilp32f-rv32imafdc- rv64imac-lp64-- rv64imafdc-lp64d--
```

Then I encountered the problem that the zhinx and zhinxmin extensions could not
be recognized
```
Traceback (most recent call last):
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 195, in <module>
    print (arch_canonicalize(arch, args.misa_spec))
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 161, in arch_canonicalize
    long_exts = list(sorted(filter(lambda x:len(x) != 1, long_exts),
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 150, in longext_sort
    raise Exception("Unsupported extension `%s`" % exts)
Exception: Unsupported extension `zhinx`
Traceback (most recent call last):
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 195, in <module>
    print (arch_canonicalize(arch, args.misa_spec))
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 161, in arch_canonicalize
    long_exts = list(sorted(filter(lambda x:len(x) != 1, long_exts),
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 150, in longext_sort
    raise Exception("Unsupported extension `%s`" % exts)
Exception: Unsupported extension `zhinxmin`
Traceback (most recent call last):
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 195, in <module>
    print (arch_canonicalize(arch, args.misa_spec))
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 161, in arch_canonicalize
    long_exts = list(sorted(filter(lambda x:len(x) != 1, long_exts),
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 150, in longext_sort
    raise Exception("Unsupported extension `%s`" % exts)
Exception: Unsupported extension `zhinx`
Traceback (most recent call last):
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 195, in <module>
    print (arch_canonicalize(arch, args.misa_spec))
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 161, in arch_canonicalize
    long_exts = list(sorted(filter(lambda x:len(x) != 1, long_exts),
  File
"/Local/home/liuxu/work/nuclei-2025/riscv-gnu-toolchain/gcc/gcc/config/riscv/arch-canonicalize",
line 150, in longext_sort
    raise Exception("Unsupported extension `%s`" % exts)
Exception: Unsupported extension `zhinxmin`
...

```
but these two extensions are already supported on the given version of gcc.

Reply via email to