Print an error message when someone tries -integrated-as on an unsupported target.
authorBenjamin Kramer <benny.kra@googlemail.com>
Wed, 4 Aug 2010 13:16:30 +0000 (13:16 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Wed, 4 Aug 2010 13:16:30 +0000 (13:16 +0000)
- The COFF backend doesn't support MingW/Cygwin at the moment, it'll report an
  error, but it's still much better than random assertions from the MachO backend.
- We want to make ELF the default eventually, it's what the majority of targets use.

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

lib/Target/X86/X86TargetMachine.cpp

index cb1bb35b5b07cd3192dfb7f91d2cb0a8554ca4a0..560f070abdc195814171ba4b042916c258ec56fd 100644 (file)
@@ -46,10 +46,16 @@ static MCStreamer *createMCStreamer(const Target &T, const std::string &TT,
                                     bool RelaxAll) {
   Triple TheTriple(TT);
   switch (TheTriple.getOS()) {
+  case Triple::Darwin:
+    return createMachOStreamer(Ctx, TAB, _OS, _Emitter, RelaxAll);
+  case Triple::MinGW32:
+  case Triple::MinGW64:
+  case Triple::Cygwin:
   case Triple::Win32:
     return createWinCOFFStreamer(Ctx, TAB, *_Emitter, _OS, RelaxAll);
   default:
-    return createMachOStreamer(Ctx, TAB, _OS, _Emitter, RelaxAll);
+    // FIXME: default to ELF.
+    report_fatal_error("object emission not implemented for this target.");
   }
 }