This is an archive of the discontinued LLVM Phabricator instance.

[dataflow] Use consistent, symmetrical, non-mutating erased signature for join()
ClosedPublic

Authored by sammccall on Jun 27 2023, 11:59 AM.

Details

Summary

Mutating join() isn't used and so appears to be an anti-optimization.
Having Lattice vs Environment inconsistent is awkward, particularly when trying
to minimize copies while joining.

This patch eliminates the difference, but doesn't actually change the signature
of join on concrete lattice types (as that's a breaking change).

Diff Detail

Event Timeline

sammccall created this revision.Jun 27 2023, 11:59 AM
Herald added a project: Restricted Project. · View Herald Transcript
Herald added a subscriber: martong. · View Herald Transcript
sammccall requested review of this revision.Jun 27 2023, 11:59 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 27 2023, 11:59 AM
Herald added a subscriber: cfe-commits. · View Herald Transcript
gribozavr2 accepted this revision.Jun 27 2023, 3:55 PM
This revision is now accepted and ready to land.Jun 27 2023, 3:55 PM
This revision was landed with ongoing or failed builds.Jun 28 2023, 2:30 AM
This revision was automatically updated to reflect the committed changes.

LGTM, thanks Sam!