xref: /llvm-project/llvm/test/Transforms/InstCombine/2012-6-7-vselect-bitcast.ll (revision 997d7d193149bdce5512405d7384f700c0cab39d)
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2; RUN: opt -S -passes=instcombine < %s | FileCheck %s
3
4define void @foo(<16 x i8> %a, <16 x i8> %b, ptr %c) {
5; CHECK-LABEL: @foo(
6; CHECK-NEXT:    store <16 x i8> [[B:%.*]], ptr [[C:%.*]], align 4
7; CHECK-NEXT:    ret void
8;
9  %aa = bitcast <16 x i8> %a to <4 x i32>
10  %bb = bitcast <16 x i8> %b to <4 x i32>
11  %select_v = select <4 x i1> zeroinitializer, <4 x i32> %aa, <4 x i32> %bb
12  store <4 x i32> %select_v, ptr %c, align 4
13  ret void
14}
15
16