[llvm] [X86][CostModel] Add per-shape gather/scatter cost tables for AMD znver4+ (PR #199488)

Sumukh J Bharadwaj via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 17 05:12:45 PDT 2026


amd-subharad wrote:

> The combined-diff warning names `CodeGen/X86/znver4-gather-scatter-schedule.ll`, but neither `f842a1f1cbe0` nor the prerequisite `64daba1a7b4b` contains that path. Could the warning name the test path used by these commits?

The path which reflected the earlier revision has been modified

> In the PR description, the VF3 paragraph says that unlisted shapes use the flat path, but VF3 is priced from the rounded VF4 row. Could the paragraph describe the rounded-row behavior?

Right the paragraph has been edited now

> In the PR description, the forced-feature validation says that only reciprocal throughput changes on `skylake-avx512`. A dword-index v12 gather also changes three quantities: latency, size-and-latency, and code size. Could the validation describe all affected quantities?

Modified this as well

> In the PR description, the no-VLX test paragraph says that v4i64 widens to a ZMM gather, but `llc` scalarizes that case at `f842a1f1cbe0`. Could that paragraph reflect the observed output?

The over generalization has been corrected

> These parts of the PR description are stale: the previous commit range, the test count of 2,276, and the superseded cost policy of equal index-form totals and a flat fallback for unlisted shapes. Could the PR description be updated for the current two-commit range before merge?
> 
> Edit: To be a bit more specific: It's better to avoid implementation details like the number of tests `Total Discovered Tests: 2279 / Passed: 2279`; for some ideas, see https://llvm.org/docs/DeveloperPolicy.html#commit-messages - you can likely make your message much shorter if you follow the general guideline: "Commit messages should communicate briefly what the change does, but they should really emphasize why a change is being made and provide useful context."

The commit range and the test-count block are gone, and the superseded cost policy is rewritten rather than patched.
However, the length did not get shorter, would you recommend dropping any of the sections to comply with the guidelines?

https://github.com/llvm/llvm-project/pull/199488


More information about the llvm-commits mailing list