summaryrefslogtreecommitdiff
path: root/utils
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
commit62fe07a1ac8ec02f60a73a4b6914f0ef964f62ef (patch)
tree95222bca3c6d9aba66a40037e1995aa8b8f5652e /utils
parent00e9cfeaf73330ed21404c9a11d104459488eb91 (diff)
downloadllvm-62fe07a1ac8ec02f60a73a4b6914f0ef964f62ef.tar.gz
llvm-62fe07a1ac8ec02f60a73a4b6914f0ef964f62ef.tar.bz2
llvm-62fe07a1ac8ec02f60a73a4b6914f0ef964f62ef.tar.xz
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198529 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r--utils/TableGen/DisassemblerEmitter.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/utils/TableGen/DisassemblerEmitter.cpp b/utils/TableGen/DisassemblerEmitter.cpp
index 5a2a41b456..0020de6528 100644
--- a/utils/TableGen/DisassemblerEmitter.cpp
+++ b/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;