@@ -4226,38 +4226,32 @@ bool RISCVInstrInfo::simplifyInstruction(MachineInstr &MI) const {
42264226#define CASE_WIDEOP_OPCODE_COMMON (OP, LMUL ) \
42274227 RISCV::PseudoV##OP##_##LMUL##_TIED
42284228
4229- #define CASE_WIDEOP_OPCODE_LMULS_MF4 (OP ) \
4230- CASE_WIDEOP_OPCODE_COMMON (OP, MF4): \
4229+ #define CASE_WIDEOP_OPCODE_LMULS (OP ) \
4230+ CASE_WIDEOP_OPCODE_COMMON (OP, MF8): \
4231+ case CASE_WIDEOP_OPCODE_COMMON(OP, MF4): \
42314232 case CASE_WIDEOP_OPCODE_COMMON(OP, MF2): \
42324233 case CASE_WIDEOP_OPCODE_COMMON(OP, M1): \
42334234 case CASE_WIDEOP_OPCODE_COMMON(OP, M2): \
42344235 case CASE_WIDEOP_OPCODE_COMMON(OP, M4)
42354236
4236- #define CASE_WIDEOP_OPCODE_LMULS (OP ) \
4237- CASE_WIDEOP_OPCODE_COMMON (OP, MF8): \
4238- case CASE_WIDEOP_OPCODE_LMULS_MF4(OP)
4239-
42404237#define CASE_WIDEOP_CHANGE_OPCODE_COMMON (OP, LMUL ) \
42414238 case RISCV::PseudoV##OP##_##LMUL##_TIED: \
42424239 NewOpc = RISCV::PseudoV##OP##_##LMUL; \
42434240 break ;
42444241
4245- #define CASE_WIDEOP_CHANGE_OPCODE_LMULS_MF4 (OP ) \
4242+ #define CASE_WIDEOP_CHANGE_OPCODE_LMULS (OP ) \
4243+ CASE_WIDEOP_CHANGE_OPCODE_COMMON (OP, MF8) \
42464244 CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF4) \
42474245 CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF2) \
42484246 CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, M1) \
42494247 CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, M2) \
42504248 CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, M4)
42514249
4252- #define CASE_WIDEOP_CHANGE_OPCODE_LMULS (OP ) \
4253- CASE_WIDEOP_CHANGE_OPCODE_COMMON (OP, MF8) \
4254- CASE_WIDEOP_CHANGE_OPCODE_LMULS_MF4(OP)
4255-
42564250// FP Widening Ops may by SEW aware. Create SEW aware cases for these cases.
42574251#define CASE_FP_WIDEOP_OPCODE_COMMON (OP, LMUL, SEW ) \
42584252 RISCV::PseudoV##OP##_##LMUL##_##SEW##_TIED
42594253
4260- #define CASE_FP_WIDEOP_OPCODE_LMULS_MF4 (OP ) \
4254+ #define CASE_FP_WIDEOP_OPCODE_LMULS (OP ) \
42614255 CASE_FP_WIDEOP_OPCODE_COMMON (OP, MF4, E16 ): \
42624256 case CASE_FP_WIDEOP_OPCODE_COMMON(OP, MF2, E16 ): \
42634257 case CASE_FP_WIDEOP_OPCODE_COMMON(OP, MF2, E32 ): \
@@ -4273,7 +4267,7 @@ bool RISCVInstrInfo::simplifyInstruction(MachineInstr &MI) const {
42734267 NewOpc = RISCV::PseudoV##OP##_##LMUL##_##SEW; \
42744268 break ;
42754269
4276- #define CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS_MF4 (OP ) \
4270+ #define CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS (OP ) \
42774271 CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON (OP, MF4, E16 ) \
42784272 CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF2, E16 ) \
42794273 CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF2, E32 ) \
@@ -4283,9 +4277,6 @@ bool RISCVInstrInfo::simplifyInstruction(MachineInstr &MI) const {
42834277 CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, M2, E32 ) \
42844278 CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, M4, E16 ) \
42854279 CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, M4, E32 ) \
4286-
4287- #define CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS (OP ) \
4288- CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS_MF4 (OP)
42894280// clang-format on
42904281
42914282MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
@@ -4295,8 +4286,8 @@ MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
42954286 switch (MI.getOpcode ()) {
42964287 default :
42974288 return nullptr ;
4298- case CASE_FP_WIDEOP_OPCODE_LMULS_MF4 (FWADD_WV):
4299- case CASE_FP_WIDEOP_OPCODE_LMULS_MF4 (FWSUB_WV): {
4289+ case CASE_FP_WIDEOP_OPCODE_LMULS (FWADD_WV):
4290+ case CASE_FP_WIDEOP_OPCODE_LMULS (FWSUB_WV): {
43004291 assert (RISCVII::hasVecPolicyOp (MI.getDesc ().TSFlags ) &&
43014292 MI.getNumExplicitOperands () == 7 &&
43024293 " Expect 7 explicit operands rd, rs2, rs1, rm, vl, sew, policy" );
@@ -4309,8 +4300,8 @@ MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
43094300 switch (MI.getOpcode ()) {
43104301 default :
43114302 llvm_unreachable (" Unexpected opcode" );
4312- CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS_MF4 (FWADD_WV)
4313- CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS_MF4 (FWSUB_WV)
4303+ CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS (FWADD_WV)
4304+ CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS (FWSUB_WV)
43144305 }
43154306 // clang-format on
43164307
@@ -4390,15 +4381,12 @@ MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
43904381}
43914382
43924383#undef CASE_WIDEOP_OPCODE_COMMON
4393- #undef CASE_WIDEOP_OPCODE_LMULS_MF4
43944384#undef CASE_WIDEOP_OPCODE_LMULS
43954385#undef CASE_WIDEOP_CHANGE_OPCODE_COMMON
4396- #undef CASE_WIDEOP_CHANGE_OPCODE_LMULS_MF4
43974386#undef CASE_WIDEOP_CHANGE_OPCODE_LMULS
43984387#undef CASE_FP_WIDEOP_OPCODE_COMMON
4399- #undef CASE_FP_WIDEOP_OPCODE_LMULS_MF4
4388+ #undef CASE_FP_WIDEOP_OPCODE_LMULS
44004389#undef CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON
4401- #undef CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS_MF4
44024390#undef CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS
44034391
44044392void RISCVInstrInfo::mulImm (MachineFunction &MF, MachineBasicBlock &MBB,
0 commit comments