[Libre-soc-org] [Bug 1005] write and submit grant request to nlnet for beginning adding compiler support for libre-soc

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Wed Feb 22 22:12:14 GMT 2023


https://bugs.libre-soc.org/show_bug.cgi?id=1005

--- Comment #3 from Jacob Lifshay <programmerjake at gmail.com> ---
i'm planning on this grant request including designing C/C++/Rust intrinsics
(C++/Rust can use generics/templates on types and intrinsic functions, C we
probably want something like the _Alignas keyword for types where it's a
modifier on an existing type that also has const-expr arguments, intrinsic
functions can be generic like tgmath.h)

it will also include designing IR, which may be based on IR intrinsics -- not
to be confused with C intrinsics, they will almost certainly be different since
C/IR have different goals (C aims for usability, IR aims for canonicalization,
optimizability, and SSA-form)

for operations with multiple outputs (e.g. fail-first load has both the output
vector and the new VL as outputs), imho the Rust intrinsics should return a
struct rather than have out-parameters.

IR intrinsics must not have out-parameters through memory, since that greatly
limits optimizations since it prevents IR from expressing putting that output
directly in a register (this is currently an issue with llvm which only has
compress-store and no compress-reg2reg-copy).

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Libre-soc-org mailing list