From: Simon Pilgrim Date: Wed, 19 Dec 2018 17:24:34 +0000 (+0000) Subject: Regenerate test X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=917e49e5a48419a16e7c418994cb7101397fe0c1;p=llvm Regenerate test git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@349646 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Transforms/InstCombine/X86/x86-adds-subs.ll b/test/Transforms/InstCombine/X86/x86-adds-subs.ll index 54cccbe9068..87f0f6939f2 100644 --- a/test/Transforms/InstCombine/X86/x86-adds-subs.ll +++ b/test/Transforms/InstCombine/X86/x86-adds-subs.ll @@ -3,336 +3,384 @@ define <16 x i8> @sse2_adds_b_constant() { ; CHECK-LABEL: @sse2_adds_b_constant( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.padds.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <16 x i8> @sse2_adds_b_constant_underflow() { ; CHECK-LABEL: @sse2_adds_b_constant_underflow( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.padds.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <16 x i8> @sse2_adds_b_constant_overflow() { ; CHECK-LABEL: @sse2_adds_b_constant_overflow( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.padds.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <16 x i8> @sse2_adds_b_constant_undefs() { ; CHECK-LABEL: @sse2_adds_b_constant_undefs( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.padds.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <32 x i8> @avx2_adds_b_constant() { ; CHECK-LABEL: @avx2_adds_b_constant( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.padds.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <32 x i8> @avx2_adds_b_constant_underflow() { ; CHECK-LABEL: @avx2_adds_b_constant_underflow( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.padds.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <32 x i8> @avx2_adds_b_constant_overflow() { ; CHECK-LABEL: @avx2_adds_b_constant_overflow( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.padds.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <32 x i8> @avx2_adds_b_constant_undefs() { ; CHECK-LABEL: @avx2_adds_b_constant_undefs( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.padds.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <64 x i8> @avx512_mask_adds_b_constant() { ; CHECK-LABEL: @avx512_mask_adds_b_constant( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.padds.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -3) ret <64 x i8> %1 } define <64 x i8> @avx512_mask_adds_b_constant_underflow() { ; CHECK-LABEL: @avx512_mask_adds_b_constant_underflow( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.padds.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -1) ret <64 x i8> %1 } define <64 x i8> @avx512_mask_adds_b_constant_overflow() { ; CHECK-LABEL: @avx512_mask_adds_b_constant_overflow( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.padds.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -1) ret <64 x i8> %1 } define <64 x i8> @avx512_mask_adds_b_constant_undefs() { ; CHECK-LABEL: @avx512_mask_adds_b_constant_undefs( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.padds.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -1) ret <64 x i8> %1 } define <8 x i16> @sse2_adds_w_constant() { ; CHECK-LABEL: @sse2_adds_w_constant( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.padds.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <8 x i16> @sse2_adds_w_constant_underflow() { ; CHECK-LABEL: @sse2_adds_w_constant_underflow( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.padds.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <8 x i16> @sse2_adds_w_constant_overflow() { ; CHECK-LABEL: @sse2_adds_w_constant_overflow( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.padds.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <8 x i16> @sse2_adds_w_constant_undefs() { ; CHECK-LABEL: @sse2_adds_w_constant_undefs( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.padds.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <16 x i16> @avx2_adds_w_constant() { ; CHECK-LABEL: @avx2_adds_w_constant( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.padds.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <16 x i16> @avx2_adds_w_constant_underflow() { ; CHECK-LABEL: @avx2_adds_w_constant_underflow( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.padds.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <16 x i16> @avx2_adds_w_constant_overflow() { ; CHECK-LABEL: @avx2_adds_w_constant_overflow( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.padds.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <16 x i16> @avx2_adds_w_constant_undefs() { ; CHECK-LABEL: @avx2_adds_w_constant_undefs( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.padds.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <32 x i16> @avx512_mask_adds_w_constant() { ; CHECK-LABEL: @avx512_mask_adds_w_constant( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.padds.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -3) ret <32 x i16> %1 } define <32 x i16> @avx512_mask_adds_w_constant_underflow() { ; CHECK-LABEL: @avx512_mask_adds_w_constant_underflow( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.padds.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -1) ret <32 x i16> %1 } define <32 x i16> @avx512_mask_adds_w_constant_overflow() { ; CHECK-LABEL: @avx512_mask_adds_w_constant_overflow( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.padds.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -1) ret <32 x i16> %1 } define <32 x i16> @avx512_mask_adds_w_constant_undefs() { ; CHECK-LABEL: @avx512_mask_adds_w_constant_undefs( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.padds.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -1) ret <32 x i16> %1 } define <16 x i8> @sse2_subs_b_constant() { ; CHECK-LABEL: @sse2_subs_b_constant( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.psubs.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <16 x i8> @sse2_subs_b_constant_underflow() { ; CHECK-LABEL: @sse2_subs_b_constant_underflow( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.psubs.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <16 x i8> @sse2_subs_b_constant_overflow() { ; CHECK-LABEL: @sse2_subs_b_constant_overflow( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.psubs.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <16 x i8> @sse2_subs_b_constant_undefs() { ; CHECK-LABEL: @sse2_subs_b_constant_undefs( -; CHECK-NEXT: ret <16 x i8> +; CHECK-NEXT: ret <16 x i8> +; %1 = call <16 x i8> @llvm.x86.sse2.psubs.b(<16 x i8> , <16 x i8> ) ret <16 x i8> %1 } define <32 x i8> @avx2_subs_b_constant() { ; CHECK-LABEL: @avx2_subs_b_constant( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.psubs.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <32 x i8> @avx2_subs_b_constant_underflow() { ; CHECK-LABEL: @avx2_subs_b_constant_underflow( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.psubs.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <32 x i8> @avx2_subs_b_constant_overflow() { ; CHECK-LABEL: @avx2_subs_b_constant_overflow( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.psubs.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <32 x i8> @avx2_subs_b_constant_undefs() { ; CHECK-LABEL: @avx2_subs_b_constant_undefs( -; CHECK-NEXT: ret <32 x i8> +; CHECK-NEXT: ret <32 x i8> +; %1 = call <32 x i8> @llvm.x86.avx2.psubs.b(<32 x i8> , <32 x i8> ) ret <32 x i8> %1 } define <64 x i8> @avx512_mask_subs_b_constant() { ; CHECK-LABEL: @avx512_mask_subs_b_constant( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.psubs.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -3) ret <64 x i8> %1 } define <64 x i8> @avx512_mask_subs_b_constant_underflow() { ; CHECK-LABEL: @avx512_mask_subs_b_constant_underflow( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.psubs.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -1) ret <64 x i8> %1 } define <64 x i8> @avx512_mask_subs_b_constant_overflow() { ; CHECK-LABEL: @avx512_mask_subs_b_constant_overflow( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.psubs.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -1) ret <64 x i8> %1 } define <64 x i8> @avx512_mask_subs_b_constant_undefs() { ; CHECK-LABEL: @avx512_mask_subs_b_constant_undefs( -; CHECK-NEXT: ret <64 x i8> +; CHECK-NEXT: ret <64 x i8> +; %1 = call <64 x i8> @llvm.x86.avx512.mask.psubs.b.512(<64 x i8> , <64 x i8> , <64 x i8> zeroinitializer, i64 -1) ret <64 x i8> %1 } define <8 x i16> @sse2_subs_w_constant() { ; CHECK-LABEL: @sse2_subs_w_constant( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.psubs.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <8 x i16> @sse2_subs_w_constant_underflow() { ; CHECK-LABEL: @sse2_subs_w_constant_underflow( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.psubs.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <8 x i16> @sse2_subs_w_constant_overflow() { ; CHECK-LABEL: @sse2_subs_w_constant_overflow( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.psubs.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <8 x i16> @sse2_subs_w_constant_undefs() { ; CHECK-LABEL: @sse2_subs_w_constant_undefs( -; CHECK-NEXT: ret <8 x i16> +; CHECK-NEXT: ret <8 x i16> +; %1 = call <8 x i16> @llvm.x86.sse2.psubs.w(<8 x i16> , <8 x i16> ) ret <8 x i16> %1 } define <16 x i16> @avx2_subs_w_constant() { ; CHECK-LABEL: @avx2_subs_w_constant( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.psubs.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <16 x i16> @avx2_subs_w_constant_underflow() { ; CHECK-LABEL: @avx2_subs_w_constant_underflow( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.psubs.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <16 x i16> @avx2_subs_w_constant_overflow() { ; CHECK-LABEL: @avx2_subs_w_constant_overflow( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.psubs.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <16 x i16> @avx2_subs_w_constant_undefs() { ; CHECK-LABEL: @avx2_subs_w_constant_undefs( -; CHECK-NEXT: ret <16 x i16> +; CHECK-NEXT: ret <16 x i16> +; %1 = call <16 x i16> @llvm.x86.avx2.psubs.w(<16 x i16> , <16 x i16> ) ret <16 x i16> %1 } define <32 x i16> @avx512_mask_subs_w_constant() { ; CHECK-LABEL: @avx512_mask_subs_w_constant( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.psubs.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -3) ret <32 x i16> %1 } define <32 x i16> @avx512_mask_subs_w_constant_underflow() { ; CHECK-LABEL: @avx512_mask_subs_w_constant_underflow( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.psubs.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -1) ret <32 x i16> %1 } define <32 x i16> @avx512_mask_subs_w_constant_overflow() { ; CHECK-LABEL: @avx512_mask_subs_w_constant_overflow( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.psubs.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -1) ret <32 x i16> %1 } define <32 x i16> @avx512_mask_subs_w_constant_undefs() { ; CHECK-LABEL: @avx512_mask_subs_w_constant_undefs( -; CHECK-NEXT: ret <32 x i16> +; CHECK-NEXT: ret <32 x i16> +; %1 = call <32 x i16> @llvm.x86.avx512.mask.psubs.w.512(<32 x i16> , <32 x i16> , <32 x i16> zeroinitializer, i32 -1) ret <32 x i16> %1 }