[PATCH] Allow to model non-affine control flow in a SCoP.

Johannes Doerfert doerfert at cs.uni-saarland.de
Thu Feb 19 10:15:40 PST 2015


Hi grosser, sebpop, simbuerg, zinob,

  In order to model non-affine control flow SCoP statements can now
  represent a basic block (precise/affine case) or a whole region
  (non-affine case). In the latter all write accesses except the ones in
  the region entry and exit will be may-write accesses as we cannot be
  certain they are executed.

  As there is no real difference non-affine branches as well as floating
  point branches are covered (and both called non-affine control flow).
  Furthermore, conditionals as wells as loops with non-affine control
  flow can be overapproximated.

http://reviews.llvm.org/D7764

Files:
  include/polly/ScopDetection.h
  include/polly/ScopInfo.h
  include/polly/TempScopInfo.h
  lib/Analysis/ScopDetection.cpp
  lib/Analysis/ScopInfo.cpp
  lib/Analysis/TempScopInfo.cpp
  test/ScopDetect/non-affine-conditional.ll
  test/ScopDetect/non-affine-loop-condition-dependent-access.ll
  test/ScopInfo/non-affine-conditionals-nested.ll
  test/ScopInfo/non-affine-float-compare.ll
  test/ScopInfo/non-affine-loop-condition.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D7764.20314.patch
Type: text/x-patch
Size: 35949 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150219/e590f545/attachment.bin>


More information about the llvm-commits mailing list