Hello community,

here is the log from the commit of package llvm6 for openSUSE:Factory checked 
in at 2018-07-27 10:54:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/llvm6 (Old)
 and      /work/SRC/openSUSE:Factory/.llvm6.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "llvm6"

Fri Jul 27 10:54:23 2018 rev:9 rq:625304 version:6.0.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/llvm6/llvm6.changes      2018-07-07 
21:56:57.755426941 +0200
+++ /work/SRC/openSUSE:Factory/.llvm6.new/llvm6.changes 2018-07-27 
10:55:07.785518825 +0200
@@ -1,0 +2,10 @@
+Wed Jul 25 07:29:54 UTC 2018 - m...@suse.com
+
+- Update to llvm 6.0.1
+  * This release contains bug-fixes for the LLVM 6.0.0 release. It
+    is API and ABI compatible with 6.0.0.
+- Remove no longer needed llvm6-fix-InstCombine.patch
+- Add lldb-fix-build-with-python-3.7.patch
+  * Fix build with python 3.7
+
+-------------------------------------------------------------------

Old:
----
  cfe-6.0.0.src.tar.xz
  cfe-docs-6.0.0.src.tar.xz
  clang-tools-extra-6.0.0.src.tar.xz
  compiler-rt-6.0.0.src.tar.xz
  libcxx-6.0.0.src.tar.xz
  libcxxabi-6.0.0.src.tar.xz
  lld-6.0.0.src.tar.xz
  lldb-6.0.0.src.tar.xz
  llvm-6.0.0.src.tar.xz
  llvm-docs-6.0.0.src.tar.xz
  llvm6-fix-InstCombine.patch
  openmp-6.0.0.src.tar.xz
  polly-6.0.0.src.tar.xz

New:
----
  cfe-6.0.1.src.tar.xz
  cfe-docs-6.0.1.src.tar.xz
  clang-tools-extra-6.0.1.src.tar.xz
  compiler-rt-6.0.1.src.tar.xz
  libcxx-6.0.1.src.tar.xz
  libcxxabi-6.0.1.src.tar.xz
  lld-6.0.1.src.tar.xz
  lldb-6.0.1.src.tar.xz
  lldb-fix-build-with-python-3.7.patch
  llvm-6.0.1.src.tar.xz
  llvm-docs-6.0.1.src.tar.xz
  openmp-6.0.1.src.tar.xz
  polly-6.0.1.src.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ llvm6.spec ++++++
--- /var/tmp/diff_new_pack.6AKN45/_old  2018-07-27 10:55:10.877524744 +0200
+++ /var/tmp/diff_new_pack.6AKN45/_new  2018-07-27 10:55:10.881524751 +0200
@@ -16,13 +16,13 @@
 #
 
 
-%define _relver 6.0.0
+%define _relver 6.0.1
 %define _minor  6.0
 %define _sonum  6
 # Integer version used by update-alternatives
-%define _uaver  600
+%define _uaver  601
 %define _socxx  1
-%define _revsn  326550
+%define _revsn  335528
 %ifarch x86_64
 %bcond_without libcxx
 %else
@@ -55,7 +55,7 @@
 %bcond_without pyclang
 
 Name:           llvm6
-Version:        6.0.0
+Version:        6.0.1
 Release:        0
 Summary:        Low Level Virtual Machine
 License:        NCSA
@@ -98,9 +98,9 @@
 Patch16:        n_clang_allow_BUILD_SHARED_LIBRARY.patch
 Patch17:        polly-cmake-Trust-pkg-config-in-FindJsoncpp.patch
 Patch18:        llvm-build-tests-with-rtti.patch
-Patch19:        llvm6-fix-InstCombine.patch
 Patch20:        llvm_build_tablegen_component_as_shared_library.patch
 Patch21:        llvm6-fix-gdb-index-crash.patch
+Patch22:        lldb-fix-build-with-python-3.7.patch
 BuildRequires:  binutils-devel >= 2.21.90
 BuildRequires:  binutils-gold
 BuildRequires:  cmake
@@ -514,7 +514,6 @@
 %patch14 -p1
 %patch15 -p1
 %patch18 -p1
-%patch19 -p2
 %patch20 -p1
 %patch21 -p1
 
@@ -532,6 +531,7 @@
 pushd lldb-%{version}.src
 %patch11 -p1
 %patch12 -p1
+%patch22 -p1
 # Set LLDB revision
 sed -i s,LLDB_REVISION,\"%{_llvm_revision}\",g source/lldb.cpp #"
 popd
@@ -739,14 +739,14 @@
 
 # Docs are prebuilt due to sphinx dependency
 #
-# pushd llvm-6.0.0.src/docs
+# pushd llvm-6.0.1.src/docs
 # make -f Makefile.sphinx man html
 # popd
-# pushd cfe-6.0.0.src/docs
+# pushd cfe-6.0.1.src/docs
 # make -f Makefile.sphinx man html
 # popd
-# tar cvJf llvm-docs-6.0.0.src.tar.xz llvm-6.0.0.src/docs/_build/{man,html}
-# tar cvJf cfe-docs-6.0.0.src.tar.xz cfe-6.0.0.src/docs/_build/{man,html}
+# tar cvJf llvm-docs-6.0.1.src.tar.xz llvm-6.0.1.src/docs/_build/{man,html}
+# tar cvJf cfe-docs-6.0.1.src.tar.xz cfe-6.0.1.src/docs/_build/{man,html}
 
 # Build man/html pages
 pushd docs

