aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2009-10-27 23:49:38 +0000
committerBob Wilson <bob.wilson@apple.com>2009-10-27 23:49:38 +0000
commitafe63293c930f39f6f6d4ac6e76da0d3546dfca4 (patch)
tree154762d67c0c4a8d677aeef3bd023b5a1f0f719a /lib/Bitcode/Reader/BitcodeReader.cpp
parent043667bb0ce28faf90b72737e91d23b0e4817711 (diff)
downloadexternal_llvm-afe63293c930f39f6f6d4ac6e76da0d3546dfca4.zip
external_llvm-afe63293c930f39f6f6d4ac6e76da0d3546dfca4.tar.gz
external_llvm-afe63293c930f39f6f6d4ac6e76da0d3546dfca4.tar.bz2
Record CodeGen optimization level in the BranchFolding pass so that we can
use it to control tail merging when there is a tradeoff between performance and code size. When there is only 1 instruction in the common tail, we have been merging. That can be good for code size but is a definite loss for performance. Now we will avoid tail merging in that case when the optimization level is "Aggressive", i.e., "-O3". Radar 7338114. Since the IfConversion pass invokes BranchFolding, it too needs to know the optimization level. Note that I removed the RegisterPass instantiation for IfConversion because it required a default constructor. If someone wants to keep that for some reason, we can add a default constructor with a hard-wired optimization level. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85346 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions