Handle visibility printing with all generality. Remove bunch of duplicate code.

llvm-svn: 54540
diff --git a/llvm/lib/Target/Alpha/AlphaAsmPrinter.cpp b/llvm/lib/Target/Alpha/AlphaAsmPrinter.cpp
index 1532047..e592e80 100644
--- a/llvm/lib/Target/Alpha/AlphaAsmPrinter.cpp
+++ b/llvm/lib/Target/Alpha/AlphaAsmPrinter.cpp
@@ -164,6 +164,8 @@
     break;
   }
 
+  printVisibility(CurrentFnName, F->getVisibility());
+
   O << "\t.ent " << CurrentFnName << "\n";
 
   O << CurrentFnName << ":\n";
@@ -221,8 +223,7 @@
   SwitchToDataSection(SectionName.c_str());
 
   // 1: Check visibility
-  if (GVar->hasHiddenVisibility())
-    O << TAI->getHiddenDirective() << name << "\n";
+  printVisibility(name, GVar->getVisibility());
 
   // 2: Kind
   switch (GVar->getLinkage()) {