Revert "Handle dllexport for global aliases"
authorNico Rieck <nico.rieck@gmail.com>
Tue, 14 Jan 2014 12:36:54 +0000 (12:36 +0000)
committerNico Rieck <nico.rieck@gmail.com>
Tue, 14 Jan 2014 12:36:54 +0000 (12:36 +0000)
This reverts commit r199205.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199206 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86AsmPrinter.cpp
test/CodeGen/X86/dllexport-x86_64.ll
test/CodeGen/X86/dllexport.ll

index e6ad2f1d0dacbcff18067ee2032a492a7bb4f07c..ad7d3e0fdcae0ad3914dbc2e4c7e7bbb00656312 100644 (file)
@@ -658,21 +658,6 @@ void X86AsmPrinter::EmitEndOfAsmFile(Module &M) {
       if (I->hasDLLExportStorageClass())
         DLLExportedGlobals.push_back(getSymbol(I));
 
-    for (Module::const_alias_iterator I = M.alias_begin(), E = M.alias_end();
-                                      I != E; ++I) {
-      const GlobalValue *GV = I;
-      if (!GV->hasDLLExportStorageClass())
-        continue;
-
-      while (const GlobalAlias *A = dyn_cast<GlobalAlias>(GV))
-        GV = A->getAliasedGlobal();
-
-      if (isa<Function>(GV))
-        DLLExportedFns.push_back(getSymbol(I));
-      else if (isa<GlobalVariable>(GV))
-        DLLExportedGlobals.push_back(getSymbol(I));
-    }
-
     // Output linker support code for dllexported globals on windows.
     if (!DLLExportedGlobals.empty() || !DLLExportedFns.empty()) {
       const TargetLoweringObjectFileCOFF &TLOFCOFF =
index 1fadfec2543f9926c3956eb26bc42f5a68481ff2..6bf73aa536671934590e0c73af21603b36225259 100644 (file)
@@ -56,23 +56,6 @@ define weak_odr dllexport void @weak1() {
 @WeakVar2 = weak_odr dllexport unnamed_addr constant i32 1
 
 
-; CHECK: .globl alias
-; CHECK: alias = notExported
-@alias = dllexport alias void()* @notExported
-
-; CHECK: .globl alias2
-; CHECK: alias2 = f1
-@alias2 = dllexport alias void()* @f1
-
-; CHECK: .globl alias3
-; CHECK: alias3 = alias
-@alias3 = dllexport alias void()* @alias
-
-; CHECK: .weak weak_alias
-; CHECK: weak_alias = f1
-@weak_alias = dllexport alias weak_odr void()* @f1
-
-
 ; CHECK: .section .drectve
 ; WIN32: /EXPORT:Var1,DATA
 ; WIN32: /EXPORT:Var2,DATA
@@ -84,10 +67,6 @@ define weak_odr dllexport void @weak1() {
 ; WIN32: /EXPORT:lnk1
 ; WIN32: /EXPORT:lnk2
 ; WIN32: /EXPORT:weak1
-; WIN32: /EXPORT:alias
-; WIN32: /EXPORT:alias2
-; WIN32: /EXPORT:alias3
-; WIN32: /EXPORT:weak_alias
 ; MINGW: -export:Var1,data
 ; MINGW: -export:Var2,data
 ; MINGW: -export:Var3,data
@@ -98,7 +77,3 @@ define weak_odr dllexport void @weak1() {
 ; MINGW: -export:lnk1
 ; MINGW: -export:lnk2
 ; MINGW: -export:weak1
-; MINGW: -export:alias
-; MINGW: -export:alias2
-; MINGW: -export:alias3
-; MINGW: -export:weak_alias
index 7f0dadb6a2ee79d93f71f3f05a6ece5aa682e271..1d9921259767130a4cdf3ac854ae3316609fb104 100644 (file)
@@ -71,23 +71,6 @@ define weak_odr dllexport void @weak1() {
 @WeakVar2 = weak_odr dllexport unnamed_addr constant i32 1
 
 
-; CHECK: .globl _alias
-; CHECK: _alias = _notExported
-@alias = dllexport alias void()* @notExported
-
-; CHECK: .globl _alias2
-; CHECK: _alias2 = _f1
-@alias2 = dllexport alias void()* @f1
-
-; CHECK: .globl _alias3
-; CHECK: _alias3 = _alias
-@alias3 = dllexport alias void()* @alias
-
-; CHECK: .weak _weak_alias
-; CHECK: _weak_alias = _f1
-@weak_alias = dllexport alias weak_odr void()* @f1
-
-
 ; CHECK: .section .drectve
 ; WIN32: /EXPORT:_Var1,DATA
 ; WIN32: /EXPORT:_Var2,DATA
@@ -102,10 +85,6 @@ define weak_odr dllexport void @weak1() {
 ; WIN32: /EXPORT:_lnk1
 ; WIN32: /EXPORT:_lnk2
 ; WIN32: /EXPORT:_weak1
-; WIN32: /EXPORT:_alias
-; WIN32: /EXPORT:_alias2
-; WIN32: /EXPORT:_alias3
-; WIN32: /EXPORT:_weak_alias
 ; MINGW: -export:_Var1,data
 ; MINGW: -export:_Var2,data
 ; MINGW: -export:_Var3,data
@@ -119,7 +98,3 @@ define weak_odr dllexport void @weak1() {
 ; MINGW: -export:_lnk1
 ; MINGW: -export:_lnk2
 ; MINGW: -export:_weak1
-; MINGW: -export:_alias
-; MINGW: -export:_alias2
-; MINGW: -export:_alias3
-; MINGW: -export:_weak_alias