Avoid calls to dumpPassInfo and RegionBase<Tr>::getNameStr() in RGPassManager if
authorChad Rosier <mcrosier@codeaurora.org>
Fri, 6 Mar 2015 16:15:04 +0000 (16:15 +0000)
committerChad Rosier <mcrosier@codeaurora.org>
Fri, 6 Mar 2015 16:15:04 +0000 (16:15 +0000)
commit99b3e022c47b681b6c14f0a047d6dd64e232da4b
tree6daa2e112543f530885594e1242ccffa28c2357f
parentdcc78ec386d4d83293da2ecd23ca85395655e3a7
Avoid calls to dumpPassInfo and RegionBase<Tr>::getNameStr() in RGPassManager if
-debug-pass is not specified, as the string is only used when dumping pass
information.  There is a big cost of determining the name in
ReginBase<Tr>:getNameStr() if the region's entry or exit block doesn't have a
name.  This is the case for the Release build, as names are not preserved by the
front-end.

RegionPass is mainly used by Polly, resulting in long compile time for one file
of a customer application with the Release build (1m24s) vs Release+Asserts
build (10s) when Polly is used.  With this change, the compile time with the
Release build went down to 8s.

Patch by Sanjin Sijaric <ssijaric@codeaurora.org>!
Phabricator: http://reviews.llvm.org/D8076

llvm-svn: 231485
llvm/lib/Analysis/RegionPass.cpp