aboutsummaryrefslogtreecommitdiff
path: root/llvm/utils/TableGen/DisassemblerEmitter.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2014-01-05 01:34:12 +0000
committerCraig Topper <craig.topper@gmail.com>2014-01-05 01:34:12 +0000
commit7d4e01cdcbdd7c97746d570b726aedb772ce536c (patch)
treef3414e68f33112053ead569a6c19dd2cd5ea65f4 /llvm/utils/TableGen/DisassemblerEmitter.cpp
parent34bac1f7300bca11549af9f66c8ba853033d2eb2 (diff)
downloadllvm-7d4e01cdcbdd7c97746d570b726aedb772ce536c.zip
llvm-7d4e01cdcbdd7c97746d570b726aedb772ce536c.tar.gz
llvm-7d4e01cdcbdd7c97746d570b726aedb772ce536c.tar.bz2
Don't use PrintFatalError(which calls exit) for 'Primary decode conflict'. Just skip emitting the table. This way the main function will delete the output file instead of it remaining empty and confusing dependency checks if build is invoked a second time.
llvm-svn: 198529
Diffstat (limited to 'llvm/utils/TableGen/DisassemblerEmitter.cpp')
-rw-r--r--llvm/utils/TableGen/DisassemblerEmitter.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/llvm/utils/TableGen/DisassemblerEmitter.cpp b/llvm/utils/TableGen/DisassemblerEmitter.cpp
index 5a2a41b4..0020de6 100644
--- a/llvm/utils/TableGen/DisassemblerEmitter.cpp
+++ b/llvm/utils/TableGen/DisassemblerEmitter.cpp
@@ -117,9 +117,10 @@ void EmitDisassembler(RecordKeeper &Records, raw_ostream &OS) {
for (unsigned i = 0, e = numberedInstructions.size(); i != e; ++i)
RecognizableInstr::processInstr(Tables, *numberedInstructions[i], i);
- if (Tables.hasConflicts())
- PrintFatalError(Target.getTargetRecord()->getLoc(),
- "Primary decode conflict");
+ if (Tables.hasConflicts()) {
+ PrintError(Target.getTargetRecord()->getLoc(), "Primary decode conflict");
+ return;
+ }
Tables.emit(OS);
return;