forked from OSchip/llvm-project
![]() Before we only modeled PHI nodes if at least one incoming basic block was itself part of the region, now we always model them except if all of their operands are part of a single non-affine subregion which we model as a black-box. This change only affects PHI nodes in the entry block, that have exactly one incoming edge. Before this change, we did not model them and as a result code generation would not know how to code generate them. With this change, code generation can code generate them like any other PHI node. This issue was exposed by r244606. Before this change simplifyRegion would have moved these PHI nodes out of the SCoP, so we would never have tried to code generate them. We could implement this behavior again, but changing the IR after the scop has been modeled and transformed always adds a risk of us invalidating earlier analysis results. It seems more save and overall also more consistent to just model and handle this one-entry-edge PHI nodes like any other PHI node in the scop. Solution proposed by: Michael Kruse <llvm@meinersbur.de> llvm-svn: 244721 |
||
---|---|---|
.. | ||
DeadCodeElimination | ||
DependenceInfo | ||
IndependentBlocks | ||
Isl | ||
ScheduleOptimizer | ||
ScopDetect | ||
ScopDetectionDiagnostics | ||
ScopInfo | ||
TempScop | ||
CMakeLists.txt | ||
Makefile | ||
README | ||
create_ll.sh | ||
lit.cfg | ||
lit.site.cfg.in | ||
polly.ll |
README
place tests here