- Target PIC style is no longer affected by relocation model.
- In x86-64 mode, symbols with external linkage (not just symbols which are
  defined externally) requires GOT indirect reference.
- Stylistic code clean up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33345 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/X86/X86TargetMachine.cpp b/lib/Target/X86/X86TargetMachine.cpp
index 8bcda9a..d8283a5 100644
--- a/lib/Target/X86/X86TargetMachine.cpp
+++ b/lib/Target/X86/X86TargetMachine.cpp
@@ -128,24 +128,18 @@
       setCodeModel(CodeModel::Small);
   }
 
-  if (getRelocationModel() == Reloc::PIC_) {
-    if (Subtarget.isTargetDarwin()) {
-      if (Subtarget.is64Bit())
-        Subtarget.setPICStyle(PICStyle::RIPRel);
-      else
-        Subtarget.setPICStyle(PICStyle::Stub);
-    } else if (Subtarget.isTargetELF())
-      Subtarget.setPICStyle(PICStyle::GOT);
+  if (Subtarget.isTargetCygMing())
+    Subtarget.setPICStyle(PICStyle::WinPIC);
+  else if (Subtarget.isTargetDarwin())
+    if (Subtarget.is64Bit())
+      Subtarget.setPICStyle(PICStyle::RIPRel);
     else
-      assert(0 && "Don't know how to generate PIC code for this target!");
-  } else if (getRelocationModel() == Reloc::DynamicNoPIC) {
-    if (Subtarget.isTargetDarwin())
       Subtarget.setPICStyle(PICStyle::Stub);
-    else if (Subtarget.isTargetCygMing())
-      Subtarget.setPICStyle(PICStyle::WinPIC);
+  else if (Subtarget.isTargetELF())
+    if (Subtarget.is64Bit())
+      Subtarget.setPICStyle(PICStyle::RIPRel);
     else
-      assert(0 && "Don't know how to generate PIC code for this target!");
-  }
+      Subtarget.setPICStyle(PICStyle::GOT);
 }
 
 //===----------------------------------------------------------------------===//