-
Notifications
You must be signed in to change notification settings - Fork 18
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
CORE-V Hardware Loop Codegen Issues #86
Comments
There is initial support for hwlp , however, hwlp is less tested and there are some issues that I haven't encountered yet. |
It looks like this is a common problem, and I'd welcome some comments from the gcc @MaryBennett |
gcc patch:https://gcc.gnu.org/pipermail/gcc-patches/2023-November/637166.html thanks! |
Regarding |
This issue should summarize all problems I ran into when playing around with
xcvhwlp
using Core-V LLVM for compiling and Core-V RISC-V GCC for linking.Workaround: Use old version of RTL.
Workaround: Compile for just
RV32IM_XCVHWLP
memset
ormemcpy
resulting in disallowed unconditional jump.Workaround: Use
-ffreestanding
or-fno-builtin
(often not an option)__udivdi3
may be emitted by the compiler. (Probably also affecting softfloat library)Workaround: -
@llvm.smax
,@llvm.umin
,… will expand these into a sequence of supported RISC-V instructions including conditional branches.Workaround: Enable XCVALU which has implementations for
CV_MAX
,…SRA
(artithmetic shift right) in the loop body which requires custom expansion.Workaround: -
The text was updated successfully, but these errors were encountered: