[PATCH] D113865: [COFF] Keep temporary symbols in object files on ARM64, as IMAGE_SYM_CLASS_LABEL

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 15 10:52:31 PST 2021


rnk added a comment.

> This roughly matches what MSVC does, where the produced object files
> contain lots of temporary label symbols named like $LN<n>.

I kind of always thought it was sloppy to emit all these extra compiler-generated symbols, FWIW.

> This does inflate the size of the intermediate object files somewhat,
> but makes these relocations much more robust.

That is somewhat concerning. LLVM uses a lot of labels internally, I think we should be careful about this change.

Is it possible to relativize these relocations against the most recent previous external symbol instead? Given that the code compiles with function/data sections, that seems like it would work.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D113865



More information about the llvm-commits mailing list