Files
archived-llvm/test/tools/llvm-readobj/codeview-inlinees.test
Reid Kleckner 790af1ab79 [codeview] Add support for inlinee lists
This adds type index discovery and dumper support for symbol record kind
0x1168, which is a list of inlined function ids. This symbol kind is
undocumented, but S_INLINEES is consistent with the existing
nomenclature.

Fixes PR34222

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@316398 91177308-0d34-0410-b5e6-96231b3b80d8
2017-10-23 23:43:40 +00:00

39 lines
983 B
Plaintext

Compile the following like so to reproduce the input:
$ cl -c -O2 t.c -Z7
void g();
static inline void f() { g(); }
static inline void h() { g(); }
void k() {
f();
h();
}
RUN: llvm-readobj -codeview %p/Inputs/codeview-inlinees.obj | FileCheck %s
CHECK: SubSectionType: InlineeLines (0xF6)
CHECK: Inlinee: f (0x1003)
CHECK: Inlinee: h (0x1004)
CHECK-NOT: Inlinee:
CHECK: GlobalProcIdSym {
CHECK: Kind: S_GPROC32_ID (0x1147)
CHECK: DisplayName: k
CHECK: LinkageName: k
CHECK: }
CHECK: InlineSiteSym
CHECK: Kind: S_INLINESITE (0x114D)
CHECK: Inlinee: h (0x1004)
CHECK: InlineSiteSym
CHECK: Kind: S_INLINESITE (0x114D)
CHECK: Inlinee: f (0x1003)
CHECK: InlineesSym {
CHECK-NEXT: Kind: S_INLINEES (0x1168)
CHECK-NEXT: Callers [
CHECK-NEXT: FuncID: f (0x1003)
CHECK-NEXT: FuncID: h (0x1004)
CHECK-NEXT: ]
CHECK: }
CHECK: ProcEnd {
CHECK: Kind: S_PROC_ID_END (0x114F)
CHECK: }