From 917e9a38ca5d5fc5cd567fd209864e62d5e641ad Mon Sep 17 00:00:00 2001 From: Mehdi Amini Date: Tue, 8 Dec 2015 19:13:31 +0000 Subject: [PATCH] Revert "Add Available Externally linkage type to isWeakForLinker()" This reverts r255043, as per post-review concern were raised on the correctness. From: Mehdi Amini git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@255045 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/IR/GlobalValue.h | 3 +-- .../GlobalOpt/available_externally_global_ctors.ll | 22 ---------------------- 2 files changed, 1 insertion(+), 24 deletions(-) delete mode 100644 test/Transforms/GlobalOpt/available_externally_global_ctors.ll diff --git a/include/llvm/IR/GlobalValue.h b/include/llvm/IR/GlobalValue.h index 3461b9ee8b8..2f9172648a2 100644 --- a/include/llvm/IR/GlobalValue.h +++ b/include/llvm/IR/GlobalValue.h @@ -256,8 +256,7 @@ public: static bool isWeakForLinker(LinkageTypes Linkage) { return Linkage == WeakAnyLinkage || Linkage == WeakODRLinkage || Linkage == LinkOnceAnyLinkage || Linkage == LinkOnceODRLinkage || - Linkage == CommonLinkage || Linkage == ExternalWeakLinkage || - Linkage == AvailableExternallyLinkage; + Linkage == CommonLinkage || Linkage == ExternalWeakLinkage; } bool hasExternalLinkage() const { return isExternalLinkage(Linkage); } diff --git a/test/Transforms/GlobalOpt/available_externally_global_ctors.ll b/test/Transforms/GlobalOpt/available_externally_global_ctors.ll deleted file mode 100644 index 7092a5ae222..00000000000 --- a/test/Transforms/GlobalOpt/available_externally_global_ctors.ll +++ /dev/null @@ -1,22 +0,0 @@ -target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" -target triple = "x86_64-apple-macosx10.11.0" - -; RUN: opt -S -globalopt < %s | FileCheck %s - -; Verify that the initialization of the available_externally global is not eliminated -; CHECK: @llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* @foo_static_init, i8* null }] - -@llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* @foo_static_init, i8* null }] -@foo_external = available_externally global void ()* null - -define internal void @foo_static_init() { -entry: - store void ()* @foo_impl, void ()** @foo_external - ret void -} - -define internal void @foo_impl() { -entry: - ret void -} - -- 2.11.0