xref: /llvm-project/polly/test/CodeGen/OpenMP/scev-rewriting.ll (revision e1f056f692d869708c1898d9d65a69ac5584a0ed)
1; RUN: opt %loadNPMPolly < %s -polly-vectorizer=stripmine -polly-parallel -polly-parallel-force -polly-process-unprofitable -passes=polly-codegen -S | FileCheck %s
2; CHECK: define internal void @DoStringSort_polly_subfn
3target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
4target triple = "aarch64-unknown-linux-gnueabi"
5
6define void @DoStringSort() {
7bb:
8  br label %bb1
9
10bb1:                                              ; preds = %bb1, %bb
11  %i = phi i32 [ 0, %bb ], [ %i2, %bb1 ]
12  %i2 = add i32 %i, 1
13  br i1 undef, label %bb1, label %bb3
14
15bb3:                                              ; preds = %bb1
16  br i1 undef, label %bb6, label %bb4
17
18bb4:                                              ; preds = %bb3
19  %i5 = bitcast i8* undef to i32*
20  br label %bb6
21
22bb6:                                              ; preds = %bb4, %bb3
23  %i7 = phi i32* [ %i5, %bb4 ], [ undef, %bb3 ]
24  br i1 undef, label %bb21, label %bb8
25
26bb8:                                              ; preds = %bb20, %bb6
27  %i9 = phi i32* [ %i7, %bb6 ], [ %i10, %bb20 ]
28  %i10 = getelementptr inbounds i32, i32* %i9, i32 %i2
29  br i1 undef, label %bb11, label %bb20
30
31bb11:                                             ; preds = %bb8
32  br label %bb12
33
34bb12:                                             ; preds = %bb11
35  br label %bb13
36
37bb13:                                             ; preds = %bb12
38  br label %bb14
39
40bb14:                                             ; preds = %bb14, %bb13
41  %i15 = phi i32 [ %i17, %bb14 ], [ 1, %bb13 ]
42  %i16 = getelementptr inbounds i32, i32* %i9, i32 %i15
43  store i32 undef, i32* %i16, align 4
44  %i17 = add i32 %i15, 1
45  %i18 = icmp eq i32 %i15, %i
46  br i1 %i18, label %bb19, label %bb14
47
48bb19:                                             ; preds = %bb14
49  br label %bb20
50
51bb20:                                             ; preds = %bb19, %bb8
52  br i1 undef, label %bb21, label %bb8
53
54bb21:                                             ; preds = %bb20, %bb6
55  unreachable
56}
57