This is an archive of the discontinued LLVM Phabricator instance.

[MLIR] PresburgerSet: support divisions in subtract, intersect, and equality checks
AbandonedPublic

Authored by arjunp on Sep 3 2021, 9:01 AM.

Details

Summary

Depends on D106662.

Diff Detail

Event Timeline

arjunp created this revision.Sep 3 2021, 9:01 AM
arjunp requested review of this revision.Sep 3 2021, 9:01 AM
grosser added inline comments.Sep 3 2021, 9:31 AM
mlir/include/mlir/Analysis/AffineStructures.h
138

Typo.

arjunp updated this revision to Diff 370624.Sep 3 2021, 10:33 AM

Fixed typo.

arjunp updated this revision to Diff 370741.Sep 4 2021, 7:50 AM

Fix build by making removeId overload with unspecified kind public.

arjunp added a comment.EditedSep 4 2021, 7:55 AM

Personally, I believe that the removeId overload where the identifier kind is not specified should not be public. I think the interface should only be on a per-kind basis rather than exposing the implementation detail of the ordering among kinds.

The build failure occurs in LoopUtils.cpp. I would be happy to change it to instead call the removeId overload that takes the kind to be used as an argument. But I don't understand why these lines mark all but one variable as a symbol but comment that it marks all variables as symbols.

Please add a commit summary. Is this rebased on the current master? A lot of the relevant files have changed I think.

mlir/include/mlir/Analysis/AffineStructures.h
391

Missing doc comments.

mlir/include/mlir/Analysis/Presburger/Simplex.h
165

Triple /// comments please - here and elsewhere.

arjunp abandoned this revision.Sep 16 2021, 8:32 AM

Splitting this into mutliple patches.