1; RUN: opt -passes=gvn <%s -S -o - | FileCheck %s 2 3define void @f() { 4entry: 5 %a = alloca <7 x i1>, align 2 6 store <7 x i1> undef, ptr %a, align 2 7; CHECK: store <7 x i1> undef, ptr 8 %val = load i1, ptr %a, align 2 9; CHECK: load i1, ptr 10 br i1 %val, label %cond.true, label %cond.false 11 12cond.true: 13 ret void 14 15cond.false: 16 ret void 17} 18 19define <7 x i1> @g(ptr %a) { 20entry: 21 %vec = load <7 x i1>, ptr %a 22; CHECK: load <7 x i1>, ptr 23 %val = load i1, ptr %a, align 2 24; CHECK: load i1, ptr 25 br i1 %val, label %cond.true, label %cond.false 26 27cond.true: 28 ret <7 x i1> %vec 29 30cond.false: 31 ret <7 x i1> <i1 false, i1 false, i1 false, i1 false, i1 false, i1 false, i1 false> 32} 33