diff options
| author | Chris Lattner <sabre@nondot.org> | 2007-04-15 01:02:18 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2007-04-15 01:02:18 +0000 |
| commit | 31755a024d8056947d9500233f8bd2e41b06c132 (patch) | |
| tree | 98a6f2ff99704b917732dc7b0cf9b7568034c56b /lib/Transforms/IPO/SimplifyLibCalls.cpp | |
| parent | 9838939b3a5118bd6f8cd74654126c28c61adec7 (diff) | |
Extend store merging to support the 'if/then' version in addition to if/then/else.
This sinks the two stores in this example into a single store in cond_next. In this
case, it allows elimination of the load as well:
store double 0.000000e+00, double* @s.3060
%tmp3 = fcmp ogt double %tmp1, 5.000000e-01 ; <i1> [#uses=1]
br i1 %tmp3, label %cond_true, label %cond_next
cond_true: ; preds = %entry
store double 1.000000e+00, double* @s.3060
br label %cond_next
cond_next: ; preds = %entry, %cond_true
%tmp6 = load double* @s.3060 ; <double> [#uses=1]
This implements Transforms/InstCombine/store-merge.ll:test2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36040 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/IPO/SimplifyLibCalls.cpp')
0 files changed, 0 insertions, 0 deletions
