[PATCH] D67051: [LLD] [COFF] Demangle itanium symbols in mingw mode
    Reid Kleckner via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Tue Sep  3 11:39:52 PDT 2019
    
    
  
rnk added inline comments.
================
Comment at: lld/trunk/COFF/Symbols.cpp:31
+  if (config->demangle) {
     if (Optional<std::string> s = demangleMSVC(symName))
       return *s;
----------------
It is trivial to disambiguate Itanium and MSVC symbols just by looking at the prefix. For both mangling types, we should ignore `__imp_` prefixes in the same way. Then, Itanium names match `_+Z`, and Microsoft names start with `?`.
I think we should get rid of the two `lld::demangleItanium/MSVC` variants, add a check for `?` in `llvm::demangle`, and standardize on that. The COFF demangle helper can do the `__imp_` handling. Make sense?
Repository:
  rL LLVM
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D67051/new/
https://reviews.llvm.org/D67051
    
    
More information about the llvm-commits
mailing list