[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Transforms / InstCombine / addnegneg.ll
blob90f6baf5dd54f1b156d246f36f4d6c75ecfcb308
1 ; RUN: opt < %s -instcombine -S | grep " sub " | count 1
2 ; PR2047
4 define i32 @l(i32 %a, i32 %b, i32 %c, i32 %d) {
5 entry:
6         %b.neg = sub i32 0, %b          ; <i32> [#uses=1]
7         %c.neg = sub i32 0, %c          ; <i32> [#uses=1]
8         %sub4 = add i32 %c.neg, %b.neg          ; <i32> [#uses=1]
9         %sub6 = add i32 %sub4, %d               ; <i32> [#uses=1]
10         ret i32 %sub6