36 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: %if x86-registered-target %{ opt < %s -mtriple=x86_64-unknown -passes=slp-vectorizer,instcombine -S -slp-threshold=-10000 | FileCheck %s %}3; RUN: %if aarch64-registered-target %{ opt < %s -mtriple=aarch64-unknown-linux-gnu -passes=slp-vectorizer,instcombine -S -slp-threshold=-10000 | FileCheck %s %}4 5define <8 x i32> @sdiv_v8i32_undefs(<8 x i32> %a) {6; CHECK-LABEL: @sdiv_v8i32_undefs(7; CHECK-NEXT: ret <8 x i32> poison8;9 %a0 = extractelement <8 x i32> %a, i32 010 %a1 = extractelement <8 x i32> %a, i32 111 %a2 = extractelement <8 x i32> %a, i32 212 %a3 = extractelement <8 x i32> %a, i32 313 %a4 = extractelement <8 x i32> %a, i32 414 %a5 = extractelement <8 x i32> %a, i32 515 %a6 = extractelement <8 x i32> %a, i32 616 %a7 = extractelement <8 x i32> %a, i32 717 %ab0 = sdiv i32 %a0, undef18 %ab1 = sdiv i32 %a1, 419 %ab2 = sdiv i32 %a2, 820 %ab3 = sdiv i32 %a3, 1621 %ab4 = sdiv i32 %a4, undef22 %ab5 = sdiv i32 %a5, 423 %ab6 = sdiv i32 %a6, 824 %ab7 = sdiv i32 %a7, 1625 %r0 = insertelement <8 x i32> poison, i32 %ab0, i32 026 %r1 = insertelement <8 x i32> %r0, i32 %ab1, i32 127 %r2 = insertelement <8 x i32> %r1, i32 %ab2, i32 228 %r3 = insertelement <8 x i32> %r2, i32 %ab3, i32 329 %r4 = insertelement <8 x i32> %r3, i32 %ab4, i32 430 %r5 = insertelement <8 x i32> %r4, i32 %ab5, i32 531 %r6 = insertelement <8 x i32> %r5, i32 %ab6, i32 632 %r7 = insertelement <8 x i32> %r6, i32 %ab7, i32 733 ret <8 x i32> %r734}35 36