rebase of the patch

This commit is contained in:
Sylvestre Ledru 2019-02-11 11:57:00 +01:00
parent 493ad86c8b
commit 7ca89c666f
4 changed files with 58 additions and 85 deletions

View File

@ -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-snapshot_9~svn353687.orig/clang/lib/Basic/FileManager.cpp
+++ llvm-toolchain-7_7.1.0~svn353565/clang/lib/Basic/FileManager.cpp +++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Basic/FileManager.cpp
@@ -501,6 +501,12 @@ void FileManager::invalidateCache(const @@ -458,6 +458,12 @@ void FileManager::invalidateCache(const
UniqueRealFiles.erase(Entry->getUniqueID()); UniqueRealFiles.erase(Entry->getUniqueID());
} }
@ -15,11 +15,11 @@ Index: llvm-toolchain-7_7.1.0~svn353565/clang/lib/Basic/FileManager.cpp
void FileManager::GetUniqueIDMapping( void FileManager::GetUniqueIDMapping(
SmallVectorImpl<const FileEntry *> &UIDToFiles) const { SmallVectorImpl<const FileEntry *> &UIDToFiles) const {
UIDToFiles.clear(); 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-snapshot_9~svn353687.orig/lldb/include/lldb/lldb-defines.h
+++ llvm-toolchain-7_7.1.0~svn353565/lldb/include/lldb/lldb-defines.h +++ llvm-toolchain-snapshot_9~svn353687/lldb/include/lldb/lldb-defines.h
@@ -28,6 +28,11 @@ @@ -27,6 +27,11 @@
#define INT32_MAX 2147483647 #define INT32_MAX 2147483647
#endif #endif
@ -31,23 +31,11 @@ Index: llvm-toolchain-7_7.1.0~svn353565/lldb/include/lldb/lldb-defines.h
#if !defined(UINT32_MAX) #if !defined(UINT32_MAX)
#define UINT32_MAX 4294967295U #define UINT32_MAX 4294967295U
#endif #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-snapshot_9~svn353687.orig/tools/dsymutil/DwarfLinker.cpp
+++ llvm-toolchain-7_7.1.0~svn353565/lib/Support/Unix/Path.inc +++ llvm-toolchain-snapshot_9~svn353687/tools/dsymutil/DwarfLinker.cpp
@@ -49,6 +49,7 @@ @@ -100,6 +100,11 @@
// For GNU Hurd
#if defined(__GNU__) && !defined(PATH_MAX)
# define PATH_MAX 4096
+# define MAXPATHLEN 4096
#endif
#include <sys/types.h>
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 @@
#include <utility> #include <utility>
#include <vector> #include <vector>
@ -59,10 +47,10 @@ Index: llvm-toolchain-7_7.1.0~svn353565/tools/dsymutil/DwarfLinker.cpp
namespace llvm { namespace llvm {
namespace dsymutil { 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-snapshot_9~svn353687.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/polly/lib/External/ppcg/cuda_common.c
@@ -15,6 +15,11 @@ @@ -15,6 +15,11 @@
#include "cuda_common.h" #include "cuda_common.h"
#include "ppcg.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. /* Open the host .cu file and the kernel .hu and .cu files for writing.
* Add the necessary includes. * 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<char> &RealPath) {
#ifdef LLVM_ON_UNIX

View File

@ -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~svn353687.orig/clang/lib/Driver/CMakeLists.txt
+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/CMakeLists.txt +++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/CMakeLists.txt
@@ -49,6 +49,7 @@ add_clang_library(clangDriver @@ -49,6 +49,7 @@ add_clang_library(clangDriver
ToolChains/HIP.cpp ToolChains/HIP.cpp
ToolChains/Hexagon.cpp ToolChains/Hexagon.cpp
@ -10,10 +10,10 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/CMakeLists.txt
ToolChains/Linux.cpp ToolChains/Linux.cpp
ToolChains/MipsLinux.cpp ToolChains/MipsLinux.cpp
ToolChains/MinGW.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~svn353687.orig/clang/lib/Driver/Driver.cpp
+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/Driver.cpp +++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/Driver.cpp
@@ -26,6 +26,7 @@ @@ -26,6 +26,7 @@
#include "ToolChains/Haiku.h" #include "ToolChains/Haiku.h"
#include "ToolChains/Hexagon.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/Lanai.h"
#include "ToolChains/Linux.h" #include "ToolChains/Linux.h"
#include "ToolChains/MSP430.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: case llvm::Triple::FreeBSD:
TC = llvm::make_unique<toolchains::FreeBSD>(*this, Target, Args); TC = llvm::make_unique<toolchains::FreeBSD>(*this, Target, Args);
break; break;
@ -32,11 +32,11 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/Driver.cpp
case llvm::Triple::Minix: case llvm::Triple::Minix:
TC = llvm::make_unique<toolchains::Minix>(*this, Target, Args); TC = llvm::make_unique<toolchains::Minix>(*this, Target, Args);
break; 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~svn353687.orig/clang/lib/Driver/ToolChains/Clang.cpp
+++ llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/Clang.cpp +++ llvm-toolchain-snapshot_9~svn353687/clang/lib/Driver/ToolChains/Clang.cpp
@@ -534,7 +534,7 @@ static bool useFramePointerForTargetByDe @@ -535,7 +535,7 @@ static bool useFramePointerForTargetByDe
} }
if (Triple.isOSLinux() || Triple.getOS() == llvm::Triple::CloudABI || 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()) { switch (Triple.getArch()) {
// Don't use a frame pointer on linux if optimizing for certain targets. // Don't use a frame pointer on linux if optimizing for certain targets.
case llvm::Triple::mips64: 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~svn353687.orig/clang/lib/Driver/ToolChains/Gnu.cpp
+++ llvm-toolchain-snapshot_9~svn353038/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 @@ -521,6 +521,18 @@ void tools::gnutools::Linker::ConstructJ
CmdArgs.push_back("--wrap=pthread_create"); 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 X32LibDirs[] = {"/libx32"};
static const char *const X86LibDirs[] = {"/lib32", "/lib"}; static const char *const X86LibDirs[] = {"/lib32", "/lib"};
static const char *const X86Triples[] = { 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", "i586-redhat-linux", "i386-redhat-linux", "i586-suse-linux",
"i486-slackware-linux", "i686-montavista-linux", "i586-linux-gnu", "i486-slackware-linux", "i686-montavista-linux", "i586-linux-gnu",
"i686-linux-android", "i386-gnu", "i486-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" }; + "i386-kfreebsd-gnu" };
static const char *const MIPSLibDirs[] = {"/lib"}; 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 --- /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 @@ @@ -0,0 +1,459 @@
+//===--- KFreeBSD.cpp - kFreeBSD ToolChain Implementations --------*- C++ -*-===// +//===--- KFreeBSD.cpp - kFreeBSD ToolChain Implementations --------*- C++ -*-===//
+// +//
@ -552,10 +553,10 @@ Index: llvm-toolchain-snapshot_9~svn353038/clang/lib/Driver/ToolChains/KFreeBSD.
+ return Res; + 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 --- /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 @@ @@ -0,0 +1,54 @@
+//===--- KFreeBSD.h - kFreeBSD ToolChain Implementations ----------*- C++ -*-===// +//===--- KFreeBSD.h - kFreeBSD ToolChain Implementations ----------*- C++ -*-===//
+// +//

View File

@ -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_9~svn353687.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 +++ llvm-toolchain-snapshot_9~svn353687/libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp
@@ -8,6 +8,7 @@ @@ -7,6 +7,7 @@
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
// //
// UNSUPPORTED: libcpp-has-no-threads // UNSUPPORTED: libcpp-has-no-threads
+// XFAIL: * +// XFAIL: *
// <condition_variable> // 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_9~svn353687.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 +++ llvm-toolchain-snapshot_9~svn353687/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp
@@ -9,6 +9,7 @@ @@ -8,6 +8,7 @@
// //
// UNSUPPORTED: libcpp-has-no-threads // UNSUPPORTED: libcpp-has-no-threads
// UNSUPPORTED: c++98, c++03, c++11 // UNSUPPORTED: c++98, c++03, c++11
+// XFAIL: * +// XFAIL: *
// <shared_mutex> // FLAKY_TEST.

View File

@ -7,11 +7,11 @@ sure their ABI stays in sync.
No known upstream bug about this. 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_9~svn353687.orig/libcxxabi/src/cxa_exception.cpp
+++ llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp +++ llvm-toolchain-snapshot_9~svn353687/libcxxabi/src/cxa_exception.cpp
@@ -261,15 +261,16 @@ __cxa_throw(void *thrown_object, std::ty @@ -276,15 +276,16 @@ __cxa_throw(void *thrown_object, std::ty
#ifdef __USING_SJLJ_EXCEPTIONS__ #ifdef __USING_SJLJ_EXCEPTIONS__
_Unwind_SjLj_RaiseException(&exception_header->unwindHeader); _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 // 2.5.3 Exception Handlers
/* /*
The adjusted pointer is computed by the personality routine during phase 1 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 // to touch a foreign exception in any way, that is undefined
// behavior. They likely can't since the only way to catch // behavior. They likely can't since the only way to catch
// a foreign exception is with catch (...)! // a foreign exception is with catch (...)!
@ -42,7 +42,7 @@ Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp
globals->caughtExceptions = 0; globals->caughtExceptions = 0;
} }
} }
@@ -589,8 +594,10 @@ void __cxa_rethrow() { @@ -604,8 +609,10 @@ void __cxa_rethrow() {
} }
#ifdef __USING_SJLJ_EXCEPTIONS__ #ifdef __USING_SJLJ_EXCEPTIONS__
_Unwind_SjLj_RaiseException(&exception_header->unwindHeader); _Unwind_SjLj_RaiseException(&exception_header->unwindHeader);
@ -54,7 +54,7 @@ Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp
#endif #endif
// If we get here, some kind of unwinding error has occurred. // 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; dep_exception_header->unwindHeader.exception_cleanup = dependent_exception_cleanup;
#ifdef __USING_SJLJ_EXCEPTIONS__ #ifdef __USING_SJLJ_EXCEPTIONS__
_Unwind_SjLj_RaiseException(&dep_exception_header->unwindHeader); _Unwind_SjLj_RaiseException(&dep_exception_header->unwindHeader);
@ -66,13 +66,13 @@ Index: llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.cpp
#endif #endif
// Some sort of unwinding error. Note that terminate is a handler. // Some sort of unwinding error. Note that terminate is a handler.
__cxa_begin_catch(&dep_exception_header->unwindHeader); __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_9~svn353687.orig/libcxxabi/src/cxa_exception.hpp
+++ llvm-toolchain-snapshot_7svn337372/libcxxabi/src/cxa_exception.hpp +++ llvm-toolchain-snapshot_9~svn353687/libcxxabi/src/cxa_exception.hpp
@@ -24,6 +24,45 @@ static const uint64_t kOurExceptionClass @@ -27,6 +27,45 @@ uint64_t __getExceptionClass (const _Un
static const uint64_t kOurDependentExceptionClass = 0x434C4E47432B2B01; // CLNGC++\1 void __setExceptionClass ( _Unwind_Exception*, uint64_t);
static const uint64_t get_vendor_and_language = 0xFFFFFFFFFFFFFF00; // mask for CLNGC++ bool __isOurExceptionClass(const _Unwind_Exception*);
+#if LIBCXXABI_ARM_EHABI +#if LIBCXXABI_ARM_EHABI
+// GCC has _Unwind_Control_Block in unwind.h (unwind_arm_common.h) +// GCC has _Unwind_Control_Block in unwind.h (unwind_arm_common.h)