Hello community,

here is the log from the commit of package llvm7 for openSUSE:Factory checked 
in at 2019-03-05 12:15:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/llvm7 (Old)
 and      /work/SRC/openSUSE:Factory/.llvm7.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "llvm7"

Tue Mar  5 12:15:32 2019 rev:9 rq:679241 version:7.0.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/llvm7/llvm7.changes      2019-02-04 
21:17:49.295727281 +0100
+++ /work/SRC/openSUSE:Factory/.llvm7.new.28833/llvm7.changes   2019-03-05 
12:15:33.269021229 +0100
@@ -1,0 +2,14 @@
+Tue Feb 26 09:44:21 UTC 2019 - [email protected]
+
+- llvm-Ensure-that-variant-part-discriminator-is-read-by-Me.patch,
+  llvm-test-Fix-Assembler-debug-info.ll.patch
+  * Fix crash in rustc (boo#1126907)
+
+-------------------------------------------------------------------
+Sun Feb 17 21:38:04 UTC 2019 - John Paul Adrian Glaubitz 
<[email protected]>
+
+- Allow use of Gold linker to be conditional
+- Disable Gold linker on ppc
+  + LLVM currently doesn't build with Gold on ppc
+
+-------------------------------------------------------------------

New:
----
  llvm-Ensure-that-variant-part-discriminator-is-read-by-Me.patch
  llvm-test-Fix-Assembler-debug-info.ll.patch

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

Other differences:
------------------
++++++ llvm7.spec ++++++
--- /var/tmp/diff_new_pack.wWddZ8/_old  2019-03-05 12:15:36.165020328 +0100
+++ /var/tmp/diff_new_pack.wWddZ8/_new  2019-03-05 12:15:36.169020327 +0100
@@ -12,7 +12,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -33,6 +33,12 @@
 %else
 %bcond_with openmp
 %endif
+# LLVM currently doesn't build with Gold on ppc
+%ifarch ppc
+%bcond_with gold
+%else
+%bcond_without gold
+%endif
 
 %ifarch x86_64
 %bcond_without lldb
@@ -103,8 +109,12 @@
 Patch25:        llvm-drop-llvm-optional-clang-specific-optimization.patch
 Patch26:        clang-fix-powerpc-triplet.patch
 Patch27:        llvm-D51108.patch
+Patch28:        llvm-Ensure-that-variant-part-discriminator-is-read-by-Me.patch
+Patch29:        llvm-test-Fix-Assembler-debug-info.ll.patch
 BuildRequires:  binutils-devel >= 2.21.90
+%if %{with gold}
 BuildRequires:  binutils-gold
+%endif
 BuildRequires:  cmake
 BuildRequires:  fdupes
 BuildRequires:  groff
@@ -162,7 +172,9 @@
 Requires:       libstdc++-devel
 Requires:       libtool
 Requires:       llvm%{_sonum}-LTO-devel
+%if %{with gold}
 Requires:       llvm%{_sonum}-gold
+%endif
 Requires:       llvm%{_sonum}-polly-devel
 Requires:       ncurses-devel
 Requires:       pkgconfig
@@ -193,7 +205,9 @@
 Recommends:     clang%{_sonum}-checker
 Recommends:     libc++-devel
 Recommends:     libomp%{_sonum}-devel
+%if %{with gold}
 Recommends:     llvm-gold-devel
+%endif
 Recommends:     scan-build
 Recommends:     scan-view
 %if %{with cxx}
@@ -286,6 +300,7 @@
 This package contains the link-time optimizer for LLVM.
 (development files)
 
+%if %{with gold}
 %package gold
 Summary:        Gold linker plugin for LLVM
 # Avoid multiple provider errors
@@ -297,6 +312,7 @@
 
 %description gold
 This package contains the Gold linker plugin for LLVM.
+%endif
 
 %package -n libomp%{_sonum}-devel
 Summary:        MPI plugin for LLVM
@@ -527,6 +543,8 @@
 %patch24 -p1
 %patch25 -p1
 %patch27 -p1
+%patch28 -p1
+%patch29 -p1
 
 pushd cfe-%{_relver}.src
 %patch1 -p1
@@ -669,7 +687,9 @@
     -DLLVM_INCLUDE_TESTS:BOOL=OFF \
     -DLLVM_ENABLE_ASSERTIONS=OFF \
     -DLLVM_TARGETS_TO_BUILD=Native \
+%if %{with gold}
     -DLLVM_USE_LINKER=gold \
+%endif
     -DCLANG_ENABLE_ARCMT:BOOL=OFF \
     -DCLANG_ENABLE_STATIC_ANALYZER:BOOL=OFF \
     -DCOMPILER_RT_BUILD_SANITIZERS:BOOL=OFF \
@@ -722,7 +742,9 @@
     -DLLVM_ENABLE_PIC=ON \
     -DLLVM_BINUTILS_INCDIR=%{_includedir} \
     -DLLVM_TARGETS_TO_BUILD=${TARGETS_TO_BUILD} \
+%if %{with gold}
     -DLLVM_USE_LINKER=gold \
+%endif
 %if "%{_lib}" == "lib64"
     -DLLVM_LIBDIR_SUFFIX=64 \
 %endif
@@ -790,7 +812,9 @@
 
 # Note that bfd-plugins is always in /usr/lib/bfd-plugins, no matter what 
_libdir is.
 mkdir -p %{buildroot}/usr/lib/bfd-plugins
+%if %{with gold}
 ln -s %{_libdir}/LLVMgold.so %{buildroot}/usr/lib/bfd-plugins/
+%endif
 
 install -m 755 -d %{buildroot}%{_datadir}/vim/site/
 for i in ftdetect ftplugin indent syntax; do
@@ -981,8 +1005,10 @@
 %postun -n liblldb%{_sonum} -p /sbin/ldconfig
 %endif
 
+%if %{with gold}
 %post gold -p /sbin/ldconfig
 %postun gold -p /sbin/ldconfig
+%endif
 %post devel -p /sbin/ldconfig
 %postun devel -p /sbin/ldconfig
 %post LTO-devel -p /sbin/ldconfig
@@ -1540,12 +1566,16 @@
 %license CREDITS.TXT LICENSE.TXT
 %{_libdir}/libLTO.so.*
 
+%if %{with gold}
 %files gold
 %license CREDITS.TXT LICENSE.TXT
 %{_libdir}/LLVMgold.so
 # Note that bfd-plugins is always in /usr/lib/bfd-plugins, no matter what 
_libdir is.
 %dir /usr/lib/bfd-plugins/
 /usr/lib/bfd-plugins/LLVMgold.so
+%else
+%exclude %{_libdir}/LLVMgold.so
+%endif
 
 %if %{with openmp}
 %files -n libomp%{_sonum}-devel

++++++ llvm-Ensure-that-variant-part-discriminator-is-read-by-Me.patch ++++++
>From da1fb72bb305d6bc1f3899d541414146934bf80f Mon Sep 17 00:00:00 2001
From: Jonas Devlieghere <[email protected]>
Date: Fri, 21 Sep 2018 12:03:14 +0000
Subject: [PATCH 0001/6187] Ensure that variant part discriminator is read by
 MetadataLoader

https://reviews.llvm.org/D42082 introduced variant parts to debug info
in LLVM. Subsequent work on the Rust compiler has found a bug in that
patch; namely, there is a path in MetadataLoader that fails to restore
the discriminator.

This patch fixes the bug.

Patch by: Tom Tromey

Differential revision: https://reviews.llvm.org/D52340

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@342725 
91177308-0d34-0410-b5e6-96231b3b80d8
---
 lib/Bitcode/Reader/MetadataLoader.cpp         |  2 +-
 test/Assembler/debug-variant-discriminator.ll | 14 ++++++++++++++
 2 files changed, 15 insertions(+), 1 deletion(-)
 create mode 100644 test/Assembler/debug-variant-discriminator.ll

diff --git a/lib/Bitcode/Reader/MetadataLoader.cpp 
b/lib/Bitcode/Reader/MetadataLoader.cpp
index 3fe7d220563..4781cfe3dea 100644
--- a/lib/Bitcode/Reader/MetadataLoader.cpp
+++ b/lib/Bitcode/Reader/MetadataLoader.cpp
@@ -1313,7 +1313,7 @@ Error 
MetadataLoader::MetadataLoaderImpl::parseOneMetadata(
                            (Context, Tag, Name, File, Line, Scope, BaseType,
                             SizeInBits, AlignInBits, OffsetInBits, Flags,
                             Elements, RuntimeLang, VTableHolder, 
TemplateParams,
-                            Identifier));
+                            Identifier, Discriminator));
     if (!IsNotUsedInTypeRef && Identifier)
       MetadataList.addTypeRef(*Identifier, *cast<DICompositeType>(CT));
 
