diff options
author | Duncan Sands <baldrick@free.fr> | 2010-12-16 09:40:54 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2010-12-16 09:40:54 +0000 |
commit | ebef48ea4b0d838d2e4f05024a517bf18b1cc110 (patch) | |
tree | 147fe5cdc3bbdc67e319ce901c4647c3cc16be98 /test/Transforms/InstCombine/overflow.ll | |
parent | 71d3500005faed706c6e3e9fd9eb2eef003a7ca0 (diff) |
Speculatively revert commit 121905 since it looks like it might have broken the
dragonegg self-host buildbot. Original commit message:
Add an InstCombine transform to recognize instances of manual overflow-safe addition
(performing the addition in a wider type and explicitly checking for overflow), and
fold them down to intrinsics. This currently only supports signed-addition, but could
be generalized if someone works out the magic constant formulas for other operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121965 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/InstCombine/overflow.ll')
-rw-r--r-- | test/Transforms/InstCombine/overflow.ll | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/test/Transforms/InstCombine/overflow.ll b/test/Transforms/InstCombine/overflow.ll deleted file mode 100644 index f3f8ca3d61..0000000000 --- a/test/Transforms/InstCombine/overflow.ll +++ /dev/null @@ -1,27 +0,0 @@ -; RUN: opt -S -instcombine < %s | FileCheck %s -; <rdar://problem/8558713> - -; CHECK: @test1 -define i32 @test1(i32 %a, i32 %b) nounwind ssp { -entry: -; CHECK-NOT: sext - %conv = sext i32 %a to i64 - %conv2 = sext i32 %b to i64 - %add = add nsw i64 %conv2, %conv - %add.off = add i64 %add, 2147483648 -; CHECK: llvm.sadd.with.overflow - %0 = icmp ugt i64 %add.off, 4294967295 - br i1 %0, label %if.then, label %if.end - -if.then: - %call = tail call i32 (...)* @throwAnExceptionOrWhatever() nounwind - br label %if.end - -if.end: -; CHECK-NOT: trunc - %conv9 = trunc i64 %add to i32 -; CHECK: ret i32 - ret i32 %conv9 -} - -declare i32 @throwAnExceptionOrWhatever(...) |