summaryrefslogtreecommitdiff
path: root/polly/test/CodeGen/OpenMP/scev-rewriting.ll
blob: 1b229fc19d259b2903f58e33a60217a0d1e8820d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
; RUN: opt %loadPolly < %s -polly-vectorizer=stripmine -polly-parallel -polly-parallel-force -polly-process-unprofitable -polly-codegen -S | FileCheck %s
; CHECK: define internal void @DoStringSort_polly_subfn
target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
target triple = "aarch64-unknown-linux-gnueabi"

define void @DoStringSort() {
bb:
  br label %bb1

bb1:                                              ; preds = %bb1, %bb
  %i = phi i32 [ 0, %bb ], [ %i2, %bb1 ]
  %i2 = add i32 %i, 1
  br i1 undef, label %bb1, label %bb3

bb3:                                              ; preds = %bb1
  br i1 undef, label %bb6, label %bb4

bb4:                                              ; preds = %bb3
  %i5 = bitcast i8* undef to i32*
  br label %bb6

bb6:                                              ; preds = %bb4, %bb3
  %i7 = phi i32* [ %i5, %bb4 ], [ undef, %bb3 ]
  br i1 undef, label %bb21, label %bb8

bb8:                                              ; preds = %bb20, %bb6
  %i9 = phi i32* [ %i7, %bb6 ], [ %i10, %bb20 ]
  %i10 = getelementptr inbounds i32, i32* %i9, i32 %i2
  br i1 undef, label %bb11, label %bb20

bb11:                                             ; preds = %bb8
  br label %bb12

bb12:                                             ; preds = %bb11
  br label %bb13

bb13:                                             ; preds = %bb12
  br label %bb14

bb14:                                             ; preds = %bb14, %bb13
  %i15 = phi i32 [ %i17, %bb14 ], [ 1, %bb13 ]
  %i16 = getelementptr inbounds i32, i32* %i9, i32 %i15
  store i32 undef, i32* %i16, align 4
  %i17 = add i32 %i15, 1
  %i18 = icmp eq i32 %i15, %i
  br i1 %i18, label %bb19, label %bb14

bb19:                                             ; preds = %bb14
  br label %bb20

bb20:                                             ; preds = %bb19, %bb8
  br i1 undef, label %bb21, label %bb8

bb21:                                             ; preds = %bb20, %bb6
  unreachable
}