This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Fix wide spills
ClosedPublic

Authored by piotr on Dec 2 2022, 7:46 AM.

Details

Summary

Update spill code to account for new vector types with
bit widths: 288, 320, 352, 384.

Related to D138205.

Diff Detail

Event Timeline

piotr created this revision.Dec 2 2022, 7:46 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 2 2022, 7:46 AM
piotr requested review of this revision.Dec 2 2022, 7:46 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 2 2022, 7:47 AM
arsenm requested changes to this revision.Dec 2 2022, 8:05 AM

Should also test AGPR

llvm/test/CodeGen/AMDGPU/spill288.mir
3–4

Should test with gfx90a to cover the AGPRs

126

Can you also test AGPR

This revision now requires changes to proceed.Dec 2 2022, 8:05 AM
piotr updated this revision to Diff 480083.Dec 5 2022, 6:09 AM

Thanks - the extra set of tests has uncovered another issue in code.

piotr marked 2 inline comments as done.Dec 5 2022, 6:10 AM
arsenm accepted this revision.Dec 5 2022, 6:17 AM
This revision is now accepted and ready to land.Dec 5 2022, 6:17 AM
piotr updated this revision to Diff 480398.Dec 6 2022, 2:14 AM

Updating patch to address two more issues detected by running tests in debug mode:

  • wrong opcodes used in getVGPRSpillSaveOpcode in the original patch
  • tests using insufficient spill slot size in my patch
arsenm accepted this revision.Dec 6 2022, 8:52 AM
This revision was landed with ongoing or failed builds.Dec 7 2022, 1:24 AM
This revision was automatically updated to reflect the committed changes.