llvm-undname: Add support for demangling typeinfo names
authorNico Weber <nicolasweber@gmx.de>
Mon, 23 Sep 2019 13:13:37 +0000 (13:13 +0000)
committerNico Weber <nicolasweber@gmx.de>
Mon, 23 Sep 2019 13:13:37 +0000 (13:13 +0000)
commitda298aa913754eb70cf2dc8fac0ed6b5ae72cfe9
tree7d8eefdba856dacabaf178385744bcad1b829323
parentddc9a06e95db3b0d81f1954edae4b04d385f5866
llvm-undname: Add support for demangling typeinfo names

typeinfo names aren't symbols but string constant contents
stored in compiler-generated typeinfo objects, but llvm-cxxfilt
can demangle these for Itanium names.

In the MSVC ABI, these are just a '.' followed by a mangled
type -- this means they don't start with '?' like all MS-mangled
symbols do.

Differential Revision: https://reviews.llvm.org/D67851

llvm-svn: 372602
llvm/include/llvm/Demangle/MicrosoftDemangle.h
llvm/lib/Demangle/MicrosoftDemangle.cpp
llvm/test/Demangle/invalid-manglings.test
llvm/test/Demangle/ms-operators.test