Go to file
Pavel Labath a71ce4f1e8 DWARF: Avoid storing DIERefs in long-lived containers
Summary:
A user_id_t carries the same information as a DIERef, but it takes up
less space.

Furthermore, DIERef::operator<'s implementation is very
questionable, as it does not take the cu_offset and section fields into
account. Using just the die offset was correct in the days when all
debug info lived in a single section, but since we started supporting
DWO debug info, this was no longer true. The comparison operator could
be fixed, but it seems like using the user_id_t for these purposes is a
better idea overall.

I think this did not cause any bugs, because the only place the
comparison operator was used is in m_function_scope_qualified_name_map,
and this one is local to a dwo file, but I am not 100% sure of that.

Reviewers: clayborg, JDevlieghere

Subscribers: aprantl, lldb-commits

Differential Revision: https://reviews.llvm.org/D63322

llvm-svn: 363528
2019-06-17 07:32:56 +00:00
clang [docs] Fix another bot error by setting highlight language of objc code-block to objc instead of c++. 2019-06-16 19:15:04 +00:00
clang-tools-extra [docs] Fix another bot warning by adding a blank line to separate the `option::` command from the text below. 2019-06-16 18:41:31 +00:00
compiler-rt [compiler-rt] Respect CMAKE_NM 2019-06-15 04:40:16 +00:00
debuginfo-tests Add cdb test for global constants 2019-06-06 20:23:05 +00:00
libclc travis: Add LLVM-8 build 2019-03-27 21:28:31 +00:00
libcxx add header to help with template testing 2019-06-15 21:16:57 +00:00
libcxxabi [demangle] Vendor extended types shouldn't be considered substitution candidates 2019-06-10 21:02:39 +00:00
libunwind [Docs] Modernize references to macOS 2019-05-30 16:46:22 +00:00
lld Include the file in the new unknown codeview subsection warning 2019-06-14 22:03:23 +00:00
lldb DWARF: Avoid storing DIERefs in long-lived containers 2019-06-17 07:32:56 +00:00
llgo IR: Support parsing numeric block ids, and emit them in textual output. 2019-03-22 18:27:13 +00:00
llvm [SimplifyCFG] Fix prof branch_weights MD while removing unreachable switch cases 2019-06-17 05:55:12 +00:00
openmp [OpenMP] Add task alloc function 2019-06-14 20:15:15 +00:00
parallel-libs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
polly [ScopBuilder] Move addInvariantLoads to ScopBuilder. NFC. 2019-06-12 22:51:56 +00:00
pstl [pstl] The optimized parallel versions of sort, stable_sort algorithms, TBB parallel backend. 2019-06-06 07:34:46 +00:00
.arcconfig Update monorepo .arcconfig with new project callsign. 2019-01-31 14:34:59 +00:00
.clang-format Add .clang-tidy and .clang-format files to the toplevel of the 2019-01-29 16:43:16 +00:00
.clang-tidy Disable tidy checks with too many hits 2019-02-01 11:20:13 +00:00
.gitignore Add a reduced copy of the llvm .gitignore 2019-04-09 00:52:49 +00:00
README.md

README.md

The LLVM Compiler Infrastructure

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.