[PATCH] D45801: COFF: Use (name, output characteristics) as a key when grouping input sections into output sections.
Reid Kleckner via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 19 09:38:43 PDT 2018
rnk added a comment.
> because of the previous
> permission merging semantics, the .CRT sections were causing the entire
> .rdata section to become writable, which caused the SEH runtime to
> crash because it apparently requires .xdata to be read-only. This
> change also implements the same special case.
Wow. So, 32-bit Chromium linked with LLD had a writable .rdata. We definitely don't want to ship that. Thanks for investigating this!
================
Comment at: lld/COFF/Writer.cpp:719
+ }
+ To->merge(From);
+ }
----------------
Do we need to remove `From` somehow? What are the semantics of `/merge:.foo=.bar /merge:.baz=.foo`? Move all input sections in .foo to .bar, and then move all input sections from .baz to .foo? Or, everything in .bar?
https://reviews.llvm.org/D45801
More information about the llvm-commits
mailing list