[llvm] [RISCV] Enable load clustering by default (PR #73789)
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 29 10:18:10 PST 2023
https://github.com/preames commented:
Looking at the test diffs, two observations:
1) This appears to be increasing register pressure in some cases. I can't find any case where it causes a spill it didn't before, but we do have cases where more registers are live at the same time.
2) Clustering doesn't appear to be sorting by offset, and instead appears to be a somewhat arbitrary reordering of already adjacent loads. (When they happen to already be adjacent.)
Does this work if we try doing this post RA? That would cut down on the potential register pressure concern. To be clear, this is just a question, I could easily be convinced that doing this pre-RA is the right answer.
Your heuristic looks reasonable to me. I don't have data one way or another to indicate a preference for it, or anything else.
https://github.com/llvm/llvm-project/pull/73789
More information about the llvm-commits
mailing list