X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=ld%2FNEWS;h=267890ecb5cdf8d75eba14ab2f6e3dfaba6a88fe;hb=18625d5459c50dcdd0e9dc5338f272dcaa00d5d9;hp=5599b2c3f47eedccc9fa1065f28816eb2068a137;hpb=8150b20a18314a62b5cee799e14c92a25a8caa27;p=deliverable%2Fbinutils-gdb.git diff --git a/ld/NEWS b/ld/NEWS index 5599b2c3f4..267890ecb5 100644 --- a/ld/NEWS +++ b/ld/NEWS @@ -1,6 +1,110 @@ -*- text -*- -Changes since version 2.4: +Changes in version 2.10: + +* Added garbage collection of unused sections, enabled by --gc-sections. + It does require a bit of backend support; currently implemented are + ppc-elf, mips-elf, and mn10300-elf. Others will ignore the option. + +* Added SORT to the linker script language to permit sorting sections by file + name or section name. + +* Added EXTERN to the linker script language as an equivalent to the -u + command-line option. + +* Added ASSERT to the linker script language. + +* Added EXCLUDE_FILE to the linker script language for further control over + wildcard file names. + +* Added -O option to optimize linker output (as of this writing, this only +affects ELF shared library generation). + +* The -e option now accepts a number as well as a symbol name. + +* Added --no-undefined option to disallow undefined symbols when creating a + shared library. + +* Added --demangle and --no-demangle options. + +Changes in version 2.9: + +* Added SQUAD to the linker script language. + +* New option --no-warn-mismatch. + +* The MEMORY command now parses the attributes to determine where sections that + are not placed in a specific memory region are placed. + +Changes in version 2.8: + +* Linker scripts may now contain shell wildcard characters for file and section + names. + +* The linker now supports symbol versions in ELF. + +* The NOCROSSREFS command was added to the linker script language. + +* The LOADADDR expression was added to the linker script language. + +* MAX and MIN functions were added to the linker script language. + +* The OVERLAY construct was added to the linker script language. + +* New option --warn-section-align to warn when the address of an output section + changes due to alignment of an input section. + +* New options --filter/-F and --auxiliary/-f. + +Changes in version 2.7: + +* New option --cref to print out a cross reference table. + +* New option --wrap SYMBOL. + +* New option --no-whole-archive, to turn off the effect of --whole-archive. + +* Input sections assigned to the output section /DISCARD/ in the linker script + are not included in the output file. + +* The SunOS and ELF linkers now merge stabs debugging information which uses + the N_BINCL and N_EINCL stab types. This reduces the amount of debugging + information generated. + +Changes in version 2.6: + +* When an ELF section name is representable as a C identifier (this is not true +of most ELF section names), the linker will automatically define symbols +__start_SECNAME and __stop_SECNAME, where SECNAME is the section name, at the +beginning and the end of the section. This is used by glibc. + +* When an ELF section named .gnu.warning is encountered in an input file, the +contents of the section are displayed as an error message, and the section is +not copied into the output file. This is used by glibc. + +* When an ELF section named .gnu.warning.SYMBOL is encountered in an input +file, and the symbol SYMBOL is referenced by some object file, the contents of +the section are displayed as an error message. The section is not copied into +the output file, unless doing a relocateable or shared link. This is used by +glibc. + +* New options -split-by-reloc and -split-by-file. + +* The linker now supports linking PIC compiled code on SPARC SunOS. It can +also create SPARC SunOS shared libraries, and, like the native SunOS linker, +will do so whenever there is an undefined symbol in the link and neither the -e +nor the -r option was used. + +* The -rpath option may be used on SunOS to set the list of directories to be +searched at run time. This overrides the default of building the list from the +-L options. + +* The COFF linker now combines debugging information for structs, unions, and +enums, so that even if the same type is defined in multiple input files it will +only be defined once in the output file. The --traditional-format switch will +prevent this optimization. + +Changes in version 2.5: * The linker now supports linking against SunOS shared libraries. It still can not link SunOS PIC (Position Independent Code) files, so it can not be used to @@ -16,9 +120,9 @@ Solaris again. Linux a.out shared libraries. The linker produces Linux QMAGIC binaries. * The ELF backend has been converted to the new linker code. To use the new -ELF linker, each particular targets requires a relocation function. So far, -this function has been written for i386 (UnixWare), SPARC (Solaris) and MIPS -(Irix 5) targets. +ELF linker, each particular target requires a relocation function. So far, +this function has been written for i386 (UnixWare), SPARC (Solaris) MIPS (Irix +5), and HPPA ELF targets. * The -( (--start-group) and -) (--end-group) options have been added to support searching a group of archives as though they were a single archive. @@ -32,7 +136,14 @@ default linker script. * The -warn-once option was added. It causes the linker to only warn once per undefined symbol, rather than once per reference. -Changes since version 2.3: +* The COFF backend has been converted to the new linker code. As with ELF, to +use the new linker, each particular target requires a relocation function. So +far, this function has been written for the i386, m68k, a29k and SH targets. + +* The -V flag was made a synonym for -v, for SVR4 compatibility. The old -V +behaviour is available via --verbose. + +Changes in version 2.4: * New linker code, by Steve Chamberlain and Ian Taylor. For a.out and ecoff formats (so far), this should result in considerable savings in time @@ -56,7 +167,7 @@ Changes since version 2.3: forgot to note it.) Some of their C library routines don't work when statically linked, and the GNU linker doesn't support dynamic linking yet. -Changes since version 2.2: +Changes in version 2.3: * Weak symbols are now supported. @@ -65,14 +176,14 @@ Changes since version 2.2: * Alpha OSF/1 support has been added (non dynamic linking only). -Changes since version 2.1: +Changes in version 2.2: * The `bfd' library has been updated to reduce a.out-format string table size. The effect of this is that files linked from many input files with duplicate symbols (`-g' debugging records, or identical static symbols) should be much smaller. -Changes since version 2.0: +Changes in version 2.1: * The ld -ySYMBOL flag (to trace references to SYMBOL) is now implemented.