comparison polly/test/ScopInfo/unsigned-division-3.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
13 ; CHECK: Domain := 13 ; CHECK: Domain :=
14 ; CHECK-NEXT: [N] -> { Stmt_for_body[0] : N >= 0 }; 14 ; CHECK-NEXT: [N] -> { Stmt_for_body[0] : N >= 0 };
15 ; 15 ;
16 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" 16 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
17 17
18 define void @f(i32* %A, i8 %N) { 18 define void @f(ptr %A, i8 %N) {
19 entry: 19 entry:
20 %tmp = udiv i8 %N, -128 20 %tmp = udiv i8 %N, -128
21 br label %for.cond 21 br label %for.cond
22 22
23 for.cond: ; preds = %for.inc, %entry 23 for.cond: ; preds = %for.inc, %entry
25 %lftr.wideiv = trunc i64 %indvars.iv to i8 25 %lftr.wideiv = trunc i64 %indvars.iv to i8
26 %exitcond = icmp sle i8 %lftr.wideiv, %tmp 26 %exitcond = icmp sle i8 %lftr.wideiv, %tmp
27 br i1 %exitcond, label %for.body, label %for.end 27 br i1 %exitcond, label %for.body, label %for.end
28 28
29 for.body: ; preds = %for.cond 29 for.body: ; preds = %for.cond
30 %arrayidx = getelementptr inbounds i32, i32* %A, i64 %indvars.iv 30 %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv
31 %tmp2 = load i32, i32* %arrayidx, align 4 31 %tmp2 = load i32, ptr %arrayidx, align 4
32 %inc = add nsw i32 %tmp2, 1 32 %inc = add nsw i32 %tmp2, 1
33 store i32 %inc, i32* %arrayidx, align 4 33 store i32 %inc, ptr %arrayidx, align 4
34 br label %for.inc 34 br label %for.inc
35 35
36 for.inc: ; preds = %for.body 36 for.inc: ; preds = %for.body
37 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 37 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
38 br label %for.cond 38 br label %for.cond