OSDN Git Service

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)
committerWuZhen <wuzhen@jidemail.com>
Tue, 23 Feb 2016 11:27:59 +0000 (19:27 +0800)
commit7af1c8342bebf5025c0754407f8bc61fc6c03807
treebff4ddbed862cc84897e487664eda5564184f28b
parentfefe84b7a0bd7e86e7d222cd3695b2ced40944a9
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]