[llvm-commits] [llvm] r124468 - in /llvm/trunk: lib/CodeGen/AsmPrinter/AsmPrinter.cpp test/CodeGen/X86/visibility.ll
Rafael Espindola
rafael.espindola at gmail.com
Thu Jan 27 19:20:10 PST 2011
Author: rafael
Date: Thu Jan 27 21:20:10 2011
New Revision: 124468
URL: http://llvm.org/viewvc/llvm-project?rev=124468&view=rev
Log:
Print the visibility of declarations.
Added:
llvm/trunk/test/CodeGen/X86/visibility.ll
Modified:
llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Modified: llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp?rev=124468&r1=124467&r2=124468&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp Thu Jan 27 21:20:10 2011
@@ -753,7 +753,20 @@
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) {
{
Added: llvm/trunk/test/CodeGen/X86/visibility.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/visibility.ll?rev=124468&view=auto
==============================================================================
--- llvm/trunk/test/CodeGen/X86/visibility.ll (added)
+++ llvm/trunk/test/CodeGen/X86/visibility.ll Thu Jan 27 21:20:10 2011
@@ -0,0 +1,11 @@
+; RUN: llc %s -o - | FileCheck %s
+
+define hidden void @foo() nounwind {
+entry:
+ call void @bar()
+ ret void
+}
+
+declare hidden void @bar()
+
+;CHECK: .hidden bar
More information about the llvm-commits
mailing list