llvm with tablegen backend for capstone disassembler
Go to file
Jinjie Huang 4c44dcffd5
Support soft failure on DWP section overflow, producing a truncated but valid DWP(#71902)
When 'ContinueOnCuIndexOverflow' enables without this modification, the
forcibly generated '.dwp' won't be recognized by Debugger(gdb 10.1)
correctly.
<img width="657" alt="image"
src="https://github.com/llvm/llvm-project/assets/150100070/31732775-2548-453a-a47a-fa04c6d05fe9">
it looks like there's a problem with processing the dwarf header, which
makes debugging completely impossible. (unless the consumer walks the debug_info section to rebuild that column (if that's the only section that overflowed - if it's another section, there's no recovery))

**About patch:**
When llvm-dwp enables option '--continue-on-cu-index-overflow=soft-stop'
and recognizes the overflow problem , it will stop packing and generate
the '.dwp' file at once, discarding any DWO files that would not fit
within the 32 bit/4GB limits of the format.
<img width="625" alt="image"
src="https://github.com/llvm/llvm-project/assets/150100070/77d6be24-262b-4f4c-afc0-9a6c49e133c7">
2023-12-01 12:01:22 -08:00
.ci [CI] Add check-mlir-python to MLIR pre-merge checks (#72847) 2023-11-25 09:55:32 +00:00
.github Add a scheduled build for libc++ (#73848) 2023-11-29 17:36:44 -05:00
bolt [BOLT][utils] Bump default time threshold to 2s in nfc-stat-parser 2023-12-01 09:57:48 -08:00
clang [RISCV] Collapse fast unaligned access into a single feature [nfc-ish] (#73971) 2023-12-01 11:00:59 -08:00
clang-tools-extra [clang-tidy][NFC] Fix bugprone-suspicious-enum-usage tests 2023-11-29 22:53:59 +00:00
cmake [CMake] Switch the CMP0091 policy (MSVC_RUNTIME_LIBRARY) to the new behaviour 2023-07-17 09:59:05 +03:00
compiler-rt [asan][win][msvc] override new and delete and seperate TUs (#68754) 2023-12-01 11:56:44 -08:00
cross-project-tests [cross-project-tests] Fix struct-dse example so that it fails again (#73566) 2023-11-27 13:14:10 -08:00
flang [Flang][Clang] Add support for frame pointers in Flang 2023-12-01 17:09:59 +00:00
libc [libc] Allocate fine-grained memory for the RPC host symbol 2023-12-01 13:47:33 -06:00
libclc [LIBCLC] Teach prepare-builtins how to handle text based IR (#66993) 2023-10-03 14:28:01 +02:00
libcxx Allow libc++ image tag to be specified via enviroment variables. 2023-12-01 14:34:36 -05:00
libcxxabi [libc++] Run picolibc tests with qemu 2023-11-29 17:21:08 -05:00
libunwind [libunwind][WebAssembly] Omit unused parts of libunwind.cpp for Wasm (#73196) 2023-11-29 18:03:58 -08:00
lld [LLD][RISCV] Fix incorrect call relaxation when mixing +c and -c objects (#73977) 2023-12-01 11:02:53 -08:00
lldb [lldb] Remove pre GCC 4.8 workaround (#73981) 2023-11-30 23:14:46 -05:00
llvm Support soft failure on DWP section overflow, producing a truncated but valid DWP(#71902) 2023-12-01 12:01:22 -08:00
llvm-libgcc [llvm-libgcc][CMake] Refactor llvm-libgcc (#65455) 2023-09-18 22:56:03 -07:00
mlir [mlir][tensor] Fold padding_value away for pack ops when possible. (#74005) 2023-12-01 11:12:58 -08:00
openmp [OpenMP] Add an INFO message for data transfer of kernel launch env. (#74030) 2023-12-01 10:58:23 -08:00
polly [mlir,polly] Replace uses of IRBuilder::getInt8PtrTy with getPtrTy. NFC 2023-11-27 20:58:25 -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 [gtest] Disable new posix::FOpen Windows implementation for now 2023-09-28 21:11:09 +02:00
utils [libc][NFC] Remove named_pair (#73952) 2023-12-01 10:30:15 +01:00
.arcconfig
.arclint
.clang-format
.clang-tidy Add -misc-use-anonymous-namespace to .clang-tidy 2023-05-06 02:33:20 +03:00
.git-blame-ignore-revs Revert "[mlir][spirv] Add D155747 to .git-blame-ignore-revs" 2023-07-21 10:59:16 -04:00
.gitignore Revert accidental .gitignore change from 9b7763821a 2023-09-07 22:42:05 -07:00
.mailmap [mailmap] Add my entry 2023-11-20 00:16:53 +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 [docs] Add LICENSE.txt to the root of the mono-repo 2022-08-24 09:35:00 +02:00
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.