svn commit: r363976 - projects/clang1100-import/contrib/llvm-project/libunwind/src
Dimitry Andric
dim at FreeBSD.org
Thu Aug 6 19:08:29 UTC 2020
Author: dim
Date: Thu Aug 6 19:08:28 2020
New Revision: 363976
URL: https://svnweb.freebsd.org/changeset/base/363976
Log:
Reapply r355803 (by mmel):
Fix LLVM libunwnwind _Unwind_Backtrace symbol version for ARM.
In original GNU libgcc, _Unwind_Backtrace is published with GCC_3.3 version
for all architectures but ARM. For ARM should be publishes with GCC_4.3.0
version. This was originally omitted in r255095, fixed in r318024 and omitted
aging in LLVM libunwind implementation in r354347.
For ARM _Unwind_Backtrace should be published as default with GCC_4.3.0
version , (because this is right original version) and again as
normal(not-default) with GCC_3.3 version (to maintain ABI compatibility
compiled/linked with wrong pre r318024 libgcc)
PR: 233664
Modified:
projects/clang1100-import/contrib/llvm-project/libunwind/src/UnwindLevel1-gcc-ext.c
Modified: projects/clang1100-import/contrib/llvm-project/libunwind/src/UnwindLevel1-gcc-ext.c
==============================================================================
--- projects/clang1100-import/contrib/llvm-project/libunwind/src/UnwindLevel1-gcc-ext.c Thu Aug 6 19:05:59 2020 (r363975)
+++ projects/clang1100-import/contrib/llvm-project/libunwind/src/UnwindLevel1-gcc-ext.c Thu Aug 6 19:08:28 2020 (r363976)
@@ -181,6 +181,10 @@ _Unwind_Backtrace(_Unwind_Trace_Fn callback, void *ref
}
}
}
+#ifdef __arm__
+/* Preserve legacy libgcc (pre r318024) ARM ABI mistake */
+__sym_compat(_Unwind_Backtrace, _Unwind_Backtrace, GCC_3.3);
+#endif
/// Find DWARF unwind info for an address 'pc' in some function.
More information about the svn-src-projects
mailing list