summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object/COFFObjectFile.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2011-11-27 09:22:53 +0000
committerChandler Carruth <chandlerc@gmail.com>2011-11-27 09:22:53 +0000
commita054580993cf467bef3db947202d67058657faf8 (patch)
tree060dc3249f28186ea36d853002e57132fa26c27d /llvm/lib/Object/COFFObjectFile.cpp
parent0bcbde46e2caf7e6853a99b3b5c2b72af292eeba (diff)
downloadbcm5719-llvm-a054580993cf467bef3db947202d67058657faf8.tar.gz
bcm5719-llvm-a054580993cf467bef3db947202d67058657faf8.zip
Rework a bit of the implementation of loop block rotation to not rely so
heavily on AnalyzeBranch. That routine doesn't behave as we want given that rotation occurs mid-way through re-ordering the function. Instead merely check that there are not unanalyzable branching constructs present, and then reason about the CFG via successor lists. This actually simplifies my mental model for all of this as well. The concrete result is that we now will rotate more loop chains. I've added a test case from Olden highlighting the effect. There is still a bit more to do here though in order to regain all of the performance in Olden. llvm-svn: 145179
Diffstat (limited to 'llvm/lib/Object/COFFObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud