forked from OSchip/llvm-project
b940b66c60
This adds a copy of the demangler in libcxxabi. The code also has no dependencies on anything else in LLVM. To enforce that I added it as another library. That way a BUILD_SHARED_LIBS will fail if anyone adds an use of StringRef for example. The no llvm dependency combined with the fact that this has to build on linux, OS X and Windows required a few changes to the code. In particular: No constexpr. No alignas On OS X at least this library has only one global symbol: __ZN4llvm16itanium_demangleEPKcPcPmPi My current plan is: Commit something like this Change lld to use it Change lldb to use it as the fallback Add a few #ifdefs so that exactly the same file can be used in libcxxabi to export abi::__cxa_demangle. Once the fast demangler in lldb can handle any names this implementation can be replaced with it and we will have the one true demangler. llvm-svn: 280732 |
||
---|---|---|
.. | ||
AArch64 | ||
ARM | ||
Hexagon | ||
Inputs | ||
X86 | ||
coff-file.test | ||
coff-import-library.test | ||
coff-large-bss.test | ||
coff-many-relocs.test | ||
coff-non-null-terminated-file.test | ||
coff-private-headers.test | ||
common-symbol-elf.test | ||
eh_frame-arm64.test | ||
eh_frame-mipsel.test | ||
eh_frame_zero_cie.test | ||
hex-relocation-addr.test | ||
invalid-input.test | ||
macho-LLVM-bundle.test | ||
macho-bad-ordinal.test | ||
macho-bind.test | ||
macho-bind2.test | ||
macho-compact-unwind-i386.test | ||
macho-compact-unwind-x86_64.test | ||
macho-exports-trie.test | ||
macho-lazy-bind.test | ||
macho-objc-meta-data.test | ||
macho-rebase.test | ||
macho-sections.test | ||
macho-unwind-info-arm64.test | ||
macho-unwind-info-no-relocs.test | ||
macho-unwind-info-x86_64.test | ||
macho-weak-bind.test | ||
malformed-archives.test | ||
malformed-macho.test | ||
proc-specific-section-elf.test | ||
section-filter.test | ||
win64-unwind-data.test |