Re:TinyCompiler: A compiler in a week-end
by kragen on Friday February 21, 2025 @02:24PM
(#43131769)
If it's roughly an order of magnitude more complexity than QBE, it doesn't sound like an alternative, even if it's still two orders of magnitude smaller than LLVM.
Cranelift has been looking interesting. Also, LuaJIT.
Re:TinyCompiler: A compiler in a week-end
by sitkack on Friday February 21, 2025 @03:29PM
(#43132569)
We agree on a lot of things, but QBE is off the table. Complexity and kloc are loosely correlated. Cranelift and libfirm are of equivalent size while Cranelift is in Rust and has wonderful compiler engineers working on it.
https://c9x.me/git/qbe.git/tree/rega.c
QBE is a one person performance art project.
I had a wall of supporting tokei but decided against it, but the short of it is, LLVM is phenomenally massive, and libfirm at 135kloc and 35kloc of comments is but a raindrop that is in the 15Mloc+ that is LLVM.
Perhaps instead of looking towards libfirm, we should look at cranelift. It is of comparable size and actually includes 12kloc of documentation, not just comments.
https://github.com/bytecodealliance/wasmtime/tree/main/crane...