AffineExpr: factor uniqu'ing out of MLIRContext.cpp
authorAlex Zinenko <zinenko@google.com>
Tue, 21 May 2019 08:34:13 +0000 (01:34 -0700)
committerMehdi Amini <joker.eph@gmail.com>
Sun, 2 Jun 2019 02:53:43 +0000 (19:53 -0700)
commitc74996d199e8931d4fc3d72acd50754b43c4ec2d
tree7da84b2fafd7b16ffac817e2403d391e2ba64e10
parent37d0d097a992b0a6d369e987016414520e0a3bb2
AffineExpr: factor uniqu'ing out of MLIRContext.cpp

    Affine expressions are designed as components of an attribute and are unique'd
    in the MLIRContext.  When affine expressions were implemented, uniqu'ing
    objects in a context required to modify MLIRContext implementation.  This is no
    longer the case as generic StorageUniquer has been introduced.  Port the
    AffineExpr construction to use the new infrastructure by introducing an
    affineUniquer into the MLIRContext.

--

PiperOrigin-RevId: 249207539
mlir/include/mlir/IR/AffineExpr.h
mlir/include/mlir/IR/MLIRContext.h
mlir/include/mlir/Support/StorageUniquer.h
mlir/lib/IR/AffineExpr.cpp
mlir/lib/IR/AffineExprDetail.h
mlir/lib/IR/MLIRContext.cpp
mlir/unittests/IR/SDBMTest.cpp