[X86] Simplify some bitmasking and use llvm_unreachable to mark an impossible case...
[llvm-complete.git] / test / Transforms / GVN / null-aliases-nothing.ll
blob0b7c5eb5bf95561e994348a074f59b463d847b58
1 ; RUN: opt < %s -basicaa -gvn -S | FileCheck %s
3 %t = type { i32 }
4 declare void @test1f(i8*)
6 define void @test1(%t* noalias %stuff ) {
7     %p = getelementptr inbounds %t, %t* %stuff, i32 0, i32 0
8     %before = load i32, i32* %p
10     call void @test1f(i8* null)
12     %after = load i32, i32* %p ; <--- This should be a dead load
13     %sum = add i32 %before, %after
15     store i32 %sum, i32* %p
16     ret void
17 ; CHECK: load
18 ; CHECK-NOT: load
19 ; CHECK: ret void