Skip to content

Commit 2886d30

Browse files
authored
[RISCV] Add short forward branch scheduling for Andes45 (#147890)
1 parent 4f5d67b commit 2886d30

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

llvm/lib/Target/RISCV/RISCVSchedAndes45.td

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,12 @@ def : WriteRes<WriteShiftImm32, [Andes45ALU]>;
5454
def : WriteRes<WriteShiftReg, [Andes45ALU]>;
5555
def : WriteRes<WriteShiftReg32, [Andes45ALU]>;
5656

57+
// Short forward branch
58+
def : WriteRes<WriteSFB, [Andes45ALU]> {
59+
let Latency = 1;
60+
let NumMicroOps = 2;
61+
}
62+
5763
// Branching
5864
def : WriteRes<WriteJmp, [Andes45ALU]>;
5965
def : WriteRes<WriteJal, [Andes45ALU]>;
@@ -231,6 +237,8 @@ def : ReadAdvance<ReadShiftImm, 0>;
231237
def : ReadAdvance<ReadShiftImm32, 0>;
232238
def : ReadAdvance<ReadShiftReg, 0>;
233239
def : ReadAdvance<ReadShiftReg32, 0>;
240+
def : ReadAdvance<ReadSFBJmp, 0>;
241+
def : ReadAdvance<ReadSFBALU, 0>;
234242
def : ReadAdvance<ReadJalr, 0>;
235243
def : ReadAdvance<ReadJmp, 0>;
236244
def : ReadAdvance<ReadIMul, 0>;
@@ -328,7 +336,6 @@ def : ReadAdvance<ReadCSR, 0>;
328336
//===----------------------------------------------------------------------===//
329337
// Unsupported extensions
330338
defm : UnsupportedSchedQ;
331-
defm : UnsupportedSchedSFB;
332339
defm : UnsupportedSchedV;
333340
defm : UnsupportedSchedZabha;
334341
defm : UnsupportedSchedZbkb;

0 commit comments

Comments
 (0)