| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[Demangle] use std::string_view::data rather than &*std::string_view::begin To fix expensive check builds that were failing when using MSVC's std::string_view::iterator::operator*, I added a few expressions like &*std::string_view::begin. @nico pointed out that this is literally the same thing and more clearly expressed as std::string_view::data. Link: https://github.com/llvm/llvm-project/issues/63740 Reviewed By: #libc_abi, ldionne, philnik, MaskRay Differential Revision: https://reviews.llvm.org/D154876 | 2 年前 | |
[libc++][PSTL] Remove current integration We decided to go a different route. To make the switch easier, rip out the old integration first and build on a clean base. Reviewed By: ldionne, #libc, #libc_abi Spies: arichardson, libcxx-commits Differential Revision: https://reviews.llvm.org/D148480 | 3 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[libc++abi][AIX] Skip non-C++ EH aware frames when retrieving exception object Summary: The personality routine for the legacy AIX xlclang++ compiler uses the stack slot reserved for compilers to pass the exception object to the landing pad. The landing pad retrieves the exception object with a call to the runtime function __xlc_exception_handle(). The current implementation incorrectly assumes that __xlc_exception_handle() should go up one stack frame to get to the stack frame of the caller of __xlc_exception_handle(), which is supposedly the stack frame of the function containing the landing pad. However, this does not always work, e.g., the xlclang++ compiler sometimes generates a wrapper of __xlc_exception_handle() and calls the wrapper from the landing pad for optimization purposes. This patch changes the implementation to unwind the stack from __xlc_exception_handle() and skip frames not associated with functions that are C++ EH-aware until a frame associated with a C++ EH-aware function is found and then retrieving the exception object with the expectation that the located frame is the one that the personality routine installed as it transferred control to the landing pad. Reviewed by: cebowleratibm, hubert.reinterpretcast, daltenty Differential Revision: https://reviews.llvm.org/D143010 | 3 年前 | |
[libcxxabi] Fix for c9d36bd80760db14f14b33789e6cbc6cb8c64830 Otherwise fails with LIBCPP_REMOVE_TRANSITIVE_INCLUDES | 3 年前 | |
[libc++abi][NFCI] Refactor demangling_terminate_handler to reduce nesting This keeps the same logic, but uses early return to avoid multiple layers of nested ifs and make the code simpler to follow. Differential Revision: https://reviews.llvm.org/D125476 | 4 年前 | |
[libcxxabi] copy back std::string_view patches from LLVM I made a series of changes to LLVM's demangle in: - D148348 - D148353 - D148363 - D148375 and so did Fangrui in 3ece37b3fa2c and Ashay in D149061. I didn't notice the banner about there being two copies of this in tree and was modifying the downstream versions. Copy these changes back to the upstream version. Oops! Reviewed By: MaskRay, #libc_abi, ldionne, phosek Differential Revision: https://reviews.llvm.org/D148566 | 3 年前 | |
[SystemZ][z/OS] Modify cxxabi to be compatible with existing z/OS runtime This patch is to enable exception handling on the z/OS platform that is compatible with the existing z/OS runtime. No functionality of libcxxabi has been changed for other platforms. With this patch the hope is we can add z/OS as a platform to perform testing on any C++ ABI changes. There is a primary difference for the z/OS implementation. On z/OS the thrown object is added to a linked list of caught and uncaught exceptions. The unwinder uses the top one as the current exception it is trying to find the landing pad for. We have to pop the top exception after we get it’s landing pad for our unwinder to correctly get any subsequent rethrows or nested exception calls. Differential Revision: https://reviews.llvm.org/D99913 | 3 年前 | |
[libc++abi][NFC] Fix typo in comment | 4 年前 | |
Revert "[libcxxabi] Always use thread_local for cxa_exception_storage" This reverts commit 8271aa5335668a1dc62168a4e90b4554bd3a0ca7 since it broke some downstream builds. See https://reviews.llvm.org/D138461 for details. | 3 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[libc++abi] Make the error message for recursive initialization of function-local statics more explicit The new message is a bit verbose, but it makes it clearer that this isn't a problem in libc++abi, but instead a problem in the user's code. Otherwise, we get bugs sent down to libc++abi because people see this message in their crash logs. Differential Revision: https://reviews.llvm.org/D148630 | 3 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[SystemZ][z/OS] Modify cxxabi to be compatible with existing z/OS runtime This patch is to enable exception handling on the z/OS platform that is compatible with the existing z/OS runtime. No functionality of libcxxabi has been changed for other platforms. With this patch the hope is we can add z/OS as a platform to perform testing on any C++ ABI changes. There is a primary difference for the z/OS implementation. On z/OS the thrown object is added to a linked list of caught and uncaught exceptions. The unwinder uses the top one as the current exception it is trying to find the landing pad for. We have to pop the top exception after we get it’s landing pad for our unwinder to correctly get any subsequent rethrows or nested exception calls. Differential Revision: https://reviews.llvm.org/D99913 | 3 年前 | |
[libc++] Revert "Protect users from relying on detail headers" & related changes This commit reverts 5aaefa51 (and also partly 7f285f48e77 and b6d75682f9, which were related to the original commit). As landed, 5aaefa51 had unintended consequences on some downstream bots and didn't have proper coverage upstream due to a few subtle things. Implementing this is something we should do in libc++, however we'll first need to address a few issues listed in https://reviews.llvm.org/D106124#3349710. Differential Revision: https://reviews.llvm.org/D120683 | 4 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[libc++] Move the definition of aligned allocation helpers outside of <new> They are not needed in <new> -- in fact they are only needed in .cpp files. Getting those out of the way makes the headers smaller and also makes it easier to use the library on platforms where aligned allocation is not available. Differential Revision: https://reviews.llvm.org/D139231 | 3 年前 | |
Revert "[libcxxabi] Always use thread_local for cxa_exception_storage" This reverts commit 8271aa5335668a1dc62168a4e90b4554bd3a0ca7 since it broke some downstream builds. See https://reviews.llvm.org/D138461 for details. | 3 年前 | |
[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 | 3 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[libc++][NFC] Consistently qualify malloc and free calls with std:: | 3 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 | |
[runtimes][NFC] Remove filenames at the top of the license notice We've stopped doing it in libc++ for a while now because these names would end up rotting as we move things around and copy/paste stuff. This cleans up all the existing files so as to stop the spreading as people copy-paste headers around. | 4 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 4 年前 |