[llvm] r333448 - [TableGen] Use explicit constructor for InstMemo

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Tue May 29 11:34:42 PDT 2018


Author: fhahn
Date: Tue May 29 11:34:42 2018
New Revision: 333448

URL: http://llvm.org/viewvc/llvm-project?rev=333448&view=rev
Log:
[TableGen] Use explicit constructor for InstMemo

This should fix a few buildbot failures with old
GCC versions.

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

Modified: llvm/trunk/utils/TableGen/FastISelEmitter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/FastISelEmitter.cpp?rev=333448&r1=333447&r2=333448&view=diff
==============================================================================
--- llvm/trunk/utils/TableGen/FastISelEmitter.cpp (original)
+++ llvm/trunk/utils/TableGen/FastISelEmitter.cpp Tue May 29 11:34:42 2018
@@ -39,6 +39,12 @@ struct InstructionMemo {
   std::vector<std::string> PhysRegs;
   std::string PredicateCheck;
 
+  InstructionMemo(std::string Name, const CodeGenRegisterClass *RC,
+                  std::string SubRegNo, std::vector<std::string> PhysRegs,
+                  std::string PredicateCheck)
+    : Name(Name), RC(RC), SubRegNo(SubRegNo), PhysRegs(PhysRegs),
+      PredicateCheck(PredicateCheck) {}
+
   // Make sure we do not copy InstructionMemo.
   InstructionMemo(const InstructionMemo &Other) = delete;
   InstructionMemo(InstructionMemo &&Other) = default;
@@ -576,13 +582,13 @@ void FastISelMap::collectPatterns(CodeGe
     std::string PredicateCheck = Pattern.getPredicateCheck();
 
     // Ok, we found a pattern that we can handle. Remember it.
-    InstructionMemo Memo = {
+    InstructionMemo Memo(
       Pattern.getDstPattern()->getOperator()->getName(),
       DstRC,
       SubRegNo,
       PhysRegInputs,
       PredicateCheck
-    };
+    );
 
     int complexity = Pattern.getPatternComplexity(CGP);
 




More information about the llvm-commits mailing list