diff --git a/test/Assembler/debug-variant-discriminator.ll 
b/test/Assembler/debug-variant-discriminator.ll
new file mode 100644
index 00000000000..5be001cad6b
--- /dev/null
+++ b/test/Assembler/debug-variant-discriminator.ll
@@ -0,0 +1,14 @@
+; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s
+; RUN: verify-uselistorder %s
+
+; CHECK: !named = !{!0, !1, !2}
+!named = !{!0, !1, !2}
+
+; CHECK: !0 = !DICompositeType(tag: DW_TAG_structure_type, name: "Outer", 
size: 64, align: 64, identifier: "Outer")
+; CHECK-NEXT: !1 = !DICompositeType(tag: DW_TAG_variant_part, scope: !0, size: 
64, discriminator: !2)
+; CHECK-NEXT: !2 = !DIDerivedType(tag: DW_TAG_member, scope: !1, baseType: !3, 
size: 64, align: 64, flags: DIFlagArtificial)
+; CHECK-NEXT: !3 = !DIBasicType(name: "u64", size: 64, encoding: 
DW_ATE_unsigned)
+!0 = !DICompositeType(tag: DW_TAG_structure_type, name: "Outer", size: 64, 
align: 64, identifier: "Outer")
+!1 = !DICompositeType(tag: DW_TAG_variant_part, scope: !0, size: 64, 
discriminator: !2)
+!2 = !DIDerivedType(tag: DW_TAG_member, scope: !1, baseType: !3, size: 64, 
align: 64, flags: DIFlagArtificial)
+!3 = !DIBasicType(name: "u64", size: 64, encoding: DW_ATE_unsigned)
-- 
2.16.4

