]> granicus.if.org Git - clang/commit
Hoist MethodVFTableLocation out of MicrosoftVTableContext, NFC
authorReid Kleckner <rnk@google.com>
Thu, 29 Mar 2018 22:42:24 +0000 (22:42 +0000)
committerReid Kleckner <rnk@google.com>
Thu, 29 Mar 2018 22:42:24 +0000 (22:42 +0000)
commitaf48a142437e9abc1e2949e362f704cd427e089e
tree8dbec5ad293c8a8b72f7e2021e49054019547240
parentd211a5cae4700c44ca466adcc9e747f49243aaad
Hoist MethodVFTableLocation out of MicrosoftVTableContext, NFC

This allows forward declaring it so that we can add it to
MicrosoftMangleContext::mangleVirtualMemPtrThunk without including
VTableBuilder.h. That saves a hashtable lookup when emitting virtual
member pointer functions.

It also shortens a really long type name. This struct has "VFtable" in
the name, so it seems pretty unlikely that someone will assume it is
generally useful for non-MS C++ ABI stuff.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@328845 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/AST/Mangle.h
include/clang/AST/VTableBuilder.h
lib/AST/MicrosoftMangle.cpp
lib/AST/VTableBuilder.cpp
lib/CodeGen/CGDebugInfo.cpp
lib/CodeGen/MicrosoftCXXABI.cpp