1; Test 32-bit ANDs in which the second operand is variable.
2;
3; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
4
5; The use of TBAA in CodeGen has been temporarily disabled pending correctness fixes.
6; XFAIL: *
7
8; Check that there are no spills.
9define void @f1(<16 x i32> *%src1, <16 x float> *%dest) {
10; CHECK-LABEL: f1:
11; CHECK-NOT: %r15
12; CHECK: br %r14
13  %val = load <16 x i32> *%src1, !tbaa !1
14  %add = add <16 x i32> %val, %val
15  %res = bitcast <16 x i32> %add to <16 x float>
16  store <16 x float> %res, <16 x float> *%dest, !tbaa !2
17  ret void
18}
19
20!0 = metadata !{ metadata !"root" }
21!1 = metadata !{ metadata !"set1", metadata !0 }
22!2 = metadata !{ metadata !"set2", metadata !0 }
23