summaryrefslogtreecommitdiffstats
path: root/llvm/test/Analysis/ScalarEvolution/nsw.ll
diff options
context:
space:
mode:
authorTim Shen <timshen91@gmail.com>2018-07-02 20:01:54 +0000
committerTim Shen <timshen91@gmail.com>2018-07-02 20:01:54 +0000
commitc7cef4bcc4400673ffb86be04c006790577f7f56 (patch)
tree022bdc0f4bbbd8ba8c449d7e09b10ce282886a0c /llvm/test/Analysis/ScalarEvolution/nsw.ll
parent4bc7f3d4d635c05a874c180c03e7a0c130f07cd2 (diff)
downloadbcm5719-llvm-c7cef4bcc4400673ffb86be04c006790577f7f56.tar.gz
bcm5719-llvm-c7cef4bcc4400673ffb86be04c006790577f7f56.zip
[SCEV] Strengthen StrengthenNoWrapFlags (reapply r334428).
Summary: Comment on Transforms/LoopVersioning/incorrect-phi.ll: With the change SCEV is able to prove that the loop doesn't wrap-self (due to zext i16 to i64), disabling the entire loop versioning pass. Removed the zext and just use i64. Reviewers: sanjoy Subscribers: jlebar, hiraditya, javed.absar, bixia, llvm-commits Differential Revision: https://reviews.llvm.org/D48409 llvm-svn: 336140
Diffstat (limited to 'llvm/test/Analysis/ScalarEvolution/nsw.ll')
-rw-r--r--llvm/test/Analysis/ScalarEvolution/nsw.ll4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/test/Analysis/ScalarEvolution/nsw.ll b/llvm/test/Analysis/ScalarEvolution/nsw.ll
index 39b958d3ea0..ca24f9d4a04 100644
--- a/llvm/test/Analysis/ScalarEvolution/nsw.ll
+++ b/llvm/test/Analysis/ScalarEvolution/nsw.ll
@@ -126,7 +126,7 @@ exit:
}
; CHECK-LABEL: PR12375
-; CHECK: --> {(4 + %arg)<nsw>,+,4}<nuw><%bb1>{{ U: [^ ]+ S: [^ ]+}}{{ *}}Exits: (4 + (4 * ((-1 + (-1 * %arg) + ((4 + %arg)<nsw> umax (8 + %arg)<nsw>)) /u 4)) + %arg)
+; CHECK: --> {(4 + %arg)<nsw>,+,4}<nuw><%bb1>{{ U: [^ ]+ S: [^ ]+}}{{ *}}Exits: (4 + (4 * ((-1 + (-1 * %arg) + ((4 + %arg)<nsw> umax (8 + %arg)<nsw>)) /u 4))<nuw> + %arg)
define i32 @PR12375(i32* readnone %arg) {
bb:
%tmp = getelementptr inbounds i32, i32* %arg, i64 2
@@ -145,7 +145,7 @@ bb7: ; preds = %bb1
}
; CHECK-LABEL: PR12376
-; CHECK: --> {(4 + %arg)<nsw>,+,4}<nuw><%bb2>{{ U: [^ ]+ S: [^ ]+}}{{ *}}Exits: (4 + (4 * ((-1 + (-1 * %arg) + ((4 + %arg)<nsw> umax %arg1)) /u 4)) + %arg)
+; CHECK: --> {(4 + %arg)<nsw>,+,4}<nuw><%bb2>{{ U: [^ ]+ S: [^ ]+}}{{ *}}Exits: (4 + (4 * ((-1 + (-1 * %arg) + ((4 + %arg)<nsw> umax %arg1)) /u 4))<nuw> + %arg)
define void @PR12376(i32* nocapture %arg, i32* nocapture %arg1) {
bb:
br label %bb2
OpenPOWER on IntegriCloud