]> granicus.if.org Git - llvm/commit
Merging r223500 (this time for real):
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Mon, 8 Dec 2014 23:29:14 +0000 (23:29 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Mon, 8 Dec 2014 23:29:14 +0000 (23:29 +0000)
commit9696b167f28b62b5744258fe210fd04690a6cd32
tree99f60305ba386c66ef542d470f32b480b6e73883
parentc2594296e6e59e0840bc2a19e4efbc33f6a24093
Merging r223500 (this time for real):
------------------------------------------------------------------------
r223500 | dexonsmith | 2014-12-05 11:13:42 -0800 (Fri, 05 Dec 2014) | 9 lines

BFI: Saturate when combining edges to a successor

When a loop gets bundled up, its outgoing edges are quite large, and can
just barely overflow 64-bits.  If one successor has multiple incoming
edges -- and that successor is getting all the incoming mass --
combining just its edges can overflow.  Handle that by saturating rather
than asserting.

This fixes PR21622.
------------------------------------------------------------------------

git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_35@223716 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Analysis/BlockFrequencyInfoImpl.cpp
test/Analysis/BlockFrequencyInfo/extremely-likely-loop-successor.ll [new file with mode: 0644]