summaryrefslogtreecommitdiff
path: root/libcxxabi/lib
diff options
context:
space:
mode:
authorLouis Dionne <ldionne@apple.com>2020-04-20 05:22:20 -0400
committerLouis Dionne <ldionne@apple.com>2020-04-20 10:45:14 -0400
commitecf313c01ddefb8191d87e516586c37f84862837 (patch)
treeb8453d73c07c8c719787bfe08686393bfc1fedb7 /libcxxabi/lib
parent865996ddf626a4d6e2a9c401b1fffc731a1946aa (diff)
downloadllvm-ecf313c01ddefb8191d87e516586c37f84862837.tar.gz
[libc++] Fix the no-exceptions build of libc++ on Apple
We previously tried re-exporting symbols that didn't exist when exceptions were disabled. Note that building libc++abi without exceptions still doesn't work when linking against the default-provided libSystem.dylib, because it transitively depends on libobjc.dylib, and that requires __gxx_personality_v0. But building libc++abi with exceptions and libc++ without exceptions does work.
Diffstat (limited to 'libcxxabi/lib')
-rw-r--r--libcxxabi/lib/exceptions.exp11
-rw-r--r--libcxxabi/lib/itanium-base.exp13
2 files changed, 12 insertions, 12 deletions
diff --git a/libcxxabi/lib/exceptions.exp b/libcxxabi/lib/exceptions.exp
new file mode 100644
index 000000000000..c3780d297490
--- /dev/null
+++ b/libcxxabi/lib/exceptions.exp
@@ -0,0 +1,11 @@
+___cxa_allocate_dependent_exception
+___cxa_allocate_exception
+___cxa_begin_catch
+___cxa_call_unexpected
+___cxa_current_exception_type
+___cxa_end_catch
+___cxa_free_dependent_exception
+___cxa_free_exception
+___cxa_get_exception_ptr
+___cxa_rethrow
+___cxa_throw
diff --git a/libcxxabi/lib/itanium-base.exp b/libcxxabi/lib/itanium-base.exp
index c08c711f7cfc..1b14cb8fba17 100644
--- a/libcxxabi/lib/itanium-base.exp
+++ b/libcxxabi/lib/itanium-base.exp
@@ -245,22 +245,13 @@ __ZTVSt9bad_alloc
__ZTVSt9exception
__ZTVSt9type_info
-# Itanium C++ ABI requirements
-___cxa_allocate_dependent_exception
-___cxa_allocate_exception
+# Itanium C++ ABI requirements (minus most exception support)
___cxa_bad_cast
___cxa_bad_typeid
-___cxa_begin_catch
-___cxa_call_unexpected
-___cxa_current_exception_type
___cxa_current_primary_exception
___cxa_decrement_exception_refcount
___cxa_deleted_virtual
___cxa_demangle
-___cxa_end_catch
-___cxa_free_dependent_exception
-___cxa_free_exception
-___cxa_get_exception_ptr
___cxa_get_globals
___cxa_get_globals_fast
___cxa_guard_abort
@@ -268,9 +259,7 @@ ___cxa_guard_acquire
___cxa_guard_release
___cxa_increment_exception_refcount
___cxa_pure_virtual
-___cxa_rethrow
___cxa_rethrow_primary_exception
-___cxa_throw
___cxa_throw_bad_array_new_length
___cxa_uncaught_exception
___cxa_uncaught_exceptions