This is an archive of the discontinued LLVM Phabricator instance.

[mlir][SCCP] Track all source dialects when meeting two lattice values
Needs ReviewPublic

Authored by rriddle on Apr 28 2020, 5:44 PM.

Details

Reviewers
mehdi_amini
Summary

Some dialects have implicit casts that change the type of an input. For example, some call operations perform an implicit cast(such as a shape refinement) when passing arguments and results. This revision allows for tracking all of the source dialects so that constants can still be materialized properly in these situations.

Diff Detail

Event Timeline

rriddle created this revision.Apr 28 2020, 5:44 PM
Herald added a project: Restricted Project. · View Herald TranscriptApr 28 2020, 5:44 PM
mehdi_amini added inline comments.Oct 29 2020, 10:51 PM
mlir/lib/Transforms/SCCP.cpp
30
31
300

This comment is confusing to me:

  • ownerDialect does not match a parameter
  • **the** source dialect of 'to' or 'from' : this revision is updating LatticeValue to have a set of dialects, also it isn't clear what this means in the context of the caller (it does not help me to know how to call this API properly)
  • "'to' corresponds to a value whose uses should be visited if the meet changed" => I think you meant "value" instead of "to" here?