++++++ llvm-test-Fix-Assembler-debug-info.ll.patch ++++++
>From cc1f2a595ead516812a6c50398f0f3480ebe031f Mon Sep 17 00:00:00 2001
From: Jonas Devlieghere <[email protected]>
Date: Fri, 21 Sep 2018 12:28:44 +0000
Subject: [PATCH] [test] Fix Assembler/debug-info.ll

Update Assembler/debug-info.ll to contain discriminator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@342727 
91177308-0d34-0410-b5e6-96231b3b80d8
---
 test/Assembler/debug-info.ll | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/Assembler/debug-info.ll b/test/Assembler/debug-info.ll
index 4404b741d34..d54dba07ac1 100644
--- a/test/Assembler/debug-info.ll
+++ b/test/Assembler/debug-info.ll
@@ -83,7 +83,7 @@
 ; CHECK-NEXT: !32 = !DIFile(filename: "file", directory: "dir", checksumkind: 
CSK_MD5, checksum: "000102030405060708090a0b0c0d0e0f")
 !35 = !DIFile(filename: "file", directory: "dir", checksumkind: CSK_MD5, 
checksum: "000102030405060708090a0b0c0d0e0f")
 
-; CHECK-NEXT: !33 = !DICompositeType(tag: DW_TAG_variant_part, name: "A", 
scope: !14, size: 64)
+; CHECK-NEXT: !33 = !DICompositeType(tag: DW_TAG_variant_part, name: "A", 
scope: !14, size: 64, discriminator: !34)
 ; CHECK-NEXT: !34 = !DIDerivedType(tag: DW_TAG_member, scope: !33, baseType: 
!35, size: 64, align: 64, flags: DIFlagArtificial)
 ; CHECK-NEXT: !35 = !DIBasicType(name: "u64", size: 64, encoding: 
DW_ATE_unsigned)
 !36 = !DICompositeType(tag: DW_TAG_variant_part, name: "A", scope: !16, size: 
64, discriminator: !37)
-- 
2.16.4


Reply via email to