From ac007b64ea24c81338b5f1277ee214c51bbdb1ce Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 9 Jul 2009 07:02:30 +0000 Subject: [PATCH] simplify this logic a bit more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75118 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86ISelLowering.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index bb5829ac612..b04d372ed99 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -4582,18 +4582,14 @@ X86TargetLowering::LowerGlobalAddress(const GlobalValue *GV, DebugLoc dl, // Link-once, declaration, or Weakly-linked global variables need // non-lazily-resolved stubs. - if (!GV->isDeclaration() && !GV->isWeakForLinker()) { + if (!ExtraLoadRequired) { // Not a stub reference. OpFlags = IsPIC ? X86II::MO_PIC_BASE_OFFSET : 0; } else if (!GV->hasHiddenVisibility()) { // Non-hidden $non_lazy_ptr reference. OpFlags = IsPIC ? X86II::MO_DARWIN_NONLAZY_PIC_BASE : X86II::MO_DARWIN_NONLAZY; - } else if (!GV->isDeclaration() && !GV->hasCommonLinkage()) - // Definition is definitely in the current linkage unit. - // Not a stub reference. - OpFlags = IsPIC ? X86II::MO_PIC_BASE_OFFSET : 0; - else { + } else { // Hidden $non_lazy_ptr reference. OpFlags = IsPIC ? X86II::MO_DARWIN_HIDDEN_NONLAZY_PIC_BASE : X86II::MO_DARWIN_HIDDEN_NONLAZY;