-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compiling P-ext instructions #1190
Comments
Since the P-ext is not ratified and plan to refactor, currently we only have downstream supports, you can checkout the gcc&binutils repo into: gcc: https://github.com/plctlab/riscv-gcc/tree/riscv-gcc-p-ext binutils: https://github.com/plctlab/riscv-binutils-gdb/tree/riscv-binutils-p-ext then rebuild the toolchain. Here only support intrinsic to call the instructions. |
Great, thanks! I will do as suggested and update you. |
I changed the submodule link in .gitmodules, along with appropriate branches of the repositories given by @pz9115 . I ran the following commands: The assembly code: _start: |
When I try to build the toolchain as follows:
It gets this far and just seems to stall...
|
And when I used this modified
which is copied here:
and tried to build, I got this
|
I tried this too.
|
In spite of the previous errors that I mentioned, the toolchain build succeeds.
into the file
Did you definitely pass |
Hi @TommyMurphyTM1234, that's wonderful! Yes I did pass |
Ok, I'll close this issue now so. |
Hi @TommyMurphyTM1234 and @pz9115, it works! Thanks for your brilliant help. |
How do I compile P-extension instructions(v0.9.11) using the toolchain? I get the error
Error: -march=rv64imafd_zpn: unknown prefixed ISA extension 'zpn' psimd.S:18: Error: unrecognized opcode 'radd16 t3,t2,t4'
when I run
riscv64-unknown-elf-gcc -march=rv64imafd_zpn psimd.S -o psimd.o
How do I proceed further? riscv-opcodes has zpn in unratified. How do I build the toolchain so that it supports Zpn, Zbpbo, Zpsfoperand?
The text was updated successfully, but these errors were encountered: