OSDN Git Service

Merging r214385:
authorDavid Majnemer <david.majnemer@gmail.com>
Mon, 8 Dec 2014 09:11:36 +0000 (09:11 +0000)
committerWuZhen <wuzhen@jidemail.com>
Tue, 23 Feb 2016 11:26:41 +0000 (19:26 +0800)
commitd47d3958f35ecfda3cc16738920aaf73830f2e81
tree72cf62d4d821481723810471ecd3afbbb2cf376d
parent3cbed0bb7c9c9efed65f86830e1c7ef834970bb3
Merging r214385:
------------------------------------------------------------------------
r214385 | majnemer | 2014-07-30 21:49:29 -0700 (Wed, 30 Jul 2014) | 9 lines

InstCombine: Correctly propagate NSW/NUW for x-(-A) -> x+A

We can only propagate the nsw bits if both subtraction instructions are
marked with the appropriate bit.

N.B.  We only propagate the nsw bit in InstCombine because the nuw case
is already handled in InstSimplify.

This fixes PR20189.
------------------------------------------------------------------------

git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_35@223644 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineAddSub.cpp
test/Transforms/InstCombine/sub.ll