@@ -34,9 +34,13 @@ def MyCombiner: GICombiner<"GenMyCombiner", [
3434
3535// CHECK: const int64_t *GenMyCombiner::getMatchTable() const {
3636// CHECK-NEXT: constexpr static int64_t MatchTable0[] = {
37- // CHECK-NEXT: GIM_Try, /*On fail goto*//*Label 0*/ 28, // Rule ID 0 //
37+ // CHECK-NEXT: GIM_SwitchOpcode, /*MI*/0, /*[*/19, 126, /*)*//*default:*//*Label 3*/ 202,
38+ // CHECK-NEXT: /*TargetOpcode::COPY*//*Label 0*/ 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
39+ // CHECK-NEXT: /*TargetOpcode::G_CONSTANT*//*Label 1*/ 138, 0, 0, 0, 0, 0,
40+ // CHECK-NEXT: /*TargetOpcode::G_ZEXT*//*Label 2*/ 165,
41+ // CHECK-NEXT: // Label 0: @112
42+ // CHECK-NEXT: GIM_Try, /*On fail goto*//*Label 4*/ 137, // Rule ID 0 //
3843// CHECK-NEXT: GIM_CheckSimplePredicate, GICXXPred_Simple_IsRule0Enabled,
39- // CHECK-NEXT: GIM_CheckOpcode, /*MI*/0, TargetOpcode::COPY,
4044// CHECK-NEXT: GIM_CheckType, /*MI*/0, /*Op*/1, /*Type*/GILLT_s32,
4145// CHECK-NEXT: // MIs[0] a
4246// CHECK-NEXT: // No operand predicates
@@ -47,10 +51,26 @@ def MyCombiner: GICombiner<"GenMyCombiner", [
4751// CHECK-NEXT: GIR_AddImm, /*InsnID*/0, /*Imm*/0,
4852// CHECK-NEXT: GIR_EraseFromParent, /*InsnID*/0,
4953// CHECK-NEXT: GIR_Done,
50- // CHECK-NEXT: // Label 0: @28
51- // CHECK-NEXT: GIM_Try, /*On fail goto*//*Label 1*/ 67, // Rule ID 1 //
54+ // CHECK-NEXT: // Label 4: @137
55+ // CHECK-NEXT: GIM_Reject,
56+ // CHECK-NEXT: // Label 1: @138
57+ // CHECK-NEXT: GIM_Try, /*On fail goto*//*Label 5*/ 164, // Rule ID 2 //
58+ // CHECK-NEXT: GIM_CheckSimplePredicate, GICXXPred_Simple_IsRule2Enabled,
59+ // CHECK-NEXT: GIM_CheckType, /*MI*/0, /*Op*/1, /*Type*/GILLT_s32,
60+ // CHECK-NEXT: // MIs[0] a
61+ // CHECK-NEXT: // No operand predicates
62+ // CHECK-NEXT: GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, 0,
63+ // CHECK-NEXT: // Combiner Rule #2: CImmInstTest1
64+ // CHECK-NEXT: GIR_BuildMI, /*InsnID*/0, /*Opcode*/TargetOpcode::G_CONSTANT,
65+ // CHECK-NEXT: GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/0, // a
66+ // CHECK-NEXT: GIR_AddCImm, /*InsnID*/0, /*Type*/GILLT_s32, /*Imm*/42,
67+ // CHECK-NEXT: GIR_EraseFromParent, /*InsnID*/0,
68+ // CHECK-NEXT: GIR_Done,
69+ // CHECK-NEXT: // Label 5: @164
70+ // CHECK-NEXT: GIM_Reject,
71+ // CHECK-NEXT: // Label 2: @165
72+ // CHECK-NEXT: GIM_Try, /*On fail goto*//*Label 6*/ 201, // Rule ID 1 //
5273// CHECK-NEXT: GIM_CheckSimplePredicate, GICXXPred_Simple_IsRule1Enabled,
53- // CHECK-NEXT: GIM_CheckOpcode, /*MI*/0, TargetOpcode::G_ZEXT,
5474// CHECK-NEXT: // MIs[0] a
5575// CHECK-NEXT: // No operand predicates
5676// CHECK-NEXT: // MIs[0] Operand 1
@@ -65,21 +85,9 @@ def MyCombiner: GICombiner<"GenMyCombiner", [
6585// CHECK-NEXT: GIR_AddTempRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/0,
6686// CHECK-NEXT: GIR_EraseFromParent, /*InsnID*/0,
6787// CHECK-NEXT: GIR_Done,
68- // CHECK-NEXT: // Label 1: @67
69- // CHECK-NEXT: GIM_Try, /*On fail goto*//*Label 2*/ 96, // Rule ID 2 //
70- // CHECK-NEXT: GIM_CheckSimplePredicate, GICXXPred_Simple_IsRule2Enabled,
71- // CHECK-NEXT: GIM_CheckOpcode, /*MI*/0, TargetOpcode::G_CONSTANT,
72- // CHECK-NEXT: GIM_CheckType, /*MI*/0, /*Op*/1, /*Type*/GILLT_s32,
73- // CHECK-NEXT: // MIs[0] a
74- // CHECK-NEXT: // No operand predicates
75- // CHECK-NEXT: GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, 0,
76- // CHECK-NEXT: // Combiner Rule #2: CImmInstTest1
77- // CHECK-NEXT: GIR_BuildMI, /*InsnID*/0, /*Opcode*/TargetOpcode::G_CONSTANT,
78- // CHECK-NEXT: GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/0, // a
79- // CHECK-NEXT: GIR_AddCImm, /*InsnID*/0, /*Type*/GILLT_s32, /*Imm*/42,
80- // CHECK-NEXT: GIR_EraseFromParent, /*InsnID*/0,
81- // CHECK-NEXT: GIR_Done,
82- // CHECK-NEXT: // Label 2: @96
88+ // CHECK-NEXT: // Label 6: @201
89+ // CHECK-NEXT: GIM_Reject,
90+ // CHECK-NEXT: // Label 3: @202
8391// CHECK-NEXT: GIM_Reject,
8492// CHECK-NEXT: };
8593// CHECK-NEXT: return MatchTable0;
0 commit comments