Differential Revision: http://reviews.llvm.org/D19733

llvm-svn: 268106
diff --git a/llvm/lib/Target/X86/X86Subtarget.h b/llvm/lib/Target/X86/X86Subtarget.h
index 170e5c3..6ffbde2 100644
--- a/llvm/lib/Target/X86/X86Subtarget.h
+++ b/llvm/lib/Target/X86/X86Subtarget.h
@@ -552,7 +552,7 @@
   /// Executable (PIE) where its definition cannot be interposed.
   bool isGlobalDefinedInPIE(const GlobalValue *GV,
                             const TargetMachine &TM) const {
-    return TM.Options.PositionIndependentExecutable &&
+    return GV->getParent()->getPIELevel() != PIELevel::Default &&
            !GV->isDeclarationForLinker();
   }