Match this pattern so that we can generate simpler code:
[oota-llvm.git] / utils / TableGen / FastISelEmitter.cpp
index 3ce764259898e39887f7286b812eba9696ec9254..201a2cc5fef5c1ffef930fea5d8db059367858e7 100644 (file)
@@ -440,7 +440,8 @@ void FastISelMap::PrintFunctionDefinitions(std::ostream &OS) {
                 Operands.PrintArguments(OS, *Memo.PhysRegs);
                 OS << ");\n";
               } else {
-                OS << "extractsubreg(Op0, ";
+                OS << "extractsubreg(" << getName(RetVT);
+                OS << ", Op0, ";
                 OS << (unsigned)Memo.SubRegNo;
                 OS << ");\n";
               }
@@ -534,7 +535,7 @@ void FastISelMap::PrintFunctionDefinitions(std::ostream &OS) {
               Operands.PrintArguments(OS, *Memo.PhysRegs);
               OS << ");\n";
             } else {
-              OS << "extractsubreg(Op0, ";
+              OS << "extractsubreg(RetVT, Op0, ";
               OS << (unsigned)Memo.SubRegNo;
               OS << ");\n";
             }