Added \!con(a,b) syntax to concatnate two dag fragments.

llvm-svn: 37063
diff --git a/llvm/utils/TableGen/Record.h b/llvm/utils/TableGen/Record.h
index 0971e93..d419f0b 100644
--- a/llvm/utils/TableGen/Record.h
+++ b/llvm/utils/TableGen/Record.h
@@ -354,7 +354,7 @@
   virtual Init *convertValue(  CodeInit *CI) { return 0; }
   virtual Init *convertValue(VarBitInit *VB) { return 0; }
   virtual Init *convertValue(   DefInit *DI) { return 0; }
-  virtual Init *convertValue( BinOpInit *UI) { return 0; }
+  virtual Init *convertValue( BinOpInit *BO);
   virtual Init *convertValue(   DagInit *CI) { return (Init*)CI; }
   virtual Init *convertValue( TypedInit *TI);
   virtual Init *convertValue(   VarInit *VI) { return RecTy::convertValue(VI);}
@@ -648,7 +648,7 @@
 ///
 class BinOpInit : public Init {
 public:
-  enum BinaryOp { SHL, SRA, SRL, STRCONCAT };
+  enum BinaryOp { SHL, SRA, SRL, STRCONCAT, CONCAT };
 private:
   BinaryOp Opc;
   Init *LHS, *RHS;