[PATCH] D99693: Update the linkage name of coro-split functions where applicable

Adrian Prantl via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 21 16:23:00 PDT 2021


aprantl added a comment.

> What's this claim ^ about/based on? What happens if it doesn't hold the original linkage name?

See the comment I left on line 861:

  // Update the linkage name to reflect the modified symbol name. It
  // is necessary to update the linkage name in Swift, since the
  // mangling changes for resume functions. It might also be the
  // right thing to do in C++, but due to a limitation in LLVM's
  // AsmPrinter we can only do this if the function doesn't have an
  // abstract specification, since the DWARF backend expects the
  // abstract specification to contain the linkage name and asserts
  // that they are identical.

I believe this is primarily a limitation of DwarfDebug.cpp in AsmPrinter and not required by any tools. But contrary to Swift, where resume funclets actually have different mangled names with rich information in the mangled names, in C++ we are just slapping a `.resume.[0-9]+` at the end, and I don't know how useful that is to preserve.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D99693



More information about the llvm-commits mailing list