llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
29.16k stars 12.03k forks source link

Support semi-affine exprs in expr flattener #50915

Open llvmbot opened 3 years ago

llvmbot commented 3 years ago
Bugzilla Link 51573
Version unspecified
OS All
Reporter LLVM Bugzilla Contributor
CC @joker-eph,@bondhugula

Extended Description

simplifyAffineMap should be able to simplify affine maps such as:

#map = affine_map<()[s0, s1, s2] -> (-(s0 - (s0 - s1) mod s2) + s0)>

Maps are usually simplified by flattening them, but this is currently not supported for semi-affine maps.

llvmbot commented 3 years ago

assigned to @bondhugula