Only split around a loop if the live range has uses outside the loop periphery.
commit8000c17d05973443290d701001afe7f9a422cc5b
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 14 Oct 2010 18:26:45 +0000 (14 18:26 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 14 Oct 2010 18:26:45 +0000 (14 18:26 +0000)
tree709cbdf8d6a0cda51ea9230739ab8080245b0fc3
parent28105dd143a0067ba0f6d6193065d2a4a1a05f92
Only split around a loop if the live range has uses outside the loop periphery.

Before we would also split around a loop if any peripheral block had multiple
uses. This could cause repeated splitting when splitting a different live range
would insert uses into the periphery.

Now -spiller=inline passes the nightly test suite again.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116494 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SplitKit.cpp