@@ -4226,38 +4226,32 @@ bool RISCVInstrInfo::simplifyInstruction(MachineInstr &MI) const {
4226
4226
#define CASE_WIDEOP_OPCODE_COMMON (OP, LMUL ) \
4227
4227
RISCV::PseudoV##OP##_##LMUL##_TIED
4228
4228
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): \
4231
4232
case CASE_WIDEOP_OPCODE_COMMON(OP, MF2): \
4232
4233
case CASE_WIDEOP_OPCODE_COMMON(OP, M1): \
4233
4234
case CASE_WIDEOP_OPCODE_COMMON(OP, M2): \
4234
4235
case CASE_WIDEOP_OPCODE_COMMON(OP, M4)
4235
4236
4236
- #define CASE_WIDEOP_OPCODE_LMULS (OP ) \
4237
- CASE_WIDEOP_OPCODE_COMMON (OP, MF8): \
4238
- case CASE_WIDEOP_OPCODE_LMULS_MF4(OP)
4239
-
4240
4237
#define CASE_WIDEOP_CHANGE_OPCODE_COMMON (OP, LMUL ) \
4241
4238
case RISCV::PseudoV##OP##_##LMUL##_TIED: \
4242
4239
NewOpc = RISCV::PseudoV##OP##_##LMUL; \
4243
4240
break ;
4244
4241
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) \
4246
4244
CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF4) \
4247
4245
CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF2) \
4248
4246
CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, M1) \
4249
4247
CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, M2) \
4250
4248
CASE_WIDEOP_CHANGE_OPCODE_COMMON(OP, M4)
4251
4249
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
-
4256
4250
// FP Widening Ops may by SEW aware. Create SEW aware cases for these cases.
4257
4251
#define CASE_FP_WIDEOP_OPCODE_COMMON (OP, LMUL, SEW ) \
4258
4252
RISCV::PseudoV##OP##_##LMUL##_##SEW##_TIED
4259
4253
4260
- #define CASE_FP_WIDEOP_OPCODE_LMULS_MF4 (OP ) \
4254
+ #define CASE_FP_WIDEOP_OPCODE_LMULS (OP ) \
4261
4255
CASE_FP_WIDEOP_OPCODE_COMMON (OP, MF4, E16 ): \
4262
4256
case CASE_FP_WIDEOP_OPCODE_COMMON(OP, MF2, E16 ): \
4263
4257
case CASE_FP_WIDEOP_OPCODE_COMMON(OP, MF2, E32 ): \
@@ -4273,7 +4267,7 @@ bool RISCVInstrInfo::simplifyInstruction(MachineInstr &MI) const {
4273
4267
NewOpc = RISCV::PseudoV##OP##_##LMUL##_##SEW; \
4274
4268
break ;
4275
4269
4276
- #define CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS_MF4 (OP ) \
4270
+ #define CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS (OP ) \
4277
4271
CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON (OP, MF4, E16 ) \
4278
4272
CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF2, E16 ) \
4279
4273
CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, MF2, E32 ) \
@@ -4283,9 +4277,6 @@ bool RISCVInstrInfo::simplifyInstruction(MachineInstr &MI) const {
4283
4277
CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, M2, E32 ) \
4284
4278
CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON(OP, M4, E16 ) \
4285
4279
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)
4289
4280
// clang-format on
4290
4281
4291
4282
MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
@@ -4295,8 +4286,8 @@ MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
4295
4286
switch (MI.getOpcode ()) {
4296
4287
default :
4297
4288
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): {
4300
4291
assert (RISCVII::hasVecPolicyOp (MI.getDesc ().TSFlags ) &&
4301
4292
MI.getNumExplicitOperands () == 7 &&
4302
4293
" Expect 7 explicit operands rd, rs2, rs1, rm, vl, sew, policy" );
@@ -4309,8 +4300,8 @@ MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
4309
4300
switch (MI.getOpcode ()) {
4310
4301
default :
4311
4302
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)
4314
4305
}
4315
4306
// clang-format on
4316
4307
@@ -4390,15 +4381,12 @@ MachineInstr *RISCVInstrInfo::convertToThreeAddress(MachineInstr &MI,
4390
4381
}
4391
4382
4392
4383
#undef CASE_WIDEOP_OPCODE_COMMON
4393
- #undef CASE_WIDEOP_OPCODE_LMULS_MF4
4394
4384
#undef CASE_WIDEOP_OPCODE_LMULS
4395
4385
#undef CASE_WIDEOP_CHANGE_OPCODE_COMMON
4396
- #undef CASE_WIDEOP_CHANGE_OPCODE_LMULS_MF4
4397
4386
#undef CASE_WIDEOP_CHANGE_OPCODE_LMULS
4398
4387
#undef CASE_FP_WIDEOP_OPCODE_COMMON
4399
- #undef CASE_FP_WIDEOP_OPCODE_LMULS_MF4
4388
+ #undef CASE_FP_WIDEOP_OPCODE_LMULS
4400
4389
#undef CASE_FP_WIDEOP_CHANGE_OPCODE_COMMON
4401
- #undef CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS_MF4
4402
4390
#undef CASE_FP_WIDEOP_CHANGE_OPCODE_LMULS
4403
4391
4404
4392
void RISCVInstrInfo::mulImm (MachineFunction &MF, MachineBasicBlock &MBB,
0 commit comments