Created attachment 6586 [details] test_ldynsym-nonstripped-elfdump-s.txt "strip" damages ELF section ".SUNW_ldynsym" on illumos. As a result elfdump reports, for example, "libavl.so.1: .SUNW_ldynsym: invalid sh_link: 0" And linker cannot link with the resulting library: "ld: fatal: file libc.so: section [4279087549](null): has invalid sh_info: -37933168108576" Here is a minimal example from [1]: #include <ucontext.h> static void static_func(void) { /* Use dladdr(3C) to print a call stack */ printstack(1); /* * Write to address 0, killing the process and * producing a core file. */ *((char *) 0) = 1; } int main(int argc, char *argv[]) { static_func(); return (0); } # cc -Wl,-znoldynsym test.c -o test_noldynsym # cc test.c -o test_ldynsym # elfdump -s test_ldynsym > test_ldynsym-nonstripped-elfdump-s.txt # stript test_ldynsym # elfdump -s test_ldynsym &>test_ldynsym-stripped-elfdump-s.txt # elfdump -s test_noldynsym > test_noldynsym-nonstripped-elfdump-s.txt # strip test_noldynsym # elfdump -s test_noldynsym > test_noldynsym-stripped-elfdump-s.txt Also, before stripping size of test_ldynsym is 10K, after - 72K(!) [1] https://blogs.oracle.com/ali/entry/what_is_sunw_ldynsym
Created attachment 6587 [details] test_ldynsym-stripped-elfdump-s.txt
Created attachment 6588 [details] test_noldynsym-nonstripped-elfdump-s.txt
Created attachment 6589 [details] test_noldynsym-stripped-elfdump-s.txt
Few binutils developers use Solaris. Please provide Solaris binary with .SUNW_ldynsym sections.
Created attachment 6607 [details] C source
Created attachment 6608 [details] Compiled solaris 32-bit binary (gcc -O0 -gdwarf-2; GCC 3.4.3 (csl-sol210-3_4-20050802))
Created attachment 6609 [details] Dump made by solaris utility elfdump
Created attachment 6610 [details] Dump made by readelf from GNU binutils
AFAIK, ".SUNW_ldynsym" and ".dynsym" sections do overlap. ".SUNW_ldynsym" goes just before ".dynsym" and supersets it. So Solaris utilities read contents of ".dynsym" as it is under ".SUNW_ldynsym". libelfg0 from Debian refused to write ELFs with ".SUNW_ldynsym" without ELF_F_LAYOUT_OVERLAP flag.
From http://docs.oracle.com/cd/E19963-01/html/819-0690/chapter6-93046.html#chapter6-94076 sh_link and sh_info may be properly handled for SHT_SUNW_cap, SHT_SUNW_capinfo, SHT_SUNW_symsort, SHT_SUNW_tlssort, SHT_SUNW_LDYNSYM, SHT_SUNW_move and SHT_SUNW_syminfo.
Created attachment 6612 [details] A patch Please test it.
Created attachment 6613 [details] with patch: elfdump of stripped binary (strip ldynsym)
Created attachment 6614 [details] with patch: elfdump of 'strip-x'ed binary (strip -x ldynsym)
(In reply to comment #11) > Created attachment 6612 [details] > A patch > > Please test it. Thank you! "strip" now seems to work properly (elfdump happy with it), but I found new issue with "strip -x": After applying "strip -x" to unstripped binary, elfdump say ".symtab: index[33]: bad symbol entry: : invalid shndx: 38" (see attachment). Applying "strip -x" to already stripped binary (with plain "strip") does not change it.
Solaris linker generates: [29] .symtab SYMTAB 00000000 000f48 000650 10 30 72 4 [30] .strtab STRTAB 00000000 001598 000307 00 S 0 0 1 [31] .comment PROGBITS 00000000 00189f 000156 00 0 0 1 [32] .debug_abbrev PROGBITS 00000000 0019f5 000063 00 0 0 1 [33] .debug_info PROGBITS 00000000 001a58 0000ce 00 0 0 1 [34] .debug_line PROGBITS 00000000 001b26 00003d 00 0 0 1 [35] .debug_frame PROGBITS 00000000 001b64 000054 00 0 0 4 [36] .debug_pubnames PROGBITS 00000000 001bb8 00001b 00 0 0 1 [37] .debug_aranges PROGBITS 00000000 001bd3 000020 00 0 0 1 [38] .shstrtab STRTAB 00000000 001bf3 00016a 00 S 0 0 1 GNU linker generates: [26] .comment PROGBITS 00000000 000650 00002c 01 MS 0 0 1 [27] .debug_aranges PROGBITS 00000000 00067c 000020 00 0 0 1 [28] .debug_info PROGBITS 00000000 00069c 000042 00 0 0 1 [29] .debug_abbrev PROGBITS 00000000 0006de 000037 00 0 0 1 [30] .debug_line PROGBITS 00000000 000715 000032 00 0 0 1 [31] .debug_str PROGBITS 00000000 000747 000076 01 MS 0 0 1 [32] .shstrtab STRTAB 00000000 0007bd 000146 00 0 0 1 [33] .symtab SYMTAB 00000000 000e7c 000470 10 34 50 4 [34] .strtab STRTAB 00000000 0012ec 00023c 00 0 0 1 strip gets confused about section indices for .comment, .shstrtab, .symtab and .strtab.
GNU linker never puts .symtab and .strtab in symtab. objcopy doesn't handler them properly when they appear in symtab.
(In reply to comment #14) > (In reply to comment #11) > > Created attachment 6612 [details] > > A patch > > > > Please test it. > > Thank you! > > "strip" now seems to work properly (elfdump happy with it), but I found new > issue with "strip -x": Please apply this patch: http://sourceware.org/ml/binutils/2012-08/msg00462.html
CVSROOT: /cvs/src Module name: src Changes by: hjl@sourceware.org 2012-09-04 12:35:35 Modified files: bfd : ChangeLog elf.c binutils : ChangeLog readelf.c Log message: Ignore section symbols without a BFD section bfd/ PR binutils/14493 * elf.c (ignore_section_sym): Also ignore section symbols without a BFD section. binutils/ PR binutils/14493 * readelf.c (get_symbol_index_type): Check bad section index. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/ChangeLog.diff?cvsroot=src&r1=1.5797&r2=1.5798 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf.c.diff?cvsroot=src&r1=1.569&r2=1.570 http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/ChangeLog.diff?cvsroot=src&r1=1.1935&r2=1.1936 http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/readelf.c.diff?cvsroot=src&r1=1.580&r2=1.581
Ok, with the patch for SUNW_ldynsym stripped library now can be linked in successfully, but now I'm confused with the size of stripped binary: # ls -lh libfoo*.so -rwxr-xr-x 1 root root 4,4K ноя 16 17:28 libfoo-gnu-stripped.so -rwxr-xr-x 1 root root 6,5K ноя 16 17:26 libfoo-gnu.so -rwxr-xr-x 1 root root 70K ноя 16 17:28 libfoo-sun-stripped.so -rwxr-xr-x 1 root root 7,8K ноя 16 17:27 libfoo-sun.so libfoo-gnu.so is produced by GNU linker, libfoo-sun.so - bysolaris linker. (See the attachment libfoo.tar.bz2) Both are stripped with GNU strip, without any options. I've backported your patch to binutils 2.22 [1], did I missed something? [1] http://osdyson.org/projects/binutils/repository/entry/patches/pr14493-sol2.patch
Ok, with the patch for SUNW_ldynsym stripped library now can be linked in successfully, but now I'm confused with the size of stripped binary: # ls -lh libfoo*.so -rwxr-xr-x 1 root root 4,4K ноя 16 17:28 libfoo-gnu-stripped.so -rwxr-xr-x 1 root root 6,5K ноя 16 17:26 libfoo-gnu.so -rwxr-xr-x 1 root root 70K ноя 16 17:28 libfoo-sun-stripped.so -rwxr-xr-x 1 root root 7,8K ноя 16 17:27 libfoo-sun.so libfoo-gnu.so is produced by GNU linker, libfoo-sun.so - bysolaris linker. (See the attachment libfoo.tar.bz2) Both are stripped with GNU strip, without any options. I've backported your patch to binutils 2.22 [1], did I miss something? [1] http://osdyson.org/projects/binutils/repository/entry/patches/pr14493-sol2.patch
[1] http://osdyson.org/projects/binutils/repository/entry/patches/pr14493-sol2.patch
http://osdyson.org/projects/binutils/repository/entry/patches/pr14493-sol2.patch
Created attachment 6742 [details] large size of stripped binary
Oh, bugzilla is confused with pr14493 in URL
(In reply to comment #23) > Created attachment 6742 [details] > large size of stripped binary Please provide unstripped library.
(In reply to comment #25) > (In reply to comment #23) > > Created attachment 6742 [details] > > large size of stripped binary > > Please provide unstripped library. I did, libfoo-sun.so is unstripped, libfoo-sun-stripped.so is stripped.
(In reply to comment #20) > Ok, with the patch for SUNW_ldynsym stripped library now can be linked in > successfully, but now I'm confused with the size of stripped binary: > > # ls -lh libfoo*.so > -rwxr-xr-x 1 root root 4,4K ноя 16 17:28 libfoo-gnu-stripped.so > -rwxr-xr-x 1 root root 6,5K ноя 16 17:26 libfoo-gnu.so > -rwxr-xr-x 1 root root 70K ноя 16 17:28 libfoo-sun-stripped.so > -rwxr-xr-x 1 root root 7,8K ноя 16 17:27 libfoo-sun.so > > libfoo-gnu.so is produced by GNU linker, > libfoo-sun.so - bysolaris linker. > > (See the attachment libfoo.tar.bz2) Try http://sourceware.org/ml/binutils/2012-11/msg00312.html > > Both are stripped with GNU strip, without any options. > > I've backported your patch to binutils 2.22 [1], did I miss something? > > [1] > pr14493-sol2.patch">http://osdyson.org/projects/binutils/repository/entry/patches/pr14493-sol2.patch I don't support backport.
Excellent! # ./binutils/strip-new libfoo-sun.so -o libfoo-sun-stripped.so e# ls -lh libfoo-sun-stripped.so libfoo-sun.so -rwxr-xr-x 1 root root 7,1K ноя 16 19:11 libfoo-sun.so -rwxr-xr-x 1 root root 4,9K ноя 21 09:25 libfoo-sun-stripped.so Thank you very much for you work and patience.
CVSROOT: /cvs/src Module name: src Changes by: hjl@sourceware.org 2012-11-21 21:31:18 Modified files: bfd : ChangeLog elf.c ld/testsuite : ChangeLog Added files: ld/testsuite/ld-elf: maxpage5.d maxpage5.s maxpage5.t Log message: Set output maxpagesize when rewriting program header bfd/ PR binutils/14493 * elf.c (copy_elf_program_header): When rewriting program header, set the output maxpagesize to the maximum alignment of input PT_LOAD segments. 2012-11-21 H.J. Lu <hongjiu.lu@intel.com> PR binutils/14493 * ld-elf/maxpage5.d: New file. * ld-elf/maxpage5.s: Likewise. * ld-elf/maxpage5.t: Likewise. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/ChangeLog.diff?cvsroot=src&r1=1.5864&r2=1.5865 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf.c.diff?cvsroot=src&r1=1.576&r2=1.577 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ChangeLog.diff?cvsroot=src&r1=1.1620&r2=1.1621 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-elf/maxpage5.d.diff?cvsroot=src&r1=NONE&r2=1.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-elf/maxpage5.s.diff?cvsroot=src&r1=NONE&r2=1.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-elf/maxpage5.t.diff?cvsroot=src&r1=NONE&r2=1.1
CVSROOT: /cvs/src Module name: src Branch: binutils-2_23-branch Changes by: amodra@sourceware.org 2013-01-21 13:48:53 Modified files: bfd : ChangeLog bfdio.c cache.c elf-bfd.h elf-strtab.c elf.c elf32-i386.c elf32-ppc.c elf64-ppc.c elflink.c linker.c opncls.c binutils : ChangeLog readelf.c gas : ChangeLog dwarf2dbg.c sb.c write.c gas/config : tc-ppc.c tc-ppc.h gas/testsuite : ChangeLog gas/testsuite/gas/cfi: cfi-ppc-1.d cfi-ppc-1.s cfi.exp gas/testsuite/gas/ppc: 476.d 476.s a2.d a2.s altivec.d altivec.s altivec_and_spe.d astest.d astest2.d astest2_64.d astest64.d booke.d booke.s cell.d cell.s common.d common.s e500.d e500.s e500mc.d e500mc.s e500mc64_nop.d e500mc64_nop.s e5500_nop.d e5500_nop.s e6500.d e6500.s e6500_nop.d e6500_nop.s machine.d power4.d power4.s power4_32.d power4_32.s power6.d power6.s power7.d power7.s ppc.exp ppc750ps.d ppc750ps.s regnames.d simpshft.d test1elf32.d test1elf64.d titan.d titan.s vle-reloc.s vle-simple-1.s vle-simple-2.s vle-simple-3.s vle-simple-4.s vle-simple-5.s vle-simple-6.s vle.s vsx.d vsx.s include/opcode : ChangeLog ppc.h ld : ChangeLog ldexp.c ldexp.h ldlang.c ldmain.c lexsup.c plugin.c plugin.h ld/emultempl : elf32.em ld/testsuite : ChangeLog ld/testsuite/ld-gc: pr13683.d ld/testsuite/ld-plugin: plugin-2.d plugin-4.d ld/testsuite/ld-powerpc: apuinfo-nul.rd apuinfo.rd plt1.d powerpc.exp relax.d relaxr.d sdadyn.d tls.d tls.g tls.t tls32.d tls32.g tls32.t tlsexe.d tlsexe.g tlsexe.r tlsexe.t tlsexe32.d tlsexe32.g tlsexe32.r tlsexe32.t tlsexetoc.d tlsexetoc.g tlsexetoc.r tlsexetoc.t tlsmark.d tlsmark32.d tlsopt1.d tlsopt1_32.d tlsopt2.d tlsopt2_32.d tlsopt3.d tlsopt3_32.d tlsopt4.d tlsopt4_32.d tlsso.d tlsso.g tlsso.r tlsso.t tlsso32.d tlsso32.g tlsso32.r tlsso32.t tlstoc.d tlstoc.g tlstoc.t tlstocso.d tlstocso.g tlstocso.t tocopt.out opcodes : ChangeLog ppc-dis.c ppc-opc.c Added files: gas/testsuite/gas/ppc: altivec2.d altivec2.s Log message: PR 12549 PR 14493 PR 14567 PR 14662 PR 14758 PR 14813 PR 14904 PR 14915 PR 14926 PR 14950 PR 14962 Apply mainline patches Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.5758.2.37&r2=1.5758.2.38 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/bfdio.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.33&r2=1.33.4.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/cache.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.41&r2=1.41.4.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf-bfd.h.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.343.2.2&r2=1.343.2.3 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf-strtab.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.16&r2=1.16.20.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.568&r2=1.568.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf32-i386.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.279.4.3&r2=1.279.4.4 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf32-ppc.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.318.4.1&r2=1.318.4.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf64-ppc.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.390.4.3&r2=1.390.4.4 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elflink.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.450.4.2&r2=1.450.4.3 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/linker.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.95&r2=1.95.4.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/opncls.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.69&r2=1.69.4.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1925.2.8&r2=1.1925.2.9 http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/readelf.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.578.2.3&r2=1.578.2.4 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4769.2.23&r2=1.4769.2.24 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/dwarf2dbg.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.116&r2=1.116.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/sb.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.20&r2=1.20.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/write.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.151&r2=1.151.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-ppc.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.184&r2=1.184.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-ppc.h.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.45&r2=1.45.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2057.2.19&r2=1.2057.2.20 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/cfi/cfi-ppc-1.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.16.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/cfi/cfi-ppc-1.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.36.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/cfi/cfi.exp.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.27&r2=1.27.6.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/altivec2.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=NONE&r2=1.2.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/altivec2.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=NONE&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/476.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4&r2=1.4.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/476.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/a2.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/a2.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/altivec.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.24.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/altivec.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.40.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/altivec_and_spe.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.12.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/astest.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4&r2=1.4.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/astest2.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/astest2_64.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4&r2=1.4.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/astest64.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4&r2=1.4.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/booke.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.14&r2=1.14.12.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/booke.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.7&r2=1.7.12.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/cell.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.18.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/cell.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.18.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/common.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2.12.1&r2=1.2.12.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/common.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1.18.1&r2=1.1.18.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e500.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.8&r2=1.8.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e500.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e500mc.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e500mc.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.12.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e500mc64_nop.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e500mc64_nop.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e5500_nop.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e5500_nop.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e6500.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1.2.1&r2=1.1.2.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e6500.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e6500_nop.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/e6500_nop.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/machine.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.36.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power4.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.7.8.1&r2=1.7.8.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power4.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2.30.1&r2=1.2.30.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power4_32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.14.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power4_32.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.14.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power6.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power6.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power7.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4.8.1&r2=1.4.8.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/power7.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4.8.1&r2=1.4.8.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/ppc.exp.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.29&r2=1.29.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/ppc750ps.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.18.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/ppc750ps.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.18.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/regnames.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.18.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/simpshft.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1.1.1&r2=1.1.1.1.46.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/test1elf32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.5&r2=1.5.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/test1elf64.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/titan.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/titan.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle-reloc.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle-simple-1.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle-simple-2.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle-simple-3.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle-simple-4.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle-simple-5.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle-simple-6.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vle.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vsx.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/testsuite/gas/ppc/vsx.s.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/include/opcode/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.466.4.4&r2=1.466.4.5 http://sourceware.org/cgi-bin/cvsweb.cgi/src/include/opcode/ppc.h.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.44&r2=1.44.4.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2470.2.14&r2=1.2470.2.15 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldexp.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.101.2.1&r2=1.101.2.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldexp.h.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.31.2.1&r2=1.31.2.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldlang.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.397.2.3&r2=1.397.2.4 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldmain.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.165&r2=1.165.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/lexsup.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.133.2.1&r2=1.133.2.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/plugin.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.45&r2=1.45.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/plugin.h.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.10&r2=1.10.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/emultempl/elf32.em.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.229.2.1&r2=1.229.2.2 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1579.2.15&r2=1.1579.2.16 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-gc/pr13683.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-plugin/plugin-2.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-plugin/plugin-4.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/apuinfo-nul.rd.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/apuinfo.rd.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.5&r2=1.5.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/plt1.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.20.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/powerpc.exp.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.40&r2=1.40.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/relax.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/relaxr.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/sdadyn.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.24.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tls.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.30.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tls.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.38.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tls.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.36.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tls32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.30.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tls32.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.38.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tls32.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.38.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.10&r2=1.10.6.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.10&r2=1.10.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe.r.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.31&r2=1.31.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.38.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.10&r2=1.10.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe32.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.6&r2=1.6.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe32.r.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.20&r2=1.20.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexe32.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.24.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexetoc.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.11&r2=1.11.6.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexetoc.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.10&r2=1.10.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexetoc.r.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.32&r2=1.32.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsexetoc.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.3&r2=1.3.36.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsmark.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.6.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsmark32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.6.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt1.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt1_32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt2.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt2_32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt3.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt3_32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt4.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsopt4_32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.8.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.10&r2=1.10.6.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.9&r2=1.9.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso.r.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.33&r2=1.33.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.36.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso32.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.16&r2=1.16.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso32.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.10&r2=1.10.20.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso32.r.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.25&r2=1.25.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlsso32.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4&r2=1.4.24.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlstoc.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.4&r2=1.4.30.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlstoc.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.36.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlstoc.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.38.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlstocso.d.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.9&r2=1.9.6.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlstocso.g.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.9&r2=1.9.18.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tlstocso.t.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.2&r2=1.2.36.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-powerpc/tocopt.out.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1&r2=1.1.4.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/opcodes/ChangeLog.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.1831.2.20&r2=1.1831.2.21 http://sourceware.org/cgi-bin/cvsweb.cgi/src/opcodes/ppc-dis.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.59&r2=1.59.2.1 http://sourceware.org/cgi-bin/cvsweb.cgi/src/opcodes/ppc-opc.c.diff?cvsroot=src&only_with_tag=binutils-2_23-branch&r1=1.147.2.2&r2=1.147.2.3
Fixed
The master branch has been updated by Alan Modra <amodra@sourceware.org>: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6705e14a9943e48ccf0f4829a9c23d66b5b83aae commit 6705e14a9943e48ccf0f4829a9c23d66b5b83aae Author: Alan Modra <amodra@gmail.com> Date: Mon Apr 22 09:30:23 2024 +0930 copy_private_symbol_data bfd_copy_private_symbol_data is a bfd function that appeared in commit 89665c8562da a long time ago, but seemingly wasn't used anywhere until Jan added it to gas/symbols.c in commit 6a2b6326c21e. The function is used to modify ELF symbol st_shndx for symbols defined in odd sections like .symtab, so that they get the corresponding section st_shndx in an output file. This patch fixes some bitrot in the function. After commit c03551323c04 which introduced output_elf_obj_tdata, elf_strtab_sec and elf_shstrtab_sec will segfault if used on an input bfd. PR 14493 * elf.c (_bfd_elf_copy_private_symbol_data): Don't use elf_strtab_sec and elf_shstrtab_sec.
The master branch has been updated by Alan Modra <amodra@sourceware.org>: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e13e2ba45fe23ec4e6d7335b0834290e61605d4d commit e13e2ba45fe23ec4e6d7335b0834290e61605d4d Author: Alan Modra <amodra@gmail.com> Date: Mon Apr 22 09:30:38 2024 +0930 use copy_private_symbol_data in objcopy osympp appearing twice here is not a bug. PR 14493 * objcopy.c (copy_object): Run the symbols through bfd_copy_private_symbol_data.
The master branch has been updated by Alan Modra <amodra@sourceware.org>: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ef1c830f003acaf149bb9ee230be0d0067e1855c commit ef1c830f003acaf149bb9ee230be0d0067e1855c Author: Alan Modra <amodra@gmail.com> Date: Mon Apr 22 09:29:28 2024 +0930 ignore some symbols in elf.c:swap_out_syms The reason behind this patch was noticing that generic ELF targets fail to remove "bar" in the recently committed ld-elf/undefweak-1 test. (Despite that, those targets pass the test due to it being too strict when matching symbols. "bar" gets turned into a local weak defined absolute symbol.) swap_out_syms currently drops local section syms that are defined in discarded sections. Extend that to also drop other symbols in discarded sections too, even global symbols. The linker goes to quite a lot of effort to ensure globals in discarded section take a definition from the kept linkonce or comdat group section. So the global sym change should only affect cases where something is quite wrong about the set of linkonce or comdat group sections. However that change to elf_map_symbols meant we dropped _DYNAMIC_LINK / _DYNAMIC_LINKING for mips, a global absolute symbol given STT_SECTION type for some reason. That problem is fixed by reverting the pr14493 change which is no longer needed due to a) BSF_SECTION_SYM_USED on x86, and b) fixing objcopy to use copy_private_symbol_data. bfd/ PR 14493 * elf.c (ignore_sym): Rename from ignore_section_sym. Return true for any symbol without a section or in a discarded section. Revert pr14493 change. (elf_map_symbols): Tidy. Use ignore_sym on all symbols. (swap_out_syms): Tidy. ld/ * testsuite/ld-elf/undefweak-1.rd: Match any "bar".
The master branch has been updated by H.J. Lu <hjl@sourceware.org>: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6c2119acf78b4a48caa918c1d63aac7a64a19c82 commit 6c2119acf78b4a48caa918c1d63aac7a64a19c82 Author: H.J. Lu <hjl.tools@gmail.com> Date: Tue Apr 23 07:07:51 2024 -0700 objcopy.c: Fix bfd_copy_private_symbol_data on 32-bit hosts Use long with bfd_copy_private_symbol_data to fix .../binutils/objcopy.c: In function âcopy_objectâ: .../binutils/objcopy.c:3383:17: error: comparison of integer expressions of different signedness: âunsigned intâ and âlong intâ [-Werror=sign-compare] 3383 | for (i = 0; i < symcount; i++) | ^ on 32-bit hosts. PR binutils/14493 * objcopy.c (copy_object): Use long with bfd_copy_private_symbol_data.