summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/LowerAllocations.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-10-17 00:32:43 +0000
committerDan Gohman <gohman@apple.com>2009-10-17 00:32:43 +0000
commit0d3d9ee03e6d2746409bc26921ff743d65d2fc4f (patch)
tree2d0c1fc8195eb89c83404ebaee940a79df13f45b /llvm/lib/Transforms/Utils/LowerAllocations.cpp
parentf920463aae34ae3d39d38bf7c6af7ec7ca7b30fe (diff)
downloadbcm5719-llvm-0d3d9ee03e6d2746409bc26921ff743d65d2fc4f.tar.gz
bcm5719-llvm-0d3d9ee03e6d2746409bc26921ff743d65d2fc4f.zip
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. llvm-svn: 84295
Diffstat (limited to 'llvm/lib/Transforms/Utils/LowerAllocations.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud