diff options
author | Dale Johannesen <dalej@apple.com> | 2010-10-27 23:45:18 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2010-10-27 23:45:18 +0000 |
commit | f514f5279043652a8ac915e8e3c176d53980a128 (patch) | |
tree | e6b874854ce5893b81fa1c55354d12ab7b6be72a /test/Transforms/InstCombine | |
parent | f40deed62f4f0126459ed7bfd1799f4e09b1aaa7 (diff) | |
download | external_llvm-f514f5279043652a8ac915e8e3c176d53980a128.zip external_llvm-f514f5279043652a8ac915e8e3c176d53980a128.tar.gz external_llvm-f514f5279043652a8ac915e8e3c176d53980a128.tar.bz2 |
Teach InstCombine not to use Add and Neg on FP. PR 8490.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117510 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/InstCombine')
-rw-r--r-- | test/Transforms/InstCombine/select-crash.ll | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/Transforms/InstCombine/select-crash.ll b/test/Transforms/InstCombine/select-crash.ll new file mode 100644 index 0000000..8ee3369 --- /dev/null +++ b/test/Transforms/InstCombine/select-crash.ll @@ -0,0 +1,20 @@ +; RUN: opt < %s -instcombine -S | FileCheck %s +; Formerly crashed, PR8490. + +define fastcc double @gimp_operation_color_balance_map(float %value, double %highlights) nounwind readnone inlinehint { +entry: +; CHECK: gimp_operation_color_balance_map +; CHECK: fsub double -0.000000 + %conv = fpext float %value to double + %div = fdiv double %conv, 1.600000e+01 + %add = fadd double %div, 1.000000e+00 + %div1 = fdiv double 1.000000e+00, %add + %sub = fsub double 1.075000e+00, %div1 + %sub24 = fsub double 1.000000e+00, %sub + %add26 = fadd double %sub, 1.000000e+00 + %cmp86 = fcmp ogt double %highlights, 0.000000e+00 + %cond90 = select i1 %cmp86, double %sub24, double %add26 + %mul91 = fmul double %highlights, %cond90 + %add94 = fadd double undef, %mul91 + ret double %add94 +} |