From 7b66f043a4dc4c6eb6b0b74c43704e74cddab29d Mon Sep 17 00:00:00 2001 From: czhengsz Date: Thu, 19 Dec 2019 04:11:45 -0500 Subject: [PATCH] [SCEV] NFC - add testcase for get accurate range for AddExpr --- .../Analysis/ScalarEvolution/range_nw_flag.ll | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 test/Analysis/ScalarEvolution/range_nw_flag.ll diff --git a/test/Analysis/ScalarEvolution/range_nw_flag.ll b/test/Analysis/ScalarEvolution/range_nw_flag.ll new file mode 100644 index 00000000000..c5640bf6dda --- /dev/null +++ b/test/Analysis/ScalarEvolution/range_nw_flag.ll @@ -0,0 +1,21 @@ +; RUN: opt < %s -S -analyze -scalar-evolution | FileCheck %s + +; copied from flags-from-poison.ll +; CHECK-LABEL: @test-add-nuw +; CHECK: --> {(1 + %offset),+,1}<%loop> U: full-set S: full-set +define void @test-add-nuw(float* %input, i32 %offset, i32 %numIterations) { +entry: + br label %loop +loop: + %i = phi i32 [ %nexti, %loop ], [ 0, %entry ] + %nexti = add nuw i32 %i, 1 + %index32 = add nuw i32 %nexti, %offset + %ptr = getelementptr inbounds float, float* %input, i32 %index32 + %f = load float, float* %ptr, align 4 + %exitcond = icmp eq i32 %nexti, %numIterations + br i1 %exitcond, label %exit, label %loop + +exit: + ret void +} +