Note that this revision adds a very tiny bit of constant folding in the sparse compiler lattice construction. Although I am generally trying to avoid such canonicalizations (and rely on other passes to fix this instead), the benefits of avoiding a very expensive disjunction lattice construction justify having this special code (at least for now). Reviewed By: bixia Differential Revision: https://reviews.llvm.org/D109939