This is an archive of the discontinued LLVM Phabricator instance.

Port -lower-matrix-intrinsics-minimal to NPM
ClosedPublic

Authored by aeubanks on Nov 19 2020, 11:37 AM.

Details

Summary

This reuses the existing lower-matrix-intrinsics pass rather than going
the legacy pass route of creating a new pass.

Use this new variant in the NPM -O0 pipeline.

Diff Detail

Event Timeline

aeubanks created this revision.Nov 19 2020, 11:37 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 19 2020, 11:37 AM
aeubanks requested review of this revision.Nov 19 2020, 11:37 AM
asbirlea added inline comments.Nov 19 2020, 2:00 PM
llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
1954

I'm missing context here...
Looking at the code for LowerMatrixIntrinsics I don't see checks for the analyses being nullptr. I don't see where visiting is limited when analyses are not retrieved.
Even if checks existed, the analyses cannot be preserved below if IR changes occur.

aeubanks updated this revision to Diff 306533.Nov 19 2020, 2:05 PM

fixed preserved analyses

llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
1954

I'm following LowerMatrixIntrinsicsMinimalLegacyPass below, the code was changed in https://reviews.llvm.org/D76867.
Modified the PreservedAnalyses.

asbirlea accepted this revision.Nov 19 2020, 3:08 PM
asbirlea added inline comments.
llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
1347–1349

Could you add an assert on AA and LI here? The DT check seems to imply AA is guaranteed to exist, and we also mark LI as preserved on the same premise.

This revision is now accepted and ready to land.Nov 19 2020, 3:08 PM
This revision was landed with ongoing or failed builds.Nov 19 2020, 5:48 PM
This revision was automatically updated to reflect the committed changes.