Reapply "MC: simplify object file selection for Windows"
authorSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 6 Mar 2014 23:02:15 +0000 (23:02 +0000)
committerSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 6 Mar 2014 23:02:15 +0000 (23:02 +0000)
That was overly aggressive in assuming that we could always assume COFF.  Some
of the tests assume that they will get ELF rather than COFF even on Windows
where the default is COFF.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203176 91177308-0d34-0410-b5e6-96231b3b80d8

lib/MC/MCObjectFileInfo.cpp

index 6b21cd3dd1c40ff59e6e51b54e6028823edac3db..4211b179dce489a9bd1321f7e949ccda6f2fc54a 100644 (file)
@@ -739,9 +739,8 @@ void MCObjectFileInfo::InitMCObjectFileInfo(StringRef TT, Reloc::Model relocm,
       (T.isOSDarwin() || T.isOSBinFormatMachO())) {
     Env = IsMachO;
     InitMachOMCObjectFileInfo(T);
-  } else if (T.isOSWindows() && !T.isOSBinFormatELF()) {
-    assert((Arch == Triple::x86 || Arch == Triple::x86_64) &&
-           "expected x86 or x86_64");
+  } else if ((Arch == Triple::x86 || Arch == Triple::x86_64) &&
+             T.getObjectFormat() != Triple::ELF && T.isOSWindows()) {
     Env = IsCOFF;
     InitCOFFMCObjectFileInfo(T);
   } else {