Hacker News new | ask | show | jobs
by boxed 728 days ago
It's also usable as a library in a way GCC isn't. That's why Apple started using it with their OpenGL software drivers back in the day. That's why almost all modern and new programming languages use LLVM, and those that don't do not use GCC.
2 comments

Even if GCC was easily usable as library, many of those LLVM use cases don't work that well with GCC's license.
That's out of date, libgccjit exists. LLVM is a bit difficult to use as a library because it has no stable API and is in C++ so it doesn't have a stable ABI either.
Hmm.. why is it called "jit"? That seems like it's telling everyone the use case is very different from LLVM. Also the big EXPERIMENTAL banner doesn't instill confidence. Unlike with LLVM which is used by dozens of production languages.
Why would you need it as a library other than to do jit?
LLVM does offer a C based stable ABI, even though it isn't as feature rich as the C++ one, is good enough for most use cases.

https://llvm.org/doxygen/group__LLVMC.html