-
Notifications
You must be signed in to change notification settings - Fork 279
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
RISC-V core::arch? #913
Comments
IF there isn't a vendor-specified set of intrinsics documented and the vendor accepts to use the ones in stdarch as part of their official documentation the problem goes away. |
We are at https://github.com/riscv/rvv-intrinsic-doc/tree/v0.10 now, to be noted that the specification is still changing often |
We should wait for Clang to implement these builtins first, and then hope they use some form of templating that we can reuse. |
The current git seems to have them https://github.com/llvm/llvm-project/tree/main/clang/test/CodeGen/RISCV/rvv-intrinsics |
We could try adapting Clang's TableGen to emit our intrinsics from the same source file as Clang: https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Basic/riscv_vector.td |
The discussion lately seems to focus on the vector extension but that seems unrelated the "rdtsc"-like features that prompted this filing. |
I guess we could split the discussion, is the |
We should figure out a way to handle LLVM's |
You would have to talk to the lang team about that. Scalable vectors are similar to an unsized type in that you can't read/write it directly since it has an unknown size, but on the other hand you can pass it to functions as an argument. |
We have to be careful since I think we could trip in something similar to #1479 if we take the C intrinsics as-they-are. |
core::arch is missing RISC-V support, I'm specifically interested in adding support for the equivalent of rdtsc.
This was spun off #40
It was mentioned there "We generally try to stick to vendor-specified intrinsics" which is an understandable but insurmountably heavy requirement.
The text was updated successfully, but these errors were encountered: