llvm-project/libcxx/benchmarks
Sirui Mu c9d475c937 [libc++abi] Improve performance of __dynamic_cast
The original `__dynamic_cast` implementation does not use the ABI-provided `src2dst_offset` parameter which helps improve performance on the hot paths. This patch improves the performance on the hot paths in `__dynamic_cast` by leveraging hints provided by the `src2dst_offset` parameter. This patch also includes a performance benchmark suite for the `__dynamic_cast` implementation.

Reviewed By: philnik, ldionne, #libc, #libc_abi, avogelsgesang

Spies: mikhail.ramalho, avogelsgesang, xingxue, libcxx-commits

Differential Revision: https://reviews.llvm.org/D138005
2023-03-19 10:04:34 +01:00
..
algorithms [libc++] Optimize std::ranges::{min, max} for types that are cheap to copy 2023-03-11 16:28:24 +01:00
libcxxabi [libc++abi] Improve performance of __dynamic_cast 2023-03-19 10:04:34 +01:00
algorithms.partition_point.bench.cpp
allocation.bench.cpp
CartesianBenchmarks.h
CMakeLists.txt [libc++abi] Improve performance of __dynamic_cast 2023-03-19 10:04:34 +01:00
ContainerBenchmarks.h
deque_iterator.bench.cpp
deque.bench.cpp
filesystem.bench.cpp
format_to_n.bench.cpp
format_to.bench.cpp
format.bench.cpp
formatted_size.bench.cpp
formatter_float.bench.cpp
formatter_int.bench.cpp
function.bench.cpp
GenerateInput.h
join_view.bench.cpp [libc++] Enable segmented iterator optimizations for join_view::iterator 2023-01-20 07:55:58 +01:00
lexicographical_compare_three_way.bench.cpp [libc++][spaceship] Implement lexicographical_compare_three_way 2023-02-12 14:51:08 -08:00
lit.cfg.py
lit.site.cfg.py.in
map.bench.cpp
monotonic_buffer.bench.cpp
ordered_set.bench.cpp
random.bench.cpp
std_format_spec_string_unicode.bench.cpp
string.bench.cpp
stringstream.bench.cpp
to_chars.bench.cpp
unordered_set_operations.bench.cpp
util_smartptr.bench.cpp
Utilities.h
variant_visit_1.bench.cpp
variant_visit_2.bench.cpp
variant_visit_3.bench.cpp
VariantBenchmarks.h
vector_operations.bench.cpp