[all-commits] [llvm/llvm-project] cdbc5f: [MLIR][Presburger] introduce MPInt to support fast...

Arjun P via All-commits all-commits at lists.llvm.org
Mon Jul 11 07:47:07 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: cdbc5f1e10d0317a6cfcaa1cadb269b242c21a02
      https://github.com/llvm/llvm-project/commit/cdbc5f1e10d0317a6cfcaa1cadb269b242c21a02
  Author: Arjun P <arjunpitchanathan at gmail.com>
  Date:   2022-07-11 (Mon, 11 Jul 2022)

  Changed paths:
    A mlir/include/mlir/Analysis/Presburger/MPInt.h
    M mlir/lib/Analysis/Presburger/CMakeLists.txt
    A mlir/lib/Analysis/Presburger/MPInt.cpp
    M mlir/unittests/Analysis/Presburger/CMakeLists.txt
    A mlir/unittests/Analysis/Presburger/MPIntTest.cpp
    R mlir/unittests/Analysis/Presburger/SlowMPIntTest.cpp

  Log Message:
  -----------
  [MLIR][Presburger] introduce MPInt to support fast arbitrary precision in Presburger

This uses an int64_t-based fastpath for the common case and falls back to
SlowMPInt to handle the rare cases where larger numbers occur.
It uses `__builtin_*` for performance through the support in LLVM MathExtras.

Using this in the Presburger library results in a minor performance
*improvement* over any commit hash before sequence of patches
starting at d5e31cf38adfc2c240fb9717989792537cc9e819.

This was previously reverted in 1e10d35ea9c02e9b5694836fd3dcc0b9baf28b48 due
to a build failure; relanding now with an attempted fix.

Reviewed By: Groverkss, ftynse

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




More information about the All-commits mailing list