Hi all,

while looking at the GHC 8 Trac page I encountered the page
about the plans for the improved LLVM backend:

https://ghc.haskell.org/trac/ghc/wiki/ImprovedLLVMBackend

I know nearly nothing about the internals of the GHC backend so 
I may be asking something trivial, but from reading that page
I understand that GHC currently calls LLVM command line tools
to optimize and compile the IR, is it right?

LLVM is a C++ library, but it also exports a portable and stable C API
which I think is already covered by the llvm-general package.

So as someone who worked on LLVM in the past, and appreciated
its library-based integration-friendly design I’m wondering why is
GHC using the command line tools instead of linking to the library?

Best Regards,
Nicola