[all-commits] [llvm/llvm-project] 51e91b: [libc++abi] Implement __cxa_init_primary_exception...
itrofimow via All-commits
all-commits at lists.llvm.org
Mon Jan 22 07:12:53 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 51e91b64d0deb6a743861c2a0fba84865250036e
https://github.com/llvm/llvm-project/commit/51e91b64d0deb6a743861c2a0fba84865250036e
Author: itrofimow <i.trofimow at yandex.ru>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/benchmarks/CMakeLists.txt
A libcxx/benchmarks/exception_ptr.bench.cpp
M libcxx/docs/BuildingLibcxx.rst
M libcxx/include/__availability
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/new
M libcxx/include/typeinfo
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
M libcxx/src/support/runtime/exception_pointer_glibcxx.ipp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxxabi/include/cxxabi.h
M libcxxabi/lib/exceptions.exp
M libcxxabi/src/cxa_exception.cpp
Log Message:
-----------
[libc++abi] Implement __cxa_init_primary_exception and use it to optimize std::make_exception_ptr (#65534)
This patch implements __cxa_init_primary_exception, an extension to the
Itanium C++ ABI. This extension is already present in both libsupc++ and
libcxxrt. This patch also starts making use of this function in
std::make_exception_ptr: instead of going through a full throw/catch
cycle, we are now able to initialize an exception directly, thus making
std::make_exception_ptr around 30x faster.
More information about the All-commits
mailing list