2 ms·
LLVM-IR has low-level features not offered by C, used for compiling other languages. For instance exception handling (used for C++), operations with checks for
by Findecanor 3y ago
LLVM-IR has low-level features not offered by C, used for compiling other languages.
For instance exception handling (used for C++), operations with checks for overflow (used by both Swift and Rust, I suspect), and arithmetic with integers smaller than an "int" (also, Swift and Rust).
I think LLVM also has explicit support for coroutines and multi-entry functions.
If your language needs any of those features, implementing any of those on top of C could be difficult to get right and would probably not perform as well.