diff --git a/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp b/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp --- a/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp +++ b/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp @@ -21,6 +21,10 @@ // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.10 // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.9 +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// XFAIL: s390-zos + // AppleClang < 10 incorrectly warns that aligned allocation is not supported // even when it is supported. // UNSUPPORTED: apple-clang-9 diff --git a/libcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp b/libcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp --- a/libcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp +++ b/libcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp @@ -21,6 +21,10 @@ // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.10 // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.9 +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// XFAIL: s390-zos + // REQUIRES: -faligned-allocation // ADDITIONAL_COMPILE_FLAGS: -faligned-allocation diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/delete_align_val_t_replace.pass.cpp @@ -29,6 +29,10 @@ // yet provide aligned new/delete definitions so this test fails to compile/link. // XFAIL: LIBCXX-WINDOWS-FIXME +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + #include #include #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp @@ -22,6 +22,10 @@ // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.10 // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.9 +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp @@ -22,6 +22,10 @@ // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.10 // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.9 +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new (nothrow) #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp @@ -20,6 +20,10 @@ // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.10 // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.9 +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new nothrow by replacing only operator new #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp @@ -9,6 +9,10 @@ // UNSUPPORTED: c++03, c++11, c++14 // UNSUPPORTED: sanitizer-new-delete +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new replacement #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/delete_align_val_t_replace.pass.cpp @@ -29,6 +29,10 @@ // yet provide aligned new/delete definitions so this test fails to compile/link. // XFAIL: LIBCXX-WINDOWS-FIXME +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + #include #include #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp @@ -22,6 +22,10 @@ // asan and msan will not call the new handler. // UNSUPPORTED: sanitizer-new-delete +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp @@ -22,6 +22,10 @@ // asan and msan will not call the new handler. // UNSUPPORTED: sanitizer-new-delete +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new (nothrow) #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp @@ -20,6 +20,10 @@ // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.10 // XFAIL: use_system_cxx_lib && x86_64-apple-macosx10.9 +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new nothrow by replacing only operator new #include diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp @@ -9,6 +9,10 @@ // UNSUPPORTED: c++03, c++11, c++14 // UNSUPPORTED: sanitizer-new-delete +// Libcxx when built for z/OS doesn't contain the aligned allocation functions, +// nor does the dynamic library shipped with z/OS. +// UNSUPPORTED: s390-zos + // test operator new replacement #include diff --git a/libcxx/utils/libcxx/test/params.py b/libcxx/utils/libcxx/test/params.py --- a/libcxx/utils/libcxx/test/params.py +++ b/libcxx/utils/libcxx/test/params.py @@ -67,6 +67,7 @@ AddFeature('target-x86_64') if re.match(r'^x86_64.*', triple) else None, AddFeature('target-aarch64') if re.match(r'^aarch64.*', triple) else None, AddFeature('target-arm') if re.match(r'^arm.*', triple) else None, + AddFeature('s390-zos') if re.match(r'^s390.*-zos', triple) else None, ])), Parameter(name='std', choices=_allStandards, type=str,