This is an archive of the discontinued LLVM Phabricator instance.

[clang][dataflow] Refactor `DataflowWorklist` types and add a WTO version.
ClosedPublic

Authored by ymandel on Jun 15 2023, 1:32 PM.

Details

Summary

Removes dependency of the DataflowWorklistBase type on the PostOrderCFGView. The
base had no particular connection to this order -- looks like it was included as
a convenience to the two derived classes rather than because it belonged there
conceptually. Removing it cleans up the base class a bit and makes it suitable
to extension with the new WTODataflowWorklist class.

Diff Detail

Event Timeline

ymandel created this revision.Jun 15 2023, 1:32 PM
Herald added a project: Restricted Project. · View Herald Transcript
Herald added a subscriber: martong. · View Herald Transcript
ymandel requested review of this revision.Jun 15 2023, 1:32 PM
Herald added a project: Restricted Project. · View Herald TranscriptJun 15 2023, 1:32 PM
ymandel updated this revision to Diff 547344.Aug 4 2023, 2:12 PM

rebase onto main.

xazax.hun accepted this revision.Aug 4 2023, 2:45 PM

Mea culpa. Looks like I did not anticipate non-RPO worklists. Thanks for cleaning this up, looks good to me!

This revision is now accepted and ready to land.Aug 4 2023, 2:45 PM

Mea culpa. Looks like I did not anticipate non-RPO worklists. Thanks for cleaning this up, looks good to me!

Thanks! Not anticipating the future is pretty standard, no need to apologize. ;)