]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Reapply r354347 (by cem):
authordim <dim@FreeBSD.org>
Thu, 6 Aug 2020 19:05:59 +0000 (19:05 +0000)
committerdim <dim@FreeBSD.org>
Thu, 6 Aug 2020 19:05:59 +0000 (19:05 +0000)
commit9a07dfb9a0ae9b4c657f1efff4e2343d54e15334
treee26ad60bd32df9aba678f1c3432b89eadfe717a8
parenta9ef843d704a12345dc26b36925c68ba0570c347
Reapply r354347 (by cem):

Fix llvm-libunwind userspace build on ARM

GCC's libgcc exports a few ARM-specific symbols for ARM EABI, AEABI, or
EHABI or whatever it's called.  Export the same ones from LLVM-libunwind's
libgcc_s, on ARM.  As part of this, convert libgcc_s from a direct
Version.map to one constructed from component Symbol.map files.  This allows
the ARM-specific Symbol.map to be included only on ARM.

Fix ARM-only oddities in struct name/aliases in LLVM-libunwind to match
non-ARM definitions and ARM-specific expectations in libcxxrt /
libcompiler_rt.

No functional change intended for non-ARM architectures.

This commit does not actually flip the switch for ARM defaults from libgcc
to llvm-libunwind, but makes it possible (to compile, anyway).
contrib/llvm-project/compiler-rt/lib/builtins/gcc_personality_v0.c
contrib/llvm-project/libunwind/include/unwind.h