++++++ cfe-6.0.0.src.tar.xz -> cfe-6.0.1.src.tar.xz ++++++
/work/SRC/openSUSE:Factory/llvm6/cfe-6.0.0.src.tar.xz 
/work/SRC/openSUSE:Factory/.llvm6.new/cfe-6.0.1.src.tar.xz differ: char 25, 
line 1

++++++ cfe-docs-6.0.0.src.tar.xz -> cfe-docs-6.0.1.src.tar.xz ++++++
++++ 156019 lines of diff (skipped)

++++++ clang-tools-extra-6.0.0.src.tar.xz -> clang-tools-extra-6.0.1.src.tar.xz 
++++++

++++++ compiler-rt-6.0.0.src.tar.xz -> compiler-rt-6.0.1.src.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/compiler-rt-6.0.0.src/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
 
new/compiler-rt-6.0.1.src/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
--- 
old/compiler-rt-6.0.0.src/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
   2017-11-21 10:36:07.000000000 +0100
+++ 
new/compiler-rt-6.0.1.src/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
   2018-06-15 00:33:33.000000000 +0200
@@ -159,7 +159,6 @@
 # include <sys/procfs.h>
 #endif
 #include <sys/user.h>
-#include <sys/ustat.h>
 #include <linux/cyclades.h>
 #include <linux/if_eql.h>
 #include <linux/if_plip.h>
@@ -253,7 +252,19 @@
 #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
 
 #if SANITIZER_LINUX && !SANITIZER_ANDROID
-  unsigned struct_ustat_sz = sizeof(struct ustat);
+  // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
+  // has been removed from glibc 2.28.
+#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
+  || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \
+  || defined(__x86_64__)
+#define SIZEOF_STRUCT_USTAT 32
+#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \
+  || defined(__powerpc__) || defined(__s390__)
+#define SIZEOF_STRUCT_USTAT 20
+#else
+#error Unknown size of struct ustat
+#endif
+  unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT;
   unsigned struct_rlimit64_sz = sizeof(struct rlimit64);
   unsigned struct_statvfs64_sz = sizeof(struct statvfs64);
 #endif // SANITIZER_LINUX && !SANITIZER_ANDROID

