LLVM

From APIDesign

(Difference between revisions)
Jump to: navigation, search
(New page: Is an acronym for low level virtual machine - a name not used anymore. The original vision was to repeat the success of JVM - e.g. define a bytecode (called LLVM...)
Line 1: Line 1:
-
Is an acronym for [[wikipedia:LLVM|low level virtual machine]] - a name not used anymore. The original vision was to repeat the success of [[JVM]] - e.g. define a bytecode (called [[LLVM]] bitcode) and tools to process it:
+
[[LLVM]] is an acronym for [[wikipedia:LLVM|low level virtual machine]] - a name not used anymore. The original vision was to repeat the success of [[JVM]] - e.g. define a bytecode (called [[LLVM]] bitcode) and tools to process it:
* Generate it from various languages [[C]] (via '''clang'''), [[Java]] (via [[RoboVM]]), almost any language
* Generate it from various languages [[C]] (via '''clang'''), [[Java]] (via [[RoboVM]]), almost any language
* Optimize it
* Optimize it

Revision as of 06:34, 27 September 2018

LLVM is an acronym for low level virtual machine - a name not used anymore. The original vision was to repeat the success of JVM - e.g. define a bytecode (called LLVM bitcode) and tools to process it:

  • Generate it from various languages C (via clang), Java (via RoboVM), almost any language
  • Optimize it
  • Emit code for various assembly architectures from it

LLVM started as a competing project to GCC stack and tools. Given that LLVM has been adopted by Apple (for it Mac and iOS tooling) and many other companies, it is a great success.

Of course, as a loyal OracleLabs member I do believe we can beat the LLVM with our GraalVM stack.

Personal tools
buy