1

我正在寻找支持官方规范定义的 RISC-V 矢量扩展 v1.0 的 C/C++ 工具链。

Spike似乎支持矢量 rvv1.0,但我很难找到一个工具链来使用它。

GCC (我只看到rvv0.9的一个分支)和 LLVM(我使用的是 LLVM/clang 13.0.0,它只升级到 rvv0.10)似乎都不支持最新的规范。

有人可以向我指出一个有效的工具链,还是我只需要再等一些工具才能赶上?

4

1 回答 1

1

现在,在 2021 年 12 月 8 日,您可以使用启用矢量支持 rvv 0.1 的 llvm + clang 14.0.0 3eda87732fbac6f316e9e83984ef9a90f962c381。

  1. 编译 RISCV GCC 工具链

  2. 编译 LLVM + CLANG + LLD

  3. 将 GCC 工具链添加到 llvm 安装文件夹,这里描述了如何使用 Clang 为 RISC-V 编译

  4. 最后用下一个键向量化:

    clang -O2 -c -march=rv64gv0p10 test.ll -o test1.o -menable-experimental-extensions -mllvm --riscv-v-vector-bits-min=256 -mno-relax

这是一个输出 - objdump 文件: 在此处输入图像描述 Objdump 无法识别指令,但如果您发出带有-S密钥的汇编代码,您可以看到它: 在此处输入图像描述

于 2021-12-08T06:05:05.483 回答