This is an archive of the discontinued LLVM Phabricator instance.

[NFC][Regalloc] Ensure Query::interferingVRegs is accurate.
ClosedPublic

Authored by mtrofin on Oct 30 2021, 8:52 PM.

Details

Summary

To correctly use Query, one had to first call collectInterferingVRegs to
pre-cache the query result, then call interferingVRegs. Failing the
former, interferingVRegs could be stale. This did cause a bug which was
addressed in D98232, but the underlying usability issue of the Query API
wasn't.

This patch addresses the latter by making collectInterferingVRegs an
implementation detail, and having interferingVRegs play both roles. One
side-effect of this is that interferingVRegs is not const anymore.

Diff Detail

Event Timeline

mtrofin created this revision.Oct 30 2021, 8:52 PM
mtrofin requested review of this revision.Oct 30 2021, 8:52 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 30 2021, 8:52 PM
lkail added a subscriber: lkail.Oct 30 2021, 9:54 PM

gentle reminder - thanks!

qcolombet accepted this revision.Nov 2 2021, 10:59 AM
This revision is now accepted and ready to land.Nov 2 2021, 10:59 AM
This revision was landed with ongoing or failed builds.Nov 2 2021, 6:27 PM
This revision was automatically updated to reflect the committed changes.