[libcxx-commits] [PATCH] D137315: [libc++abi] Improve performance of __dynamic_cast

Sirui Mu via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Nov 3 00:08:30 PDT 2022


Lancern created this revision.
Lancern added a reviewer: philnik.
Herald added a project: All.
Lancern requested review of this revision.
Herald added projects: libc++, libc++abi.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.
Herald added a reviewer: libc++abi.

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.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D137315

Files:
  libcxx/benchmarks/CMakeLists.txt
  libcxx/benchmarks/libcxxabi/dynamic_cast.bench.cpp
  libcxxabi/src/private_typeinfo.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D137315.472854.patch
Type: text/x-patch
Size: 20815 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20221103/e86c6941/attachment-0001.bin>


More information about the libcxx-commits mailing list