[SimplifyCFG] When merging conditional stores, don't count the store we're merging...
authorCraig Topper <craig.topper@intel.com>
Fri, 3 Nov 2017 21:08:13 +0000 (21:08 +0000)
committerCraig Topper <craig.topper@intel.com>
Fri, 3 Nov 2017 21:08:13 +0000 (21:08 +0000)
commit12463779d3746a36e2adeac7d884c126236986de
tree559ea09adc0d86e038acd63a9c47ef8d3b6f2781
parentdc95dbfcabde6d0ea941ac8421f5ad71143cf526
[SimplifyCFG] When merging conditional stores, don't count the store we're merging against the PHINodeFoldingThreshold

Merging conditional stores tries to check to see if the code is if convertible after the store is moved. But the store hasn't been moved yet so its being counted against the threshold.

The patch adds 1 to the threshold comparison to make sure we don't count the store. I've adjusted a test to use a lower threshold to ensure we still do that conversion with the lower threshold.

Differential Revision: https://reviews.llvm.org/D39570

llvm-svn: 317368
llvm/lib/Transforms/Utils/SimplifyCFG.cpp
llvm/test/Transforms/SimplifyCFG/merge-cond-stores-2.ll