LLVM asm
LLVM asm is an actively used intermediate representation language created in 2003. The LLVM compiler infrastructure project is a "collection of modular and reusable compiler and toolchain technologies" used to develop compiler front ends and back ends. LLVM is written in C++ and is designed for compile-time, link-time, run-time, and "idle-time" optimization of programs written in arbitrary programming languages. Originally implemented for C and C++, the language-agnostic design of LLVM has since spawned a wide variety of front ends: languages with compilers that use LLVM include ActionScript, Ada, C#, Common Lisp, Crystal, D, Delphi, Fortran, OpenGL Shading Language, Halide, Haskell, Java bytecode, Julia, Lua, Objective-C, Pony, Python, R, Ruby, Rust, CUDA, Scala, Swift, and Xojo. Read more on Wikipedia...
17Years Old | 2,363Users | 23Jobs |
- LLVM asm ranks in the top 10% of languages
- the LLVM asm website
- the LLVM asm wikipedia page
- LLVM asm first appeared in 2003
- file extensions for LLVM asm include ll
- tryitonline has an online LLVM asm repl
- See also: c, actionscript, ada, csharp, common-lisp, crystal, d, delphi, fortran, glsl, haskell, java-bytecode, julia, lua, objective-c, python, r, ruby, rust, cuda, scala, swift, xojo, ios, assembly-language, java, opengl, cil, standard-ml, arm, hexagon, mips, ptx, powerpc, sparc, x86-isa, elf, c--, pure, opencl, isbn
- Have a question about LLVM asm not answered here? Email me and let me know how I can help.
Example code from Wikipedia:
@.str = internal constant [14 x i8] c"hello, world\0A\00" declare i32 @printf(i8*, ...) define i32 @main(i32 %argc, i8** %argv) nounwind { entry: %tmp1 = getelementptr [14 x i8], [14 x i8]* @.str, i32 0, i32 0 %tmp2 = call i32 (i8*, ...) @printf( i8* %tmp1 ) nounwind ret i32 0 }
Trending Repos
repo | stars | description |
---|---|---|
llvm | 4073 | Mirror of official llvm git repository located at http://llvm.org/git/llvm. Updated every five minutes. |
Last updated August 9th, 2020