Enhance the fixed length disassembler to better handle operand decoding failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136635 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/TableGen/FixedLenDecoderEmitter.cpp b/utils/TableGen/FixedLenDecoderEmitter.cpp
index b87634b..5d42e71 100644
--- a/utils/TableGen/FixedLenDecoderEmitter.cpp
+++ b/utils/TableGen/FixedLenDecoderEmitter.cpp
@@ -744,8 +744,8 @@
   }
 
   if (Decoder != "")
-    o.indent(Indentation) << "  " << Decoder
-                          << "(MI, tmp, Address, Decoder);\n";
+    o.indent(Indentation) << "  if (!" << Decoder
+                          << "(MI, tmp, Address, Decoder)) return false;\n";
   else
     o.indent(Indentation) << "  MI.addOperand(MCOperand::CreateImm(tmp));\n";