]> granicus.if.org Git - llvm/commitdiff
[globalisel] Support 3-type legalForCartesianProduct()
authorDaniel Sanders <daniel_l_sanders@apple.com>
Fri, 5 Apr 2019 20:47:13 +0000 (20:47 +0000)
committerDaniel Sanders <daniel_l_sanders@apple.com>
Fri, 5 Apr 2019 20:47:13 +0000 (20:47 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@357815 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CodeGen/GlobalISel/LegalizerInfo.h

index b33f3f22c86c0d11673a927b083df5b9b8106cf9..734ef30d9d6b439d2ef338079d010c14e4cbd147 100644 (file)
@@ -485,6 +485,14 @@ public:
                                             std::initializer_list<LLT> Types1) {
     return actionForCartesianProduct(LegalizeAction::Legal, Types0, Types1);
   }
+  /// The instruction is legal when type indexes 0, 1, and 2 are both their
+  /// respective lists.
+  LegalizeRuleSet &legalForCartesianProduct(std::initializer_list<LLT> Types0,
+                                            std::initializer_list<LLT> Types1,
+                                            std::initializer_list<LLT> Types2) {
+    return actionForCartesianProduct(LegalizeAction::Legal, Types0, Types1,
+                                     Types2);
+  }
 
   /// The instruction is lowered.
   LegalizeRuleSet &lower() {