'. '

LLVM

From APIDesign

(Difference between revisions)
Jump to: navigation, search
Current revision (06:35, 27 September 2018) (edit) (undo)
 
Line 2: Line 2:
* 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
-
* Emit code for various assembly architectures from it
+
* Emit code for various processor 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.
[[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.
Of course, as a loyal [[OracleLabs]] member [[I]] do believe we can beat the [[LLVM]] with our [[GraalVM]] stack.

Current revision

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 processor 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