diff options
Diffstat (limited to 'llvm/test/Transforms/LoopUnroll/peel-loop2.ll')
-rw-r--r-- | llvm/test/Transforms/LoopUnroll/peel-loop2.ll | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/llvm/test/Transforms/LoopUnroll/peel-loop2.ll b/llvm/test/Transforms/LoopUnroll/peel-loop2.ll deleted file mode 100644 index 99e90797e19..00000000000 --- a/llvm/test/Transforms/LoopUnroll/peel-loop2.ll +++ /dev/null @@ -1,61 +0,0 @@ -; RUN: opt -S -loop-unroll -unroll-force-peel-count=1 -verify-dom-info <%s - -; Check if loop composed of several BBs is peeled correctly. - -declare void @funcb() -@Comma = external global i8 -define void @funca(i8* readnone %b, i8* readnone %e) { -entry: - %cmp2 = icmp eq i8* %b, %e - br i1 %cmp2, label %for.end, label %for.body.preheader - -for.body.preheader: - br label %for.body - -for.body: - %b.addr.03 = phi i8* [ %incdec.ptr, %for.inc ], [ %b, %for.body.preheader ] - %0 = load i8, i8* @Comma - %tobool = icmp eq i8 %0, 0 - br i1 %tobool, label %for.inc, label %if.then - -if.then: - tail call void @funcb() - store i8 1, i8* @Comma - br label %for.inc - -for.inc: - %incdec.ptr = getelementptr inbounds i8, i8* %b.addr.03, i64 1 - %cmp = icmp eq i8* %incdec.ptr, %e - br i1 %cmp, label %for.end, label %for.body - -for.end: - ret void -} - -; CHECK_LABEL: @funca - -; Peeled iteration -; CHECK: %[[REG1:[0-9]+]] = load i8, i8* @Comma -; CHECK: %[[REG2:.*]] = icmp eq i8 %[[REG1]], 0 -; CHECK: br i1 %[[REG2]], label %{{.*}}, label %[[IFTHEN:.*]] -; CHECK: [[IFTHEN]]: -; CHECK: call void @funcb() -; CHECK: store i8 1, i8* @Comma -; CHECK: br label %[[FORINC]] -; CHECK: [[FORINC]]: -; CHECK: %[[REG3:.*]] = getelementptr inbounds i8, i8* %b, i64 1 -; CHECK: %[[REG4:.*]] = icmp eq i8* %[[REG3]], %e -; CHECK: br i1 %[[REG4]] - -; main body -; CHECK: %[[REG1b:.*]] = load i8, i8* @Comma -; CHECK: %[[REG2b:.*]] = icmp eq i8 %[[REG1b]], 0 -; CHECK: br i1 %[[REG2b]], label %{{.*}}, label %[[IFTHENb:.*]] -; CHECK: [[IFTHENb]]: -; CHECK: call void @funcb() -; CHECK: store i8 1, i8* @Comma -; CHECK: br label %[[FORINCb]] -; CHECK: [[FORINCb]]: -; CHECK: %[[REG3b:.*]] = getelementptr inbounds i8, i8* %b, i64 1 -; CHECK: %[[REG4b:.*]] = icmp eq i8* %[[REG3b]], %e -; CHECK: br i1 %[[REG4b]] |