Dependences: Exit early, if no reduction dependences are needed.
authorTobias Grosser <tobias@grosser.es>
Fri, 2 Sep 2016 23:29:38 +0000 (23:29 +0000)
committerTobias Grosser <tobias@grosser.es>
Fri, 2 Sep 2016 23:29:38 +0000 (23:29 +0000)
commitdff5de2e44b642f789054167ae4da56b76c864c2
tree4dd44fcc3551364f40c9188a66d097ac44c88405
parentf4903a3675a9b0c66ea3a1ddc713e2465a273745
Dependences: Exit early, if no reduction dependences are needed.

In case we do not compute reduction dependences or dependences that are more
fine-grained than statement level dependences, we can avoid the corresponding
part of the dependence analysis all together. For the 3mm benchmark, this
reduces scheduling + dependence analysis time from 62ms to 33ms for a no-asserts
build.  The majority of the compile time is anyhow spent in the LLVM backends,
when doing code generation. Nevertheless, there is no need to waste compile time
either.

llvm-svn: 280557
polly/lib/Analysis/DependenceInfo.cpp