Generalize the domain complexity restrictions
authorJohannes Doerfert <doerfert@cs.uni-saarland.de>
Sat, 26 Mar 2016 16:17:00 +0000 (16:17 +0000)
committerJohannes Doerfert <doerfert@cs.uni-saarland.de>
Sat, 26 Mar 2016 16:17:00 +0000 (16:17 +0000)
commit6462d8c1d91052aff56c60939e48564af9084ea6
treea79b1f54acc1167cfdbad4d2b63ffe5d28e07630
parenta734ab9808658310b63e5a945f21837076dd14c7
Generalize the domain complexity restrictions

  This patch applies the restrictions on the number of domain conjuncts
  also to the domain parts of piecewise affine expressions we generate.
  To this end the wording is change slightly. It was needed to support
  complex additions featuring zext-instructions but it also fixes PR27045.

  lnt profitable runs reports only little changes that might be noise:
  Compile Time:
    Polybench/[...]/2mm                     +4.34%
    SingleSource/[...]/stepanov_container   -2.43%
  Execution Time:
    External/[...]/186_crafty               -2.32%
    External/[...]/188_ammp                 -1.89%
    External/[...]/473_astar                -1.87%

llvm-svn: 264514
polly/include/polly/ScopInfo.h
polly/lib/Analysis/ScopInfo.cpp
polly/lib/Support/SCEVAffinator.cpp
polly/test/ScopInfo/complex-branch-structure.ll
polly/test/ScopInfo/complex-expression.ll [new file with mode: 0644]
polly/test/ScopInfo/complex-successor-structure.ll