llvm with tablegen backend for capstone disassembler
Go to file
Tacet 5351ded68d
[libc++] Remove usage of internal string function in sstream (#75858)
This function replaces a call to `__move_assign` (internal function)
with two calls to public member functions (`resize` and `erase`). The
order of calls is chosen for the best performance.

This change is required to [turn on ASan string annotations for short
strings](https://github.com/llvm/llvm-project/pull/75882) (Short String
Optimization - SSO).

The `std::basic_string` class's `void __move_assign(basic_string&&
__str, size_type __pos, size_type __len)` function operates on
uninitialized strings, where it is reasonable to assume that the memory
is not poisoned. However, in `sstream` this function is applied to
existing strings that already have poisoned memory.

String ASan annotations turned on here:
https://github.com/llvm/llvm-project/pull/72677
2024-01-08 18:56:43 +01:00
.ci [CI] Add check-mlir-python to MLIR pre-merge checks (#72847) 2023-11-25 09:55:32 +00:00
.github Revert "[GitHub] Fix slow sccache install on macOS by upgrading macOS version (#77165)" (#77270) 2024-01-08 09:54:12 -08:00
bolt [ORC] Add absoluteSymbolsLinkGraph to expose absolute symbols to platform (#77008) 2024-01-05 15:32:29 -08:00
clang [Sema] Clean up -Wc++11-narrowing-const-reference code after #76094. NFC (#77278) 2024-01-08 09:31:57 -08:00
clang-tools-extra [clang-tidy] fix false positive in cppcoreguidelines-missing-std-forward (#77056) 2024-01-06 19:50:00 +08:00
cmake [CMake] Switch the CMP0091 policy (MSVC_RUNTIME_LIBRARY) to the new behaviour 2023-07-17 09:59:05 +03:00
compiler-rt [NFC][sanitizer] Add consts to SkipInternalFrames (#77162) 2024-01-05 18:42:06 -08:00
cross-project-tests [Dexter] Set ShouldBuild=false for Visual Studio solutions (#75045) 2023-12-11 15:19:40 +00:00
flang Revert "[Flang][OpenMP] Disable declarate target tests on Windows" (#77324) 2024-01-08 16:43:38 +01:00
libc Reapply "[libc] build with -Werror (#73966)" (#74506) 2024-01-08 09:07:35 -08:00
libclc [LIBCLC] Teach prepare-builtins how to handle text based IR (#66993) 2023-10-03 14:28:01 +02:00
libcxx [libc++] Remove usage of internal string function in sstream (#75858) 2024-01-08 18:56:43 +01:00
libcxxabi [llvm-cxxfilt] Added the option --no-params (#75348) 2024-01-04 20:42:51 +04:00
libunwind [libunwind] Replace process_vm_readv with SYS_rt_sigprocmask (#74791) 2024-01-05 12:56:02 -08:00
lld [lld] [MTE] Allow android note for static executables. (#77078) 2024-01-08 11:22:38 +01:00
lldb [lldb][DWARFIndex][nfc] Factor out fully qualified name query (#76977) 2024-01-08 11:16:22 -03:00
llvm [X86] ftrunc.ll - replace X32 checks with X86. NFC. 2024-01-08 17:25:44 +00:00
llvm-libgcc [llvm-libgcc][CMake] Refactor llvm-libgcc (#65455) 2023-09-18 22:56:03 -07:00
mlir [mlir][gpu] Use known_block_size to set maxntid for NVVM target (#77301) 2024-01-08 14:49:19 +01:00
openmp [Libomptarget][NFC] Fix unhandled allocator enum value 2024-01-08 10:17:05 -06:00
polly [polly][ScheduleOptimizer] Reland Fix long compile time(hang) reported in polly (#77280) 2024-01-08 09:48:02 -08:00
pstl Clear release notes for 18.x 2023-07-25 13:58:49 +02:00
runtimes [CMake] Always define runtimes-test-depends (#73629) 2023-11-28 15:30:52 -08:00
third-party [System][z/OS] Fix per-thread timing error on z/OS (#76947) 2024-01-05 07:57:07 -05:00
utils Bazel port for a5902a4d24 2024-01-06 10:20:06 +01:00
.arcconfig
.arclint
.clang-format
.clang-tidy
.git-blame-ignore-revs [libc++] Add libc++ clang-formatting commit to git-blame-ignore-revs file 2023-12-18 14:04:41 -05:00
.gitattributes [libc++] Format the code base (#74334) 2023-12-18 14:01:33 -05:00
.gitignore Revert accidental .gitignore change from 9b7763821a 2023-09-07 22:42:05 -07:00
.mailmap .mailmap: add second entry for self 2023-12-19 11:13:19 +00:00
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 Add Scorecard Action (#69933) 2023-11-01 11:08:26 -07:00
SECURITY.md

The LLVM Compiler Infrastructure

OpenSSF Scorecard

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.