llvm-project/polly/lib
Tobias Grosser 6213913244 Use the branch instruction to define the location of a PHI-node write
We use the branch instruction as the location at which a PHI-node write takes
place, instead of the PHI-node itself. This allows us to identify the
basic-block in a region statement which is on the incoming edge of the PHI-node
and for which the write access was originally introduced. As a result we can,
during code generation, avoid generating PHI-node write accesses for basic
blocks that do not preceed the PHI node without having to look at the IR
again.

This change fixes a bug which was introduced in r243420, when we started to
explicitly model PHI-node reads and writes, but dropped some additional checks
that where still necessary during code generation to not emit PHI-node writes
for basic-blocks that are not on incoming edges of the original PHI node.
Compared to the code before r243420 the new code does not need to inspect the IR
any more and we also do not generate multiple redundant writes.

llvm-svn: 243852
2015-08-02 16:17:41 +00:00
..
Analysis Use the branch instruction to define the location of a PHI-node write 2015-08-02 16:17:41 +00:00
CodeGen Use the branch instruction to define the location of a PHI-node write 2015-08-02 16:17:41 +00:00
Exchange Use schedule trees to represent execution order of statements 2015-07-14 09:33:13 +00:00
External Compile fix; add missing ISL files 2015-07-24 19:09:27 +00:00
JSON Added arcanist linters and cleaned errors and warnings 2014-08-18 00:40:13 +00:00
Support Use the branch instruction to define the location of a PHI-node write 2015-08-02 16:17:41 +00:00
Transform Rewrite getPrevectorMap using schedule trees operations 2015-07-28 18:03:36 +00:00
CMakeLists.txt Unify FOLDER property of Polly targets 2015-07-21 12:40:01 +00:00
Makefile Normalize whitespace in makefiles 2015-07-24 23:30:31 +00:00
Polly.cpp Move Pass registration into polly library 2014-03-19 17:54:23 +00:00