[PATCH] D67051: [LLD] [COFF] Demangle itanium symbols in mingw mode

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Sep 1 22:46:45 PDT 2019


mstorsjo added a comment.

In D67051#1654132 <https://reviews.llvm.org/D67051#1654132>, @ruiu wrote:

> I'm not very familiar with MinGW, but is Itanium name mangling in use on MinGW? MinGW is intended to be a native development environment for Windows, so I thought that they naturally use the platform way of mangling symbols.


Yes, MinGW uses Itanium name mangling only.

Yes, MinGW is intended to be a native development environment, but despite this (for historical reasons) it has done a lot of things very differently, due to being based on the GNU tools originally, and generally doing unixy things in COFF files. GCC doesn't support the MSVC C++ ABI at all, and the name mangling is only a very small part of the whole C++ ABI.

Generally the level of compatibility is that you can call between DLLs built by different tools, as long as it only has a pure C API, but you shouldn't expect to mix object files (or static libraries) between MSVC/link.exe and GCC/ld.bfd.


Repository:
  rLLD LLVM Linker

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D67051/new/

https://reviews.llvm.org/D67051





More information about the llvm-commits mailing list