This is an archive of the discontinued LLVM Phabricator instance.

[mlir][llvm] Remove the metadata op
ClosedPublic

Authored by gysit on Jul 25 2023, 2:05 AM.

Details

Summary

This revision removes the metadata op, that to the best of our
knowledge, has no more uses after switching to a purely attribute based
metadata representation:
https://reviews.llvm.org/D155444
https://reviews.llvm.org/D155285
https://reviews.llvm.org/D155159
These changes got unlocked after landing distinct attribute support:
https://reviews.llvm.org/D153360,
which enables modeling distinct metadata using attributes. As a result,
all metadata kinds are now represented using attributes. Previously,
there has been a mix of attribute and op based representations.

Having attribute only metadata makes it possible to update the metadata
in-parallel, while updating the global metadata operation has been
a sequential process. The LLVM Dialect inliner already benefits from
this change and now creates new alias scopes and domains during
inlining rather than dropping the no alias information:
https://reviews.llvm.org/D155712

Diff Detail

Event Timeline

gysit created this revision.Jul 25 2023, 2:05 AM
Herald added a reviewer: dcaballe. · View Herald Transcript
Herald added a project: Restricted Project. · View Herald Transcript
gysit requested review of this revision.Jul 25 2023, 2:05 AM
Dinistro accepted this revision.Jul 25 2023, 5:21 AM

LGTM!
Considering that there is no remaining upstream usage, I think we can go ahead and drop this. If downstream projects rely on a metadata operation, they can implement this using the extensible import and export.

This revision is now accepted and ready to land.Jul 25 2023, 5:21 AM
This revision was landed with ongoing or failed builds.Jul 26 2023, 4:43 AM
This revision was automatically updated to reflect the committed changes.