diff options
author | Rui Ueyama <ruiu@google.com> | 2018-05-31 13:00:25 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2018-05-31 13:00:25 +0000 |
commit | f75ea0b99580f3ffc7473f6703890181ad231b83 (patch) | |
tree | e5c94ca2a9b30806e211e4dbd1011eb64d7f6545 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | d9a453832ddd110d7896e0ffcff1c610aec31b60 (diff) | |
download | bcm5719-llvm-f75ea0b99580f3ffc7473f6703890181ad231b83.tar.gz bcm5719-llvm-f75ea0b99580f3ffc7473f6703890181ad231b83.zip |
Implement --{push,pop}-state.
--push-state implemented in this patch saves the states of --as-needed,
--whole-archive and --static. It saves less number of flags than GNU linkers.
Since even GNU linkers save different flags, no one seems to care about the
details. In this patch, I tried to save the minimal number of flags to not
complicate the implementation and the siutation.
I'm not personally happy about adding the --{push,pop}-state flags though.
That options seem too hacky to me. However, gcc started using the options
since GCC 8 when GNU ld is available at the build time. Therefore, lld
is no longer a drop-in replacmenet for GNU linker for that machine
without supporting the flags.
Fixes https://bugs.llvm.org/show_bug.cgi?id=34567
Differential Revision: https://reviews.llvm.org/D47542
llvm-svn: 333646
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions