[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / llvm / test / Transforms / SimplifyCFG / preserve-load-metadata-3.ll
blob0b51af91d7870219af3229c68b230a9a7bcd78fd
1 ; RUN: opt < %s -simplifycfg -simplifycfg-require-and-preserve-domtree=1 -hoist-common-insts=true -S | FileCheck %s
3 declare void @bar(i32*)
4 declare void @baz(i32*)
6 ; CHECK-LABEL: @test_load_combine_metadata(
7 ; Check that dereferenceable_or_null metadata is combined
8 ; CHECK: load i32*, i32** %p
9 ; CHECK-SAME: !dereferenceable_or_null ![[DEREF:[0-9]+]]
10 ; CHECK: t:
11 ; CHECK: f:
12 define void @test_load_combine_metadata(i1 %c, i32** %p) {
13   br i1 %c, label %t, label %f
16   %v1 = load i32*, i32** %p, !dereferenceable_or_null !0
17   call void @bar(i32* %v1)
18   br label %cont
21   %v2 = load i32*, i32** %p, !dereferenceable_or_null !1
22   call void @baz(i32* %v2)
23   br label %cont
25 cont:
26   ret void
29 ; CHECK: ![[DEREF]] = !{i64 8}
31 !0 = !{i64 8}
32 !1 = !{i64 16}