PR10989: Don't print .hidden on Windows.
authorEli Friedman <eli.friedman@gmail.com>
Fri, 23 Sep 2011 00:13:02 +0000 (00:13 +0000)
committerEli Friedman <eli.friedman@gmail.com>
Fri, 23 Sep 2011 00:13:02 +0000 (00:13 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140356 91177308-0d34-0410-b5e6-96231b3b80d8

lib/MC/MCAsmInfoCOFF.cpp
test/CodeGen/X86/hidden-vis.ll

index cf6026b4ef8447fe86fd4d5a88e0ffab7ef10709..365ddc49c691d77a9978e1fa35d4e6fa60912c91 100644 (file)
@@ -27,7 +27,8 @@ MCAsmInfoCOFF::MCAsmInfoCOFF() {
   LinkOnceDirective = "\t.linkonce discard\n";
   
   // Doesn't support visibility:
-  HiddenVisibilityAttr = ProtectedVisibilityAttr = MCSA_Invalid;
+  HiddenVisibilityAttr = HiddenDeclarationVisibilityAttr = MCSA_Invalid;
+  ProtectedVisibilityAttr = MCSA_Invalid;
 
   // Set up DWARF directives
   HasLEB128 = true;  // Target asm supports leb128 directives (little-endian)
index a948bdfe68757ec715d1a58b1f89a15e73212835..fcb74fc9de52679d8413b149104cc6765cbf164c 100644 (file)
@@ -1,8 +1,11 @@
 ; RUN: llc < %s -mtriple=i686-pc-linux-gnu | FileCheck %s -check-prefix=LINUX
 ; RUN: llc < %s -mtriple=i686-apple-darwin8 | FileCheck %s -check-prefix=DARWIN
+; RUN: llc < %s -mtriple=x86_64-w64-mingw32 | FileCheck %s -check-prefix=WINDOWS
+
 
 @a = hidden global i32 0
-@b = external global i32
+@b = external hidden global i32
+@c = global i32* @b
 
 define weak hidden void @t1() nounwind {
 ; LINUX: .hidden t1
@@ -10,15 +13,19 @@ define weak hidden void @t1() nounwind {
 
 ; DARWIN: .private_extern _t1
 ; DARWIN: t1:
+
+; WINDOWS: t1:
+; WINDOWS-NOT: hidden
   ret void
 }
 
 define weak void @t2() nounwind {
-; LINUX: t2:
-; LINUX: .hidden a
-
-; DARWIN: t2:
-; DARWIN: .private_extern _a
+; DARWIN: .weak_definition     _t2
   ret void
 }
 
+; LINUX: .hidden a
+; LINUX: .hidden b
+
+; DARWIN: .private_extern _a
+; DARWIN-NOT: private_extern