This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Extend SILoadStoreOptimizer to handle global stores
ClosedPublic

Authored by rampitec on Feb 22 2022, 12:28 PM.

Details

Summary

TODO: merge flat load/stores.
TODO: merge flat with global promoting to flat.

Diff Detail

Event Timeline

rampitec created this revision.Feb 22 2022, 12:28 PM
rampitec requested review of this revision.Feb 22 2022, 12:28 PM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 22 2022, 12:28 PM
Herald added a subscriber: wdng. · View Herald Transcript

Looks OK to me.

llvm/test/CodeGen/AMDGPU/soft-clause-exceeds-register-budget.ll
7

What happened here? Autogenerating the checks for this file might make it clearer what actually changed.

rampitec added inline comments.Feb 23 2022, 10:31 AM
llvm/test/CodeGen/AMDGPU/soft-clause-exceeds-register-budget.ll
7

There is a bunch of global stores at the end of the test. We have combined 2 more of them, which has changed register pressure. The estimate for the last block changed from 40 to 41. Consequentially that has changed the scheduling and a pack of 4 global loads was scheduled lower, while couple of scalar x16 loads was scheduled higher.

I actually do not think that generating checks for ~400 instructions is beneficial. We will have to regenerate it often and it will obscure actual clauses.

foad accepted this revision.Feb 24 2022, 1:24 AM
foad added inline comments.
llvm/test/CodeGen/AMDGPU/soft-clause-exceeds-register-budget.ll
7

Well it's still not clear to me that it's still testing whatever it was supposed to test. But I don't really mind.

This revision is now accepted and ready to land.Feb 24 2022, 1:24 AM
This revision was landed with ongoing or failed builds.Feb 24 2022, 11:10 AM
This revision was automatically updated to reflect the committed changes.