Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4 |
|
#
bf099f46 |
| 03-Nov-2024 |
Jan Svoboda <jan_svoboda@apple.com> |
[llvm][ADT] Structured bindings for move-only types in `StringMap` (#114676)
This PR implements destructuring of `StringMapEntry<T>` where `T` is a
move-only type. Also adds the non-const version.
|
Revision tags: llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2 |
|
#
9a4a4c3f |
| 02-Feb-2024 |
David Blaikie <dblaikie@gmail.com> |
Reapply "[ADT][StringMap] Add ability to precompute and reuse the string hash"
Reverted due to an internally discovered lld crash, which turned out to be an existing lld bug that got tickled by this
Reapply "[ADT][StringMap] Add ability to precompute and reuse the string hash"
Reverted due to an internally discovered lld crash, which turned out to be an existing lld bug that got tickled by this changes. That's addressed in dee8786f70a3d62b639113343fa36ef55bdbad63 so let's have another go with this change.
Original commit message: Useful for lldb's const string pool, using the hash to determine which string map to lock and query/insert.
Derived from https://reviews.llvm.org/D122974 by Luboš Luňák
This reverts commit f976719fb2cb23364957e5993f7fc3684ee15391. Effectively reapplying 67c631d283fc96d652304199cd625be426b98f8e.
show more ...
|
Revision tags: llvmorg-18.1.0-rc1, llvmorg-19-init |
|
#
f976719f |
| 14-Dec-2023 |
David Blaikie <dblaikie@gmail.com> |
Revert "[ADT][StringMap] Add ability to precompute and reuse the string hash"
Crash identified internally in lld's use of StringMap in `compareSections`. Will investigate offline before recommitting
Revert "[ADT][StringMap] Add ability to precompute and reuse the string hash"
Crash identified internally in lld's use of StringMap in `compareSections`. Will investigate offline before recommitting.
This reverts commit 67c631d283fc96d652304199cd625be426b98f8e.
show more ...
|
#
67c631d2 |
| 11-Dec-2023 |
David Blaikie <dblaikie@gmail.com> |
[ADT][StringMap] Add ability to precompute and reuse the string hash
Useful for lldb's const string pool, using the hash to determine which string map to lock and query/insert.
Derived from https:/
[ADT][StringMap] Add ability to precompute and reuse the string hash
Useful for lldb's const string pool, using the hash to determine which string map to lock and query/insert.
Derived from https://reviews.llvm.org/D122974 by Luboš Luňák
show more ...
|
Revision tags: llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0 |
|
#
21700677 |
| 13-Mar-2023 |
Kazu Hirata <kazu@google.com> |
[ADT] Implement {DenseMap,MapVector,StringMap}::contains
This patch implements the C++20-style contains() for DenseMap, MapVector, and StringMap.
With this patch, every set and map container type t
[ADT] Implement {DenseMap,MapVector,StringMap}::contains
This patch implements the C++20-style contains() for DenseMap, MapVector, and StringMap.
With this patch, every set and map container type that has count() also has contains().
Differential Revision: https://reviews.llvm.org/D145895
show more ...
|
Revision tags: llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3 |
|
#
be83a4b2 |
| 17-Feb-2023 |
Ryan Guo <ryanguo@modular.com> |
[ADT] Fix tests for `StringMap::at` and `DenseMap::at`
These methods won't assert for release build.
|
#
13200360 |
| 14-Feb-2023 |
Ryan Guo <ryanguo@modular.com> |
[ADT] Add `at` method (assertive lookup) to DenseMap and StringMap
This patch makes it easier for users when they want to use validated lookup on DenseMap/StringMap as a composable C++ expression. F
[ADT] Add `at` method (assertive lookup) to DenseMap and StringMap
This patch makes it easier for users when they want to use validated lookup on DenseMap/StringMap as a composable C++ expression. For instance:
``` // instead of if (auto val = map.lookup(key)) return val; assert("...");
// we can write return map.at(key); ```
Differential Revision: https://reviews.llvm.org/D143976
show more ...
|
Revision tags: llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7 |
|
#
3284adf6 |
| 25-Dec-2022 |
Alexey Lapshin <a.v.lapshin@mail.ru> |
[NFC][ADT] Rename StringMapEntry *Create() into StringMapEntry *create.
|
#
02c75e84 |
| 04-Dec-2022 |
Benjamin Kramer <benny.kra@googlemail.com> |
[ADT] Enable structured bindings for iterating StringMap
const references only for now, we can add overloads to have a mutable or movable `second` if the need arises.
|
Revision tags: llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0 |
|
#
72ebcf1a |
| 29-Aug-2022 |
Wei Yi Tee <wyt@google.com> |
[llvm][ADT] Fix formatting for files relevant to `StringMap`.
Differential Revision: https://reviews.llvm.org/D132744
|
#
af6a3559 |
| 29-Aug-2022 |
Wei Yi Tee <wyt@google.com> |
Revert "[llvm][ADT] Fix formatting for files relevant to `StringMap`."
This reverts commit d23df9c9e81e186c3218bd924976fbd646f3bad1. Revert due to missing review link.
|
#
d23df9c9 |
| 26-Aug-2022 |
Wei Yi Tee <wyt@google.com> |
[llvm][ADT] Fix formatting for files relevant to `StringMap`.
|
Revision tags: llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init |
|
#
a5655093 |
| 12-Jul-2022 |
Nathan James <n.james93@hotmail.co.uk> |
[ADT] Use Empty Base Optimization for Allocators
In D94439, BumpPtrAllocator changed its implementation to use an empty base optimization for the underlying allocator. This patch builds on that by e
[ADT] Use Empty Base Optimization for Allocators
In D94439, BumpPtrAllocator changed its implementation to use an empty base optimization for the underlying allocator. This patch builds on that by extending its functionality to more classes as well as enabling the underlying allocator to be a reference type, something not currently possible as you can't derive from a reference.
The main place this sees use is in StringMaps which often use the default MallocAllocator, yet have to pay the size of a pointer for no reason.
Reviewed By: dblaikie
Differential Revision: https://reviews.llvm.org/D129206
show more ...
|
Revision tags: llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init |
|
#
5f290c09 |
| 24-Jan-2022 |
serge-sans-paille <sguelton@redhat.com> |
Move STLFunctionalExtras out of STLExtras
Only using that change in StringRef already decreases the number of preoprocessed lines from 7837621 to 7776151 for LLVMSupport
Perhaps more interestingly,
Move STLFunctionalExtras out of STLExtras
Only using that change in StringRef already decreases the number of preoprocessed lines from 7837621 to 7776151 for LLVMSupport
Perhaps more interestingly, it shows that many files were relying on the inclusion of StringRef.h to have the declaration from STLExtras.h. This patch tries hard to patch relevant part of llvm-project impacted by this hidden dependency removal.
Potential impact: - "llvm/ADT/StringRef.h" no longer includes <memory>, "llvm/ADT/Optional.h" nor "llvm/ADT/STLExtras.h"
Related Discourse thread: https://llvm.discourse.group/t/include-what-you-use-include-cleanup/5831
show more ...
|
Revision tags: llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1, llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3 |
|
#
cc2d4dc3 |
| 02-Sep-2021 |
Nico Weber <thakis@chromium.org> |
Reland "Try to unbreak Win build differently after 973519826edb76""
Build should be fixed by https://github.com/llvm/llvm-project/commit/9d22754389
This reverts commit df052e1732ab57f5d9c684ceeaed3
Reland "Try to unbreak Win build differently after 973519826edb76""
Build should be fixed by https://github.com/llvm/llvm-project/commit/9d22754389
This reverts commit df052e1732ab57f5d9c684ceeaed3ab39073cd9f.
Differential Revision: https://reviews.llvm.org/D109181
show more ...
|
#
df052e17 |
| 02-Sep-2021 |
Geoffrey Martin-Noble <gcmn@google.com> |
Revert "Try to unbreak Win build differently after 973519826edb76"
Breaks the build and failed pre-merge checks: https://buildkite.com/llvm-project/premerge-checks/builds/54930#07373971-3d37-49cf-9d
Revert "Try to unbreak Win build differently after 973519826edb76"
Breaks the build and failed pre-merge checks: https://buildkite.com/llvm-project/premerge-checks/builds/54930#07373971-3d37-49cf-9def-22c0d724ee23
> llvm-project/lld/wasm/Writer.cpp:521:16: error: non-const lvalue reference to > type 'llvm::StringRef' cannot bind to a temporary of type 'llvm::StringRef' > for (auto &feature : used.keys()) {
This reverts commit 5881dcff7e76a68323edc8bb3c6e14420ad9cf7c.
show more ...
|
#
5881dcff |
| 02-Sep-2021 |
Nico Weber <thakis@chromium.org> |
Try to unbreak Win build differently after 973519826edb76
Looks like the MS STL wants StringMapKeyIterator::operator*() to be const. Return the result by copy instead of reference to do that. Assign
Try to unbreak Win build differently after 973519826edb76
Looks like the MS STL wants StringMapKeyIterator::operator*() to be const. Return the result by copy instead of reference to do that. Assigning to a hash map key iterator doesn't make sense anyways.
Also reverts 123f811fe5b0b which is now hopefully no longer needed.
Differential Revision: https://reviews.llvm.org/D109167
show more ...
|
#
97351982 |
| 01-Sep-2021 |
Nico Weber <thakis@chromium.org> |
[clang-cl] Emit nicer warning on unknown /arch: arguments
Now prints the list of known archs. This requires plumbing a Driver arg through a few functions.
Also add two more convenience insert() ove
[clang-cl] Emit nicer warning on unknown /arch: arguments
Now prints the list of known archs. This requires plumbing a Driver arg through a few functions.
Also add two more convenience insert() overlods to StringMap.
Differential Revision: https://reviews.llvm.org/D109105
show more ...
|
Revision tags: llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2, llvmorg-11.0.0-rc1, llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2 |
|
#
af4f2eb4 |
| 19-Jun-2020 |
Daniel <daniel.cohen599@gmail.com> |
[clang-tidy] remove duplicate fixes of alias checkers
when both a check and its alias are enabled, we should only take the fixes of one of them and not both. This patch fixes bug 45577 https://bugs.
[clang-tidy] remove duplicate fixes of alias checkers
when both a check and its alias are enabled, we should only take the fixes of one of them and not both. This patch fixes bug 45577 https://bugs.llvm.org/show_bug.cgi?id=45577
Reviewed By: aaron.ballman, njames93
Differential Revision: https://reviews.llvm.org/D80753
show more ...
|
Revision tags: llvmorg-10.0.1-rc1 |
|
#
d3bc86c2 |
| 02-May-2020 |
Benjamin Kramer <benny.kra@googlemail.com> |
[Allocator] Make Deallocate() pass alignment and make it use (de)allocate_buffer
This lets it use sized deallocation and make more efficient alignment decisions. Also adjust BumpPtrAllocator to alwa
[Allocator] Make Deallocate() pass alignment and make it use (de)allocate_buffer
This lets it use sized deallocation and make more efficient alignment decisions. Also adjust BumpPtrAllocator to always allocate at alignof(std::max_align_t).
show more ...
|
#
4d9f5f13 |
| 12-Apr-2020 |
Chris Lattner <clattner@nondot.org> |
clang format one more line.
|
#
89c8ffd5 |
| 12-Apr-2020 |
Chris Lattner <clattner@nondot.org> |
NFC: Clean up the implementation of StringPool a bit, and remove dependence on some "implicitly MallocAllocator" based methods on StringMapEntry. This allows reducing the #includes in StringMapEntry.
NFC: Clean up the implementation of StringPool a bit, and remove dependence on some "implicitly MallocAllocator" based methods on StringMapEntry. This allows reducing the #includes in StringMapEntry.h.
Summary: StringPool has many caveats and isn't used in the monorepo. I will propose removing it as a patch separate from this refactoring patch.
Reviewers: rriddle
Subscribers: hiraditya, dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D77976
show more ...
|
Revision tags: llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4, llvmorg-10.0.0-rc3, llvmorg-10.0.0-rc2, llvmorg-10.0.0-rc1, llvmorg-11-init, llvmorg-9.0.1, llvmorg-9.0.1-rc3, llvmorg-9.0.1-rc2, llvmorg-9.0.1-rc1 |
|
#
2bc47884 |
| 25-Sep-2019 |
Fangrui Song <maskray@google.com> |
[ADT] Add StringMap::insert_or_assign
Summary: Similar to std::unordered_map::insert_or_assign
Reviewers: alexshap, bkramer, dblaikie, lhames
Subscribers: jkorous, dexonsmith, kristina, llvm-commi
[ADT] Add StringMap::insert_or_assign
Summary: Similar to std::unordered_map::insert_or_assign
Reviewers: alexshap, bkramer, dblaikie, lhames
Subscribers: jkorous, dexonsmith, kristina, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D67668
llvm-svn: 372813
show more ...
|
Revision tags: llvmorg-9.0.0, llvmorg-9.0.0-rc6, llvmorg-9.0.0-rc5, llvmorg-9.0.0-rc4, llvmorg-9.0.0-rc3, llvmorg-9.0.0-rc2, llvmorg-9.0.0-rc1, llvmorg-10-init, llvmorg-8.0.1, llvmorg-8.0.1-rc4, llvmorg-8.0.1-rc3, llvmorg-8.0.1-rc2 |
|
#
31650eaa |
| 07-Jun-2019 |
Michael Pozulp <pozulp.llvm@gmail.com> |
[ADT] Enable set_difference() to be used on StringSet
Summary: Re-land r362766 after it was reverted in r362823.
Reviewers: jhenderson, dsanders, aaron.ballman, MatzeB, lhames, dblaikie
Reviewed B
[ADT] Enable set_difference() to be used on StringSet
Summary: Re-land r362766 after it was reverted in r362823.
Reviewers: jhenderson, dsanders, aaron.ballman, MatzeB, lhames, dblaikie
Reviewed By: dblaikie
Subscribers: smeenai, mgrang, mgorny, dexonsmith, kristina, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D62369
llvm-svn: 362835
show more ...
|
#
d8e3d0da |
| 07-Jun-2019 |
Vlad Tsyrklevich <vlad@tsyrklevich.net> |
Revert "[ADT] Enable set_difference() to be used on StringSet"
This reverts commit 0bddef79019a23ab14fcdb27028e55e484674c88, it was causing ASan failures on the sanitizer bots: http://lab.llvm.org:8
Revert "[ADT] Enable set_difference() to be used on StringSet"
This reverts commit 0bddef79019a23ab14fcdb27028e55e484674c88, it was causing ASan failures on the sanitizer bots: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/32800
llvm-svn: 362823
show more ...
|