xref: /llvm-project/llvm/test/CodeGen/Hexagon/bug31839.ll (revision 2208c97c1bec2512d4e47b6223db6d95a7037956)
1; RUN: llc -mtriple=hexagon < %s
2; REQUIRES: asserts
3
4; Check for successful compilation.
5
6define ptr @f0(i32 %a0, i32 %a1) {
7b0:
8  %v0 = call noalias ptr @f1(i32 undef, i32 undef)
9  br i1 undef, label %b2, label %b1
10
11b1:                                               ; preds = %b0
12  %v1 = ptrtoint ptr %v0 to i32
13  store volatile i32 %v1, ptr %v0, align 4
14  %v3 = getelementptr inbounds i8, ptr %v0, i32 4
15  store ptr %v0, ptr %v3, align 4
16  %v5 = getelementptr inbounds i8, ptr %v0, i32 16
17  br label %b2
18
19b2:                                               ; preds = %b1, %b0
20  %v6 = phi ptr [ %v5, %b1 ], [ null, %b0 ]
21  ret ptr %v6
22}
23
24declare noalias ptr @f1(i32, i32) local_unnamed_addr
25