Allow non-affine control flow -- SCoP Detection
authorJohannes Doerfert <doerfert@cs.uni-saarland.de>
Tue, 24 Feb 2015 11:45:21 +0000 (11:45 +0000)
committerJohannes Doerfert <doerfert@cs.uni-saarland.de>
Tue, 24 Feb 2015 11:45:21 +0000 (11:45 +0000)
commitba65c1672ab4a26b3196fdb7bfa1cd49541d5d2d
treea907823f88c96c70bb256583301922b23927de53
parent9b1e758a552ce61cc4d8f8cc0f62222e1868be2e
Allow non-affine control flow -- SCoP Detection

  With this patch we allow the SCoP detection to detect regions as SCoPs
  which have non-affine control flow inside. All non-affine regions are
  tracked and later accessible to the ScopInfo.

  As there is no real difference, non-affine branches as well as
  floating point branches are covered (and both called non-affine
  control flow).  However, the detection is restricted to
  overapproximate only loop free regions.

llvm-svn: 230325
polly/include/polly/ScopDetection.h
polly/lib/Analysis/ScopDetection.cpp
polly/test/ScopDetect/non-affine-conditional.ll [new file with mode: 0644]
polly/test/ScopDetect/non-affine-float-compare.ll [new file with mode: 0644]