BumpPtrAllocator::Reset should also poison the first slab which doesn't get deallocated.
[oota-llvm.git] / test / Transforms / GVN / basic-undef-test.ll
1 ; RUN: opt -basicaa -gvn -S < %s | FileCheck %s
2 ; ModuleID = 'test3.ll'
3 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
4
5 define i32 @main(i32 *%foo)  {
6 entry:
7 ; CHECK: load i32, i32* %foo, align 4
8   %0 = load i32, i32* %foo, align 4
9   store i32 5, i32* undef, align 4
10 ; CHECK-NOT: load i32, i32* %foo, align 4
11   %1 = load i32, i32* %foo, align 4
12 ; CHECK: add i32 %0, %0
13   %2 = add i32 %0, %1
14   ret i32 %2
15 }