xref: /llvm-project/llvm/test/CodeGen/ARM/pr13249.ll (revision bed1c7f061aa12417aa081e334afdba45767b938)
1; RUN: llc < %s -mtriple armv7--linux-gnueabi
2
3define arm_aapcscc ptr @__strtok_r_1c(ptr %arg, i8 signext %arg1, ptr nocapture %arg2) nounwind {
4bb:
5  br label %bb3
6
7bb3:                                              ; preds = %bb3, %bb
8  %tmp = phi ptr [ %tmp5, %bb3 ], [ %arg, %bb ]
9  %tmp4 = load i8, ptr %tmp, align 1
10  %tmp5 = getelementptr inbounds i8, ptr %tmp, i32 1
11  br i1 undef, label %bb3, label %bb7
12
13bb7:                                              ; preds = %bb13, %bb3
14  %tmp8 = phi i8 [ %tmp14, %bb13 ], [ %tmp4, %bb3 ]
15  %tmp9 = phi ptr [ %tmp12, %bb13 ], [ %tmp, %bb3 ]
16  %tmp10 = icmp ne i8 %tmp8, %arg1
17  %tmp12 = getelementptr inbounds i8, ptr %tmp9, i32 1
18  br i1 %tmp10, label %bb13, label %bb15
19
20bb13:                                             ; preds = %bb7
21  %tmp14 = load i8, ptr %tmp12, align 1
22  br label %bb7
23
24bb15:                                             ; preds = %bb7
25  store ptr %tmp9, ptr %arg2, align 4
26  ret ptr %tmp
27}
28