Mercurial > hg > CbC > CbC_llvm
comparison polly/test/ScopInfo/reduction_invalid_overlapping_accesses.ll @ 252:1f2b6ac9f198 llvm-original
LLVM16-1
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 18 Aug 2023 09:04:13 +0900 |
parents | c4bab56944e8 |
children |
comparison
equal
deleted
inserted
replaced
237:c80f45b162ad | 252:1f2b6ac9f198 |
---|---|
12 ; | 12 ; |
13 ; CHECK-NOT: Reduction Type: + | 13 ; CHECK-NOT: Reduction Type: + |
14 ; CHECK-NOT: Reduction Type: * | 14 ; CHECK-NOT: Reduction Type: * |
15 target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" | 15 target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64" |
16 | 16 |
17 define void @f(i32* %sums) { | 17 define void @f(ptr %sums) { |
18 entry: | 18 entry: |
19 br label %for.cond | 19 br label %for.cond |
20 | 20 |
21 for.cond: ; preds = %for.inc6, %entry | 21 for.cond: ; preds = %for.inc6, %entry |
22 %i.0 = phi i32 [ 0, %entry ], [ %inc7, %for.inc6 ] | 22 %i.0 = phi i32 [ 0, %entry ], [ %inc7, %for.inc6 ] |
30 %j.0 = phi i32 [ 0, %for.body ], [ %inc, %for.inc ] | 30 %j.0 = phi i32 [ 0, %for.body ], [ %inc, %for.inc ] |
31 %exitcond = icmp ne i32 %j.0, 1024 | 31 %exitcond = icmp ne i32 %j.0, 1024 |
32 br i1 %exitcond, label %for.body3, label %for.end | 32 br i1 %exitcond, label %for.body3, label %for.end |
33 | 33 |
34 for.body3: ; preds = %for.cond1 | 34 for.body3: ; preds = %for.cond1 |
35 %arrayidx = getelementptr inbounds i32, i32* %sums, i32 %i.0 | 35 %arrayidx = getelementptr inbounds i32, ptr %sums, i32 %i.0 |
36 %tmp = load i32, i32* %arrayidx, align 4 | 36 %tmp = load i32, ptr %arrayidx, align 4 |
37 %add = add nsw i32 %tmp, 5 | 37 %add = add nsw i32 %tmp, 5 |
38 store i32 %add, i32* %arrayidx, align 4 | 38 store i32 %add, ptr %arrayidx, align 4 |
39 %add4 = add nsw i32 %i.0, 10 | 39 %add4 = add nsw i32 %i.0, 10 |
40 %arrayidx5 = getelementptr inbounds i32, i32* %sums, i32 %add4 | 40 %arrayidx5 = getelementptr inbounds i32, ptr %sums, i32 %add4 |
41 %tmp2 = load i32, i32* %arrayidx5, align 4 | 41 %tmp2 = load i32, ptr %arrayidx5, align 4 |
42 %mul = mul nsw i32 %tmp2, 5 | 42 %mul = mul nsw i32 %tmp2, 5 |
43 store i32 %mul, i32* %arrayidx5, align 4 | 43 store i32 %mul, ptr %arrayidx5, align 4 |
44 br label %for.inc | 44 br label %for.inc |
45 | 45 |
46 for.inc: ; preds = %for.body3 | 46 for.inc: ; preds = %for.body3 |
47 %inc = add nsw i32 %j.0, 1 | 47 %inc = add nsw i32 %j.0, 1 |
48 br label %for.cond1 | 48 br label %for.cond1 |