Refactored and updated SimplifyUsingDistributiveLaws() to
authorDinesh Dwivedi <dinesh.d@samsung.com>
Thu, 19 Jun 2014 08:29:18 +0000 (08:29 +0000)
committerDinesh Dwivedi <dinesh.d@samsung.com>
Thu, 19 Jun 2014 08:29:18 +0000 (08:29 +0000)
commit83175090522ebd6513e45033c342200cd645f89c
treee9334ddae2170015070bbf36e6586779a1e2aef3
parentc28beb254dabd5f522bafdbdd59a4e22f0a539ec
Refactored and updated SimplifyUsingDistributiveLaws() to
 * Find factorization opportunities using identity values.
 * Find factorization opportunities by treating shl(X, C) as mul (X, shl(C))
 * Keep NSW flag while simplifying instruction using factorization.

This fixes PR19263.

Differential Revision: http://reviews.llvm.org/D3799

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211261 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineAddSub.cpp
lib/Transforms/InstCombine/InstructionCombining.cpp
test/Transforms/InstCombine/add2.ll