[llvm-commits] [llvm] r51865 - /llvm/trunk/lib/Target/X86/X86Subtarget.cpp
Rafael Espindola
rafael.espindola at gmail.com
Mon Jun 2 00:52:44 PDT 2008
Author: rafael
Date: Mon Jun 2 02:52:43 2008
New Revision: 51865
URL: http://llvm.org/viewvc/llvm-project?rev=51865&view=rev
Log:
Don't use the GOT for symbols that are not externally visible.
Modified:
llvm/trunk/lib/Target/X86/X86Subtarget.cpp
Modified: llvm/trunk/lib/Target/X86/X86Subtarget.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86Subtarget.cpp?rev=51865&r1=51864&r2=51865&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86Subtarget.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86Subtarget.cpp Mon Jun 2 02:52:43 2008
@@ -44,9 +44,12 @@
GV->hasCommonLinkage() ||
(GV->isDeclaration() && !GV->hasNotBeenReadFromBitcode())));
} else if (isTargetELF()) {
- // Extra load is needed for all non-statics.
- return (!isDirectCall &&
- (GV->isDeclaration() || !GV->hasInternalLinkage()));
+ // Extra load is needed for all externally visible.
+ if (isDirectCall)
+ return false;
+ if (GV->hasInternalLinkage() || GV->hasHiddenVisibility())
+ return false;
+ return true;
} else if (isTargetCygMing() || isTargetWindows()) {
return (GV->hasDLLImportLinkage());
}
More information about the llvm-commits
mailing list