From 66c3a0783703e47d48ba7945d8ec9bb92c2dc9bb Mon Sep 17 00:00:00 2001
From: NAKAMURA Takumi <geek4civic@gmail.com>
Date: Sat, 18 Sep 2010 02:15:38 +0900
Subject: [PATCH 4/5] lib/CodeGen/CodeGenModule.cpp: DLLImportLinkage should be processed also on declaration.

---
 lib/CodeGen/CodeGenModule.cpp |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp
index 12c8f79..805a827 100644
--- a/lib/CodeGen/CodeGenModule.cpp
+++ b/lib/CodeGen/CodeGenModule.cpp
@@ -974,7 +974,9 @@ CodeGenModule::GetOrCreateLLVMGlobal(llvm::StringRef MangledName,
     if (D->getStorageClass() == SC_PrivateExtern)
       GV->setVisibility(llvm::GlobalValue::HiddenVisibility);
 
-    if (D->hasAttr<WeakAttr>() ||
+    if (D->hasAttr<DLLImportAttr>())
+      GV->setLinkage(llvm::GlobalValue::DLLImportLinkage);
+    else if (D->hasAttr<WeakAttr>() ||
         D->hasAttr<WeakImportAttr>())
       GV->setLinkage(llvm::GlobalValue::ExternalWeakLinkage);
 
-- 
1.7.1.GIT

