summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2011-01-28 03:20:10 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2011-01-28 03:20:10 +0000
commit6c17d54891d1166fef669cdefb7885801a884fd7 (patch)
tree57fddb7ef4ec0c27f22cb1179ff39a4f7181b7cd /llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
parent4ada0d91644a3c273cfac93a6a12b22bc19a7436 (diff)
downloadbcm5719-llvm-6c17d54891d1166fef669cdefb7885801a884fd7.tar.gz
bcm5719-llvm-6c17d54891d1166fef669cdefb7885801a884fd7.zip
Print the visibility of declarations.
llvm-svn: 124468
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index 7f2b18c6e6f..4528a34286c 100644
--- a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -753,7 +753,20 @@ bool AsmPrinter::doFinalization(Module &M) {
for (Module::const_global_iterator I = M.global_begin(), E = M.global_end();
I != E; ++I)
EmitGlobalVariable(I);
-
+
+ // Emit visibility info for declarations
+ for (Module::const_iterator I = M.begin(), E = M.end(); I != E; ++I) {
+ const Function &F = *I;
+ if (!F.isDeclaration())
+ continue;
+ GlobalValue::VisibilityTypes V = F.getVisibility();
+ if (V == GlobalValue::DefaultVisibility)
+ continue;
+
+ MCSymbol *Name = Mang->getSymbol(&F);
+ EmitVisibility(Name, V);
+ }
+
// Finalize debug and EH information.
if (DE) {
{
OpenPOWER on IntegriCloud