diff --git a/debian/patches/hurd/hurd-pathmax.diff b/debian/patches/hurd/hurd-pathmax.diff index fcf72b75..4f647bb9 100644 --- a/debian/patches/hurd/hurd-pathmax.diff +++ b/debian/patches/hurd/hurd-pathmax.diff @@ -1,8 +1,8 @@ -Index: llvm-toolchain-7_7.1.0~svn353565/clang/lib/Basic/FileManager.cpp +Index: llvm-toolchain-snapshot_9~svn353687/clang/lib/Basic/FileManager.cpp =================================================================== ---- llvm-toolchain-7_7.1.0~svn353565.orig/clang/lib/Basic/FileManager.cpp -+++ llvm-toolchain-7_7.1.0~svn353565/clang/lib/Basic/FileManager.cpp -@@ -501,6 +501,12 @@ void FileManager::invalidateCache(const +--- llvm-toolchain-snapshot_9~svn353687.orig/clang/lib/Basic/FileManager.cpp ++++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Basic/FileManager.cpp +@@ -458,6 +458,12 @@ void FileManager::invalidateCache(const UniqueRealFiles.erase(Entry->getUniqueID()); } @@ -15,11 +15,11 @@ Index: llvm-toolchain-7_7.1.0~svn353565/clang/lib/Basic/FileManager.cpp void FileManager::GetUniqueIDMapping( SmallVectorImpl &UIDToFiles) const { UIDToFiles.clear(); -Index: llvm-toolchain-7_7.1.0~svn353565/lldb/include/lldb/lldb-defines.h +Index: llvm-toolchain-snapshot_9~svn353687/lldb/include/lldb/lldb-defines.h =================================================================== ---- llvm-toolchain-7_7.1.0~svn353565.orig/lldb/include/lldb/lldb-defines.h -+++ llvm-toolchain-7_7.1.0~svn353565/lldb/include/lldb/lldb-defines.h -@@ -28,6 +28,11 @@ +--- llvm-toolchain-snapshot_9~svn353687.orig/lldb/include/lldb/lldb-defines.h ++++ llvm-toolchain-snapshot_9~svn353687/lldb/include/lldb/lldb-defines.h +@@ -27,6 +27,11 @@ #define INT32_MAX 2147483647 #endif @@ -31,23 +31,11 @@ Index: llvm-toolchain-7_7.1.0~svn353565/lldb/include/lldb/lldb-defines.h #if !defined(UINT32_MAX) #define UINT32_MAX 4294967295U #endif -Index: llvm-toolchain-7_7.1.0~svn353565/lib/Support/Unix/Path.inc +Index: llvm-toolchain-snapshot_9~svn353687/tools/dsymutil/DwarfLinker.cpp =================================================================== ---- llvm-toolchain-7_7.1.0~svn353565.orig/lib/Support/Unix/Path.inc -+++ llvm-toolchain-7_7.1.0~svn353565/lib/Support/Unix/Path.inc -@@ -49,6 +49,7 @@ - // For GNU Hurd - #if defined(__GNU__) && !defined(PATH_MAX) - # define PATH_MAX 4096 -+# define MAXPATHLEN 4096 - #endif - - #include -Index: llvm-toolchain-7_7.1.0~svn353565/tools/dsymutil/DwarfLinker.cpp -=================================================================== ---- llvm-toolchain-7_7.1.0~svn353565.orig/tools/dsymutil/DwarfLinker.cpp -+++ llvm-toolchain-7_7.1.0~svn353565/tools/dsymutil/DwarfLinker.cpp -@@ -101,6 +101,11 @@ +--- llvm-toolchain-snapshot_9~svn353687.orig/tools/dsymutil/DwarfLinker.cpp ++++ llvm-toolchain-snapshot_9~svn353687/tools/dsymutil/DwarfLinker.cpp +@@ -100,6 +100,11 @@ #include #include @@ -59,10 +47,10 @@ Index: llvm-toolchain-7_7.1.0~svn353565/tools/dsymutil/DwarfLinker.cpp namespace llvm { namespace dsymutil { -Index: llvm-toolchain-7_7.1.0~svn353565/polly/lib/External/ppcg/cuda_common.c +Index: llvm-toolchain-snapshot_9~svn353687/polly/lib/External/ppcg/cuda_common.c =================================================================== ---- llvm-toolchain-7_7.1.0~svn353565.orig/polly/lib/External/ppcg/cuda_common.c -+++ llvm-toolchain-7_7.1.0~svn353565/polly/lib/External/ppcg/cuda_common.c +--- llvm-toolchain-snapshot_9~svn353687.orig/polly/lib/External/ppcg/cuda_common.c ++++ llvm-toolchain-snapshot_9~svn353687/polly/lib/External/ppcg/cuda_common.c @@ -15,6 +15,11 @@ #include "cuda_common.h" #include "ppcg.h" @@ -75,19 +63,3 @@ Index: llvm-toolchain-7_7.1.0~svn353565/polly/lib/External/ppcg/cuda_common.c /* Open the host .cu file and the kernel .hu and .cu files for writing. * Add the necessary includes. */ -Index: llvm-toolchain-7_7.1.0~svn353565/clang/lib/Frontend/ModuleDependencyCollector.cpp -=================================================================== ---- llvm-toolchain-7_7.1.0~svn353565.orig/clang/lib/Frontend/ModuleDependencyCollector.cpp -+++ llvm-toolchain-7_7.1.0~svn353565/clang/lib/Frontend/ModuleDependencyCollector.cpp -@@ -99,6 +99,11 @@ struct ModuleDependencyMMCallbacks : pub - - } - -+// For GNU Hurd -+#if defined(__GNU__) && !defined(PATH_MAX) -+# define PATH_MAX 4096 -+#endif -+ - // TODO: move this to Support/Path.h and check for HAVE_REALPATH? - static bool real_path(StringRef SrcPath, SmallVectorImpl &RealPath) { - #ifdef LLVM_ON_UNIX diff --git a/debian/patches/kfreebsd/kfreebsd-triple-clang.diff b/debian/patches/kfreebsd/kfreebsd-triple-clang.diff index cf1dfee9..ef4a2f1b 100644 --- a/debian/patches/kfreebsd/kfreebsd-triple-clang.diff +++ b/debian/patches/kfreebsd/kfreebsd-triple-clang.diff @@ -1,7 +1,7 @@ -Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/CMakeLists.txt +Index: llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_9~svn353038.orig/clang/lib/Driver/CMakeLists.txt -+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/CMakeLists.txt +--- llvm-toolchain-snapshot_9~svn353687.orig/clang/lib/Driver/CMakeLists.txt ++++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/CMakeLists.txt @@ -49,6 +49,7 @@ add_clang_library(clangDriver ToolChains/HIP.cpp ToolChains/Hexagon.cpp @@ -10,10 +10,10 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/CMakeLists.txt ToolChains/Linux.cpp ToolChains/MipsLinux.cpp ToolChains/MinGW.cpp -Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/Driver.cpp +Index: llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/Driver.cpp =================================================================== ---- llvm-toolchain-snapshot_9~svn353038.orig/clang/lib/Driver/Driver.cpp -+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/Driver.cpp +--- llvm-toolchain-snapshot_9~svn353687.orig/clang/lib/Driver/Driver.cpp ++++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/Driver.cpp @@ -26,6 +26,7 @@ #include "ToolChains/Haiku.h" #include "ToolChains/Hexagon.h" @@ -22,7 +22,7 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/Driver.cpp #include "ToolChains/Lanai.h" #include "ToolChains/Linux.h" #include "ToolChains/MSP430.h" -@@ -4562,6 +4563,9 @@ const ToolChain &Driver::getToolChain(co +@@ -4561,6 +4562,9 @@ const ToolChain &Driver::getToolChain(co case llvm::Triple::FreeBSD: TC = llvm::make_unique(*this, Target, Args); break; @@ -32,11 +32,11 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/Driver.cpp case llvm::Triple::Minix: TC = llvm::make_unique(*this, Target, Args); break; -Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Clang.cpp +Index: llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/Clang.cpp =================================================================== ---- llvm-toolchain-snapshot_9~svn353038.orig/clang/lib/Driver/ToolChains/Clang.cpp -+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Clang.cpp -@@ -534,7 +534,7 @@ static bool useFramePointerForTargetByDe +--- llvm-toolchain-snapshot_9~svn353687.orig/clang/lib/Driver/ToolChains/Clang.cpp ++++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/Clang.cpp +@@ -535,7 +535,7 @@ static bool useFramePointerForTargetByDe } if (Triple.isOSLinux() || Triple.getOS() == llvm::Triple::CloudABI || @@ -45,10 +45,10 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Clang.cpp switch (Triple.getArch()) { // Don't use a frame pointer on linux if optimizing for certain targets. case llvm::Triple::mips64: -Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Gnu.cpp +Index: llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/Gnu.cpp =================================================================== ---- llvm-toolchain-snapshot_9~svn353038.orig/clang/lib/Driver/ToolChains/Gnu.cpp -+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Gnu.cpp +--- llvm-toolchain-snapshot_9~svn353687.orig/clang/lib/Driver/ToolChains/Gnu.cpp ++++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/Gnu.cpp @@ -521,6 +521,18 @@ void tools::gnutools::Linker::ConstructJ CmdArgs.push_back("--wrap=pthread_create"); @@ -78,7 +78,7 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Gnu.cpp static const char *const X32LibDirs[] = {"/libx32"}; static const char *const X86LibDirs[] = {"/lib32", "/lib"}; static const char *const X86Triples[] = { -@@ -1906,6 +1919,8 @@ void Generic_GCC::GCCInstallationDetecto +@@ -1906,7 +1919,9 @@ void Generic_GCC::GCCInstallationDetecto "i586-redhat-linux", "i386-redhat-linux", "i586-suse-linux", "i486-slackware-linux", "i686-montavista-linux", "i586-linux-gnu", "i686-linux-android", "i386-gnu", "i486-gnu", @@ -88,10 +88,11 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Gnu.cpp + "i386-kfreebsd-gnu" }; static const char *const MIPSLibDirs[] = {"/lib"}; -Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/KFreeBSD.cpp + static const char *const MIPSTriples[] = { +Index: llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/KFreeBSD.cpp =================================================================== --- /dev/null -+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/KFreeBSD.cpp ++++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/KFreeBSD.cpp @@ -0,0 +1,459 @@ +//===--- KFreeBSD.cpp - kFreeBSD ToolChain Implementations --------*- C++ -*-===// +// @@ -552,10 +553,10 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/KFreeBSD. + return Res; +} + -Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/KFreeBSD.h +Index: llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/KFreeBSD.h =================================================================== --- /dev/null -+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/KFreeBSD.h ++++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/KFreeBSD.h @@ -0,0 +1,54 @@ +//===--- KFreeBSD.h - kFreeBSD ToolChain Implementations ----------*- C++ -*-===// +// diff --git a/debian/patches/libcxx/libcxx-silent-failure-arm64.diff b/debian/patches/libcxx/libcxx-silent-failure-arm64.diff index c06b6e33..f3b20636 100644 --- a/debian/patches/libcxx/libcxx-silent-failure-arm64.diff +++ b/debian/patches/libcxx/libcxx-silent-failure-arm64.diff @@ -1,24 +1,24 @@ -Index: llvm-toolchain-snapshot_7~svn337372/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp +Index: llvm-toolchain-snapshot_9~svn353687/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_7~svn337372.orig/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp -+++ llvm-toolchain-snapshot_7~svn337372/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp -@@ -8,6 +8,7 @@ +--- llvm-toolchain-snapshot_9~svn353687.orig/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp ++++ llvm-toolchain-snapshot_9~svn353687/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp +@@ -7,6 +7,7 @@ //===----------------------------------------------------------------------===// // // UNSUPPORTED: libcpp-has-no-threads +// XFAIL: * - // + // FLAKY_TEST. -Index: llvm-toolchain-snapshot_7~svn337372/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp +Index: llvm-toolchain-snapshot_9~svn353687/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp =================================================================== ---- llvm-toolchain-snapshot_7~svn337372.orig/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp -+++ llvm-toolchain-snapshot_7~svn337372/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp -@@ -9,6 +9,7 @@ +--- llvm-toolchain-snapshot_9~svn353687.orig/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp ++++ llvm-toolchain-snapshot_9~svn353687/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp +@@ -8,6 +8,7 @@ // // UNSUPPORTED: libcpp-has-no-threads // UNSUPPORTED: c++98, c++03, c++11 +// XFAIL: * - // + // FLAKY_TEST. diff --git a/debian/patches/libcxx/libcxxabi-arm-ehabi-fix.patch b/debian/patches/libcxx/libcxxabi-arm-ehabi-fix.patch index a8afdaa9..c476eb31 100644 --- a/debian/patches/libcxx/libcxxabi-arm-ehabi-fix.patch +++ b/debian/patches/libcxx/libcxxabi-arm-ehabi-fix.patch @@ -7,11 +7,11 @@ sure their ABI stays in sync. No known upstream bug about this. -Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp +Index: llvm-toolchain-snapshot_9~svn353687/libcxxabi/src/cxa_exception.cpp =================================================================== ---- llvm-toolchain-snapshot_7svn337372.orig/libcxxabi/src/cxa_exception.cpp -+++ llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp -@@ -261,15 +261,16 @@ __cxa_throw(void *thrown_object, std::ty +--- llvm-toolchain-snapshot_9~svn353687.orig/libcxxabi/src/cxa_exception.cpp ++++ llvm-toolchain-snapshot_9~svn353687/libcxxabi/src/cxa_exception.cpp +@@ -276,15 +276,16 @@ __cxa_throw(void *thrown_object, std::ty #ifdef __USING_SJLJ_EXCEPTIONS__ _Unwind_SjLj_RaiseException(&exception_header->unwindHeader); @@ -30,7 +30,7 @@ Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp // 2.5.3 Exception Handlers /* The adjusted pointer is computed by the personality routine during phase 1 -@@ -532,7 +533,11 @@ void __cxa_end_catch() { +@@ -547,7 +548,11 @@ void __cxa_end_catch() { // to touch a foreign exception in any way, that is undefined // behavior. They likely can't since the only way to catch // a foreign exception is with catch (...)! @@ -42,7 +42,7 @@ Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp globals->caughtExceptions = 0; } } -@@ -589,8 +594,10 @@ void __cxa_rethrow() { +@@ -604,8 +609,10 @@ void __cxa_rethrow() { } #ifdef __USING_SJLJ_EXCEPTIONS__ _Unwind_SjLj_RaiseException(&exception_header->unwindHeader); @@ -54,7 +54,7 @@ Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp #endif // If we get here, some kind of unwinding error has occurred. -@@ -714,8 +721,10 @@ __cxa_rethrow_primary_exception(void* th +@@ -729,8 +736,10 @@ __cxa_rethrow_primary_exception(void* th dep_exception_header->unwindHeader.exception_cleanup = dependent_exception_cleanup; #ifdef __USING_SJLJ_EXCEPTIONS__ _Unwind_SjLj_RaiseException(&dep_exception_header->unwindHeader); @@ -66,13 +66,13 @@ Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp #endif // Some sort of unwinding error. Note that terminate is a handler. __cxa_begin_catch(&dep_exception_header->unwindHeader); -Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.hpp +Index: llvm-toolchain-snapshot_9~svn353687/libcxxabi/src/cxa_exception.hpp =================================================================== ---- llvm-toolchain-snapshot_7svn337372.orig/libcxxabi/src/cxa_exception.hpp -+++ llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.hpp -@@ -24,6 +24,45 @@ static const uint64_t kOurExceptionClass - static const uint64_t kOurDependentExceptionClass = 0x434C4E47432B2B01; // CLNGC++\1 - static const uint64_t get_vendor_and_language = 0xFFFFFFFFFFFFFF00; // mask for CLNGC++ +--- llvm-toolchain-snapshot_9~svn353687.orig/libcxxabi/src/cxa_exception.hpp ++++ llvm-toolchain-snapshot_9~svn353687/libcxxabi/src/cxa_exception.hpp +@@ -27,6 +27,45 @@ uint64_t __getExceptionClass (const _Un + void __setExceptionClass ( _Unwind_Exception*, uint64_t); + bool __isOurExceptionClass(const _Unwind_Exception*); +#if LIBCXXABI_ARM_EHABI +// GCC has _Unwind_Control_Block in unwind.h (unwind_arm_common.h)