LLVM
Sign in to saveAlso known as Low Level Virtual Machine, LLVM Project
Modulare Compiler-Unterbau-Architektur und virtuelle Maschine
Key facts
- Software.name
- LLVM
- Software.logo
- LLVM logo.png
- Software.logo caption
- The LLVM logo, a stylized wyvern
- Software.developer
- LLVM Developer Group
- Software.programming language
- C++
- Software.operating system
- Cross-platform
- Software.genre
- Compiler
- Software.license
- Apache License 2.0 with LLVM Exceptions (v9.0.0 or later) Legacy license: UIUC (BSD-style)
via Wikipedia infobox
Source code
This repository contains the source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and run-time environments. The LLVM project has multiple components. The core of the project is itself called "LLVM". This contains all of the tools, libraries, and header files needed to process intermediate representations and convert them into object files. Tools include an assembler, disassembler, bitcode analyzer, and bitcode optimizer. C-like languages use the Clang frontend. This component compiles C, C++, Objective-C, and Objective-C++ code into LLVM bitcode -- and from there into object files, using LLVM. Other components include: the libc++ C++ standard library, the LLD linker, and more. Consult the Getting Started with LLVM page for information on building and running LLVM. Join the LLVM Discourse forums, Discord chat, LLVM Office Hours or Regular sync-ups. The LLVM project has adopted a code of conduct for participants to all modes of communication within the project.
Excerpt from the source-code README · 2,242 chars · not written by Vinony
Wikidata facts
- Instance of
- optimizing compiler
- Designed by
- Chris Lattner
- Official website
- llvm.org
Show 11 more facts
- software version identifier
- 22.1.4
- programmed in
- assembly language
- partially coincident with
- Emscripten
- social media followers
- 15100
- inception
- 2003-10-24
- operating system
- illumos
- source code repository URL
- github.com/llvm/llvm-project
- Commons category
- LLVM
- official forum URL
- discourse.llvm.org
- IRC channel URL
- irc://irc.oftc.net/llvm
- official blog URL
- blog.llvm.org
via Wikidata · CC0
Article · Deutsch
LLVM (früher Low Level Virtual Machine) ist eine modulare Compiler-Unterbau-Architektur mit einem virtuellen Befehlssatz, einer virtuellen Maschine, die einen Hauptprozessor virtualisiert, und einem übergreifend optimierenden Übersetzungskonzept. Kennzeichnend ist unter anderem, dass sämtliche Zeitphasen eines Programms (Laufzeit, Übersetzungszeit, Linkzeit) inklusive der Leerlauf-Phase zur Optimierung herangezogen werden können. Der Zweck ist, einfach eigene Frontends für verschiedene Sprachen zu entwickeln, die die LLVM-Zwischensprache benutzen. Um die Erzeugung des Maschinen- bzw. VM-Codes kümmert sich die LLVM-Bibliothek, die vom Frontend aus aufgerufen wird. Die Entwicklung von LLVM begann im Jahr 2000 unter der Leitung von Chris Lattner und an der Universität von Illinois. Das Projekt wurde ursprünglich als Forschungsarbeit zur Untersuchung dynamischer Kompilierung und Optimierungen entwickelt. Heute beheimatet es eine Vielzahl an Unterprojekten und Erweiterungen aus der aktuellen Compilerforschung und -entwicklung. LLVM ist als freie Software unter der University of Illinois/NCSA Open Source License verfügbar, die der 3-Klausel-BSD-Lizenz und der MIT-Lizenz ähnelt. „LLVM“ ist der volle Name des Projekts und kein Akronym, wird aber oft als „Low Level Virtual Machine“ angegeben. Dies sorgt zuweilen für Verwirrung, da LLVM auch für Virtualisierung genutzt werden kann. Mit der Zeit wurde LLVM ein Rahmenprojekt, in dem verschiedene Compiler- und Low-Level-Techniken enthalten sind. Inzwischen ist LLVM die Marke für das eigentliche Projekt, die LLVM-Zwischensprache (LLVM-IR), den LLVM-Debugger (LLDB), die LLVM-Standard-C++-Bibliothek (libc++) etc.
Abstract from DBpedia / Wikipedia · CC BY-SA