Skip to content

Commit d3fb596

Browse files
authored
[RISCV] Fix scheduling info for compressed LD/ST of FP types. (llvm#82339)
1 parent 351e4fa commit d3fb596

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

llvm/lib/Target/RISCV/RISCVInstrInfoC.td

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -317,7 +317,7 @@ def C_ADDI4SPN : RVInst16CIW<0b000, 0b00, (outs GPRC:$rd),
317317

318318
let Predicates = [HasStdExtCOrZcd, HasStdExtD] in
319319
def C_FLD : CLoad_ri<0b001, "c.fld", FPR64C, uimm8_lsb000>,
320-
Sched<[WriteFLD64, ReadMemBase]> {
320+
Sched<[WriteFLD64, ReadFMemBase]> {
321321
bits<8> imm;
322322
let Inst{12-10} = imm{5-3};
323323
let Inst{6-5} = imm{7-6};
@@ -334,7 +334,7 @@ def C_LW : CLoad_ri<0b010, "c.lw", GPRC, uimm7_lsb00>,
334334
let DecoderNamespace = "RISCV32Only_",
335335
Predicates = [HasStdExtCOrZcfOrZce, HasStdExtF, IsRV32] in
336336
def C_FLW : CLoad_ri<0b011, "c.flw", FPR32C, uimm7_lsb00>,
337-
Sched<[WriteFLD32, ReadMemBase]> {
337+
Sched<[WriteFLD32, ReadFMemBase]> {
338338
bits<7> imm;
339339
let Inst{12-10} = imm{5-3};
340340
let Inst{6} = imm{2};
@@ -351,7 +351,7 @@ def C_LD : CLoad_ri<0b011, "c.ld", GPRC, uimm8_lsb000>,
351351

352352
let Predicates = [HasStdExtCOrZcd, HasStdExtD] in
353353
def C_FSD : CStore_rri<0b101, "c.fsd", FPR64C, uimm8_lsb000>,
354-
Sched<[WriteFST64, ReadStoreData, ReadMemBase]> {
354+
Sched<[WriteFST64, ReadFStoreData, ReadFMemBase]> {
355355
bits<8> imm;
356356
let Inst{12-10} = imm{5-3};
357357
let Inst{6-5} = imm{7-6};
@@ -368,7 +368,7 @@ def C_SW : CStore_rri<0b110, "c.sw", GPRC, uimm7_lsb00>,
368368
let DecoderNamespace = "RISCV32Only_",
369369
Predicates = [HasStdExtCOrZcfOrZce, HasStdExtF, IsRV32] in
370370
def C_FSW : CStore_rri<0b111, "c.fsw", FPR32C, uimm7_lsb00>,
371-
Sched<[WriteFST32, ReadStoreData, ReadMemBase]> {
371+
Sched<[WriteFST32, ReadFStoreData, ReadFMemBase]> {
372372
bits<7> imm;
373373
let Inst{12-10} = imm{5-3};
374374
let Inst{6} = imm{2};
@@ -506,7 +506,7 @@ def C_SLLI : RVInst16CI<0b000, 0b10, (outs GPRNoX0:$rd_wb),
506506

507507
let Predicates = [HasStdExtCOrZcd, HasStdExtD] in
508508
def C_FLDSP : CStackLoad<0b001, "c.fldsp", FPR64, uimm9_lsb000>,
509-
Sched<[WriteFLD64, ReadMemBase]> {
509+
Sched<[WriteFLD64, ReadFMemBase]> {
510510
let Inst{6-5} = imm{4-3};
511511
let Inst{4-2} = imm{8-6};
512512
}
@@ -520,7 +520,7 @@ def C_LWSP : CStackLoad<0b010, "c.lwsp", GPRNoX0, uimm8_lsb00>,
520520
let DecoderNamespace = "RISCV32Only_",
521521
Predicates = [HasStdExtCOrZcfOrZce, HasStdExtF, IsRV32] in
522522
def C_FLWSP : CStackLoad<0b011, "c.flwsp", FPR32, uimm8_lsb00>,
523-
Sched<[WriteFLD32, ReadMemBase]> {
523+
Sched<[WriteFLD32, ReadFMemBase]> {
524524
let Inst{6-4} = imm{4-2};
525525
let Inst{3-2} = imm{7-6};
526526
}
@@ -564,7 +564,7 @@ def C_ADD : RVInst16CR<0b1001, 0b10, (outs GPRNoX0:$rs1_wb),
564564

565565
let Predicates = [HasStdExtCOrZcd, HasStdExtD] in
566566
def C_FSDSP : CStackStore<0b101, "c.fsdsp", FPR64, uimm9_lsb000>,
567-
Sched<[WriteFST64, ReadStoreData, ReadMemBase]> {
567+
Sched<[WriteFST64, ReadFStoreData, ReadFMemBase]> {
568568
let Inst{12-10} = imm{5-3};
569569
let Inst{9-7} = imm{8-6};
570570
}
@@ -578,7 +578,7 @@ def C_SWSP : CStackStore<0b110, "c.swsp", GPR, uimm8_lsb00>,
578578
let DecoderNamespace = "RISCV32Only_",
579579
Predicates = [HasStdExtCOrZcfOrZce, HasStdExtF, IsRV32] in
580580
def C_FSWSP : CStackStore<0b111, "c.fswsp", FPR32, uimm8_lsb00>,
581-
Sched<[WriteFST32, ReadStoreData, ReadMemBase]> {
581+
Sched<[WriteFST32, ReadFStoreData, ReadFMemBase]> {
582582
let Inst{12-9} = imm{5-2};
583583
let Inst{8-7} = imm{7-6};
584584
}

0 commit comments

Comments
 (0)