aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorKostya Kortchinsky <kostyak@google.com>2018-03-06 20:13:37 +0000
committerKostya Kortchinsky <kostyak@google.com>2018-03-06 20:13:37 +0000
commit7dc51375811299e1f37b82703e6c54e8361c91a5 (patch)
tree890d1aeea34be446e4037ade1edfc94cbd0ab7a2 /clang/lib/Frontend/CompilerInvocation.cpp
parent80d3bb3b4be2cc0d3ad25530a83c94ae9c5d1ba7 (diff)
downloadllvm-7dc51375811299e1f37b82703e6c54e8361c91a5.zip
llvm-7dc51375811299e1f37b82703e6c54e8361c91a5.tar.gz
llvm-7dc51375811299e1f37b82703e6c54e8361c91a5.tar.bz2
[scudo] Use gc-sections by default
Summary: If not using `-Wl,--gc-sections`, a whole lot of unused `sanitizer_common` code and related static variables are pulled into the shared library. Keep the binary size smaller, and its memory footprint smaller as well, by using the compiler flags `-ffunction-section` & `-fdata-sections` by default, as well as the linker flags `-Wl,--gc-sections`. Current experiments show a large discrepency between binary sizes generated by gcc (big) and clang (small). I am not sure yet how I can make a test that would encompass both, so it's an outstanding work item. Reviewers: alekseyshl, flowerhack Reviewed By: alekseyshl Subscribers: mgorny, delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D44121 llvm-svn: 326833
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions