summaryrefslogtreecommitdiffstats
path: root/mlir/lib/Dialect/SDBM
Commit message (Collapse)AuthorAgeFilesLines
* Make helper functions static or move them into anonymous namespaces. NFC.Benjamin Kramer2020-01-141-2/+3
|
* Adjust License.txt file to use the LLVM licenseMehdi Amini2019-12-234-52/+16
| | | | PiperOrigin-RevId: 286906740
* NFC: Cleanup non-conforming usages of namespaces.River Riddle2019-12-181-9/+3
| | | | | | | * Fixes use of anonymous namespace for static methods. * Uses explicit qualifiers(mlir::) instead of wrapping the definition with the namespace. PiperOrigin-RevId: 286222654
* NFC: Remove unnecessary 'llvm::' prefix from uses of llvm symbols declared ↵River Riddle2019-12-182-11/+10
| | | | | | | | in `mlir` namespace. Aside from being cleaner, this also makes the codebase more consistent. PiperOrigin-RevId: 286206974
* Fix minor spelling tweaks (NFC)Kazuaki Ishizaki2019-10-201-2/+2
| | | | | | Closes tensorflow/mlir#177 PiperOrigin-RevId: 275692653
* SDBM: support sum expressions on the LHS of stripe expressionsAlex Zinenko2019-09-182-13/+17
| | | | | | | | | Introduce support for applying the stripe operator to sum expressions, as in (x + A) # B = x + A - (x + A) mod B. This is required to represent a combination of tiling and padding in the SDBM framework, and is a valid SDBM construct that was not originally supported. PiperOrigin-RevId: 269758807
* Simplify SDBM expressions more aggressively in operators and conversionsAlex Zinenko2019-09-181-32/+52
| | | | | | | | | | | | Extend SDBM simplification patterns to support more cases where the addition of two expressions each involving one or two variables would result in a sum expression that only contains one variable and thus remains in the SDBM domain. This is made possible by the new canonical structure of SDBM where the constant term appears once. This simplification will be necessary to support round-tripping of stripe expressions containing constant terms on the LHS through affine expressions. PiperOrigin-RevId: 269757732
* Overhaul the SDBM expression kind hierarchyAlex Zinenko2019-09-162-116/+197
| | | | | | | | | | | | | | | | | | | | | | | | | | Swap the allowed nesting of sum and diff expressions: now a diff expression can contain a sum expression, but only on the left hand side. A difference of two expressions sum must be canonicalized by grouping their constant terms in a single expression. This change of sturcture became possible thanks to the introduction of the "direct" super-kind. It is necessary to enable support of sum expressions on the left hand side of the stripe expression. SDBM expressions are now grouped into the following structure - expression - varying - direct - sum <- (term, constant) - term - symbol - dimension - stripe <- (term, constant) - negation <- (direct) - difference <- (direct, term) - constant The notation <- (...) denotes the types of subexpressions a compound expression can combine. PiperOrigin-RevId: 269337222
* Rename SDBMPositiveExpr to SDBMTermExprAlex Zinenko2019-09-113-42/+39
| | | | | | | | | | | This better reflects how this kind of expressions is used and avoids the potential confusion since the expression can take negative values. Term expressions comprise dimensions, symbols and stripe expressions. In an SDBM domain, a stripe expression always corresponds to a variable, input or temporary. This expression can appear anywhere an input variable can, including on the LHS of other stripe expressions. PiperOrigin-RevId: 268486066
* NFC: Move LLVMIR, SDBM, and StandardOps to the Dialect/ directory.River Riddle2019-08-195-0/+1376
PiperOrigin-RevId: 264193915
OpenPOWER on IntegriCloud