aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/Threading.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2011-11-27 20:18:00 +0000
committerChandler Carruth <chandlerc@gmail.com>2011-11-27 20:18:00 +0000
commit4f56720754c4ce64b37c62c0c935b4993adcb15e (patch)
treea211a3e711429ad141bd6300532edbd5c69a9474 /llvm/lib/Support/Threading.cpp
parenta6416a7c73733b0c2615ffe14708fa4eab02f75d (diff)
downloadllvm-4f56720754c4ce64b37c62c0c935b4993adcb15e.zip
llvm-4f56720754c4ce64b37c62c0c935b4993adcb15e.tar.gz
llvm-4f56720754c4ce64b37c62c0c935b4993adcb15e.tar.bz2
Prevent rotating the blocks of a loop (and thus getting a backedge to be
fallthrough) in cases where we might fail to rotate an exit to an outer loop onto the end of the loop chain. Having *some* rotation, but not performing this rotation, is the primary fix of thep performance regression with -enable-block-placement for Olden/em3d (a whopping 30% regression). Still working on reducing the test case that actually exercises this and the new rotation strategy out of this code, but I want to check if this regresses other test cases first as that may indicate it isn't the correct fix. llvm-svn: 145195
Diffstat (limited to 'llvm/lib/Support/Threading.cpp')
0 files changed, 0 insertions, 0 deletions