[llvm] [RISCV] Rework IDiv and FDiv pipes on SiFive7 (PR #73970)
Michael Maitland via llvm-commits
llvm-commits at lists.llvm.org
Fri Dec 1 08:47:08 PST 2023
https://github.com/michaelmaitland updated https://github.com/llvm/llvm-project/pull/73970
>From 666d1f82e948b638c0931992f33352fe51597ee6 Mon Sep 17 00:00:00 2001
From: Michael Maitland <michaeltmaitland at gmail.com>
Date: Thu, 30 Nov 2023 10:58:49 -0800
Subject: [PATCH 1/2] [RISCV] Rework IDiv and FDiv pipes on SiFive7
Set BufferSize=0 and remove Super pipes for these resources.
---
llvm/lib/Target/RISCV/RISCVSchedSiFive7.td | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td b/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
index 53ef9d1baf7b59a..261c22ea35317e2 100644
--- a/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
+++ b/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
@@ -213,12 +213,12 @@ let SchedModel = SiFive7Model in {
let BufferSize = 0 in {
def SiFive7PipeA : ProcResource<1>;
def SiFive7PipeB : ProcResource<1>;
+def SiFive7IDiv : ProcResource<1> { let Super = SiFive7PipeB; } // Int Division
+def SiFive7FDiv : ProcResource<1> { let Super = SiFive7PipeB; } // FP Division/Sqrt
def SiFive7PipeV : ProcResource<1>;
}
let BufferSize = 1 in {
-def SiFive7IDiv : ProcResource<1> { let Super = SiFive7PipeB; } // Int Division
-def SiFive7FDiv : ProcResource<1> { let Super = SiFive7PipeB; } // FP Division/Sqrt
def SiFive7VA : ProcResource<1> { let Super = SiFive7PipeV; } // Arithmetic sequencer
def SiFive7VL : ProcResource<1> { let Super = SiFive7PipeV; } // Load sequencer
def SiFive7VS : ProcResource<1> { let Super = SiFive7PipeV; } // Store sequencer
>From 3ce8ed8450468760298b7db0505d285f829bfbb0 Mon Sep 17 00:00:00 2001
From: Michael Maitland <michaeltmaitland at gmail.com>
Date: Fri, 1 Dec 2023 08:46:29 -0800
Subject: [PATCH 2/2] !fixup remove super
---
llvm/lib/Target/RISCV/RISCVSchedSiFive7.td | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td b/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
index 261c22ea35317e2..0f79b297e97c524 100644
--- a/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
+++ b/llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
@@ -213,8 +213,8 @@ let SchedModel = SiFive7Model in {
let BufferSize = 0 in {
def SiFive7PipeA : ProcResource<1>;
def SiFive7PipeB : ProcResource<1>;
-def SiFive7IDiv : ProcResource<1> { let Super = SiFive7PipeB; } // Int Division
-def SiFive7FDiv : ProcResource<1> { let Super = SiFive7PipeB; } // FP Division/Sqrt
+def SiFive7IDiv : ProcResource<1>; // Int Division
+def SiFive7FDiv : ProcResource<1>; // FP Division/Sqrt
def SiFive7PipeV : ProcResource<1>;
}
More information about the llvm-commits
mailing list