diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2011-01-28 03:20:10 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2011-01-28 03:20:10 +0000 |
commit | 6c17d54891d1166fef669cdefb7885801a884fd7 (patch) | |
tree | 57fddb7ef4ec0c27f22cb1179ff39a4f7181b7cd /llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | |
parent | 4ada0d91644a3c273cfac93a6a12b22bc19a7436 (diff) | |
download | bcm5719-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.cpp | 15 |
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) { { |