Imported Upstream version 5.18.0.179

Former-commit-id: 67aa10e65b237e1c4537630979ee99ebe1374215
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2018-10-25 08:34:57 +00:00
parent d6bde52373
commit 8625704ad8
28485 changed files with 3866843 additions and 50 deletions

View File

@@ -0,0 +1,39 @@
; RUN: opt -analyze -scalar-evolution < %s | FileCheck %s
; ScalarEvolution shouldn't attempt to interpret expressions which have
; undefined results.
define void @foo(i64 %x) {
%a = udiv i64 %x, 0
; CHECK: --> (%x /u 0)
%B = shl i64 %x, 64
; CHECK: --> %B
%b = ashr i64 %B, 64
; CHECK: --> %b
%c = lshr i64 %x, 64
; CHECK: --> %c
%d = shl i64 %x, 64
; CHECK: --> %d
%E = shl i64 %x, -1
; CHECK: --> %E
%e = ashr i64 %E, -1
; CHECK: --> %e
%f = lshr i64 %x, -1
; CHECK: --> %f
%g = shl i64 %x, -1
; CHECK: --> %g
%h = bitcast i64 undef to i64
; CHECK: --> undef
ret void
}