bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gold/25000] New: Document nuances between relocatable output and in


From: dilyan.palauzov at aegee dot org
Subject: [Bug gold/25000] New: Document nuances between relocatable output and incremental link
Date: Sun, 15 Sep 2019 13:21:18 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=25000

            Bug ID: 25000
           Summary: Document nuances between relocatable output and
                    incremental link
           Product: binutils
           Version: 2.33 (HEAD)
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: gold
          Assignee: ccoutant at gmail dot com
          Reporter: dilyan.palauzov at aegee dot org
                CC: ian at airs dot com
  Target Milestone: ---

The ld.texi says:

'-i'
     Perform an incremental link (same as option '-r').
'-r'
'--relocatable'
     Generate relocatable output--i.e., generate an output file that can
     in turn serve as input to 'ld'.  This is often called "partial
     linking".  As a side effect, in environments that support standard
     Unix magic numbers, this option also sets the output file's magic
     number to 'OMAGIC'.  If this option is not specified, an absolute
     file is produced.  When linking C++ programs, this option _will
     not_ resolve references to constructors; to do that, use '-Ur'.

     When an input file does not have the same format as the output
     file, partial linking is only supported if that input file does not
     contain any relocations.  Different output formats can have further
     restrictions; for example some 'a.out'-based formats do not support
     partial linking with input files in other formats at all.

     This option does the same thing as '-i'.


So, incremental link, partial link, and relocatable output in ld.bfd are the
same. ld.bfd --help confirms:

  -r, -i, --relocatable       Generate relocatable output

However, ld.gold --help says:


  -i                          Alias for -r
  -r, -relocatable            Generate relocatable output
  --incremental               Do an incremental link if possible; otherwise, do
a full link and prepare output for incremental linking

In gold, relocatable output and incremental link are not the same.  In
particular “ld.gold -r” creates unconditionally relocatable output, while
“ld.gold --incremental” does either incremental link or a full link.

Please align the terms “incremental link” and “relocatable output” in ld.bfd
and ld.gold and describe on "ld.gold --help" why is it possible to create
unconditionally relocatable output, but incremental link is only sometimes
possible.  In particular, articulate on the difference between --incremental
and -r.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]