[llvm] [AArch64] Add SchedReadAdvance to Neoverse-V1 scheduling model. (PR #111538)
Rin Dobrescu via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 10 02:55:53 PDT 2024
================
@@ -469,6 +469,87 @@ def V1Write_11c_9L01_9S_9V : SchedWriteRes<[V1UnitL01, V1UnitL01, V1UnitL01,
V1UnitV, V1UnitV, V1UnitV,
V1UnitV, V1UnitV, V1UnitV]>;
+//===----------------------------------------------------------------------===//
+// Define forwarded types
+
+// NOTE: SOG, p. 20, n. 2: Accumulator forwarding is not supported for
+// consumers of 64 bit multiply high operations?
+def V1WriteIM : SchedWriteVariant<
+ [SchedVar<NeoverseMULIdiomPred, [V1Write_2c_1M]>,
+ SchedVar<NoSchedPred, [V1Write_2c_1M0]>]>;
+def V1Rd_MA : SchedReadAdvance<1, [V1Write_2c_1M0]>;
----------------
Rin18 wrote:
>If this will forward from any V1Write_2c_1M0
I've defined another resource so it will no longer forward from any V1Write_2c_1M0.
>And should a mul forward
I don't think a mul should forward.
https://github.com/llvm/llvm-project/pull/111538
More information about the llvm-commits
mailing list