[PATCH] Scalar/PHI code genration
Johannes Doerfert
doerfert at cs.uni-saarland.de
Mon Feb 9 10:34:10 PST 2015
Hi grosser, sebpop, simbuerg, zinob,
Added scalar and phi code generation to the backend, hence making the polly
prepare and independent block pass obsolete.
Initial statistics with the LLVM test suite show that we detect now more
SCoPs and while they are smaller (wrt. #basic blocks), they still cover the
same source lines. Additionally, the compile time was decreased for various
benchmarks while the execution time varies only very little.
TODO: - add more of my unit tests
- create unit tests for the special cases that occured in lnt
- add more explaination in the commit message
- do a more comprehensive comparison with the polly prepare and
independent blocks passes.
FIXME: There is/was one failing lnt test (MultiSource/Applications/oggenc),
however the problematic SCoP doesn't even contain scalar
accesses but only real memory accesses with simple __and__
existentially quantified access functions. For now it's safe to
assume this is just a new, failing, SCoP, not a error in this
patch.
http://reviews.llvm.org/D7513
Files:
include/polly/CodeGen/BlockGenerators.h
include/polly/ScopInfo.h
lib/Analysis/ScopInfo.cpp
lib/CodeGen/BlockGenerators.cpp
lib/CodeGen/IslCodeGeneration.cpp
test/Isl/CodeGen/phi_loop_carried_float.ll
test/Isl/CodeGen/phi_loop_carried_float_escape.ll
test/Isl/CodeGen/phi_scalar_simple_1.ll
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D7513.19598.patch
Type: text/x-patch
Size: 39507 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150209/73ac381b/attachment.bin>
More information about the llvm-commits
mailing list