|
|
|
|
|
by exDM69
5307 days ago
|
|
edit: LLVM once stood for "Low level virtual machine", but that is no longer the meaning. The early name comes from Chris Lattner's research paper describing an "ideal machine language", an intermediate language for compilers which is a little like an Assembly -type language for a virtual machine with infinite registers. The first sentence on the front page of llvm.org pretty much sums it up: "The LLVM Project is a collection of modular and reusable compiler and toolchain technologies." It may not be the clearest LLVM description out there, but that's pretty much what it is. If the description had more detail, it would not fit in one sentence. The hard thing about describing LLVM is that it's a huge complicated project in a domain that's outside even many professional programmers' domain. I tend to say that LLVM is (to me) a "compiler infrastructure", because I use it to build compiler back ends. However, LLVM is so much more than that, as the project includes loosely coupled tools ranging from complete compilers (clang) to debuggers (lldb) to byte code and binary format introspection utilities (llvm's binutils counterparts). So a "compiler infrastructure" or any other dumbed down explanation wouldn't do it justice. That's why the first sentence on the front page is actually pretty good. |
|