xref: /llvm-project/llvm/test/Transforms/InstCombine/bitcast-sext-vector.ll (revision acdc419c897f8a9414c7a00c8908ac32312afee2)
1; RUN: opt < %s -passes=instcombine -S | FileCheck %s
2; CHECK: sext
3; Don't fold zero/sign extensions with a bitcast between a vector and scalar.
4
5define i32 @t(<4 x i8> %src1, <4 x i8> %src2) nounwind readonly {
6entry:
7	%cmp = icmp eq <4 x i8> %src1, %src2; <<4 x i1>> [#uses=1]
8	%sext = sext <4 x i1> %cmp to <4 x i8>
9	%val = bitcast <4 x i8> %sext to i32
10	ret i32 %val
11}
12