[all-commits] [llvm/llvm-project] 02c2bf: [RISCV] Change heuristic used for load clustering ...
Alex Bradbury via All-commits
all-commits at lists.llvm.org
Tue Jan 2 08:28:38 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 02c2bf8c054c8a425f7347a4a276e2dbf4b10e5a
https://github.com/llvm/llvm-project/commit/02c2bf8c054c8a425f7347a4a276e2dbf4b10e5a
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-01-02 (Tue, 02 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV] Change heuristic used for load clustering (#75341)
Split out from #73789, so as to leave that PR just for flipping load
clustering to on by default. Clusters if the operations are within a
cache line of each other (as AMDGPU does in shouldScheduleLoadsNear).
X86 does something similar, but does `((Offset2 - Offset1) / 8 > 64)`.
I'm not sure if that's intentionally set to 512 bytes or if the division
is in error.
Adopts the suggestion from @wangpc-pp to query the cache line size and
use it if available.
We also cap the maximum cluster size to cap the potential register
pressure impact (which may lead to additional spills).
More information about the All-commits
mailing list