summaryrefslogtreecommitdiff
path: root/lib/Target/X86/X86TargetMachine.cpp
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2010-08-04 13:16:30 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2010-08-04 13:16:30 +0000
commitc575283675f7bd9f7cc40f06024ba6251c2d55a8 (patch)
tree0b80660e78fad990298ea1d4abd19c4915abf894 /lib/Target/X86/X86TargetMachine.cpp
parent7c46cf0bfe88e2f6ce1bcad537844e3225670899 (diff)
downloadllvm-c575283675f7bd9f7cc40f06024ba6251c2d55a8.tar.gz
llvm-c575283675f7bd9f7cc40f06024ba6251c2d55a8.tar.bz2
llvm-c575283675f7bd9f7cc40f06024ba6251c2d55a8.tar.xz
Print an error message when someone tries -integrated-as on an unsupported target.
- 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
Diffstat (limited to 'lib/Target/X86/X86TargetMachine.cpp')
-rw-r--r--lib/Target/X86/X86TargetMachine.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/Target/X86/X86TargetMachine.cpp b/lib/Target/X86/X86TargetMachine.cpp
index cb1bb35b5b..560f070abd 100644
--- a/lib/Target/X86/X86TargetMachine.cpp
+++ b/lib/Target/X86/X86TargetMachine.cpp
@@ -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.");
}
}