Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang...
[llvm-project.git] / llvm / test / Transforms / InstCombine / 2011-05-13-InBoundsGEP.ll
blob2aba273da92697d143afc6b9cf51ece2e8374b6a
1 ; RUN: opt < %s -S -passes=instcombine | FileCheck %s
2 ; rdar://problem/9267970
3 ; ideally this test will run on a 32-bit host
4 ; must not discard GEPs that might overflow at runtime (aren't inbounds)
6 define i32 @main(i32 %argc) {
7 entry:
8     %tmp1 = add i32 %argc, -2
9     %tmp2 = add i32 %argc, 1879048192
10     %p = alloca i8
11 ; CHECK: getelementptr
12     %p1 = getelementptr i8, ptr %p, i32 %tmp1
13 ; CHECK: getelementptr
14     %p2 = getelementptr i8, ptr %p, i32 %tmp2
15     %cmp = icmp ult ptr %p1, %p2
16     br i1 %cmp, label %bbtrue, label %bbfalse
17 bbtrue:          ; preds = %entry
18     ret i32 -1
19 bbfalse:         ; preds = %entry
20     ret i32 0