[llvm] [MachinePipeliner] Improve loop carried dependence analysis (PR #94185)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 9 11:23:12 PST 2025
================
@@ -1,14 +1,15 @@
# RUN: llc -mtriple=hexagon -run-pass pipeliner -debug-only=pipeliner %s -o /dev/null 2>&1 -pipeliner-experimental-cg=true | FileCheck %s
# REQUIRES: asserts
-# Test that the loop carried dependence check correctly identifies a recurrence
+# Test that it correctly recognizes that there is no loop carried dependence
----------------
bcahoon wrote:
Yes, @ytmukai, my example is incorrect, and yours accurately reflects the test case. Thanks providing the additional information.
Doesn't the pipeliner need model the dependence between the load and store, even though the load location proceeds the store location? For example, if the pipeliner includes instructions from several iterations, what would prevent the store to X-8, iteration 2, from moving to prior to the load of X-8, iteration 0? (In this specific test case, it's because there is a data dependence from the load -> subsat -> store. But, imagine if that dependence sequence didn't occur).
https://github.com/llvm/llvm-project/pull/94185
More information about the llvm-commits
mailing list