[MemProf] Templatize CallStackRadixTreeBuilder (NFC) (#117014)
[llvm-project.git] / README.md
bloba9b29ecbc1a3a47d781b3a2a4fbb522eada754d0
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)
4 [![OpenSSF Best Practices](https://www.bestpractices.dev/projects/8273/badge)](https://www.bestpractices.dev/projects/8273)
5 [![libc++](https://github.com/llvm/llvm-project/actions/workflows/libcxx-build-and-test.yaml/badge.svg?branch=main&event=schedule)](https://github.com/llvm/llvm-project/actions/workflows/libcxx-build-and-test.yaml?query=event%3Aschedule)
7 Welcome to the LLVM project!
9 This repository contains the source code for LLVM, a toolkit for the
10 construction of highly optimized compilers, optimizers, and run-time
11 environments.
13 The LLVM project has multiple components. The core of the project is
14 itself called "LLVM". This contains all of the tools, libraries, and header
15 files needed to process intermediate representations and convert them into
16 object files. Tools include an assembler, disassembler, bitcode analyzer, and
17 bitcode optimizer.
19 C-like languages use the [Clang](https://clang.llvm.org/) frontend. This
20 component compiles C, C++, Objective-C, and Objective-C++ code into LLVM bitcode
21 -- and from there into object files, using LLVM.
23 Other components include:
24 the [libc++ C++ standard library](https://libcxx.llvm.org),
25 the [LLD linker](https://lld.llvm.org), and more.
27 ## Getting the Source Code and Building LLVM
29 Consult the
30 [Getting Started with LLVM](https://llvm.org/docs/GettingStarted.html#getting-the-source-code-and-building-llvm)
31 page for information on building and running LLVM.
33 For information on how to contribute to the LLVM project, please take a look at
34 the [Contributing to LLVM](https://llvm.org/docs/Contributing.html) guide.
36 ## Getting in touch
38 Join the [LLVM Discourse forums](https://discourse.llvm.org/), [Discord
39 chat](https://discord.gg/xS7Z362),
40 [LLVM Office Hours](https://llvm.org/docs/GettingInvolved.html#office-hours) or
41 [Regular sync-ups](https://llvm.org/docs/GettingInvolved.html#online-sync-ups).
43 The LLVM project has adopted a [code of conduct](https://llvm.org/docs/CodeOfConduct.html) for
44 participants to all modes of communication within the project.