1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/unittests
Vedant Kumar dfa1bc247b [ADT] Add CoalescingBitVector, implemented using IntervalMap [1/3]
Add CoalescingBitVector to ADT. This is part 1 of a 3-part series to
address a compile-time explosion issue in LiveDebugValues.

---

CoalescingBitVector is a bitvector that, under the hood, relies on an
IntervalMap to coalesce elements into intervals.

CoalescingBitVector efficiently represents sets which predominantly
contain contiguous ranges (e.g.  the VarLocSets in LiveDebugValues,
which are very long sequences that look like {1, 2, 3, ...}). OTOH,
CoalescingBitVector isn't good at representing sets with lots of gaps
between elements. The first N coalesced intervals of set bits are stored
in-place (in the initial heap allocation).

Compared to SparseBitVector, CoalescingBitVector offers more predictable
performance for non-sequential find() operations. This provides a
crucial speedup in LiveDebugValues.

Differential Revision: https://reviews.llvm.org/D74984
2020-02-27 12:39:46 -08:00
..
ADT [ADT] Add CoalescingBitVector, implemented using IntervalMap [1/3] 2020-02-27 12:39:46 -08:00
Analysis [LazyCallGraph] Fix ambiguous index value 2020-02-18 23:32:55 -05:00
AsmParser
BinaryFormat [MachO] Add cpu(sub)type tests and improve error handling 2020-02-24 10:44:42 -08:00
Bitcode
Bitstream
CodeGen [GISel][KnownBits] Update a comment regarding the effect of cache on PHIs 2020-02-25 15:56:15 -08:00
DebugInfo [Debuginfo][NFC] Unify error reporting routines inside DebugInfoDWARF. 2020-02-27 18:32:40 +03:00
Demangle
ExecutionEngine [ORC] Remove the JITDylib::SymbolTableEntry::isInMaterializingState() method. 2020-02-25 16:44:12 -08:00
Frontend [OpenMP][OMPIRBuilder] Add Directives (master and critical) to OMPBuilder. 2020-02-15 01:15:45 -06:00
FuzzMutate
IR [Dominators] Use Instruction::comesBefore for block-local queries, NFC 2020-02-20 16:41:51 -08:00
LineEditor
Linker
MC [X86][Disassembler] Fix a bug when disassembling an empty string 2020-01-13 10:42:21 -08:00
MI [unittests] Add InitializePasses.h includes 2019-11-13 19:42:58 -08:00
Object [unittests] Fix "comparison of integers of different signs" warnings 2020-01-14 13:24:51 +01:00
ObjectYAML minidump: Add an "arm64" constant 2019-10-31 11:20:46 +01:00
Option
Passes [test] Disable the Passes/PluginsTest cases on windows with BUILD_SHARED_LIBS 2020-02-10 22:50:36 +02:00
ProfileData Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Remarks [Remarks] Fix error message check in unit test 2019-10-31 15:51:36 -07:00
Support Add methods to data extractor for extracting bytes and fixed length C strings. 2020-02-24 14:17:43 -08:00
TableGen Make unittests include path relative 2020-02-21 10:19:11 +01:00
Target Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
TextAPI [llvm][TextAPI] rename test vars, NFC 2020-02-25 14:28:36 -08:00
tools Recommit: "[llvm-exegesis] Improve error reporting in Assembler.cpp" 2020-02-19 14:40:28 +01:00
Transforms [NFC][SCEV] Piping to pass TTI into SCEVExpander::isHighCostExpansionHelper() 2020-02-25 23:05:56 +03:00
XRay Use std::foo_t rather than std::foo in LLVM. 2020-02-11 15:12:51 -08:00
CMakeLists.txt CMake: Make most target symbols hidden by default 2020-01-14 19:46:52 -08:00
unittest.cfg.in