llvm-project README

The project's README from github.com/llvm/llvm-project. As one markdown file: README.md.

The LLVM Compiler Infrastructure

OpenSSF Scorecard OpenSSF Best Practices libc++

Welcome to the LLVM project!

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.

Getting the Source Code and Building LLVM

Consult the Getting Started with LLVM page for information on building and running LLVM.

For information on how to contribute to the LLVM project, please take a look at the Contributing to LLVM guide.

Getting in touch

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.

llvm-project (llvm/llvm-project)

Searching Database…

What is this?LLVM is an open-source toolkit for constructing highly optimized compilers, optimizers, and run-time environments; this repository holds its source code.
Is this one program I install, or a set of separate pieces?A set of components. The core, itself named LLVM, bundles the tools, libraries, and headers that process intermediate representations and turn them into object files.
How do I get it running?There is no installer in this repo: you clone the source and follow the Getting Started with LLVM guide, which covers building and running it.
Will I need a particular OS to build or run it?The README sets no OS requirement; the project's CI builds in both Linux-based and Windows-based containers, so Linux and Windows builds are exercised regularly, while macOS is not mentioned here.
Can I use LLVM to build a compiler for my own language?That is exactly its purpose: it provides the libraries, headers, and IR-processing tools you build a compiler on top of, and Clang shows the pattern by feeding C-family code through the same pipeline.
What is this intermediate representation (IR) everything revolves around?It is the common low-level format at the heart of the project: frontends like Clang emit your source code into LLVM bitcode, and core LLVM processes that IR into object files.
Creator
llvm
Size
4.4 GB
Stars
41.1K
Age
9y
Commits · 90 Days