[libcxx-commits] [libcxx] c1887e3 - Revert "Allow running back-deployment testing against libc++abi"
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Fri Nov 6 14:27:23 PST 2020
Author: Louis Dionne
Date: 2020-11-06T17:26:42-05:00
New Revision: c1887e3f15aeac7037b88b066b33d142c6bb1321
URL: https://github.com/llvm/llvm-project/commit/c1887e3f15aeac7037b88b066b33d142c6bb1321
DIFF: https://github.com/llvm/llvm-project/commit/c1887e3f15aeac7037b88b066b33d142c6bb1321.diff
LOG: Revert "Allow running back-deployment testing against libc++abi"
This reverts commit 4d79ef814aedb63, which broke a few build bots.
I'm reverting until I have time to investigate.
Added:
Modified:
libcxx/test/configs/legacy.cfg.in
libcxx/utils/ci/macos-backdeployment.sh
libcxx/utils/ci/run-buildbot
libcxx/utils/libcxx/compiler.py
libcxx/utils/libcxx/test/config.py
libcxxabi/test/catch_function_01.pass.cpp
libcxxabi/test/catch_member_data_pointer_01.pass.cpp
libcxxabi/test/catch_member_pointer_nullptr.pass.cpp
libcxxabi/test/catch_multi_level_pointer.pass.cpp
libcxxabi/test/catch_pointer_nullptr.pass.cpp
libcxxabi/test/catch_ptr_02.pass.cpp
libcxxabi/test/cxa_vec_new_overflow_PR41395.pass.cpp
libcxxabi/test/dynamic_cast.pass.cpp
libcxxabi/test/exception_object_alignment.pass.cpp
libcxxabi/test/incomplete_type.sh.cpp
libcxxabi/test/libcxxabi/test/config.py
libcxxabi/test/lit.site.cfg.in
libcxxabi/test/test_aux_runtime_op_array_new.pass.cpp
libcxxabi/test/test_demangle.pass.cpp
libcxxabi/test/test_exception_address_alignment.pass.cpp
libcxxabi/test/thread_local_destruction_order.pass.cpp
libcxxabi/test/uncaught_exceptions.pass.cpp
libunwind/test/libunwind/test/config.py
libunwind/test/lit.site.cfg.in
Removed:
################################################################################
diff --git a/libcxx/test/configs/legacy.cfg.in b/libcxx/test/configs/legacy.cfg.in
index 60591c0e424b..f0a4e8a73e09 100644
--- a/libcxx/test/configs/legacy.cfg.in
+++ b/libcxx/test/configs/legacy.cfg.in
@@ -8,7 +8,6 @@ config.project_obj_root = "@CMAKE_BINARY_DIR@"
config.libcxx_src_root = "@LIBCXX_SOURCE_DIR@"
config.libcxx_obj_root = "@LIBCXX_BINARY_DIR@"
config.cxx_library_root = "@LIBCXX_LIBRARY_DIR@"
-config.abi_library_root = "@LIBCXX_CXX_ABI_LIBRARY_PATH@"
config.enable_exceptions = @LIBCXX_ENABLE_EXCEPTIONS@
config.enable_debug_tests = @LIBCXX_ENABLE_DEBUG_MODE_SUPPORT@
config.enable_experimental = @LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY@
@@ -19,6 +18,7 @@ config.enable_32bit = @LIBCXX_BUILD_32_BITS@
config.cxx_abi = "@LIBCXX_CXX_ABI_LIBNAME@"
config.use_sanitizer = "@LLVM_USE_SANITIZER@"
config.sanitizer_library = "@LIBCXX_SANITIZER_LIBRARY@"
+config.abi_library_path = "@LIBCXX_CXX_ABI_LIBRARY_PATH@"
config.configuration_variant = "@LIBCXX_LIT_VARIANT@"
config.host_triple = "@LLVM_HOST_TRIPLE@"
config.target_triple = "@TARGET_TRIPLE@"
diff --git a/libcxx/utils/ci/macos-backdeployment.sh b/libcxx/utils/ci/macos-backdeployment.sh
index 281b6e561aeb..f91d7197e9e5 100755
--- a/libcxx/utils/ci/macos-backdeployment.sh
+++ b/libcxx/utils/ci/macos-backdeployment.sh
@@ -120,10 +120,6 @@ fi
LIBCXX_ROOT_ON_DEPLOYMENT_TARGET="${PREVIOUS_DYLIBS_DIR}/macOS/libc++/${DEPLOYMENT_TARGET}"
LIBCXXABI_ROOT_ON_DEPLOYMENT_TARGET="${PREVIOUS_DYLIBS_DIR}/macOS/libc++abi/${DEPLOYMENT_TARGET}"
-# TODO: On Apple platforms, we never produce libc++abi.1.dylib, always libc++abi.dylib.
-# Fix that in the build so that the tests stop searching for @rpath/libc++abi.1.dylib.
-cp "${LIBCXXABI_ROOT_ON_DEPLOYMENT_TARGET}/libc++abi.dylib" "${LIBCXXABI_ROOT_ON_DEPLOYMENT_TARGET}/libc++abi.1.dylib"
-
# Filesystem is supported on Apple platforms starting with macosx10.15.
if [[ ${DEPLOYMENT_TARGET} =~ ^10.9|10.10|10.11|10.12|10.13|10.14$ ]]; then
ENABLE_FILESYSTEM="--param enable_filesystem=false"
@@ -131,8 +127,9 @@ else
ENABLE_FILESYSTEM="--param enable_filesystem=true"
fi
-echo "@@@ Running tests for libc++ and libc++abi @@@"
-"${LLVM_BUILD_DIR}/bin/llvm-lit" -sv "${MONOREPO_ROOT}/libcxx/test" "${MONOREPO_ROOT}/libcxxabi/test" \
+# TODO: We need to also run the tests for libc++abi.
+echo "@@@ Running tests for libc++ @@@"
+"${LLVM_BUILD_DIR}/bin/llvm-lit" -sv "${MONOREPO_ROOT}/libcxx/test" \
--param=enable_experimental=false \
--param=enable_debug_tests=false \
${ENABLE_FILESYSTEM} \
@@ -141,8 +138,7 @@ echo "@@@ Running tests for libc++ and libc++abi @@@"
--param=target_triple="x86_64-apple-macosx${DEPLOYMENT_TARGET}" \
--param=cxx_library_root="${LLVM_INSTALL_DIR}/lib" \
--param=cxx_runtime_root="${LIBCXX_ROOT_ON_DEPLOYMENT_TARGET}" \
- --param=abi_library_root="${LLVM_INSTALL_DIR}/lib" \
- --param=abi_runtime_root="${LIBCXXABI_ROOT_ON_DEPLOYMENT_TARGET}" \
+ --param=abi_library_path="${LIBCXXABI_ROOT_ON_DEPLOYMENT_TARGET}" \
--param=use_system_cxx_lib="True" \
${ADDITIONAL_LIT_ARGS}
echo "@@@@@@"
diff --git a/libcxx/utils/ci/run-buildbot b/libcxx/utils/ci/run-buildbot
index b644668aeada..5a6ea64db62a 100755
--- a/libcxx/utils/ci/run-buildbot
+++ b/libcxx/utils/ci/run-buildbot
@@ -243,15 +243,9 @@ x86_64-apple-system-backdeployment-*)
fi
DEPLOYMENT_TARGET="${BUILDER#x86_64-apple-system-backdeployment-}"
-
- # TODO: On Apple platforms, we never produce libc++abi.1.dylib, always libc++abi.dylib.
- # Fix that in the build so that the tests stop searching for @rpath/libc++abi.1.dylib.
- cp "${OSX_ROOTS}/macOS/libc++abi/${DEPLOYMENT_TARGET}/libc++abi.dylib" \
- "${OSX_ROOTS}/macOS/libc++abi/${DEPLOYMENT_TARGET}/libc++abi.1.dylib"
-
PARAMS="target_triple=x86_64-apple-macosx${DEPLOYMENT_TARGET}"
PARAMS+=";cxx_runtime_root=${OSX_ROOTS}/macOS/libc++/${DEPLOYMENT_TARGET}"
- PARAMS+=";abi_runtime_root=${OSX_ROOTS}/macOS/libc++abi/${DEPLOYMENT_TARGET}"
+ PARAMS+=";abi_library_path=${OSX_ROOTS}/macOS/libc++abi/${DEPLOYMENT_TARGET}"
PARAMS+=";use_system_cxx_lib=True"
# Filesystem is supported on Apple platforms starting with macosx10.15.
if [[ ${DEPLOYMENT_TARGET} =~ ^10.9|10.10|10.11|10.12|10.13|10.14$ ]]; then
@@ -264,7 +258,9 @@ x86_64-apple-system-backdeployment-*)
-DLIBCXX_TEST_PARAMS="${PARAMS}" \
-DLIBCXXABI_TEST_PARAMS="${PARAMS}"
- check-cxx-cxxabi
+ # TODO: Also run the libc++abi tests
+ echo "+++ Running the libc++ tests"
+ ninja -C "${BUILD_DIR}" check-cxx
;;
benchmarks)
export CC=clang
diff --git a/libcxx/utils/libcxx/compiler.py b/libcxx/utils/libcxx/compiler.py
index dd334cdbcff9..248b5ba8a98c 100644
--- a/libcxx/utils/libcxx/compiler.py
+++ b/libcxx/utils/libcxx/compiler.py
@@ -29,6 +29,7 @@ def __init__(self, config, path, flags=None, compile_flags=None, link_flags=None
self.flags = list(flags or [])
self.compile_flags = list(compile_flags or [])
self.link_flags = list(link_flags or [])
+ self.link_libcxxabi_flag = '-lc++abi'
self.warning_flags = list(warning_flags or [])
self.verify_supported = verify_supported
self.use_verify = use_verify
diff --git a/libcxx/utils/libcxx/test/config.py b/libcxx/utils/libcxx/test/config.py
index 4b34a42db8b9..ca0385a16977 100644
--- a/libcxx/utils/libcxx/test/config.py
+++ b/libcxx/utils/libcxx/test/config.py
@@ -124,9 +124,8 @@ def configure(self):
self.configure_obj_root()
self.cxx_stdlib_under_test = self.get_lit_conf('cxx_stdlib_under_test', 'libc++')
self.cxx_library_root = self.get_lit_conf('cxx_library_root', self.libcxx_obj_root)
- self.abi_library_root = self.get_lit_conf('abi_library_root', None)
+ self.abi_library_root = self.get_lit_conf('abi_library_path', None)
self.cxx_runtime_root = self.get_lit_conf('cxx_runtime_root', self.cxx_library_root)
- self.abi_runtime_root = self.get_lit_conf('abi_runtime_root', self.abi_library_root)
self.configure_compile_flags()
self.configure_link_flags()
self.configure_env()
@@ -159,8 +158,6 @@ def print_config_info(self):
self.lit_config.note('Adding environment variables: %r' % show_env_vars)
self.lit_config.note("Linking against the C++ Library at {}".format(self.cxx_library_root))
self.lit_config.note("Running against the C++ Library at {}".format(self.cxx_runtime_root))
- self.lit_config.note("Linking against the ABI Library at {}".format(self.abi_library_root))
- self.lit_config.note("Running against the ABI Library at {}".format(self.abi_runtime_root))
sys.stderr.flush() # Force flushing to avoid broken output on Windows
def get_test_format(self):
@@ -426,11 +423,10 @@ def configure_link_flags_abi_library_path(self):
# Configure ABI library paths.
if self.abi_library_root:
self.cxx.link_flags += ['-L' + self.abi_library_root]
- if self.abi_runtime_root:
if not self.target_info.is_windows():
- self.cxx.link_flags += ['-Wl,-rpath,' + self.abi_runtime_root]
+ self.cxx.link_flags += ['-Wl,-rpath,' + self.abi_library_root]
else:
- self.add_path(self.exec_env, self.abi_runtime_root)
+ self.add_path(self.exec_env, self.abi_library_root)
def configure_link_flags_cxx_library(self):
if self.link_shared:
@@ -464,6 +460,7 @@ def configure_link_flags_abi_library(self):
if self.abi_library_root:
libname = self.make_static_lib_name('c++abi')
abs_path = os.path.join(self.abi_library_root, libname)
+ self.cxx.link_libcxxabi_flag = abs_path
self.cxx.link_flags += [abs_path]
else:
self.cxx.link_flags += ['-lc++abi']
@@ -593,7 +590,7 @@ def configure_substitutions(self):
sub.append(('%{flags}', ' '.join(map(pipes.quote, flags))))
sub.append(('%{compile_flags}', ' '.join(map(pipes.quote, compile_flags))))
sub.append(('%{link_flags}', ' '.join(map(pipes.quote, self.cxx.link_flags))))
-
+ sub.append(('%{link_libcxxabi}', pipes.quote(self.cxx.link_libcxxabi_flag)))
codesign_ident = self.get_lit_conf('llvm_codesign_identity', '')
env_vars = ' '.join('%s=%s' % (k, pipes.quote(v)) for (k, v) in self.exec_env.items())
exec_args = [
diff --git a/libcxxabi/test/catch_function_01.pass.cpp b/libcxxabi/test/catch_function_01.pass.cpp
index 2978853a2696..bbc94ad84d05 100644
--- a/libcxxabi/test/catch_function_01.pass.cpp
+++ b/libcxxabi/test/catch_function_01.pass.cpp
@@ -13,10 +13,6 @@
// XFAIL: gcc
// UNSUPPORTED: no-exceptions
-// 65ace9daa360 made it in the dylib in macOS 10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include <cassert>
template <class Tp>
diff --git a/libcxxabi/test/catch_member_data_pointer_01.pass.cpp b/libcxxabi/test/catch_member_data_pointer_01.pass.cpp
index 48199698839c..5fe9d59edcb3 100644
--- a/libcxxabi/test/catch_member_data_pointer_01.pass.cpp
+++ b/libcxxabi/test/catch_member_data_pointer_01.pass.cpp
@@ -8,10 +8,6 @@
// UNSUPPORTED: no-exceptions
-// 1b00fc5d8133 made it in the dylib in macOS 10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include <cassert>
struct A
diff --git a/libcxxabi/test/catch_member_pointer_nullptr.pass.cpp b/libcxxabi/test/catch_member_pointer_nullptr.pass.cpp
index 6ffb9ab526a1..bbf1ecf4657b 100644
--- a/libcxxabi/test/catch_member_pointer_nullptr.pass.cpp
+++ b/libcxxabi/test/catch_member_pointer_nullptr.pass.cpp
@@ -6,13 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// Catching an exception thrown as nullptr was not properly handled before
-// 2f984cab4fa7, which landed in macOS 10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
// UNSUPPORTED: no-exceptions
#include <cassert>
diff --git a/libcxxabi/test/catch_multi_level_pointer.pass.cpp b/libcxxabi/test/catch_multi_level_pointer.pass.cpp
index 76a734d95207..895e611d7d0a 100644
--- a/libcxxabi/test/catch_multi_level_pointer.pass.cpp
+++ b/libcxxabi/test/catch_multi_level_pointer.pass.cpp
@@ -8,10 +8,6 @@
// UNSUPPORTED: no-exceptions
-// 1b00fc5d8133 made it in the dylib in macOS 10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include <cassert>
#include <cstdio>
#include <cstdlib>
diff --git a/libcxxabi/test/catch_pointer_nullptr.pass.cpp b/libcxxabi/test/catch_pointer_nullptr.pass.cpp
index 78b345429b5a..6a8ed377caa7 100644
--- a/libcxxabi/test/catch_pointer_nullptr.pass.cpp
+++ b/libcxxabi/test/catch_pointer_nullptr.pass.cpp
@@ -6,13 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// Catching an exception thrown as nullptr was not properly handled before
-// 2f984cab4fa7, which landed in macOS 10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
// UNSUPPORTED: c++03
// UNSUPPORTED: no-exceptions
diff --git a/libcxxabi/test/catch_ptr_02.pass.cpp b/libcxxabi/test/catch_ptr_02.pass.cpp
index ce4918e7f650..a9914cc83520 100644
--- a/libcxxabi/test/catch_ptr_02.pass.cpp
+++ b/libcxxabi/test/catch_ptr_02.pass.cpp
@@ -14,9 +14,6 @@
// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97675.
// ADDITIONAL_COMPILE_FLAGS: -Wno-error
-// The fix for PR17222 made it in the dylib for macOS 10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include <cassert>
// Clang emits warnings about exceptions of type 'Child' being caught by
diff --git a/libcxxabi/test/cxa_vec_new_overflow_PR41395.pass.cpp b/libcxxabi/test/cxa_vec_new_overflow_PR41395.pass.cpp
index 17cf7c0a1467..84ba978f9dc1 100644
--- a/libcxxabi/test/cxa_vec_new_overflow_PR41395.pass.cpp
+++ b/libcxxabi/test/cxa_vec_new_overflow_PR41395.pass.cpp
@@ -8,14 +8,6 @@
// UNSUPPORTED: no-exceptions
-// PR41395 isn't fixed until the dylib shipped with macOS 10.15
-// XFAIL: with_system_cxx_lib=macosx10.14
-// XFAIL: with_system_cxx_lib=macosx10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include "cxxabi.h"
#include <new>
#include <cassert>
diff --git a/libcxxabi/test/dynamic_cast.pass.cpp b/libcxxabi/test/dynamic_cast.pass.cpp
index 45701ca3b57c..49ecddb4177b 100644
--- a/libcxxabi/test/dynamic_cast.pass.cpp
+++ b/libcxxabi/test/dynamic_cast.pass.cpp
@@ -6,16 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// PR33425 and PR33487 are not fixed until the dylib shipped with macOS 10.15
-// XFAIL: with_system_cxx_lib=macosx10.14
-
-// PR33439 isn't fixed until the dylib shipped with macOS 10.14
-// XFAIL: with_system_cxx_lib=macosx10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include <cassert>
// This test explicitly tests dynamic cast with types that have inaccessible
diff --git a/libcxxabi/test/exception_object_alignment.pass.cpp b/libcxxabi/test/exception_object_alignment.pass.cpp
index 2ff7448a4221..011ba5280a2e 100644
--- a/libcxxabi/test/exception_object_alignment.pass.cpp
+++ b/libcxxabi/test/exception_object_alignment.pass.cpp
@@ -8,16 +8,6 @@
// UNSUPPORTED: no-exceptions
-// The situation for the alignment of exception objects is badly messed up
-// before macOS 10.14. The test fails on macOS 10.9 to 10.12, passes on macOS
-// 10.13 (no investigation done), and passes afterwards. Just mark all the OSes
-// before 10.14 as unsupported.
-// UNSUPPORTED: with_system_cxx_lib=macosx10.13
-// UNSUPPORTED: with_system_cxx_lib=macosx10.12
-// UNSUPPORTED: with_system_cxx_lib=macosx10.11
-// UNSUPPORTED: with_system_cxx_lib=macosx10.10
-// UNSUPPORTED: with_system_cxx_lib=macosx10.9
-
// Check that the pointer __cxa_allocate_exception returns is aligned to the
// default alignment for the target architecture.
diff --git a/libcxxabi/test/incomplete_type.sh.cpp b/libcxxabi/test/incomplete_type.sh.cpp
index 33ef0e012e48..cbcf7536ee31 100644
--- a/libcxxabi/test/incomplete_type.sh.cpp
+++ b/libcxxabi/test/incomplete_type.sh.cpp
@@ -16,15 +16,13 @@
// UNSUPPORTED: no-exceptions
// UNSUPPORTED: no-rtti
-// The fix for PR25898 landed in the system dylibs in macOS 10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
+// NOTE: Link libc++abi explicitly and before libc++ so that libc++ doesn't drag
+// in the system libc++abi installation on OS X. (DYLD_LIBRARY_PATH is ignored
+// for shell tests because of Apple security features).
// RUN: %{cxx} %{flags} %{compile_flags} -Wno-unreachable-code -c %s -o %t.one.o
// RUN: %{cxx} %{flags} %{compile_flags} -Wno-unreachable-code -c %s -o %t.two.o -DTU_ONE
-// RUN: %{cxx} %{flags} %{link_flags} %t.one.o %t.two.o -o %t.exe
+// RUN: %{cxx} %{flags} %t.one.o %t.two.o %{link_libcxxabi} %{link_flags} -o %t.exe
// RUN: %{exec} %t.exe
#include <stdio.h>
diff --git a/libcxxabi/test/libcxxabi/test/config.py b/libcxxabi/test/libcxxabi/test/config.py
index 280a60a864bc..45fb0f5d7afc 100644
--- a/libcxxabi/test/libcxxabi/test/config.py
+++ b/libcxxabi/test/libcxxabi/test/config.py
@@ -18,7 +18,7 @@ def __init__(self, lit_config, config):
super(Configuration, self).__init__(lit_config, config)
self.libcxxabi_src_root = None
self.libcxxabi_obj_root = None
- self.abi_library_root = None
+ self.abi_library_path = None
self.libcxx_src_root = None
def configure_src_root(self):
diff --git a/libcxxabi/test/lit.site.cfg.in b/libcxxabi/test/lit.site.cfg.in
index 1b7713e3ef73..87f955e32161 100644
--- a/libcxxabi/test/lit.site.cfg.in
+++ b/libcxxabi/test/lit.site.cfg.in
@@ -7,7 +7,7 @@ config.cxx_under_test = "@CMAKE_CXX_COMPILER@"
config.project_obj_root = "@CMAKE_BINARY_DIR@"
config.libcxxabi_src_root = "@LIBCXXABI_SOURCE_DIR@"
config.libcxxabi_obj_root = "@LIBCXXABI_BINARY_DIR@"
-config.abi_library_root = "@LIBCXXABI_LIBRARY_DIR@"
+config.abi_library_path = "@LIBCXXABI_LIBRARY_DIR@"
config.libcxx_src_root = "@LIBCXXABI_LIBCXX_PATH@"
config.cxx_headers = "@LIBCXXABI_LIBCXX_INCLUDES@"
config.libunwind_headers = "@LIBCXXABI_LIBUNWIND_INCLUDES_INTERNAL@"
diff --git a/libcxxabi/test/test_aux_runtime_op_array_new.pass.cpp b/libcxxabi/test/test_aux_runtime_op_array_new.pass.cpp
index 52ccce8c7045..943ebe8bb63e 100644
--- a/libcxxabi/test/test_aux_runtime_op_array_new.pass.cpp
+++ b/libcxxabi/test/test_aux_runtime_op_array_new.pass.cpp
@@ -8,15 +8,6 @@
// UNSUPPORTED: no-exceptions
-// ___cxa_throw_bad_array_new_length is re-exported from libc++ only starting
-// in macosx 10.15
-// XFAIL: with_system_cxx_lib=macosx10.14
-// XFAIL: with_system_cxx_lib=macosx10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include <cxxabi.h>
#include <new>
diff --git a/libcxxabi/test/test_demangle.pass.cpp b/libcxxabi/test/test_demangle.pass.cpp
index 7ce08963bda3..cbbccb14feed 100644
--- a/libcxxabi/test/test_demangle.pass.cpp
+++ b/libcxxabi/test/test_demangle.pass.cpp
@@ -6,15 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// The demangler does not pass all these tests with the system dylibs on macOS.
-// XFAIL: with_system_cxx_lib=macosx10.15
-// XFAIL: with_system_cxx_lib=macosx10.14
-// XFAIL: with_system_cxx_lib=macosx10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include "support/timer.h"
#include <cassert>
#include <cstdio>
diff --git a/libcxxabi/test/test_exception_address_alignment.pass.cpp b/libcxxabi/test/test_exception_address_alignment.pass.cpp
index c72a5a2f04d5..1b7316b2f32b 100644
--- a/libcxxabi/test/test_exception_address_alignment.pass.cpp
+++ b/libcxxabi/test/test_exception_address_alignment.pass.cpp
@@ -11,11 +11,10 @@
// The <unwind.h> header provided in the SDK of older Xcodes used to provide
// an incorrectly aligned _Unwind_Exception type. That causes these tests to
-// fail when linking against a libc++abi that was built with those SDKs.
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
+// fail with those SDKs.
+// FIXME: We mark the test as unsupported on Apple until we have a Lit feature
+// representing the SDK version.
+// UNSUPPORTED: darwin
// Test that the address of the exception object is properly aligned as required
// by the relevant ABI
diff --git a/libcxxabi/test/thread_local_destruction_order.pass.cpp b/libcxxabi/test/thread_local_destruction_order.pass.cpp
index 7097f2971a93..eeb90b820b87 100644
--- a/libcxxabi/test/thread_local_destruction_order.pass.cpp
+++ b/libcxxabi/test/thread_local_destruction_order.pass.cpp
@@ -6,6 +6,19 @@
//
//===----------------------------------------------------------------------===//
+// Darwin TLV finalization routines used to fail when creating a thread-local
+// variable in the destructor for another thread-local variable:
+// - http://lists.llvm.org/pipermail/cfe-dev/2016-November/051376.html
+// - rdar://29523281
+// This was fixed in dyld in macos 10.15.
+//
+// XFAIL: macosx10.14
+// XFAIL: macosx10.13
+// XFAIL: macosx10.12
+// XFAIL: macosx10.11
+// XFAIL: macosx10.10
+// XFAIL: macosx10.9
+
// UNSUPPORTED: c++03
// UNSUPPORTED: libcxxabi-no-threads
diff --git a/libcxxabi/test/uncaught_exceptions.pass.cpp b/libcxxabi/test/uncaught_exceptions.pass.cpp
index c3c1aacb2af0..3474e0c3c514 100644
--- a/libcxxabi/test/uncaught_exceptions.pass.cpp
+++ b/libcxxabi/test/uncaught_exceptions.pass.cpp
@@ -8,14 +8,6 @@
// UNSUPPORTED: no-exceptions
-// __cxa_uncaught_exceptions is not re-exported from libc++ until macOS 10.15.
-// XFAIL: with_system_cxx_lib=macosx10.14
-// XFAIL: with_system_cxx_lib=macosx10.13
-// XFAIL: with_system_cxx_lib=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9
-
#include <cxxabi.h>
#include <cassert>
diff --git a/libunwind/test/libunwind/test/config.py b/libunwind/test/libunwind/test/config.py
index be2dcbd1af59..9231860fc622 100644
--- a/libunwind/test/libunwind/test/config.py
+++ b/libunwind/test/libunwind/test/config.py
@@ -17,7 +17,7 @@ def __init__(self, lit_config, config):
super(Configuration, self).__init__(lit_config, config)
self.libunwind_src_root = None
self.libunwind_obj_root = None
- self.abi_library_root = None
+ self.abi_library_path = None
self.libcxx_src_root = None
def configure_src_root(self):
diff --git a/libunwind/test/lit.site.cfg.in b/libunwind/test/lit.site.cfg.in
index cb2e087fad73..8ff770fe29bc 100644
--- a/libunwind/test/lit.site.cfg.in
+++ b/libunwind/test/lit.site.cfg.in
@@ -7,7 +7,7 @@ config.cxx_under_test = "@CMAKE_CXX_COMPILER@"
config.project_obj_root = "@CMAKE_BINARY_DIR@"
config.libunwind_src_root = "@LIBUNWIND_SOURCE_DIR@"
config.libunwind_obj_root = "@LIBUNWIND_BINARY_DIR@"
-config.abi_library_root = "@LIBUNWIND_LIBRARY_DIR@"
+config.abi_library_path = "@LIBUNWIND_LIBRARY_DIR@"
config.libcxx_src_root = "@LIBUNWIND_LIBCXX_PATH@"
config.libunwind_headers = "@LIBUNWIND_SOURCE_DIR@/include"
config.cxx_library_root = "@LIBUNWIND_LIBCXX_LIBRARY_PATH@"
More information about the libcxx-commits
mailing list