xref: /llvm-project/llvm/test/Linker/partial-type-refinement.ll (revision f2e868c566107eb2f54e3e6033199297ba11e2d9)
1; RUN: llvm-link %s %p/partial-type-refinement-link.ll -S | FileCheck %s
2; PR4954
3
4; CHECK: load ptr, ptr getelementptr inbounds (%"RegisterP<LowerArrayLength>", ptr @_ZN3mvmL1XE, i64 0, i32 0, i32 6, i32 0, i32 0, i32 0), align 16
5
6%AnalysisResolver = type { i8, ptr }
7%"DenseMap<P*,AU*>" = type { i64, ptr, i64, i64 }
8%PMDataManager = type { i8, ptr, i8, i8, i8, i8, i8, i64, i8 }
9%PMTopLevelManager = type { i8, i8, i8, i8, i8, i8, i8, i8, %"DenseMap<P*,AU*>" }
10%P = type { i8, ptr, i64 }
11%PI = type { i8, i8, i8, i8, i8, i8, %"vector<const PI*>", ptr }
12%"RegisterP<LowerArrayLength>" = type { %PI }
13%"_V_base<const PI*>" = type { %"_V_base<const PI*>::_V_impl" }
14%"_V_base<const PI*>::_V_impl" = type { ptr, i8, i8 }
15%"pair<P*,AU*>" = type opaque
16%"vector<const PI*>" = type { %"_V_base<const PI*>" }
17
18@_ZN3mvmL1XE = external global %"RegisterP<LowerArrayLength>"
19
20define void @__tcf_0() nounwind {
21entry:
22  %0 = load ptr, ptr getelementptr inbounds (%"RegisterP<LowerArrayLength>", ptr @_ZN3mvmL1XE, i64 0, i32 0, i32 6, i32 0, i32 0, i32 0), align 16
23  ret void
24}
25