This is an archive of the discontinued LLVM Phabricator instance.

[mlir] Support hoisting whole affine for loops in LICM
ClosedPublic

Authored by ayzhuang on Apr 14 2021, 2:57 PM.

Diff Detail

Event Timeline

ayzhuang created this revision.Apr 14 2021, 2:57 PM
ayzhuang requested review of this revision.Apr 14 2021, 2:57 PM
bondhugula requested changes to this revision.Apr 18 2021, 6:05 PM
bondhugula added inline comments.
mlir/lib/Dialect/Affine/Transforms/AffineLoopInvariantCodeMotion.cpp
73–78

Combine into a dyn_cast.

119–121

All comments to be terminated with a full stop.

mlir/test/Dialect/Affine/affine-loop-invariant-code-motion.mlir
84–92

Please indent for better readability.

84–92

No numbered SSA values in check lines please. Either use %{{.*}} or capture value and compare if that's relevant for the test.

253–263

Numbered SSA values shouldn't have been used here - these somehow escaped review. You could just ensure you don't introduce any more here.

286

Likewise.

458

Likewise here and below.

This revision now requires changes to proceed.Apr 18 2021, 6:05 PM
ayzhuang updated this revision to Diff 338563.Apr 19 2021, 11:10 AM

Address code review comments to use dyn_cast, add full stop, indent, and change to %{{.*}}.

ayzhuang marked 7 inline comments as done.Apr 19 2021, 11:11 AM
bondhugula accepted this revision.Apr 19 2021, 1:00 PM

Looks good - thanks.

This revision is now accepted and ready to land.Apr 19 2021, 1:00 PM

@bondhugula Thank you for the review. @sgrechanik Please help land this.

We'll merge it on Wednesday if there is no more comments. Thanks.

This revision was automatically updated to reflect the committed changes.