This patch adds support for obtaining a set corresponding to the domain/range
of the relation.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
mlir/include/mlir/Analysis/Presburger/IntegerRelation.h | ||
---|---|---|
657 | Should this be marked explicit? Given this can assert, it sounds preferable for the user to explicitly request the conversion rather than have it fire in some implicit conversion sequence. | |
mlir/lib/Analysis/Presburger/IntegerRelation.cpp | ||
2089 | Looks like you only need to provide IntegerPolyhedron(IntegerRelation &&) for this, so why not do it immediately rather than leaving a todo? | |
2090–2091 | Doing return IntegerPolyhedron(copyRel); (or return IntegerPolyhedron(std::move(copyRel)); will guarantee copy/move elision in C++17. Naming the value will not, although the compiler is likely to figure it out on its own. |
- Make IntegerPolyhedron constructor from IntegerRelation explicit.
- Add move constructor for IntegerPolyhedron and use it.
Should this be marked explicit? Given this can assert, it sounds preferable for the user to explicitly request the conversion rather than have it fire in some implicit conversion sequence.