[llvm-commits] [llvm] r135287 - /llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp

Kevin Enderby enderby at apple.com
Fri Jul 15 11:30:43 PDT 2011


Author: enderby
Date: Fri Jul 15 13:30:43 2011
New Revision: 135287

URL: http://llvm.org/viewvc/llvm-project?rev=135287&view=rev
Log:
Have tblgen produce code that tolerates operands that return an invalid match class.

Modified:
    llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp

Modified: llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp?rev=135287&r1=135286&r2=135287&view=diff
==============================================================================
--- llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp (original)
+++ llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp Fri Jul 15 13:30:43 2011
@@ -1656,6 +1656,10 @@
   OS << "  " << Info.Target.getName() << "Operand &Operand = *("
      << Info.Target.getName() << "Operand*)GOp;\n";
 
+  // The InvalidMatchClass is not to match any operand.
+  OS << "  if (Kind == InvalidMatchClass)\n";
+  OS << "    return false;\n\n";
+
   // Check for Token operands first.
   OS << "  if (Operand.isToken())\n";
   OS << "    return MatchTokenString(Operand.getToken()) == Kind;\n\n";





More information about the llvm-commits mailing list