; This test makes sure that add instructions are properly eliminated.
; This test is for Integer BitWidth > 64 && BitWidth <= 1024.
-; RUN: llvm-as < %s | opt -instcombine -disable-output &&
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | \
+; RUN: opt < %s -instcombine -S | \
; RUN: grep -v OK | not grep add
-
-implementation
+; END.
define i111 @test1(i111 %x) {
%tmp.2 = shl i111 1, 110
ret i128 %tmp.4
}
-define i99 @test5(i99 %x) {
- ;; If we have ADD(XOR(AND(X, 0xFF), 0x80), 0xF..F80), it's a sext.
- %X = and i99 %x, 562949953421311
- %tmp.2 = xor i99 %X, 281474976710656
- %tmp.4 = add i99 %tmp.2, -281474976710656
- ret i99 %tmp.4
-}
-
define i77 @test6(i77 %x) {
;; (x & 254)+1 -> (x & 254)|1
%tmp.2 = and i77 %x, 562949953421310