[arch-commits] Commit in llvm/trunk (2 files)
Evangelos Foutras
foutrelis at archlinux.org
Fri Jul 9 05:59:40 UTC 2021
Date: Friday, July 9, 2021 @ 05:59:39
Author: foutrelis
Revision: 419321
upgpkg: llvm 12.0.1-1: new upstream release
Modified:
llvm/trunk/PKGBUILD
Deleted:
llvm/trunk/force-visibility-of-llvm-Any-to-external.patch
------------------------------------------------+
PKGBUILD | 11 +-----
force-visibility-of-llvm-Any-to-external.patch | 42 -----------------------
2 files changed, 3 insertions(+), 50 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2021-07-09 05:22:06 UTC (rev 419320)
+++ PKGBUILD 2021-07-09 05:59:39 UTC (rev 419321)
@@ -2,8 +2,8 @@
# Contributor: Jan "heftig" Steffens <jan.steffens at gmail.com>
pkgname=('llvm' 'llvm-libs' 'llvm-ocaml')
-pkgver=12.0.0
-pkgrel=2
+pkgver=12.0.1
+pkgrel=1
_ocaml_ver=4.11.1
arch=('x86_64')
url="https://llvm.org/"
@@ -15,14 +15,12 @@
options=('staticlibs')
_source_base=https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver
source=($_source_base/$pkgname-$pkgver.src.tar.xz{,.sig}
- force-visibility-of-llvm-Any-to-external.patch
llvm-link-with-Bsymbolic-functions.patch
add-fno-semantic-interposition.patch
no-strict-aliasing-DwarfCompileUnit.patch
llvm-config.h)
-sha256sums=('49dc47c8697a1a0abd4ee51629a696d7bfe803662f2a7252a3b16fc75f3a8b50'
+sha256sums=('7d9a8405f557cefc5a21bf5672af73903b64749d9bc3a50322239f56f34ffddf'
'SKIP'
- '98721af5a36af2a8e88c14a81b16d3929b12515d7d2d1ba385eb243dca3c32cb'
'560ce1e206c19f4b86f4c583b743db0ad47a610418999350710aafd60ae50fcd'
'fc8c64267a5d179e9fc24fb2bc6150edef2598c83f5b2d138d14e05ce9f4e345'
'd1eff24508e35aae6c26a943dbaa3ef5acb60a145b008fd1ef9ac6f6c4faa662'
@@ -34,9 +32,6 @@
cd "$srcdir/llvm-$pkgver.src"
mkdir build
- # https://bugs.llvm.org/show_bug.cgi?id=48992
- patch -Np2 -i ../force-visibility-of-llvm-Any-to-external.patch
-
# https://bugs.archlinux.org/task/70697
patch -Np2 -i ../llvm-link-with-Bsymbolic-functions.patch
# https://reviews.llvm.org/D102453
Deleted: force-visibility-of-llvm-Any-to-external.patch
===================================================================
--- force-visibility-of-llvm-Any-to-external.patch 2021-07-09 05:22:06 UTC (rev 419320)
+++ force-visibility-of-llvm-Any-to-external.patch 2021-07-09 05:59:39 UTC (rev 419321)
@@ -1,42 +0,0 @@
-From 3d3abc22b3ef189813a3b9061c2a90ba86a32f44 Mon Sep 17 00:00:00 2001
-From: serge-sans-paille <sguelton at redhat.com>
-Date: Tue, 11 May 2021 20:46:58 +0200
-Subject: [PATCH] Force visibility of llvm::Any to external
-
-llvm::Any::TypeId::Id relies on the uniqueness of the address of a static
-variable defined in a template function. hidden visibility implies vague linkage
-for that variable, which does not guarantee the uniqueness of the address across
-a binary and a shared library. This totally breaks the implementation of
-llvm::Any.
-
-Ideally, setting visibility to llvm::Any::TypeId::Id should be enough,
-unfortunately this doesn't work as expected and we lack time (before 12.0.1
-release) to understand why setting the visibility to llvm::Any does work.
-
-See https://gcc.gnu.org/wiki/Visibility and
-https://gcc.gnu.org/onlinedocs/gcc/Vague-Linkage.html
-for more information on that topic.
-
-Differential Revision: https://reviews.llvm.org/D101972
----
- llvm/include/llvm/ADT/Any.h | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/llvm/include/llvm/ADT/Any.h b/llvm/include/llvm/ADT/Any.h
-index 15b114f7932d..e513586845a1 100644
---- a/llvm/include/llvm/ADT/Any.h
-+++ b/llvm/include/llvm/ADT/Any.h
-@@ -23,7 +23,12 @@
-
- namespace llvm {
-
--class Any {
-+class LLVM_EXTERNAL_VISIBILITY Any {
-+
-+ // The `Typeid<T>::Id` static data member below is a globally unique
-+ // identifier for the type `T`. It is explicitly marked with default
-+ // visibility so that when `-fvisibility=hidden` is used, the loader still
-+ // merges duplicate definitions across DSO boundaries.
- template <typename T> struct TypeId { static const char Id; };
-
- struct StorageBase {
More information about the arch-commits
mailing list