This is an archive of the discontinued LLVM Phabricator instance.

AMDGPU: Erase redundant redefs of m0 in SIFoldOperands
ClosedPublic

Authored by arsenm on Oct 11 2019, 2:58 PM.

Details

Summary

Only handle simple inter-block redefs of m0 to the same value. This
avoids interference from redefs of m0 in SILoadStoreOptimzer. I was
initially teaching that pass to ignore redefs of m0, but having them
not exist beforehand is much simpler.

This is in preparation for deleting the current special m0 handling in
SIFixSGPRCopies to allow the register coalescer to handle the
difficult cases.

Diff Detail

Event Timeline

arsenm created this revision.Oct 11 2019, 2:58 PM
kerbowa accepted this revision.Oct 11 2019, 9:03 PM

LGTM

This revision is now accepted and ready to land.Oct 11 2019, 9:03 PM
arsenm closed this revision.Oct 21 2019, 12:51 PM

r375449