[all-commits] [llvm/llvm-project] 68a526: [MLIR][Presburger] Implement function to evaluate ...

Abhinav271828 via All-commits all-commits at lists.llvm.org
Mon Jan 22 00:52:13 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 68a5261d260e95148755c6725f56957cb8fd23a3
      https://github.com/llvm/llvm-project/commit/68a5261d260e95148755c6725f56957cb8fd23a3
  Author: Abhinav271828 <71174780+Abhinav271828 at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/Barvinok.h
    M mlir/include/mlir/Analysis/Presburger/GeneratingFunction.h
    M mlir/include/mlir/Analysis/Presburger/QuasiPolynomial.h
    M mlir/include/mlir/Analysis/Presburger/Utils.h
    M mlir/lib/Analysis/Presburger/Barvinok.cpp
    M mlir/lib/Analysis/Presburger/QuasiPolynomial.cpp
    M mlir/lib/Analysis/Presburger/Utils.cpp
    M mlir/unittests/Analysis/Presburger/BarvinokTest.cpp
    M mlir/unittests/Analysis/Presburger/UtilsTest.cpp

  Log Message:
  -----------
  [MLIR][Presburger] Implement function to evaluate the number of terms in a generating function. (#78078)

We implement `computeNumTerms()`, which counts the number of terms in a
generating function by substituting the unit vector in it.
This is the main function in Barvinok's algorithm – the number of points
in a polytope is given by the number of terms in the generating function
corresponding to it.
We also modify the GeneratingFunction class to have `const` getters and
improve the simplification of QuasiPolynomials.




More information about the All-commits mailing list