diff options
author | Dan Gohman <gohman@apple.com> | 2009-10-17 00:32:43 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-10-17 00:32:43 +0000 |
commit | 3bdd8de2806e47f34369c1e6ce6e6b44a135bd29 (patch) | |
tree | 685f68f1e94d5709d9ed435f014e28ee9376b941 /lib/Target/CBackend/CBackend.cpp | |
parent | b68d67caf3d8e73e92df932f46b67c87e7eb17c2 (diff) |
Enhance CodePlacementOpt's unconditional intra-loop branch elimination logic
to be more general and understand more varieties of loops.
Teach CodePlacementOpt to reorganize the basic blocks of a loop so that
they are contiguous. This also includes a fair amount of logic for preserving
fall-through edges while doing so. This fixes a BranchFolding-ism where blocks
which can't be made to use a fall-through edge and don't conveniently fit
anywhere nearby get tossed out to the end of the function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84295 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/CBackend/CBackend.cpp')
0 files changed, 0 insertions, 0 deletions