[all-commits] [llvm/llvm-project] 44596f: [Polly][Isl] Use the function unsignedFromIslSize ...

Riccardo Mori via All-commits all-commits at lists.llvm.org
Fri Nov 5 03:15:36 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 44596fe6a95e711f91d4eaf4e0e042b14521f7d7
      https://github.com/llvm/llvm-project/commit/44596fe6a95e711f91d4eaf4e0e042b14521f7d7
  Author: Riccardo Mori <patacca at autistici.org>
  Date:   2021-11-05 (Fri, 05 Nov 2021)

  Changed paths:
    M polly/include/polly/ScheduleTreeTransform.h
    M polly/include/polly/ScopInfo.h
    M polly/include/polly/Support/ISLTools.h
    M polly/lib/Analysis/DependenceInfo.cpp
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Analysis/ScopInfo.cpp
    M polly/lib/CodeGen/BlockGenerators.cpp
    M polly/lib/CodeGen/PPCGCodeGeneration.cpp
    M polly/lib/Exchange/JSONExporter.cpp
    M polly/lib/External/isl/include/isl/isl-noexceptions.h
    M polly/lib/Support/ISLTools.cpp
    M polly/lib/Transform/FlattenAlgo.cpp
    M polly/lib/Transform/MatmulOptimizer.cpp
    M polly/lib/Transform/MaximalStaticExpansion.cpp
    M polly/lib/Transform/ScheduleOptimizer.cpp
    M polly/lib/Transform/ScheduleTreeTransform.cpp
    M polly/lib/Transform/Simplify.cpp
    M polly/lib/Transform/ZoneAlgo.cpp
    M polly/unittests/Isl/IslTest.cpp

  Log Message:
  -----------
  [Polly][Isl] Use the function unsignedFromIslSize to manage a isl::size object. NFCI

This is part of an effort to reduce the differences between the custom C++ bindings used right now by polly in lib/External/isl/include/isl/isl-noxceptions.h and the official isl C++ interface.
In the official interface the type `isl::size` cannot be casted to an unsigned without previously having checked if it contains a valid value with the function `isl::size::is_error()`.
For this reason two helping functions have been added:
 - `IslAssert`: assert that no errors are present in debug builds and just disables the mandatory error check in non-debug builds
 - `unisgnedFromIslSIze`: cast the `isl::size` object to `unsigned`

Changes made:
 - Add the functions `IslAssert` and `unsignedFromIslSize`
 - Add the utility function `rangeIslSize()`
 - Retype `MaxDisjunctsInDomain` from `int` to `unsigned`
 - Retype `RunTimeChecksMaxAccessDisjuncts` from `int` to `unsigned`
 - Retype `MaxDimensionsInAccessRange` from `int` to `unsigned`
 - Replaced some usages of `isl_size` to `unsigned` since we aim not to use `isl_size` anymore
 - `isl-noexceptions.h` has been generated by https://github.com/patacca/isl/commit/e704f73c88f0b4d88e62e447bdb732cf5914094b

No functional change intended.

Reviewed By: Meinersbur

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




More information about the All-commits mailing list