Closed Junyan721113 closed 1 year ago
这个分支是Andes过去开发的分支,一直没有维护,你可以试试切换到 https://github.com/pz9115/riscv-gcc/tree/riscv-gcc-experiment-p-ext 这个子分支
感谢!我试试看
这个分支似乎有两个问题:
这个分支似乎有两个问题:
- riscvv64_ukadd16没有对应的__built_in函数
这个应该是有定义的,参考:
当时没有按照__riscv开头,后续等新的P扩展草案出现后我们会进行更新
- 使用-march=rv64imafdp似乎不能正常编译__builtin_riscv_v64_ukadd16函数
新版的子扩展需要用他们对应的名称来作为arch, 这样就不可以直接使用p来代表整个p扩展了,而应该使用对应的zpn,zprv,zpsf来精确表示需要使能的子扩展,例如-march=rv64gc_zpn_zprv
好的,感谢!
I used the riscv-gnu-toolchain and configured as follows:
Here the riscv-gcc/ directory above contains the p-ext-andes branch of this repo
The toolchain build succeeded
The following test is OK
The UKADD16 instruction in asm is correct
The UKADD16 instruction in uint16x4_t rvv_ukadd16(uint16x4_t a, uint16x4_t b) is correct
However, when I tried this, the error occured
Did I do something incorrectly? Meanwhile does the p-ext-andes branch support uint64_t rvukadd16(uint64_t a, uint64_t b) now?