[arch-commits] Commit in clang/trunk (2 files)

Evangelos Foutras foutrelis at archlinux.org
Sat Jul 20 13:02:48 UTC 2019


    Date: Saturday, July 20, 2019 @ 13:02:48
  Author: foutrelis
Revision: 358431

upgpkg: clang 8.0.1-1

New upstream release.

Added:
  clang/trunk/0001-Fix-uninitialized-value-in-ABIArgInfo.patch
Modified:
  clang/trunk/PKGBUILD

--------------------------------------------------+
 0001-Fix-uninitialized-value-in-ABIArgInfo.patch |   38 +++++++++++++++++++++
 PKGBUILD                                         |   23 ++++++++----
 2 files changed, 53 insertions(+), 8 deletions(-)

Added: 0001-Fix-uninitialized-value-in-ABIArgInfo.patch
===================================================================
--- 0001-Fix-uninitialized-value-in-ABIArgInfo.patch	                        (rev 0)
+++ 0001-Fix-uninitialized-value-in-ABIArgInfo.patch	2019-07-20 13:02:48 UTC (rev 358431)
@@ -0,0 +1,38 @@
+From 565b9633ee68b311c1a954022869d9e99fee7286 Mon Sep 17 00:00:00 2001
+From: serge-sans-paille <sguelton at redhat.com>
+Date: Fri, 1 Feb 2019 06:39:13 +0000
+Subject: [PATCH] Fix uninitialized value in ABIArgInfo
+
+GCC-9 takes advantage of this uninitialized values to optimize stuff,
+which ends up in failing validation when compiling clang.
+---
+ include/clang/CodeGen/CGFunctionInfo.h | 11 +++++------
+ 1 file changed, 5 insertions(+), 6 deletions(-)
+
+diff --git a/include/clang/CodeGen/CGFunctionInfo.h b/include/clang/CodeGen/CGFunctionInfo.h
+index cf64e9f3ee..131eb38393 100644
+--- a/include/clang/CodeGen/CGFunctionInfo.h
++++ b/include/clang/CodeGen/CGFunctionInfo.h
+@@ -112,14 +112,13 @@ private:
+   }
+ 
+   ABIArgInfo(Kind K)
+-      : TheKind(K), PaddingInReg(false), InReg(false), SuppressSRet(false) {
+-  }
++      : TypeData(nullptr), PaddingType(nullptr), DirectOffset(0),
++        TheKind(K), PaddingInReg(false), InAllocaSRet(false), IndirectByVal(false),
++        IndirectRealign(false), SRetAfterThis(false), InReg(false),
++        CanBeFlattened(false), SignExt(false), SuppressSRet(false) {}
+ 
+ public:
+-  ABIArgInfo()
+-      : TypeData(nullptr), PaddingType(nullptr), DirectOffset(0),
+-        TheKind(Direct), PaddingInReg(false), InReg(false),
+-        SuppressSRet(false) {}
++  ABIArgInfo() : ABIArgInfo(Direct) {}
+ 
+   static ABIArgInfo getDirect(llvm::Type *T = nullptr, unsigned Offset = 0,
+                               llvm::Type *Padding = nullptr,
+-- 
+2.19.2
+

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2019-07-20 11:10:42 UTC (rev 358430)
+++ PKGBUILD	2019-07-20 13:02:48 UTC (rev 358431)
@@ -2,8 +2,8 @@
 # Contributor: Jan "heftig" Steffens <jan.steffens at gmail.com>
 
 pkgname=clang
-pkgver=8.0.0
-pkgrel=4
+pkgver=8.0.1
+pkgrel=1
 pkgdesc="C language family frontend for LLVM"
 arch=('x86_64')
 url="https://clang.llvm.org/"
@@ -16,24 +16,26 @@
 provides=("clang-analyzer=$pkgver" "clang-tools-extra=$pkgver")
 conflicts=('clang-analyzer' 'clang-tools-extra')
 replaces=('clang-analyzer' 'clang-tools-extra')
-source=(https://releases.llvm.org/$pkgver/cfe-$pkgver.src.tar.xz{,.sig}
-        https://releases.llvm.org/$pkgver/clang-tools-extra-$pkgver.src.tar.xz{,.sig}
-        https://releases.llvm.org/$pkgver/llvm-$pkgver.src.tar.xz{,.sig}
+source=(https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/cfe-$pkgver.src.tar.xz{,.sig}
+        https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/clang-tools-extra-$pkgver.src.tar.xz{,.sig}
+        https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-$pkgver.src.tar.xz{,.sig}
         0001-OpenCL-Change-type-of-block-pointer-for-OpenCL.patch
         0002-OpenCL-Simplify-LLVM-IR-generated-for-OpenCL-blocks.patch
         0003-OpenCL-Fix-assertion-due-to-blocks.patch
         clang-doc-build-as-clang_tool.patch
+        0001-Fix-uninitialized-value-in-ABIArgInfo.patch
         enable-SSP-and-PIE-by-default.patch)
-sha256sums=('084c115aab0084e63b23eee8c233abb6739c399e29966eaeccfc6e088e0b736b'
+sha256sums=('70effd69f7a8ab249f66b0a68aba8b08af52aa2ab710dfb8a0fba102685b1646'
             'SKIP'
-            '4f00122be408a7482f2004bcf215720d2b88cf8dc78b824abb225da8ad359d4b'
+            '187179b617e4f07bb605cc215da0527e64990b4a7dd5cbcc452a16b64e02c3e1'
             'SKIP'
-            '8872be1b12c61450cacc82b3d153eab02be2546ef34fa3580ed14137bb26224c'
+            '44787a6d02f7140f145e2250d56c9f849334e11f9ae379827510ed72f12b75e7'
             'SKIP'
             'fbb6d3c8135942e458bcad8882605a623bcd09bdec488eb0800e3afee0061e3a'
             '91c49139e02c6d29f6201aa394868939b991b39b84215c082392ea96fbd8c334'
             '191434810b5298331908ea1e193203e8441693da900238344e946ee6a79dad31'
             '1dfa5f93c0c084b8a25ca79ef9e2fe63a476826629e8ef366e0a6eaf5fa10625'
+            'b7f31bcf03255f6a9b51b02935648e015ea538a0eef0b0c6d9c052fc5accb0c4'
             '58f86da25eb230ed6d423b5b61870cbf3bef88f38103ca676a2c7f34b2372171')
 validpgpkeys+=('B6C8F98282B944E3B0D5C2530FC3042E345AD05D') # Hans Wennborg <hans at chromium.org>
 validpgpkeys+=('474E22316ABF4785A88C6E8EA2C794A986419D8A') # Tom Stellard <tstellar at redhat.com>
@@ -44,6 +46,11 @@
   mv "$srcdir/clang-tools-extra-$pkgver.src" tools/extra
   patch -Np1 -i ../enable-SSP-and-PIE-by-default.patch
 
+  # The following patch was reverted upstream because it triggered an ICE with
+  # GCC 7; however, we need it to pass the test suite when building with GCC 9
+  # https://bugs.llvm.org/show_bug.cgi?id=40547
+  patch -Np1 -i ../0001-Fix-uninitialized-value-in-ABIArgInfo.patch
+
   # Backported patches for intel-opencl-clang and intel-compute-runtime
   patch -Np1 -i ../0001-OpenCL-Change-type-of-block-pointer-for-OpenCL.patch
   patch -Np1 -i ../0002-OpenCL-Simplify-LLVM-IR-generated-for-OpenCL-blocks.patch



More information about the arch-commits mailing list