llvm with tablegen backend for capstone disassembler
Go to file
Eric 20f39bf482
Lower std::string's alignment requirement from 16 to 8. (#68807)
This allows smaller allocations to occur, closer to the actual
std::string's required size. This is particularly effective in
decreasing the allocation size upon initial construction (where
__recommend is called to determine the size).

Although the memory savings per-string are never more than 8 bytes per
string initially, this quickly adds up. And has lead to not insigficant
memory savings at Google.

Unfortunately, this change is ABI breaking because it changes the value
returned by max_size. So it has to be guarded.
2023-10-13 11:56:24 -04:00
.ci Revert "[ci] Diff against main when determining what files have changed for pre-commit CI (#67743)" 2023-10-02 11:02:47 -04:00
.github [GitHub] Add myself to CODEOWNERS for LLDB (NFC) 2023-10-06 08:03:39 -07:00
bolt [BOLT][RISCV] Recognize mapping syms with encoded ISA (#68964) 2023-10-13 10:34:13 +00:00
clang [clang][Interp] Support AddOffset with 128bit offsets (#68679) 2023-10-13 14:47:46 +02:00
clang-tools-extra [clang-tidy][Doc][NFC] Regenerate list.rst & clang-analyzer doc 2023-10-10 18:37:35 +00:00
cmake
compiler-rt [ASan] Recognize lea r10, [rip + XX] (#68910) 2023-10-13 08:47:23 -07:00
cross-project-tests [Dexter] Associate parser errors with correct file (#66765) 2023-09-19 14:16:17 +01:00
flang [mlir][ODS] Omit printing default-valued attributes in oilists (#68880) 2023-10-13 10:22:05 +01:00
libc [libc] Mark operator== const to avoid ambiguity in C++20. (#68805) 2023-10-11 23:59:13 -04:00
libclc [LIBCLC] Teach prepare-builtins how to handle text based IR (#66993) 2023-10-03 14:28:01 +02:00
libcxx Lower std::string's alignment requirement from 16 to 8. (#68807) 2023-10-13 11:56:24 -04:00
libcxxabi [libcxxabi] Add missing include statement. 2023-10-06 17:17:18 -07:00
libunwind [libunwind] Avoid reading OOB for non-existent .eh_frame_hdr (#68815) 2023-10-11 19:46:09 +01:00
lld [ELF] Restore the --call-graph-profile-sort=hfsort default before #68638 2023-10-12 22:58:42 -07:00
lldb [lldb][DataFormatter] unordered_map: account for new libc++ __hash_node layout (#68574) 2023-10-13 16:44:11 +01:00
llvm [InstCombine] Fold Ext(i1) Pred shr(A, BW - 1) => i1 Pred A s< 0 (#68244) 2023-10-13 22:02:57 +08:00
llvm-libgcc [llvm-libgcc][CMake] Refactor llvm-libgcc (#65455) 2023-09-18 22:56:03 -07:00
mlir [mlir][Tosa] fix fp16/bf16 support for AvgPool2d (#68718) 2023-10-13 08:42:39 -07:00
openmp [OpenMP] Disable flaky libomptarget AMDGPU test 2023-10-10 13:09:29 -05:00
polly Move CallInst::CreateFree to IRBuilderBase 2023-09-19 12:04:17 +02:00
pstl
runtimes [runtimes] Fix parsing of LIB{CXX,CXXABI,UNWIND}_TEST_PARAMS (#67691) 2023-10-04 18:11:37 -04:00
third-party [gtest] Disable new posix::FOpen Windows implementation for now 2023-09-28 21:11:09 +02:00
utils [ArmSVE][NVVM][Bazel] Added Features to BUILD.bazel file (#68949) 2023-10-13 07:47:36 +02:00
.arcconfig
.arclint
.clang-format
.clang-tidy
.git-blame-ignore-revs
.gitignore Revert accidental .gitignore change from 9b7763821a 2023-09-07 22:42:05 -07:00
.mailmap
CODE_OF_CONDUCT.md [llvm] Add CODE_OF_CONDUCT.md (#65816) 2023-09-09 10:55:31 -07:00
CONTRIBUTING.md Update CONTRIBUTING.md to remove the not about not accepting PR 2023-09-10 15:21:06 -07:00
LICENSE.TXT
README.md
SECURITY.md

The LLVM Compiler Infrastructure

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, or #llvm IRC channel on OFTC.

The LLVM project has adopted a code of conduct for participants to all modes of communication within the project.