diff options
author | Rui Ueyama <ruiu@google.com> | 2013-08-08 23:31:50 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2013-08-08 23:31:50 +0000 |
commit | dd72278fea6cac140271e4c53f99294fc4b11413 (patch) | |
tree | 03436ccd5716560000493195a413f0e96efb7b65 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 7bd3c7d1fc8517a6c8a07aa981867caeab29832c (diff) | |
download | llvm-dd72278fea6cac140271e4c53f99294fc4b11413.zip llvm-dd72278fea6cac140271e4c53f99294fc4b11413.tar.gz llvm-dd72278fea6cac140271e4c53f99294fc4b11413.tar.bz2 |
[PECOFF] Support COMDAT section that contains mergeable atoms.
The COMDAT section is a section with a special attribute to tell the linker
whether the symbols in the section are allowed to be merged or not. This patch
add a function to interpret the COMDAT data and set "merge" attribute to the
atoms accordingly.
LLD supports multiple policies to merge atoms; atoms can be merged by name or
by content. COFF supports them, and in addition to that, it supports
choose-the-largest-atom policy, which LLD currently does not support. I simply
mapped it to merge-by-name attribute for now, but we eventually have to support
that policy in the core linker.
llvm-svn: 188025
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions