[all-commits] [llvm/llvm-project] 563014: [MLIR][Presburger] LexSimplex::addEquality: add eq...

Arjun P via All-commits all-commits at lists.llvm.org
Wed Mar 23 17:41:15 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5630143af33f7e6e0dabdf38982cc9800140bb75
      https://github.com/llvm/llvm-project/commit/5630143af33f7e6e0dabdf38982cc9800140bb75
  Author: Arjun P <arjunpitchanathan at gmail.com>
  Date:   2022-03-24 (Thu, 24 Mar 2022)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/Simplex.h
    M mlir/lib/Analysis/Presburger/Simplex.cpp
    M mlir/unittests/Analysis/Presburger/SimplexTest.cpp

  Log Message:
  -----------
  [MLIR][Presburger] LexSimplex::addEquality: add equalities as fixed columns

In LexSimplex, instead of adding equalities as a pair of inequalities,
add them as a single row, move them into the basis, and keep them there.

There will always be a valid basis involving all non-redundant equalities. Such
equalities will then be ignored in some other operations, such as when looking
for pivot columns. This speeds them up a little bit.

More importantly, this is an important precursor patch to adding support for
symbolic integer lexmin, as this heuristic can sometimes make a big difference there.

Reviewed By: Groverkss

Differential Revision: https://reviews.llvm.org/D122165




More information about the All-commits mailing list