Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / README.md
blob4ae7eaf9b083a570df38fe2f5a82b8963bf38267
1 # The LLVM Compiler Infrastructure
3 [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/llvm/llvm-project/badge)](https://securityscorecards.dev/viewer/?uri=github.com/llvm/llvm-project)
5 Welcome to the LLVM project!
7 This repository contains the source code for LLVM, a toolkit for the
8 construction of highly optimized compilers, optimizers, and run-time
9 environments.
11 The LLVM project has multiple components. The core of the project is
12 itself called "LLVM". This contains all of the tools, libraries, and header
13 files needed to process intermediate representations and convert them into
14 object files. Tools include an assembler, disassembler, bitcode analyzer, and
15 bitcode optimizer.
17 C-like languages use the [Clang](http://clang.llvm.org/) frontend. This
18 component compiles C, C++, Objective-C, and Objective-C++ code into LLVM bitcode
19 -- and from there into object files, using LLVM.
21 Other components include:
22 the [libc++ C++ standard library](https://libcxx.llvm.org),
23 the [LLD linker](https://lld.llvm.org), and more.
25 ## Getting the Source Code and Building LLVM
27 Consult the
28 [Getting Started with LLVM](https://llvm.org/docs/GettingStarted.html#getting-the-source-code-and-building-llvm)
29 page for information on building and running LLVM.
31 For information on how to contribute to the LLVM project, please take a look at
32 the [Contributing to LLVM](https://llvm.org/docs/Contributing.html) guide.
34 ## Getting in touch
36 Join the [LLVM Discourse forums](https://discourse.llvm.org/), [Discord
37 chat](https://discord.gg/xS7Z362),
38 [LLVM Office Hours](https://llvm.org/docs/GettingInvolved.html#office-hours) or
39 [Regular sync-ups](https://llvm.org/docs/GettingInvolved.html#online-sync-ups).
41 The LLVM project has adopted a [code of conduct](https://llvm.org/docs/CodeOfConduct.html) for
42 participants to all modes of communication within the project.