bridges/source/cpp_uno/gcc3_linux_aarch64/abi.cxx | 2 +- bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx | 4 ++-- bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx | 4 ++-- bridges/source/cpp_uno/gcc3_macosx_x86-64/except.cxx | 10 +++++----- bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx | 4 ++-- 5 files changed, 12 insertions(+), 12 deletions(-)
New commits: commit 91c8a3f3e7d3c178952d7e78e24cd0d6ba2b165a Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Wed Aug 12 13:37:19 2020 +0200 Commit: Stephan Bergmann <sberg...@redhat.com> CommitDate: Wed Aug 12 17:37:06 2020 +0200 The __cxa_exception::reserve member has been backported to LLVM 10 libcxxabi ...so record that fact in our comments, to avoid confusion Change-Id: I83a9c576a92d74c207c8c778df0d020daf5bf33d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100593 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/bridges/source/cpp_uno/gcc3_linux_aarch64/abi.cxx b/bridges/source/cpp_uno/gcc3_linux_aarch64/abi.cxx index b0a35996784e..7164b4ecb51c 100644 --- a/bridges/source/cpp_uno/gcc3_linux_aarch64/abi.cxx +++ b/bridges/source/cpp_uno/gcc3_linux_aarch64/abi.cxx @@ -182,7 +182,7 @@ extern "C" void _GLIBCXX_CDTOR_CALLABI deleteException(void * exception) { // Later, libcxxabi, as used at least on macOS on arm64, added a // void *reserve at the start of the __cxa_exception in front of // the referenceCount. See - // https://github.com/llvm/llvm-project/commit/f2a436058fcbc11291e73badb44e243f61046183#diff-ba9cda1ceca630ba040b154fe198adbd + // https://github.com/llvm/llvm-project/commit/674ec1eb16678b8addc02a4b0534ab383d22fa77 if (header->exceptionDestructor != &deleteException) { header = reinterpret_cast<__cxxabiv1::__cxa_exception *>( diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx b/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx index 25931671f7dc..981ddfe676f7 100644 --- a/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx +++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx @@ -152,8 +152,8 @@ void fillUnoException(uno_Any * pUnoExc, uno_Mapping * pCpp2Uno) #if defined _LIBCPPABI_VERSION // detect libc++abi // Very bad HACK to find out whether we run against a libcxxabi that has a new - // __cxa_exception::reserved member at the start, introduced with LLVM 11 - // <https://github.com/llvm/llvm-project/commit/f2a436058fcbc11291e73badb44e243f61046183> + // __cxa_exception::reserved member at the start, introduced with LLVM 10 + // <https://github.com/llvm/llvm-project/commit/674ec1eb16678b8addc02a4b0534ab383d22fa77> // "[libcxxabi] Insert padding in __cxa_exception struct for compatibility". The layout of the // start of __cxa_exception is // diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx b/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx index 53c8841fbbcb..edcb46d0da2a 100644 --- a/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx +++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx @@ -109,8 +109,8 @@ struct __cxa_exception { #if defined _LIBCPPABI_VERSION // detect libc++abi #if defined __LP64__ || LIBCXXABI_ARM_EHABI #if 0 - // This is a new field added with LLVM 11 - // <https://github.com/llvm/llvm-project/commit/f2a436058fcbc11291e73badb44e243f61046183> + // This is a new field added with LLVM 10 + // <https://github.com/llvm/llvm-project/commit/674ec1eb16678b8addc02a4b0534ab383d22fa77> // "[libcxxabi] Insert padding in __cxa_exception struct for compatibility". The HACK in // fillUnoException (bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx) tries to find out at // runtime whether a __cxa_exception has this member. Once we can be sure that we only run diff --git a/bridges/source/cpp_uno/gcc3_macosx_x86-64/except.cxx b/bridges/source/cpp_uno/gcc3_macosx_x86-64/except.cxx index 36eeda41bca7..e0216ddf3824 100644 --- a/bridges/source/cpp_uno/gcc3_macosx_x86-64/except.cxx +++ b/bridges/source/cpp_uno/gcc3_macosx_x86-64/except.cxx @@ -275,10 +275,10 @@ static void deleteException( void * pExc ) // point to this function (the use of __cxa_exception in fillUnoException is // unaffected, as it only accesses members towards the start of the struct, // through a pointer known to actually point at the start). The libcxxabi commit - // <https://github.com/llvm/llvm-project/commit/f2a436058fcbc11291e73badb44e243f61046183> - // "[libcxxabi] Insert padding in __cxa_exception struct for compatibility" towards LLVM 11 + // <https://github.com/llvm/llvm-project/commit/674ec1eb16678b8addc02a4b0534ab383d22fa77> + // "[libcxxabi] Insert padding in __cxa_exception struct for compatibility" in LLVM 10 // removes the need for this hack, so it can be removed again once we can be sure that we only - // run against libcxxabi from LLVM >= 11: + // run against libcxxabi from LLVM >= 10: if (header->exceptionDestructor != &deleteException) { header = reinterpret_cast<__cxa_exception const *>( reinterpret_cast<char const *>(header) - 8); @@ -353,8 +353,8 @@ void fillUnoException(uno_Any * pUnoExc, uno_Mapping * pCpp2Uno) } // Very bad HACK to find out whether we run against a libcxxabi that has a new - // __cxa_exception::reserved member at the start, introduced with LLVM 11 - // <https://github.com/llvm/llvm-project/commit/f2a436058fcbc11291e73badb44e243f61046183> + // __cxa_exception::reserved member at the start, introduced with LLVM 10 + // <https://github.com/llvm/llvm-project/commit/674ec1eb16678b8addc02a4b0534ab383d22fa77> // "[libcxxabi] Insert padding in __cxa_exception struct for compatibility". The layout of the // start of __cxa_exception is // diff --git a/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx b/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx index 015cda1c00e5..dbfa5a309080 100644 --- a/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx +++ b/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx @@ -69,8 +69,8 @@ struct __cxa_exception { #if __LP64__ #if 0 - // This is a new field added with LLVM 11 - // <https://github.com/llvm/llvm-project/commit/f2a436058fcbc11291e73badb44e243f61046183> + // This is a new field added with LLVM 10 + // <https://github.com/llvm/llvm-project/commit/674ec1eb16678b8addc02a4b0534ab383d22fa77> // "[libcxxabi] Insert padding in __cxa_exception struct for compatibility". The HACK in // fillUnoException (bridges/source/cpp_uno/gcc3_macosx_x86-64/except.cxx) tries to find out at // runtime whether a __cxa_exception has this member. Once we can be sure that we only run _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits