[PATCH] D145208: [COFF] Add MC support for emitting IMAGE_WEAK_EXTERN_ANTI_DEPENDENCY symbols

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 2 18:16:53 PST 2023


efriedma created this revision.
efriedma added reviewers: mstorsjo, thakis, epastor.
Herald added subscribers: hiraditya, kristof.beyls.
Herald added a project: All.
efriedma requested review of this revision.
Herald added a project: LLVM.

This is mostly useful for ARM64EC, which uses such symbols extensively.

One interesting quirk of ARM64EC is that we need to be able to emit weak symbols that point at each other (so if either symbol is defined elsewhere, both symbols point at the definition).  This required a few changes to the way we handle weak symbols on Windows to avoid recursively visiting weak symbols.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D145208

Files:
  llvm/include/llvm/MC/MCDirectives.h
  llvm/include/llvm/MC/MCSymbol.h
  llvm/include/llvm/MC/MCSymbolCOFF.h
  llvm/lib/MC/MCAsmStreamer.cpp
  llvm/lib/MC/MCELFStreamer.cpp
  llvm/lib/MC/MCExpr.cpp
  llvm/lib/MC/MCMachOStreamer.cpp
  llvm/lib/MC/MCParser/AsmParser.cpp
  llvm/lib/MC/MCParser/COFFAsmParser.cpp
  llvm/lib/MC/MCWinCOFFStreamer.cpp
  llvm/lib/MC/WinCOFFObjectWriter.cpp
  llvm/test/MC/COFF/alias.s
  llvm/test/MC/COFF/weak-anti-dep.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D145208.502034.patch
Type: text/x-patch
Size: 10454 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230303/223ee138/attachment.bin>


More information about the llvm-commits mailing list