++++++ libcxx-6.0.0.src.tar.xz -> libcxx-6.0.1.src.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libcxx-6.0.0.src/include/list 
new/libcxx-6.0.1.src/include/list
--- old/libcxx-6.0.0.src/include/list   2017-11-15 06:51:26.000000000 +0100
+++ new/libcxx-6.0.1.src/include/list   2018-06-13 18:57:18.000000000 +0200
@@ -2058,15 +2058,15 @@
 #endif
     if (__f != __l)
     {
+        __link_pointer __first = __f.__ptr_;
+        --__l;
+        __link_pointer __last = __l.__ptr_;
         if (this != &__c)
         {
-            size_type __s = _VSTD::distance(__f, __l);
+            size_type __s = _VSTD::distance(__f, __l) + 1;
             __c.__sz() -= __s;
             base::__sz() += __s;
         }
-        __link_pointer __first = __f.__ptr_;
-        --__l;
-        __link_pointer __last = __l.__ptr_;
         base::__unlink_nodes(__first, __last);
         __link_nodes(__p.__ptr_, __first, __last);
 #if _LIBCPP_DEBUG_LEVEL >= 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libcxx-6.0.0.src/src/support/runtime/exception_libcxxabi.ipp 
new/libcxx-6.0.1.src/src/support/runtime/exception_libcxxabi.ipp
--- old/libcxx-6.0.0.src/src/support/runtime/exception_libcxxabi.ipp    
2017-02-10 09:57:35.000000000 +0100
+++ new/libcxx-6.0.1.src/src/support/runtime/exception_libcxxabi.ipp    
2018-06-04 17:49:27.000000000 +0200
@@ -18,7 +18,7 @@
 
 int uncaught_exceptions() _NOEXCEPT
 {
-# if _LIBCPPABI_VERSION > 1101
+# if _LIBCPPABI_VERSION > 1001
     return __cxa_uncaught_exceptions();
 # else
     return __cxa_uncaught_exception() ? 1 : 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libcxx-6.0.0.src/test/libcxx/debug/containers/db_sequence_container_iterators.pass.cpp
 
new/libcxx-6.0.1.src/test/libcxx/debug/containers/db_sequence_container_iterators.pass.cpp
--- 
old/libcxx-6.0.0.src/test/libcxx/debug/containers/db_sequence_container_iterators.pass.cpp
  2017-05-04 19:08:54.000000000 +0200
+++ 
new/libcxx-6.0.1.src/test/libcxx/debug/containers/db_sequence_container_iterators.pass.cpp
  2018-06-13 18:57:18.000000000 +0200
@@ -42,6 +42,7 @@
     Base::run();
     try {
       FrontOnEmptyContainer();
+
       if constexpr (CT != CT_ForwardList) {
         AssignInvalidates();
         BackOnEmptyContainer();
@@ -50,6 +51,8 @@
         InsertIterIterIter();
         EmplaceIterValue();
         EraseIterIter();
+      } else {
+        SpliceFirstElemAfter();
       }
       if constexpr (CT == CT_Vector || CT == CT_Deque || CT == CT_List) {
         PopBack();
@@ -57,12 +60,66 @@
       if constexpr (CT == CT_List || CT == CT_Deque) {
         PopFront(); // FIXME: Run with forward list as well
       }
+      if constexpr (CT == CT_List || CT == CT_ForwardList) {
+        RemoveFirstElem();
+      }
+      if constexpr (CT == CT_List) {
+        SpliceFirstElem();
+      }
     } catch (...) {
       assert(false && "uncaught debug exception");
     }
   }
 
 private:
+  static void RemoveFirstElem() {
+    // See llvm.org/PR35564
+    CHECKPOINT("remove(<first-elem>)");
+    {
+      Container C = makeContainer(1);
+      auto FirstVal = *(C.begin());
+      C.remove(FirstVal);
+      assert(C.empty());
+    }
+    {
+      Container C = {1, 1, 1, 1};
+      auto FirstVal = *(C.begin());
+      C.remove(FirstVal);
+      assert(C.empty());
+    }
+  }
+
+  static void SpliceFirstElem() {
+    // See llvm.org/PR35564
+    CHECKPOINT("splice(<first-elem>)");
+    {
+      Container C = makeContainer(1);
+      Container C2;
+      C2.splice(C2.end(), C, C.begin(), ++C.begin());
+    }
+    {
+      Container C = makeContainer(1);
+      Container C2;
+      C2.splice(C2.end(), C, C.begin());
+    }
+  }
+
+
+  static void SpliceFirstElemAfter() {
+    // See llvm.org/PR35564
+    CHECKPOINT("splice(<first-elem>)");
+    {
+      Container C = makeContainer(1);
+      Container C2;
+      C2.splice_after(C2.begin(), C, C.begin(), ++C.begin());
+    }
+    {
+      Container C = makeContainer(1);
+      Container C2;
+      C2.splice_after(C2.begin(), C, C.begin());
+    }
+  }
+
   static void AssignInvalidates() {
     CHECKPOINT("assign(Size, Value)");
     Container C(allocator_type{});
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libcxx-6.0.0.src/test/std/language.support/support.exception/uncaught/uncaught_exceptions.pass.cpp
 
new/libcxx-6.0.1.src/test/std/language.support/support.exception/uncaught/uncaught_exceptions.pass.cpp
--- 
old/libcxx-6.0.0.src/test/std/language.support/support.exception/uncaught/uncaught_exceptions.pass.cpp
      2017-05-04 19:08:54.000000000 +0200
+++ 
new/libcxx-6.0.1.src/test/std/language.support/support.exception/uncaught/uncaught_exceptions.pass.cpp
      2018-06-04 17:49:27.000000000 +0200
@@ -15,40 +15,48 @@
 // XFAIL: availability=macosx10.9
 // XFAIL: availability=macosx10.10
 // XFAIL: availability=macosx10.11
+// XFAIL: with_system_cxx_lib=macosx10.12
+// XFAIL: with_system_cxx_lib=macosx10.13
 
 // test uncaught_exceptions
 
 #include <exception>
 #include <cassert>
 
-struct A
-{
-    ~A()
-    {
-        assert(std::uncaught_exceptions() > 0);
-    }
-};
+struct Uncaught {
+    Uncaught(int depth) : d_(depth) {}
+    ~Uncaught() { assert(std::uncaught_exceptions() == d_); }
+    int d_;
+    };
 
-struct B
-{
-    B()
-    {
-        // http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#475
-        assert(std::uncaught_exceptions() == 0);
+struct Outer {
+    Outer(int depth) : d_(depth) {}
+    ~Outer() {
+    try {
+        assert(std::uncaught_exceptions() == d_);
+        Uncaught u(d_+1);
+        throw 2;
     }
+    catch (int) {}
+    }
+    int d_;
 };
 
-int main()
-{
-    try
+int main () {
+    assert(std::uncaught_exceptions() == 0);
     {
-        A a;
-        assert(std::uncaught_exceptions() == 0);
-        throw B();
+    Outer o(0);
     }
-    catch (...)
+    
+    assert(std::uncaught_exceptions() == 0);
     {
-        assert(std::uncaught_exception() == 0);
+    try {
+        Outer o(1);
+        throw 1;
+        }
+    catch (int) {
+        assert(std::uncaught_exceptions() == 0);
+        }   
     }
     assert(std::uncaught_exceptions() == 0);
 }

++++++ libcxxabi-6.0.0.src.tar.xz -> libcxxabi-6.0.1.src.tar.xz ++++++

++++++ lld-6.0.0.src.tar.xz -> lld-6.0.1.src.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/COFF/Config.h 
new/lld-6.0.1.src/COFF/Config.h
--- old/lld-6.0.0.src/COFF/Config.h     2017-12-28 08:02:13.000000000 +0100
+++ new/lld-6.0.1.src/COFF/Config.h     2018-05-11 08:52:19.000000000 +0200
@@ -175,6 +175,7 @@
   bool AppContainer = false;
   bool MinGW = false;
   bool WarnLocallyDefinedImported = true;
+  bool KillAt = false;
 };
 
 extern Configuration *Config;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/COFF/Driver.cpp 
new/lld-6.0.1.src/COFF/Driver.cpp
--- old/lld-6.0.0.src/COFF/Driver.cpp   2018-01-16 16:40:23.000000000 +0100
+++ new/lld-6.0.1.src/COFF/Driver.cpp   2018-05-11 08:52:19.000000000 +0200
@@ -970,6 +970,10 @@
   if (Args.hasArg(OPT_lldsavetemps))
     Config->SaveTemps = true;
 
+  // Handle /kill-at
+  if (Args.hasArg(OPT_kill_at))
+    Config->KillAt = true;
+
   // Handle /lldltocache
   if (auto *Arg = Args.getLastArg(OPT_lldltocache))
     Config->LTOCache = Arg->getValue();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/COFF/DriverUtils.cpp 
new/lld-6.0.1.src/COFF/DriverUtils.cpp
--- old/lld-6.0.0.src/COFF/DriverUtils.cpp      2017-12-27 07:08:10.000000000 
+0100
+++ new/lld-6.0.1.src/COFF/DriverUtils.cpp      2018-05-11 08:52:19.000000000 
+0200
@@ -561,6 +561,26 @@
   return Sym.startswith("_") ? Sym.substr(1) : Sym;
 }
 
+// Convert stdcall/fastcall style symbols into unsuffixed symbols,
+// with or without a leading underscore. (MinGW specific.)
+static StringRef killAt(StringRef Sym, bool Prefix) {
+  if (Sym.empty())
+    return Sym;
+  // Strip any trailing stdcall suffix
+  Sym = Sym.substr(0, Sym.find('@', 1));
+  if (!Sym.startswith("@")) {
+    if (Prefix && !Sym.startswith("_"))
+      return Saver.save("_" + Sym);
+    return Sym;
+  }
+  // For fastcall, remove the leading @ and replace it with an
+  // underscore, if prefixes are used.
+  Sym = Sym.substr(1);
+  if (Prefix)
+    Sym = Saver.save("_" + Sym);
+  return Sym;
+}
+
 // Performs error checking on all /export arguments.
 // It also sets ordinals.
 void fixupExports() {
@@ -593,6 +613,15 @@
     }
   }
 
+  if (Config->KillAt && Config->Machine == I386) {
+    for (Export &E : Config->Exports) {
+      E.Name = killAt(E.Name, true);
+      E.ExportName = killAt(E.ExportName, false);
+      E.ExtName = killAt(E.ExtName, true);
+      E.SymbolName = killAt(E.SymbolName, true);
+    }
+  }
+
   // Uniquefy by name.
   DenseMap<StringRef, Export *> Map(Config->Exports.size());
   std::vector<Export> V;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/COFF/Options.td 
new/lld-6.0.1.src/COFF/Options.td
--- old/lld-6.0.0.src/COFF/Options.td   2017-12-28 08:02:13.000000000 +0100
+++ new/lld-6.0.1.src/COFF/Options.td   2018-05-11 08:52:19.000000000 +0200
@@ -121,6 +121,7 @@
 def debug_ghash : F<"debug:ghash">;
 def debug_dwarf : F<"debug:dwarf">;
 def export_all_symbols : F<"export-all-symbols">;
+def kill_at : F<"kill-at">;
 def lldmingw : F<"lldmingw">;
 def msvclto : F<"msvclto">;
 def output_def : Joined<["/", "-"], "output-def:">;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/ELF/Arch/Mips.cpp 
new/lld-6.0.1.src/ELF/Arch/Mips.cpp
--- old/lld-6.0.0.src/ELF/Arch/Mips.cpp 2017-11-22 13:34:29.000000000 +0100
+++ new/lld-6.0.1.src/ELF/Arch/Mips.cpp 2018-04-11 15:03:33.000000000 +0200
@@ -296,7 +296,8 @@
     write32<E>(Buf + 20, 0x0018c082); // srl   $24, $24, 2
   }
 
-  write32<E>(Buf + 24, 0x0320f809); // jalr  $25
+  uint32_t JalrInst = Config->ZHazardplt ? 0x0320fc09 : 0x0320f809;
+  write32<E>(Buf + 24, JalrInst); // jalr.hb $25 or jalr $25
   write32<E>(Buf + 28, 0x2718fffe); // subu  $24, $24, 2
 
   uint64_t GotPlt = InX::GotPlt->getVA();
@@ -330,9 +331,12 @@
     return;
   }
 
+  uint32_t JrInst = isMipsR6() ? (Config->ZHazardplt ? 0x03200409 : 0x03200009)
+                               : (Config->ZHazardplt ? 0x03200408 : 
0x03200008);
+
   write32<E>(Buf, 0x3c0f0000);     // lui   $15, %hi(.got.plt entry)
   write32<E>(Buf + 4, 0x8df90000); // l[wd] $25, %lo(.got.plt entry)($15)
-  write32<E>(Buf + 8, isMipsR6() ? 0x03200009 : 0x03200008);  // jr  $25
+  write32<E>(Buf + 8, JrInst);     // jr  $25 / jr.hb $25
   write32<E>(Buf + 12, 0x25f80000); // addiu $24, $15, %lo(.got.plt entry)
   writeRelocation<E>(Buf, GotPltEntryAddr + 0x8000, 16, 16);
   writeRelocation<E>(Buf + 4, GotPltEntryAddr, 16, 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/ELF/Config.h 
new/lld-6.0.1.src/ELF/Config.h
--- old/lld-6.0.0.src/ELF/Config.h      2018-02-02 11:50:39.000000000 +0100
+++ new/lld-6.0.1.src/ELF/Config.h      2018-04-11 15:03:33.000000000 +0200
@@ -151,6 +151,7 @@
   bool WarnMissingEntry;
   bool ZCombreloc;
   bool ZExecstack;
+  bool ZHazardplt;
   bool ZNocopyreloc;
   bool ZNodelete;
   bool ZNodlopen;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/ELF/Driver.cpp 
new/lld-6.0.1.src/ELF/Driver.cpp
--- old/lld-6.0.0.src/ELF/Driver.cpp    2018-02-22 10:26:44.000000000 +0100
+++ new/lld-6.0.1.src/ELF/Driver.cpp    2018-04-11 15:03:33.000000000 +0200
@@ -668,6 +668,7 @@
   Config->WarnCommon = Args.hasArg(OPT_warn_common);
   Config->ZCombreloc = !hasZOption(Args, "nocombreloc");
   Config->ZExecstack = hasZOption(Args, "execstack");
+  Config->ZHazardplt = hasZOption(Args, "hazardplt");
   Config->ZNocopyreloc = hasZOption(Args, "nocopyreloc");
   Config->ZNodelete = hasZOption(Args, "nodelete");
   Config->ZNodlopen = hasZOption(Args, "nodlopen");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/MinGW/Driver.cpp 
new/lld-6.0.1.src/MinGW/Driver.cpp
--- old/lld-6.0.0.src/MinGW/Driver.cpp  2017-12-12 21:34:38.000000000 +0100
+++ new/lld-6.0.1.src/MinGW/Driver.cpp  2018-05-11 08:58:06.000000000 +0200
@@ -154,6 +154,8 @@
     Add("-debug:dwarf");
   if (Args.hasArg(OPT_large_address_aware))
     Add("-largeaddressaware");
+  if (Args.hasArg(OPT_kill_at))
+    Add("-kill-at");
 
   if (Args.getLastArgValue(OPT_m) != "thumb2pe" &&
       Args.getLastArgValue(OPT_m) != "arm64pe" && 
!Args.hasArg(OPT_dynamicbase))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/MinGW/Options.td 
new/lld-6.0.1.src/MinGW/Options.td
--- old/lld-6.0.0.src/MinGW/Options.td  2017-12-15 21:53:10.000000000 +0100
+++ new/lld-6.0.1.src/MinGW/Options.td  2018-05-11 08:58:06.000000000 +0200
@@ -14,6 +14,7 @@
 def gc_sections: F<"gc-sections">, HelpText<"Remove unused sections">;
 def icf: J<"icf=">, HelpText<"Identical code folding">;
 def image_base: S<"image-base">, HelpText<"Base address of the program">;
+def kill_at: F<"kill-at">, HelpText<"Remove @n from exported symbols">;
 def l: JoinedOrSeparate<["-"], "l">, MetaVarName<"<libName>">,
   HelpText<"Root name of library to use">;
 def m: JoinedOrSeparate<["-"], "m">, HelpText<"Set target emulation">;
@@ -51,6 +52,7 @@
 def disable_auto_image_base: F<"disable-auto-image-base">;
 def enable_auto_image_base: F<"enable-auto-image-base">;
 def enable_auto_import: F<"enable-auto-import">;
+def end_group: J<"end-group">;
 def full_shutdown: Flag<["--"], "full-shutdown">;
 def high_entropy_va: F<"high-entropy-va">, HelpText<"Enable 64-bit ASLR">;
 def major_image_version: S<"major-image-version">;
@@ -59,6 +61,7 @@
 def nxcompat: F<"nxcompat">, HelpText<"Enable data execution prevention">;
 def pic_executable: F<"pic-executable">;
 def sysroot: J<"sysroot">, HelpText<"Sysroot">;
+def start_group: J<"start-group">;
 def tsaware: F<"tsaware">, HelpText<"Create Terminal Server aware executable">;
 def v: Flag<["-"], "v">, HelpText<"Display the version number">;
 def version: F<"version">, HelpText<"Display the version number and exit">;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/test/COFF/def-export-stdcall.s 
new/lld-6.0.1.src/test/COFF/def-export-stdcall.s
--- old/lld-6.0.0.src/test/COFF/def-export-stdcall.s    2017-10-23 
11:08:24.000000000 +0200
+++ new/lld-6.0.1.src/test/COFF/def-export-stdcall.s    2018-05-11 
08:52:19.000000000 +0200
@@ -46,7 +46,8 @@
 # DECORATED-EXPORTS: Name: vectorcall@@8
 
 
-# RUN: echo -e "LIBRARY foo\nEXPORTS\n  stdcall@8\n  @fastcall@8" > %t.def
+# GNU tools don't support vectorcall at the moment, but test it for 
completeness.
+# RUN: echo -e "LIBRARY foo\nEXPORTS\n  stdcall@8\n  @fastcall@8\n  
vectorcall@@8" > %t.def
 # RUN: lld-link -lldmingw -entry:dllmain -dll -def:%t.def %t.obj -out:%t.dll 
-implib:%t.lib
 # RUN: llvm-readobj %t.lib | FileCheck -check-prefix DECORATED-MINGW-IMPLIB %s
 # RUN: llvm-readobj -coff-exports %t.dll | FileCheck -check-prefix 
DECORATED-MINGW-EXPORTS %s
@@ -57,9 +58,39 @@
 # DECORATED-MINGW-IMPLIB: Name type: noprefix
 # DECORATED-MINGW-IMPLIB-NEXT: __imp__stdcall@8
 # DECORATED-MINGW-IMPLIB-NEXT: _stdcall@8
+# GNU tools don't support vectorcall, but this test is just to track that
+# lld's behaviour remains consistent over time.
+# DECORATED-MINGW-IMPLIB: Name type: name
+# DECORATED-MINGW-IMPLIB-NEXT: __imp_vectorcall@@8
+# DECORATED-MINGW-IMPLIB-NEXT: vectorcall@@8
 
 # DECORATED-MINGW-EXPORTS: Name: @fastcall@8
 # DECORATED-MINGW-EXPORTS: Name: stdcall@8
+# DECORATED-MINGW-EXPORTS: Name: vectorcall@@8
+
+# RUN: lld-link -lldmingw -kill-at -entry:dllmain -dll -def:%t.def %t.obj 
-out:%t.dll -implib:%t.lib
+# RUN: llvm-readobj %t.lib | FileCheck -check-prefix MINGW-KILL-AT-IMPLIB %s
+# RUN: llvm-readobj -coff-exports %t.dll | FileCheck -check-prefix 
MINGW-KILL-AT-EXPORTS %s
+
+# RUN: lld-link -lldmingw -kill-at -entry:dllmain -dll %t.obj -out:%t.dll 
-implib:%t.lib
+# RUN: llvm-readobj %t.lib | FileCheck -check-prefix MINGW-KILL-AT-IMPLIB %s
+# RUN: llvm-readobj -coff-exports %t.dll | FileCheck -check-prefix 
MINGW-KILL-AT-EXPORTS %s
+
+# MINGW-KILL-AT-IMPLIB: Name type: noprefix
+# MINGW-KILL-AT-IMPLIB: __imp__fastcall
+# MINGW-KILL-AT-IMPLIB-NEXT: _fastcall
+# MINGW-KILL-AT-IMPLIB: Name type: noprefix
+# MINGW-KILL-AT-IMPLIB-NEXT: __imp__stdcall
+# MINGW-KILL-AT-IMPLIB-NEXT: _stdcall
+# GNU tools don't support vectorcall, but this test is just to track that
+# lld's behaviour remains consistent over time.
+# MINGW-KILL-AT-IMPLIB: Name type: noprefix
+# MINGW-KILL-AT-IMPLIB-NEXT: __imp__vectorcall
+# MINGW-KILL-AT-IMPLIB-NEXT: _vectorcall
+
+# MINGW-KILL-AT-EXPORTS: Name: fastcall
+# MINGW-KILL-AT-EXPORTS: Name: stdcall
+# MINGW-KILL-AT-EXPORTS: Name: vectorcall
 
 
         .def     _stdcall@8;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/test/ELF/mips-26-n32-n64.s 
new/lld-6.0.1.src/test/ELF/mips-26-n32-n64.s
--- old/lld-6.0.0.src/test/ELF/mips-26-n32-n64.s        2017-11-22 
13:34:29.000000000 +0100
+++ new/lld-6.0.1.src/test/ELF/mips-26-n32-n64.s        2018-04-11 
15:03:33.000000000 +0200
@@ -5,7 +5,11 @@
 # RUN: ld.lld %t-so.o -shared -o %t.so
 # RUN: llvm-mc -filetype=obj -triple=mips64-unknown-linux %s -o %t.o
 # RUN: ld.lld %t.o %t.so -o %t.exe
-# RUN: llvm-objdump -d %t.exe | FileCheck %s
+# RUN: llvm-objdump -d %t.exe | FileCheck %s --check-prefixes=CHECK,DEFAULT
+# RUN: ld.lld %t-so.o -shared -o %t.so -z hazardplt
+# RUN: ld.lld %t.o %t.so -o %t.exe -z hazardplt
+# RUN: llvm-objdump -d %t.exe | FileCheck %s --check-prefixes=CHECK,HAZARDPLT
+
 
 # REQUIRES: mips
 
@@ -21,11 +25,13 @@
 # CHECK-NEXT:    2001c:       03 0e c0 23     subu    $24, $24, $14
 # CHECK-NEXT:    20020:       03 e0 78 25     move    $15, $ra
 # CHECK-NEXT:    20024:       00 18 c0 c2     srl     $24, $24, 3
-# CHECK-NEXT:    20028:       03 20 f8 09     jalr    $25
+# DEFAULT:       20028:       03 20 f8 09     jalr    $25
+# HAZARDPLT:     20028:       03 20 fc 09     jalr.hb $25
 # CHECK-NEXT:    2002c:       27 18 ff fe     addiu   $24, $24, -2
 # CHECK-NEXT:    20030:       3c 0f 00 03     lui     $15, 3
 # CHECK-NEXT:    20034:       8d f9 00 18     lw      $25, 24($15)
-# CHECK-NEXT:    20038:       03 20 00 08     jr      $25
+# DEFAULT:       20038:       03 20 00 08     jr      $25
+# HAZARDPLT:     20038:       03 20 04 08     jr.hb   $25
 # CHECK-NEXT:    2003c:       25 f8 00 18     addiu   $24, $15, 24
 
   .text
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/test/ELF/mips-plt-r6.s 
new/lld-6.0.1.src/test/ELF/mips-plt-r6.s
--- old/lld-6.0.0.src/test/ELF/mips-plt-r6.s    2017-06-24 00:30:28.000000000 
+0200
+++ new/lld-6.0.1.src/test/ELF/mips-plt-r6.s    2018-04-11 15:03:33.000000000 
+0200
@@ -6,7 +6,10 @@
 # RUN:         -mcpu=mips32r6 %S/Inputs/mips-dynamic.s -o %t2.o
 # RUN: ld.lld %t2.o -shared -o %t.so
 # RUN: ld.lld %t1.o %t.so -o %t.exe
-# RUN: llvm-objdump -d %t.exe | FileCheck %s
+# RUN: llvm-objdump -d %t.exe | FileCheck %s --check-prefixes=DEFAULT,CHECK
+# RUN: ld.lld %t2.o -shared -o %t.so -z hazardplt
+# RUN: ld.lld %t1.o %t.so -o %t.exe -z hazardplt
+# RUN: llvm-objdump -d %t.exe | FileCheck %s --check-prefixes=HAZARDPLT,CHECK
 
 # REQUIRES: mips
 
@@ -24,12 +27,14 @@
 # CHECK-NEXT:   2001c:       03 1c c0 23     subu    $24, $24, $gp
 # CHECK-NEXT:   20020:       03 e0 78 25     move    $15, $ra
 # CHECK-NEXT:   20024:       00 18 c0 82     srl     $24, $24, 2
-# CHECK-NEXT:   20028:       03 20 f8 09     jalr    $25
+# DEFAULT:      20028:       03 20 f8 09     jalr    $25
+# HAZARDPLT:    20028:       03 20 fc 09     jalr.hb $25
 # CHECK-NEXT:   2002c:       27 18 ff fe     addiu   $24, $24, -2
 
 # CHECK-NEXT:   20030:       3c 0f 00 03     aui     $15, $zero, 3
 # CHECK-NEXT:   20034:       8d f9 00 0c     lw      $25, 12($15)
-# CHECK-NEXT:   20038:       03 20 00 09     jr      $25
+# DEFAULT:      20038:       03 20 00 09     jr      $25
+# HAZARDPLT:    20038:       03 20 04 09     jr.hb   $25
 # CHECK-NEXT:   2003c:       25 f8 00 0c     addiu   $24, $15, 12
 
   .text
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lld-6.0.0.src/test/MinGW/driver.test 
new/lld-6.0.1.src/test/MinGW/driver.test
--- old/lld-6.0.0.src/test/MinGW/driver.test    2017-12-12 20:39:18.000000000 
+0100
+++ new/lld-6.0.1.src/test/MinGW/driver.test    2018-05-11 08:58:06.000000000 
+0200
@@ -124,3 +124,7 @@
 RUN: ld.lld -### -m i386pep foo.o --icf=all | FileCheck -check-prefix ICF %s
 RUN: ld.lld -### -m i386pep foo.o -icf=all | FileCheck -check-prefix ICF %s
 ICF: -opt:icf
+
+RUN: ld.lld -### foo.o -m i386pe -shared --kill-at | FileCheck 
-check-prefix=KILL-AT %s
+RUN: ld.lld -### foo.o -m i386pe -shared -kill-at | FileCheck 
-check-prefix=KILL-AT %s
+KILL-AT: -kill-at

++++++ lldb-6.0.0.src.tar.xz -> lldb-6.0.1.src.tar.xz ++++++
/work/SRC/openSUSE:Factory/llvm6/lldb-6.0.0.src.tar.xz 
/work/SRC/openSUSE:Factory/.llvm6.new/lldb-6.0.1.src.tar.xz differ: char 26, 
line 1

++++++ lldb-fix-build-with-python-3.7.patch ++++++
>From acbe5dc5cf0cf6852f02794987178595051a3a4e Mon Sep 17 00:00:00 2001
From: Michal Srb <m...@suse.com>
Date: Wed, 25 Jul 2018 10:08:58 +0200
Subject: [PATCH] Fix build with python 3.7.

The PyUnicode_AsUTF8AndSize now returns const char*, so we can not cast
it to char*. However, the PyString_AsStringAndSize from python 2 still
needs char**.
---
 source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp 
b/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
index 6a9d57d5a..3382813a5 100644
--- a/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
+++ b/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
@@ -399,11 +399,11 @@ llvm::StringRef PythonString::GetString() const {
     return llvm::StringRef();
 
   Py_ssize_t size;
-  char *c;
 
 #if PY_MAJOR_VERSION >= 3
-  c = PyUnicode_AsUTF8AndSize(m_py_obj, &size);
+  const char *c = PyUnicode_AsUTF8AndSize(m_py_obj, &size);
 #else
+  char *c;
   PyString_AsStringAndSize(m_py_obj, &c, &size);
 #endif
   return llvm::StringRef(c, size);
-- 
2.16.4

++++++ llvm-6.0.0.src.tar.xz -> llvm-6.0.1.src.tar.xz ++++++
/work/SRC/openSUSE:Factory/llvm6/llvm-6.0.0.src.tar.xz 
/work/SRC/openSUSE:Factory/.llvm6.new/llvm-6.0.1.src.tar.xz differ: char 25, 
line 1

++++++ llvm-do-not-install-static-libraries.patch ++++++
--- /var/tmp/diff_new_pack.6AKN45/_old  2018-07-27 10:55:14.521531719 +0200
+++ /var/tmp/diff_new_pack.6AKN45/_new  2018-07-27 10:55:14.525531727 +0200
@@ -2,10 +2,10 @@
 want after installation. By not copying them in the first place we reduce the
 disk usage during installation.
 
-Index: llvm-6.0.0.src/cmake/modules/AddLLVM.cmake
+Index: llvm-6.0.1.src/cmake/modules/AddLLVM.cmake
 ===================================================================
---- llvm-6.0.0.src.orig/cmake/modules/AddLLVM.cmake
-+++ llvm-6.0.0.src/cmake/modules/AddLLVM.cmake
+--- llvm-6.0.1.src.orig/cmake/modules/AddLLVM.cmake
++++ llvm-6.0.1.src/cmake/modules/AddLLVM.cmake
 @@ -639,10 +639,19 @@ macro(add_llvm_library name)
          set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
        endif()
@@ -30,10 +30,10 @@
  
        if (NOT CMAKE_CONFIGURATION_TYPES)
          add_llvm_install_targets(install-${name}
-Index: llvm-6.0.0.src/lld-6.0.0.src/cmake/modules/AddLLD.cmake
+Index: llvm-6.0.1.src/lld-6.0.1.src/cmake/modules/AddLLD.cmake
 ===================================================================
---- llvm-6.0.0.src.orig/lld-6.0.0.src/cmake/modules/AddLLD.cmake
-+++ llvm-6.0.0.src/lld-6.0.0.src/cmake/modules/AddLLD.cmake
+--- llvm-6.0.1.src.orig/lld-6.0.1.src/cmake/modules/AddLLD.cmake
++++ llvm-6.0.1.src/lld-6.0.1.src/cmake/modules/AddLLD.cmake
 @@ -17,13 +17,6 @@ macro(add_lld_library name)
        set_property(GLOBAL PROPERTY LLD_HAS_EXPORTS True)
      endif()
@@ -48,10 +48,10 @@
      if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
        add_llvm_install_targets(install-${name}
          DEPENDS ${name}
-Index: llvm-6.0.0.src/lldb-6.0.0.src/cmake/modules/AddLLDB.cmake
+Index: llvm-6.0.1.src/lldb-6.0.1.src/cmake/modules/AddLLDB.cmake
 ===================================================================
---- llvm-6.0.0.src.orig/lldb-6.0.0.src/cmake/modules/AddLLDB.cmake
-+++ llvm-6.0.0.src/lldb-6.0.0.src/cmake/modules/AddLLDB.cmake
+--- llvm-6.0.1.src.orig/lldb-6.0.1.src/cmake/modules/AddLLDB.cmake
++++ llvm-6.0.1.src/lldb-6.0.1.src/cmake/modules/AddLLDB.cmake
 @@ -60,10 +60,12 @@ function(add_lldb_library name)
            LIBRARY DESTINATION ${out_dir}
            ARCHIVE DESTINATION ${out_dir})
@@ -69,10 +69,10 @@
        endif()
        if (NOT CMAKE_CONFIGURATION_TYPES)
          add_llvm_install_targets(install-${name}
-Index: llvm-6.0.0.src/polly-6.0.0.src/cmake/polly_macros.cmake
+Index: llvm-6.0.1.src/polly-6.0.1.src/cmake/polly_macros.cmake
 ===================================================================
---- llvm-6.0.0.src.orig/polly-6.0.0.src/cmake/polly_macros.cmake
-+++ llvm-6.0.0.src/polly-6.0.0.src/cmake/polly_macros.cmake
+--- llvm-6.0.1.src.orig/polly-6.0.1.src/cmake/polly_macros.cmake
++++ llvm-6.0.1.src/polly-6.0.1.src/cmake/polly_macros.cmake
 @@ -42,12 +42,22 @@ macro(add_polly_library name)
      llvm_config(${name} ${LLVM_LINK_COMPONENTS})
    endif( LLVM_LINK_COMPONENTS )
@@ -101,10 +101,10 @@
  endmacro(add_polly_library)
  
  macro(add_polly_loadable_module name)
-Index: llvm-6.0.0.src/polly-6.0.0.src/lib/CMakeLists.txt
+Index: llvm-6.0.1.src/polly-6.0.1.src/lib/CMakeLists.txt
 ===================================================================
---- llvm-6.0.0.src.orig/polly-6.0.0.src/lib/CMakeLists.txt
-+++ llvm-6.0.0.src/polly-6.0.0.src/lib/CMakeLists.txt
+--- llvm-6.0.1.src.orig/polly-6.0.1.src/lib/CMakeLists.txt
++++ llvm-6.0.1.src/polly-6.0.1.src/lib/CMakeLists.txt
 @@ -145,7 +145,7 @@ else ()
    # hosts. This is not the case for bugpoint. Use 
LLVM_POLLY_LINK_INTO_TOOLS=ON
    # instead which will automatically resolve the additional dependencies by

++++++ llvm-docs-6.0.0.src.tar.xz -> llvm-docs-6.0.1.src.tar.xz ++++++
++++ 263588 lines of diff (skipped)

++++++ openmp-6.0.0.src.tar.xz -> openmp-6.0.1.src.tar.xz ++++++

++++++ polly-6.0.0.src.tar.xz -> polly-6.0.1.src.tar.xz ++++++
/work/SRC/openSUSE:Factory/llvm6/polly-6.0.0.src.tar.xz 
/work/SRC/openSUSE:Factory/.llvm6.new/polly-6.0.1.src.tar.xz differ: char 26, 
line 1


Reply via email to