[PATCH] D22884: [codeview] Emit vftable records
Reid Kleckner via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 27 13:02:30 PDT 2016
rnk created this revision.
rnk added reviewers: dblaikie, aprantl, dexonsmith.
rnk added a subscriber: llvm-commits.
Works towards fixing PR28150
Adds a custom DWARF tag so that we can represent this information in our
DI metadata. VFTable information appears in the elements list of
complete DICompositeTypes and looks like this:
DIDerivedType(
tag: DW_TAG_LLVM_vftable,
scope: !<CompositeType>,
baseType: !<OverriddenVFTable>,
offset: <VFPtrOffset>,
name: <VFTableName>,
extraData: !<MethodList>,
flags: DIFlagArtificial)
The OverriddenVFTable slot references the vftable from the base class.
https://reviews.llvm.org/D22884
Files:
include/llvm/IR/DIBuilder.h
include/llvm/Support/Dwarf.def
lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
lib/CodeGen/AsmPrinter/CodeViewDebug.h
lib/IR/DIBuilder.cpp
lib/IR/Verifier.cpp
test/DebugInfo/COFF/types-data-members.ll
test/DebugInfo/COFF/vftables.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D22884.65790.patch
Type: text/x-patch
Size: 52062 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160727/8f97feaf/attachment.bin>
More information about the llvm-commits
mailing list