This is an archive of the discontinued LLVM Phabricator instance.

[MLIR][Presburger] Simplex: refactor (symbolic)lex to support specifying multiple varKinds as symbols
ClosedPublic

Authored by arjunp on Jun 30 2022, 11:23 AM.

Details

Summary

This is also required to support lexmin for relations.

Diff Detail

Event Timeline

arjunp created this revision.Jun 30 2022, 11:23 AM
arjunp requested review of this revision.Jun 30 2022, 11:23 AM
arjunp updated this revision to Diff 441476.Jun 30 2022, 11:52 AM

Fix some stuff

Groverkss added inline comments.Jul 1 2022, 8:38 AM
mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h
30–44 ↗(On Diff #441476)

I do not like this. I think for PIP we can just use a bitvector. We can later add these flags if we need, but currently, I do not see any good uses.

mlir/include/mlir/Analysis/Presburger/Simplex.h
483–484

Why not assert here then?

arjunp updated this revision to Diff 441720.Jul 1 2022, 9:38 AM
arjunp marked an inline comment as done.

Address kunwar's comments

arjunp marked an inline comment as done.Jul 1 2022, 9:38 AM
arjunp added inline comments.
mlir/include/mlir/Analysis/Presburger/Simplex.h
483–484

Clarified the doc

Groverkss added inline comments.Jul 1 2022, 9:41 AM
mlir/include/mlir/Analysis/Presburger/Simplex.h
225

nit: drop "llvm::" here

arjunp added inline comments.Jul 1 2022, 9:44 AM
mlir/include/mlir/Analysis/Presburger/Simplex.h
225

Not yet possible. Will need to add it to LLVM.h. Let's do it in another patch.

Groverkss accepted this revision.Jul 1 2022, 9:44 AM
This revision is now accepted and ready to land.Jul 1 2022, 9:44 AM
arjunp updated this revision to Diff 441723.Jul 1 2022, 9:47 AM
  • format
This revision was landed with ongoing or failed builds.Jul 1 2022, 9:47 AM
This revision was automatically updated to reflect the committed changes.