[all-commits] [llvm/llvm-project] 20aedb: [MLIR][Presburger] Remove inheritance from Presbur...

Kunwar Shaanjeet Singh Grover via All-commits all-commits at lists.llvm.org
Tue Apr 12 10:21:55 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 20aedb148b85c6f44a86081b9d737444ede5cda3
      https://github.com/llvm/llvm-project/commit/20aedb148b85c6f44a86081b9d737444ede5cda3
  Author: Groverkss <groverkss at gmail.com>
  Date:   2022-04-12 (Tue, 12 Apr 2022)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/IntegerRelation.h
    M mlir/include/mlir/Analysis/Presburger/PWMAFunction.h
    M mlir/include/mlir/Analysis/Presburger/PresburgerRelation.h
    M mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h
    M mlir/include/mlir/Dialect/Affine/Analysis/AffineStructures.h
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/Analysis/Presburger/PWMAFunction.cpp
    M mlir/lib/Analysis/Presburger/PresburgerRelation.cpp
    M mlir/lib/Analysis/Presburger/PresburgerSpace.cpp

  Log Message:
  -----------
  [MLIR][Presburger] Remove inheritance from PresburgerSpace in IntegerRelation, PresburgerRelation and PWMAFunction

This patch removes inheritence from PresburgerSpace in IntegerRelation and
instead makes it a member of these classes.

This is required for three reasons:
  - It prevents implicit casting to PresburgerSpace.
  - Not all functions of PresburgerSpace need to be exposed by the deriving classes.
  - IntegerRelation and IntegerPolyhedron are defined in a PresburgerSpace. It
    makes more sense for the space to be a member instead of them inheriting from
    a space.

Reviewed By: arjunp, ftynse

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




More information about the All-commits mailing list