[all-commits] [llvm/llvm-project] bad95b: [MLIR][Presburger] fourier-motzkin: check if all L...

Arjun P via All-commits all-commits at lists.llvm.org
Thu Aug 4 11:14:36 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bad95b72eed0d685874e19f4314f64fb081370af
      https://github.com/llvm/llvm-project/commit/bad95b72eed0d685874e19f4314f64fb081370af
  Author: Arjun P <arjunpitchanathan at gmail.com>
  Date:   2022-08-04 (Thu, 04 Aug 2022)

  Changed paths:
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp

  Log Message:
  -----------
  [MLIR][Presburger] fourier-motzkin: check if all LCMs are 1 using a bool instead of by multiplying them

This can easily overflow and it is possible for these unsigned overflows to result in incorrect results.
For example, the two LCMs could be 641 and 6700417, which multiply to 2^32 + 1, which overflows to 1.
Unsigned overflows already occur in the existing tests.

Also, when switching to arbitrary-precision arithmetic, this results in a many
large integer multiplications resulting in a significant slowdown.

Reviewed By: Groverkss

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




More information about the All-commits mailing list