xref: /llvm-project/llvm/test/Transforms/InstCombine/pr59613.ll (revision 3e992d81afc3925a8685eb15f794dd4a6ba3e97e)
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2; RUN: opt < %s -passes=instcombine -S | FileCheck %s
3
4; This used to crash, depending on the particular worklist iteration order.
5define void @pr59613(<6 x i16> %0) {
6; CHECK-LABEL: @pr59613(
7; CHECK-NEXT:    store <6 x i16> poison, ptr null, align 16
8; CHECK-NEXT:    ret void
9;
10  %cmp1 = icmp ne <6 x i16> %0, zeroinitializer
11  %or = or <6 x i1> <i1 true, i1 false, i1 false, i1 false, i1 undef, i1 undef>, %cmp1
12  %sext = sext <6 x i1> %or to <6 x i16>
13  %not = xor <6 x i16> %sext, <i16 -1, i16 -1, i16 -1, i16 -1, i16 -1, i16 -1>
14  store <6 x i16> %not, ptr null, align 16
15  ret void
16}
17