[PATCH] D49552: Add a Microsoft Demangler library and utility.

Zachary Turner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 19 12:55:39 PDT 2018


zturner updated this revision to Diff 156344.
zturner added a comment.

Fixed a couple of issues pointed out by @majnemer.  Also I kind of re-wrote the core logic to use virtual functions and Node subclasses.  While the previous implementation worked, it was a bit hard to maintain and extend because it was not always obvious what set of fields of `Type` would be valid at any given moment.  I think having separate implementations for separate type makes the code substantially cleaner and easier to understand.

Wanted to upload this sooner rather than later so people don't spenda  lot of time reviewing the other implementation.


https://reviews.llvm.org/D49552

Files:
  llvm/include/llvm/Demangle/Demangle.h
  llvm/lib/Demangle/CMakeLists.txt
  llvm/lib/Demangle/MicrosoftDemangle.cpp
  llvm/test/Demangle/ms-basic.test
  llvm/test/Demangle/ms-mangle.test
  llvm/test/Demangle/ms-windows.test
  llvm/tools/LLVMBuild.txt
  llvm/tools/llvm-undname/CMakeLists.txt
  llvm/tools/llvm-undname/LLVMBuild.txt
  llvm/tools/llvm-undname/llvm-undname.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49552.156344.patch
Type: text/x-patch
Size: 58373 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180719/84aa1cb7/attachment-0001.bin>


More information about the llvm-commits mailing list