Commit Graph

64 Commits

Author SHA1 Message Date
Fangrui Song 3a84a093f2 [docs] Add --print-icf-sections to ld.lld.1
llvm-svn: 340253
2018-08-21 07:35:23 +00:00
Fangrui Song f35ff042f4 [docs] Sort ld.lld.1 options
Reviewers: ruiu

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D50022

llvm-svn: 338326
2018-07-30 23:07:44 +00:00
Fangrui Song bac187bece [docs] Add missing options to ld.lld.1
Differential Revision: https://reviews.llvm.org/D49938

llvm-svn: 338320
2018-07-30 22:31:00 +00:00
Fangrui Song 05779bfcc8 [docs] Update ld.lld.1
llvm-svn: 338275
2018-07-30 17:36:38 +00:00
Peter Collingbourne a327a4c34e ELF: Implement --icf=safe using address-significance tables.
Differential Revision: https://reviews.llvm.org/D48146

llvm-svn: 337429
2018-07-18 22:49:31 +00:00
Rui Ueyama f75ea0b995 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
2018-05-31 13:00:25 +00:00
Ed Maste 59c4962c1d Add -warn-backrefs (r329636) to lld's man page
llvm-svn: 331133
2018-04-29 02:18:48 +00:00
Ed Maste dfcd846b26 Update man page for long opts that accept = after r326506
Also remove the space between --lto-O and value, as the option with a
space is not accepted at present.

Leave --opt-remarks-filename as it does not currently accept the = form.

llvm.org/pr36563

llvm-svn: 326536
2018-03-02 02:57:12 +00:00
Ed Maste 9a289f7b72 Correct man page description for --section-start
The argument is section=address, not just address.

(For compatibility with GNU linkers we need to, but do not yet, accept
--section-start=section=address.)

llvm-svn: 326463
2018-03-01 19:02:41 +00:00
Ed Maste dde3a9170c Where possible use --long-opt=value in lld man page
We intend to maintain compatibility with GNU ld, and in the GNU world
long options are conventionally specified as --long-option=value. For
whatever reason GNU ld.bfd accepts both --long-option value and
--long-option=value, but documents the former. Follow suit.

Some lld long options do not accept the = form; this is probably a bug
to be fixed (along with a man page update).

Reported by Ingo Schwarze, for --entry.

llvm-svn: 326459
2018-03-01 18:40:11 +00:00
Ed Maste a83e226c2f Correct markup and nits in ld.lld man page
Patch by Ingo Schwarze

llvm-svn: 326446
2018-03-01 16:02:19 +00:00
Ed Maste 1136f3f0fd Add IMPLEMENTATION NOTES describing lld's .a handling in the man page
This content is based on the description in NewLLD.rst.

Differential Revision:	https://reviews.llvm.org/D43072

llvm-svn: 324739
2018-02-09 15:36:13 +00:00
Ed Maste 421fdaa121 Document --build-id=fast in ld.lld.1
Initial ld.lld.1 man page commit in r324512 crossed paths with r324502
which added --build-id=fast, allowing --build-id to be documented as a
synonym for --build-id=fast. Catch up with that change in the man page.

Differential Revision:	https://reviews.llvm.org/D43039

llvm-svn: 324528
2018-02-07 21:22:20 +00:00
Ed Maste 3a775a17ca Add ld.lld.1 man page, describing lld's ELF linker
One of the FreeBSD requirements for enabling lld as the system linker is
that it has a man page. Other FreeBSD developers and I created one using
lld's --help output as a starting point.  This is an expanded and
improved version of that.

This man page would benefit from additional content, but it provides
basic user-facing coverage of lld's options and serves as a good
starting point.

Differential Revision:	https://reviews.llvm.org/D42963

llvm-svn: 324512
2018-02-07 20:38:18 +00:00