From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7413 invoked by alias); 26 Feb 2010 17:59:15 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 7237 invoked by uid 9674); 26 Feb 2010 17:59:12 -0000 Date: Fri, 26 Feb 2010 17:59:00 -0000 Message-ID: <20100226175912.7222.qmail@sourceware.org> From: jkratoch@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] archer-jankratochvil-ifunc: Merge remote branch 'origin/master' into archer-jankratochvil-ifunc X-Git-Refname: refs/heads/archer-jankratochvil-ifunc X-Git-Reftype: branch X-Git-Oldrev: 4c8995f3acf475d9f63afd133bc019e0034f1c2c X-Git-Newrev: 25ed0d357da32a8f9e95ddff130ff59a0caae83b X-SW-Source: 2010-q1/txt/msg00134.txt.bz2 List-Id: The branch, archer-jankratochvil-ifunc has been updated via 25ed0d357da32a8f9e95ddff130ff59a0caae83b (commit) via ca310775e216d1c75c8da2f2fdbdd274ce36d402 (commit) via cf2bb4dbd0774efa59feba2a3f29924fd1866d4c (commit) via 96c23bfd2863bcca7388653a7bc4c9f8a64a03be (commit) via 19adc57b71e929bb4ee1b807750ce92f8f01363f (commit) via 9e1796e9a4a9f95d2c2c580fcdce9bda794a6b42 (commit) via b3b1da048cb26c48c6244d58cf6365162d630b06 (commit) via 00ac3c866427a6ed7aad2f0adf74968b2f15753a (commit) via ba2fe9e294571f3cd743e73bba95a805eb7760e0 (commit) via 54548eb1d89b33c661e1b934e3a144ad95b8a15a (commit) via dd54093fb676cd53ee950955adc7641af170e640 (commit) via 843c58b91df63db4a3b8b7767bc0f62db0703252 (commit) via 3032800e2944edf58305c955cdd80c01d1da7c4c (commit) via 355ac0383d2738bbaefdf4fe7fdf0ee73ca49a3d (commit) via 057e39a32e1c3452366447ef0f643f214a25699d (commit) via 2de5199d4a8605fa2841e8519907ad086c007b4c (commit) via 6e1af507d8d0e5f1c8d11c75438953efebb25844 (commit) via f3baed3e4944f202f114e9e5d8780196f92892d2 (commit) via 07b30454a1c30ce45e3fc6b664425e4855b4eb20 (commit) via 11e54c1bd90cb4cabcde507e8d56e2724b4ca458 (commit) via b787cf42b1bd5f6ea342e602880a82ad9bcda7d7 (commit) via 2ce44621c197854d3eeeae52be5216136b8a414f (commit) via 9da779365c02b4a979f58503157c0a86866d1741 (commit) via e07f0f96488858cfca1dedbd7cb08bd48688fa5a (commit) via db816ff7acb5565e5697639e335312f795274c96 (commit) via ac58779be4c37e91a3698ec45c761d96e36b0074 (commit) via c343803c424bdf125a07ad296ad54fa3dc78bf6b (commit) via 8bf6105071ab1aa991a0761581fae80457f1a33d (commit) via f68240a5e33eced3032b0bfca5c00be8944fd275 (commit) via a75df5cc5dbb693f5a3d3fe1ad19e47b6b17b79e (commit) via e0605102fdc1d9fb8ece9a153cd133629b68c130 (commit) via dec1ff82828c0b4204098cca0098f57fbeb798a0 (commit) via 467de4645f4a796e272b2177b371fc746c50d5f2 (commit) via 0ecfd9a6f8fba15684db7bc4bcf47b40b23ef0d6 (commit) via 3a929926a790230e4b3318416ee6eebb0e3e35c5 (commit) via 3d2f6604064f5b1c97380e47a18e845d3c249916 (commit) via d07af9c058900dd21ebb83c73368581e52ef0a7c (commit) via 56e02e3cda921077c89036f7218ba2d7ff6a1924 (commit) via a3e8ea1a16851333fe7edceaee56ac820fe038dc (commit) via bd52951129aa12bbc76ea8f5e82dfd52fc84bf27 (commit) via bc789818d9edd2a590c3ec88241a286c955a25d0 (commit) via e1d57e45916ac9ae96db9a0e43ff813960a7e0c2 (commit) via 21d8857dbd932f03974c637113dd41d290c9f886 (commit) via 676f51cb9d6476a1babfde63a929337870d0f6f9 (commit) via a755137c422f4e4d6731f88b351c019860dc29d4 (commit) via c5f57473b148124bf0e9715e2362abf93bb981e3 (commit) via bd0d1758171d2af069e2a277eed5e6fa65919ab5 (commit) via 072ca5eae217783c4bb986bac3db1dd7c0b70c4b (commit) via 5adcde54c088d5ba957133330569afa65b8aea0d (commit) via 649708b02c904af6a21ed548352c2cc6150dde9b (commit) via 41bfb5bf6c8102a1fcad75cd5fc9c36efda7fe27 (commit) via 1b3c5fc34fc13af27c0445f7e5c689e4e67424b9 (commit) via 2fb443eb8d58bbba0c1b00dc9ebc7328011aa54e (commit) via 346a7047ecf51ceaafe014ebbe9d456cdbec2fb9 (commit) via 0aae9dee85aba9b26d1de1de77ee573dd06fbcd2 (commit) via 8f7db24a0ce04ccda9037f34e35c396762878c3d (commit) via 1c41adcd3251e6a980dd3f7bdb01e0457346ade4 (commit) via 22fa65e45a28207725d89c61acbc0083dfa69b8b (commit) via e16b3828eafec635405cc34beb8f08db117d7331 (commit) via cbc87a1a6d72a41ebf25cd9bb57e63b07bfcfdfe (commit) via 9a4b7643da53df33552a50d9f02ddf5be5aef883 (commit) via 6d97fbcc2da8fcbcfc90c617c1a8147e2bf8433c (commit) via d3973abe0f86afdd95a53e5aa658780d61ad4bca (commit) via 5335873eab24ccc7205d656de02f437471000878 (commit) via 6edb64c24bc29a1904089fd41a62fcae8e0a866f (commit) via 4d9063a0065b533533b50079f105c06b7c111c10 (commit) via 858951b1dbf7fe51aef43a286f19dd8c5a53d982 (commit) via aa0d70bb971e3eb8f88fd07912540ba1e2117ddd (commit) via f4dceb8f18539c6536e6991c67ff98e48ae9c578 (commit) via b87ab1c2d70621ba35935ec342c4594ee2f56622 (commit) via e9393c501f592471e827e68f8701d8932a074cfc (commit) via 53a4fcc44277d19bc40fed7e6e9c98cc9cce53aa (commit) via 3ff4c0d42980ac062fc051d48983a6c63458ddd1 (commit) via f0529b15c17cf0511b209bc19cf1bf5493f92d5f (commit) via a9254a421c8b70647281df608dfd1eeff65bd39b (commit) via d7bc03e807d5b85360f1dddeaa712d3ab80f9468 (commit) via 028ca042bd428446ef47cd72451e5462ebddada2 (commit) via 398318c54fefd8e20412613e403cf43ff7aa613e (commit) via ef5d914ca7b0ff7b3118a4afa95ef0a9c96c72ed (commit) via 70f7b24844aa36c3609628187e4cf8b961ad0637 (commit) via 9bda7986b31bcba4943fb262abbe5e4e86a64af8 (commit) via 74d94577be67541784a200e92d38bcaa3df6adf7 (commit) via 440995e23e6c1cbe1d95a607fbc2afe96b9b8108 (commit) via 0ffbfae55adfdf8e5960e0a331d3f560005ea454 (commit) via 25eeae047975d2f5c9b7cfe28df567e140c39888 (commit) via 057dc844b14660a577ba62a3dfa8ab9bd2dfcb9d (commit) via ea900af9648329d461a8829002fe6d63826a7b8c (commit) via 64c986836f3b35e76fb377f2d55e15bd6a85bdd9 (commit) via 6ae551d7da9171e199824d2339a2e71c11f98470 (commit) via 67e36d48f2a31e8b475324a0333d359bb341d51a (commit) via aeb7962a890a6ebd6bc223937670470d7c735f08 (commit) via 2b0d300a9fd199e105501144a5a2883632eec088 (commit) via d4276fb4f58e25c0e426d91140f09de0beaf1e2b (commit) via f0f68e11719f68799561fef1299871f1007cd13d (commit) via ec6579e9c6771650031096299d59b019551bffc2 (commit) via 66f11cc3df716dd6b48056f9ae7abbfc4437e1d9 (commit) via 383dcc343a903e7cdd5467cbb87c4bc7c56448d7 (commit) via 72c85a087a7b6c6d41da9fb4fa7fcb7b5077ea42 (commit) via fb5d9eef4cafb7880d07e42213509a2714170efb (commit) via 0f7996184e9b13adab8c87b29f6b9c280c1dd6bf (commit) via 833961f7c23d3815b1d4ba4a64a96fae3f7b17b6 (commit) via de928c1f2f82a160b85488fcaa986905f8482074 (commit) via 5efb5752da0afc397a23fe4a19eb8cb2f3bd8b46 (commit) via d62624d01c9b336f74b50e3b9a53f1b33794497b (commit) via b89320fa840142461b254e99ec32f5e0cb053152 (commit) via a5c67f4b5ee3e522ccfacc2ff800cd42e9243c68 (commit) via d8be1ca0736a3ff60225468bdefbc9556c97aaaf (commit) via c60c88d25e244d2501520a554ab06300191d3bba (commit) via 84010b340ba82ad2792e5a0764d9451101a91f34 (commit) via abece227974721020f37e51fe8319ae9a5d1a4b6 (commit) via 02778e3ee6b52f99209a712a5f1eb37809ad5072 (commit) via 39737dfaea78edba89af8fc9fc3cb89c4fe56eba (commit) via ad3dc28ac7a047561dd7f6ae0c482b4a52baa13e (commit) via 15152029688130df2045d1d1131cf8488e206dc6 (commit) via 5595ac6a6c8378ad2187a66c70e0166cbf29be46 (commit) via 205587dcaf298c8eee61808c86360e9af5edb1db (commit) via 550b23035923da25185122c74b43a4b5d6554c8f (commit) via 45e16cffd9bc15e3ae32918f4c53b63b5b08d53a (commit) from 4c8995f3acf475d9f63afd133bc019e0034f1c2c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 25ed0d357da32a8f9e95ddff130ff59a0caae83b Merge: 39737dfaea78edba89af8fc9fc3cb89c4fe56eba ca310775e216d1c75c8da2f2fdbdd274ce36d402 Author: Jan Kratochvil Date: Fri Feb 26 18:57:40 2010 +0100 Merge remote branch 'origin/master' into archer-jankratochvil-ifunc commit 39737dfaea78edba89af8fc9fc3cb89c4fe56eba Author: Jan Kratochvil Date: Sun Feb 14 23:55:37 2010 +0100 Remove the OSABI stub part. ----------------------------------------------------------------------- Summary of changes: ChangeLog | 25 + Makefile.in | 1 + Makefile.tpl | 1 + bfd/ChangeLog | 74 +++ bfd/configure.host | 6 + bfd/elf-bfd.h | 4 + bfd/elf.c | 116 ++++-- bfd/elf32-arm.c | 72 +++- bfd/elf32-avr.c | 23 +- bfd/elf32-i386.c | 5 +- bfd/elf32-ppc.c | 3 +- bfd/elf32-sparc.c | 5 +- bfd/elf64-ppc.c | 7 +- bfd/elf64-sparc.c | 3 +- bfd/elf64-x86-64.c | 5 +- bfd/elflink.c | 18 + bfd/elfxx-mips.c | 4 +- bfd/po/vi.po | 8 +- bfd/reloc.c | 14 +- bfd/version.h | 2 +- config/ChangeLog | 4 + config/elf.m4 | 27 ++ configure | 82 +++- configure.ac | 48 ++- gdb/ChangeLog | 397 ++++++++++++++++ gdb/MAINTAINERS | 1 + gdb/Makefile.in | 26 +- gdb/NEWS | 50 ++- gdb/alpha-linux-tdep.c | 4 - gdb/amd64-linux-tdep.c | 3 - gdb/arm-linux-tdep.c | 3 - gdb/arm-symbian-tdep.c | 121 +++++ gdb/avr-tdep.c | 6 +- gdb/breakpoint.c | 152 ++++++- gdb/c-exp.y | 412 +++++++++++------- gdb/c-typeprint.c | 23 +- gdb/configure.tgt | 30 +- gdb/cp-namespace.c | 1 + gdb/darwin-nat.c | 7 +- gdb/defs.h | 5 +- gdb/doc/ChangeLog | 42 ++ gdb/doc/gdb.texinfo | 408 ++++++++++++++++- gdb/doc/gdbint.texinfo | 4 +- gdb/doc/observer.texi | 24 +- gdb/dwarf2loc.c | 36 +- gdb/dwarf2read.c | 2 +- gdb/frv-linux-tdep.c | 26 +- gdb/frv-tdep.c | 5 +- gdb/frv-tdep.h | 3 - gdb/gcore.c | 22 +- gdb/gdb_ptrace.h | 6 +- gdb/gdbserver/ChangeLog | 14 + gdb/gdbserver/configure | 71 +++- gdb/gdbserver/configure.ac | 27 +- gdb/gdbserver/i386-low.c | 5 +- gdb/gdbtypes.c | 7 - gdb/gdbtypes.h | 36 +-- gdb/gnu-nat.c | 7 +- gdb/hppa-linux-tdep.c | 26 +- gdb/hppa-tdep.c | 6 +- gdb/hppa-tdep.h | 4 - gdb/i386-linux-tdep.c | 3 - gdb/i386-nat.c | 6 +- gdb/ia64-linux-tdep.c | 4 - gdb/inf-ptrace.c | 10 +- gdb/inf-ttrace.c | 9 +- gdb/infcmd.c | 8 +- gdb/inferior.c | 43 ++- gdb/inferior.h | 19 + gdb/inflow.c | 3 +- gdb/infrun.c | 398 +++++++++++++---- gdb/jit.c | 2 +- gdb/linespec.c | 44 ++- gdb/linux-nat.c | 27 -- gdb/m2-typeprint.c | 3 - gdb/m32r-linux-tdep.c | 4 - gdb/mi/mi-cmds.c | 4 +- gdb/mi/mi-cmds.h | 5 +- gdb/mi/mi-interp.c | 117 ++++- gdb/mi/mi-main.c | 254 ++++++++--- gdb/mi/mi-parse.c | 31 ++- gdb/mi/mi-parse.h | 2 + gdb/microblaze-linux-tdep.c | 4 - gdb/mips-linux-tdep.c | 4 - gdb/mn10300-linux-tdep.c | 4 - gdb/nto-procfs.c | 5 +- gdb/objfiles.c | 7 +- gdb/osabi.c | 3 +- gdb/p-typeprint.c | 2 - gdb/ppc-linux-tdep.c | 36 +-- gdb/procfs.c | 4 +- gdb/python/py-block.c | 418 +++++++++++++++++ gdb/python/py-frame.c | 119 +++++- gdb/python/py-symbol.c | 419 +++++++++++++++++ gdb/python/py-symtab.c | 523 ++++++++++++++++++++++ gdb/python/py-type.c | 56 ++- gdb/python/python-internal.h | 23 +- gdb/python/python.c | 12 +- gdb/remote.c | 61 ++-- gdb/sh-linux-tdep.c | 4 - gdb/solib-darwin.c | 4 - gdb/solib-frv.c | 4 - gdb/solib-pa64.c | 4 - gdb/solib-som.c | 4 - gdb/solib-spu.c | 4 - gdb/solib-svr4.c | 41 ++- gdb/sparc-linux-tdep.c | 32 ++- gdb/sparc64-linux-tdep.c | 32 ++- gdb/symfile.c | 62 ++-- gdb/symfile.h | 2 + gdb/syscalls/sparc-linux.xml | 344 ++++++++++++++ gdb/syscalls/sparc64-linux.xml | 326 ++++++++++++++ gdb/target.c | 2 + gdb/target.h | 7 +- gdb/testsuite/ChangeLog | 136 ++++++ gdb/testsuite/configure | 3 +- gdb/testsuite/configure.ac | 4 +- gdb/testsuite/gdb.arch/thumb2-it.exp | 8 +- gdb/testsuite/gdb.base/attach.exp | 23 +- gdb/testsuite/gdb.base/catch-syscall.exp | 12 +- gdb/testsuite/gdb.base/charset.exp | 47 +-- gdb/testsuite/gdb.base/comp-dir/subdir/dummy.txt | 1 + gdb/testsuite/gdb.base/completion.exp | 5 +- gdb/testsuite/gdb.base/list.exp | 3 + gdb/testsuite/gdb.base/shmain.c | 1 - gdb/testsuite/gdb.base/sizeof.c | 24 +- gdb/testsuite/gdb.base/unload.c | 12 +- gdb/testsuite/gdb.base/valgrind-db-attach.exp | 12 +- gdb/testsuite/gdb.base/watch-read.c | 33 ++ gdb/testsuite/gdb.base/watch-read.exp | 109 +++++ gdb/testsuite/gdb.base/watchpoint-solib.c | 6 +- gdb/testsuite/gdb.cp/cpcompletion.exp | 3 +- gdb/testsuite/gdb.cp/namespace.exp | 7 +- gdb/testsuite/gdb.cp/overload.cc | 5 +- gdb/testsuite/gdb.cp/overload.exp | 19 +- gdb/testsuite/gdb.dwarf2/member-ptr-forwardref.S | 450 ++++++++++---------- gdb/testsuite/gdb.java/jprint.exp | 3 + gdb/testsuite/gdb.java/jprint.java | 6 +- gdb/testsuite/gdb.mi/mi-break.exp | 7 +- gdb/testsuite/gdb.mi/mi-nonstop.exp | 2 +- gdb/testsuite/gdb.python/Makefile.in | 3 +- gdb/testsuite/gdb.python/py-block.c | 41 ++ gdb/testsuite/gdb.python/py-block.exp | 79 ++++ gdb/testsuite/gdb.python/py-cmd.exp | 9 +- gdb/testsuite/gdb.python/py-frame.exp | 9 +- gdb/testsuite/gdb.python/py-function.exp | 9 +- gdb/testsuite/gdb.python/py-prettyprint.exp | 10 +- gdb/testsuite/gdb.python/py-symbol.c | 62 +++ gdb/testsuite/gdb.python/py-symbol.exp | 132 ++++++ gdb/testsuite/gdb.python/py-symtab.exp | 73 +++ gdb/testsuite/gdb.python/py-template.exp | 9 +- gdb/testsuite/gdb.python/py-type.exp | 18 +- gdb/testsuite/gdb.python/py-value.exp | 13 +- gdb/testsuite/gdb.xml/tdesc-arch.exp | 13 +- gdb/testsuite/gdb.xml/tdesc-regs.exp | 15 +- gdb/testsuite/lib/gdb.exp | 17 +- gdb/tracepoint.c | 61 +++ gdb/tracepoint.h | 3 + gdb/utils.c | 20 + gdb/varobj.c | 18 +- gdb/version.in | 2 +- gdb/windows-nat.c | 5 +- gdb/xtensa-linux-tdep.c | 4 - include/elf/ChangeLog | 25 +- include/elf/arm.h | 7 +- include/elf/avr.h | 3 +- include/opcode/ChangeLog | 4 + include/opcode/mips.h | 6 +- include/vms/ChangeLog | 5 + include/vms/dmt.h | 45 ++ include/vms/dst.h | 165 +++++++ include/vms/eeom.h | 60 +++ include/vms/egps.h | 50 ++ include/vms/egsd.h | 61 +++ include/vms/egst.h | 39 ++ include/vms/egsy.h | 54 +++ include/vms/eiaf.h | 80 ++++ include/vms/eicp.h | 38 ++ include/vms/eiha.h | 50 ++ include/vms/eihd.h | 140 ++++++ include/vms/eihi.h | 50 ++ include/vms/eihs.h | 63 +++ include/vms/eihvn.h | 56 +++ include/vms/eisd.h | 95 ++++ include/vms/emh.h | 72 +++ include/vms/eobjrec.h | 48 ++ include/vms/esdf.h | 39 ++ include/vms/esrf.h | 34 ++ include/vms/etir.h | 114 +++++ include/vms/shl.h | 51 +++ opcodes/ChangeLog | 15 + opcodes/arm-dis.c | 50 +- opcodes/po/vi.po | 8 +- opcodes/ppc-dis.c | 4 +- sim/ppc/ChangeLog | 4 + sim/ppc/ppc-instructions | 1 + sim/rx/ChangeLog | 9 + sim/rx/config.in | 107 +++++ sim/rx/configure | 13 + sim/rx/configure.in | 1 + sim/rx/main.c | 8 + sim/sh/ChangeLog | 6 + sim/sh/interp.c | 19 +- 203 files changed, 8037 insertions(+), 1375 deletions(-) create mode 100644 config/elf.m4 create mode 100644 gdb/arm-symbian-tdep.c create mode 100644 gdb/python/py-block.c create mode 100644 gdb/python/py-symbol.c create mode 100644 gdb/python/py-symtab.c create mode 100644 gdb/syscalls/sparc-linux.xml create mode 100644 gdb/syscalls/sparc64-linux.xml create mode 100644 gdb/testsuite/gdb.base/comp-dir/subdir/dummy.txt create mode 100644 gdb/testsuite/gdb.base/watch-read.c create mode 100644 gdb/testsuite/gdb.base/watch-read.exp create mode 100644 gdb/testsuite/gdb.python/py-block.c create mode 100644 gdb/testsuite/gdb.python/py-block.exp create mode 100644 gdb/testsuite/gdb.python/py-symbol.c create mode 100644 gdb/testsuite/gdb.python/py-symbol.exp create mode 100644 gdb/testsuite/gdb.python/py-symtab.exp create mode 100644 include/vms/ChangeLog create mode 100644 include/vms/dmt.h create mode 100644 include/vms/dst.h create mode 100644 include/vms/eeom.h create mode 100644 include/vms/egps.h create mode 100644 include/vms/egsd.h create mode 100644 include/vms/egst.h create mode 100644 include/vms/egsy.h create mode 100644 include/vms/eiaf.h create mode 100644 include/vms/eicp.h create mode 100644 include/vms/eiha.h create mode 100644 include/vms/eihd.h create mode 100644 include/vms/eihi.h create mode 100644 include/vms/eihs.h create mode 100644 include/vms/eihvn.h create mode 100644 include/vms/eisd.h create mode 100644 include/vms/emh.h create mode 100644 include/vms/eobjrec.h create mode 100644 include/vms/esdf.h create mode 100644 include/vms/esrf.h create mode 100644 include/vms/etir.h create mode 100644 include/vms/shl.h First 500 lines of diff: diff --git a/ChangeLog b/ChangeLog index 7d8f7f2..eed5123 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,28 @@ +2010-02-17 Nick Clifton + + PR 11238 + * Makefile.tpl (local-distclean): Also remove config.cache files in + sub-directories as there may not be Makefiles present in the + sub-directories. + * Makefile.tpl: Use "-exec rm {}" rather than "-delete" to delete + the config.cache files found by the find command. + + * Makefile.in: Regenerate. + * configure.ac: Revert previous delta. + * configure: Regenerate. + +2010-02-15 Nick Clifton + + PR 11238 + * configure.ac: Delete config.cache files in sub-directories when + deleting Makefiles. + * configure: Regenerate. + +2010-02-15 Nick Clifton + + * configure.ac: Sync from gcc. + * configure: Regenerate. + 2010-01-31 Kaveh R. Ghazi Sync from gcc: diff --git a/Makefile.in b/Makefile.in index 8f9be0c..c9ff0e5 100644 --- a/Makefile.in +++ b/Makefile.in @@ -2658,6 +2658,7 @@ local-distclean: -rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null -rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null -rmdir fastjar gcc libiberty texinfo zlib 2>/dev/null + -find . -name config.cache -exec rm -f {} \; 2>/dev/null local-maintainer-clean: @echo "This command is intended for maintainers to use;" diff --git a/Makefile.tpl b/Makefile.tpl index 889c040..98b526c 100644 --- a/Makefile.tpl +++ b/Makefile.tpl @@ -771,6 +771,7 @@ local-distclean: -rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null -rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null -rmdir fastjar gcc libiberty texinfo zlib 2>/dev/null + -find . -name config.cache -exec rm -f {} \; \; 2>/dev/null local-maintainer-clean: @echo "This command is intended for maintainers to use;" diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a3bec44..f864302 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,77 @@ +2010-02-25 Alan Modra + + PR ld/11304 + * elf.c (_bfd_elf_init_private_section_data): Rename need_group + to final_link and invert. For final link allow some flags to + differ. Don't specially allow flags to be all zero. + +2010-02-24 Alan Modra + + PR binutils/10858 + * elfxx-mips.c (mips_elf_create_dynamic_relocation): Ise + SYMBOL_REFERENCES_LOCAL to exclude entries from the dynamic symbol + table. + +2010-02-23 Andrew Zabolotny + + PR binutils/11297 + * elf32-avr.c (elf_avr_howto_table): Add R_AVR_8. + (avr_reloc_map): Map BFD_RELOC_8 to R_AVR_8. + +2010-02-22 Alan Modra + + * reloc.c (bfd_check_overflow): When forming addrmask, shift + fieldmask left by rightshift. + (_bfd_relocate_contents): Likewise. Use rightshift addrmask in all + overflow checks. + +2010-02-20 H.J. Lu + + * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): Don't check + STT_GNU_IFUNC on large common symbol. + +2010-02-18 H.J. Lu + + * elf32-i386.c (elf_i386_add_symbol_hook): Don't set + has_ifunc_symbols if the symbol comes from a shared library. + * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. + * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise. + * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise. + * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise. + * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): Likewise. + +2010-02-19 Alan Modra + + * elf.c (_bfd_elf_fixup_group_sections): New function, split out from.. + (_bfd_elf_copy_private_header_data): ..here. + * elflink.c (_bfd_elf_size_group_sections): New function. + (bfd_elf_size_dynamic_sections): Call it. + * elf-bfd.h (_bfd_elf_size_group_sections): Declare. + (_bfd_elf_fixup_group_sections): Declare. + +2010-02-18 Matthew Gretton-Dann + + * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add support for + merging Tag_DIV_use, Tag_MPextension_use, and + Tag_MPextension_use_legacy tags. + +2010-02-18 Alan Modra + + * elf.c (bfd_elf_set_group_contents): Revert accidental 2009-01-15 + commit. Don't write zeros for removed group members. + (_bfd_elf_copy_private_header_data): Adjust size of group section + when group members are removed by objcopy. + +2010-02-15 Dave Korn + + PR binutils/11280 + * configure.host (*-*-solaris2.11): Add host define to select + valid default code page for windres/windmc on solaris. + +2010-02-15 Nick Clifton + + * po/vi.po: Updated Vietnamese translation. + 2010-02-12 Daniel Gutson * elf32-arm.c (elf32_arm_output_arch_local_syms): add diff --git a/bfd/configure.host b/bfd/configure.host index 11b42e0..eb7bfe9 100644 --- a/bfd/configure.host +++ b/bfd/configure.host @@ -56,6 +56,12 @@ mips*-*-riscos*) HDEFINES="-G 4" ;; m68*-hp-hpux*) HDEFINES=-DHOST_HP300HPUX ;; +# Some Solaris systems (osol0906 at least) have a libc that doesn't recognise +# the "MS-ANSI" code page name, so we define an override for CP_ACP (sets the +# default code page used by windres/windmc when not specified by a commandline +# option) to select the "WINDOWS-1252" name instead. See PR11280 for details. +*-*-solaris2.11) HDEFINES=-DCP_ACP=1 ;; + *-*-windows*) HOST_64BIT_TYPE=__int64 HOST_U_64BIT_TYPE="unsigned __int64" diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h index 6d4b8dd..74348d3 100644 --- a/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h @@ -1773,6 +1773,10 @@ extern void _bfd_elf_link_just_syms (asection *, struct bfd_link_info *); extern void _bfd_elf_copy_link_hash_symbol_type (bfd *, struct bfd_link_hash_entry *, struct bfd_link_hash_entry *); +extern bfd_boolean _bfd_elf_size_group_sections + (struct bfd_link_info *); +extern bfd_boolean _bfd_elf_fixup_group_sections +(bfd *, asection *); extern bfd_boolean _bfd_elf_copy_private_header_data (bfd *, bfd *); extern bfd_boolean _bfd_elf_copy_private_symbol_data diff --git a/bfd/elf.c b/bfd/elf.c index 81a21f5..dbb13d4 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -1,7 +1,7 @@ /* ELF executable support for BFD. Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 + 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -2743,17 +2743,16 @@ bfd_elf_set_group_contents (bfd *abfd, asection *sec, void *failedptrarg) while (elt != NULL) { asection *s; - unsigned int idx; s = elt; - if (! elf_discarded_section (s)) + if (!gas) + s = s->output_section; + if (s != NULL + && !bfd_is_abs_section (s)) { + unsigned int idx = elf_section_data (s)->this_idx; + loc -= 4; - if (!gas) - s = s->output_section; - idx = 0; - if (s != NULL) - idx = elf_section_data (s)->this_idx; H_PUT_32 (abfd, idx, loc); } elt = elf_next_in_group (elt); @@ -6057,18 +6056,21 @@ _bfd_elf_init_private_section_data (bfd *ibfd, { Elf_Internal_Shdr *ihdr, *ohdr; - bfd_boolean need_group = link_info == NULL || link_info->relocatable; + bfd_boolean final_link = link_info != NULL && !link_info->relocatable; if (ibfd->xvec->flavour != bfd_target_elf_flavour || obfd->xvec->flavour != bfd_target_elf_flavour) return TRUE; - /* Don't copy the output ELF section type from input if the - output BFD section flags have been set to something different. - elf_fake_sections will set ELF section type based on BFD - section flags. */ + /* For objcopy and relocatable link, don't copy the output ELF + section type from input if the output BFD section flags have been + set to something different. For a final link allow some flags + that the linker clears to differ. */ if (elf_section_type (osec) == SHT_NULL - && (osec->flags == isec->flags || !osec->flags)) + && (osec->flags == isec->flags + || (final_link + && ((osec->flags ^ isec->flags) + & ~ (SEC_LINK_ONCE | SEC_LINK_DUPLICATES)) == 0))) elf_section_type (osec) = elf_section_type (isec); /* FIXME: Is this correct for all OS/PROC specific flags? */ @@ -6079,7 +6081,7 @@ _bfd_elf_init_private_section_data (bfd *ibfd, SHT_GROUP section will have its elf_next_in_group pointing back to the input group members. Ignore linker created group section. See elfNN_ia64_object_p in elfxx-ia64.c. */ - if (need_group) + if (!final_link) { if (elf_sec_group (isec) == NULL || (elf_sec_group (isec)->flags & SEC_LINKER_CREATED) == 0) @@ -6138,52 +6140,92 @@ _bfd_elf_copy_private_section_data (bfd *ibfd, NULL); } -/* Copy private header information. */ +/* Look at all the SHT_GROUP sections in IBFD, making any adjustments + necessary if we are removing either the SHT_GROUP section or any of + the group member sections. DISCARDED is the value that a section's + output_section has if the section will be discarded, NULL when this + function is called from objcopy, bfd_abs_section_ptr when called + from the linker. */ bfd_boolean -_bfd_elf_copy_private_header_data (bfd *ibfd, bfd *obfd) +_bfd_elf_fixup_group_sections (bfd *ibfd, asection *discarded) { asection *isec; - if (bfd_get_flavour (ibfd) != bfd_target_elf_flavour - || bfd_get_flavour (obfd) != bfd_target_elf_flavour) - return TRUE; - - /* Copy over private BFD data if it has not already been copied. - This must be done here, rather than in the copy_private_bfd_data - entry point, because the latter is called after the section - contents have been set, which means that the program headers have - already been worked out. */ - if (elf_tdata (obfd)->segment_map == NULL && elf_tdata (ibfd)->phdr != NULL) - { - if (! copy_private_bfd_data (ibfd, obfd)) - return FALSE; - } - - /* _bfd_elf_copy_private_section_data copied over the SHF_GROUP flag - but this might be wrong if we deleted the group section. */ for (isec = ibfd->sections; isec != NULL; isec = isec->next) - if (elf_section_type (isec) == SHT_GROUP - && isec->output_section == NULL) + if (elf_section_type (isec) == SHT_GROUP) { asection *first = elf_next_in_group (isec); asection *s = first; + bfd_size_type removed = 0; + while (s != NULL) { - if (s->output_section != NULL) + /* If this member section is being output but the + SHT_GROUP section is not, then clear the group info + set up by _bfd_elf_copy_private_section_data. */ + if (s->output_section != discarded + && isec->output_section == discarded) { elf_section_flags (s->output_section) &= ~SHF_GROUP; elf_group_name (s->output_section) = NULL; } + /* Conversely, if the member section is not being output + but the SHT_GROUP section is, then adjust its size. */ + else if (s->output_section == discarded + && isec->output_section != discarded) + removed += 4; s = elf_next_in_group (s); if (s == first) break; } + if (removed != 0) + { + if (discarded != NULL) + { + /* If we've been called for ld -r, then we need to + adjust the input section size. This function may + be called multiple times, so save the original + size. */ + if (isec->rawsize == 0) + isec->rawsize = isec->size; + isec->size = isec->rawsize - removed; + } + else + { + /* Adjust the output section size when called from + objcopy. */ + isec->output_section->size -= removed; + } + } } return TRUE; } +/* Copy private header information. */ + +bfd_boolean +_bfd_elf_copy_private_header_data (bfd *ibfd, bfd *obfd) +{ + if (bfd_get_flavour (ibfd) != bfd_target_elf_flavour + || bfd_get_flavour (obfd) != bfd_target_elf_flavour) + return TRUE; + + /* Copy over private BFD data if it has not already been copied. + This must be done here, rather than in the copy_private_bfd_data + entry point, because the latter is called after the section + contents have been set, which means that the program headers have + already been worked out. */ + if (elf_tdata (obfd)->segment_map == NULL && elf_tdata (ibfd)->phdr != NULL) + { + if (! copy_private_bfd_data (ibfd, obfd)) + return FALSE; + } + + return _bfd_elf_fixup_group_sections (ibfd, NULL); +} + /* Copy private symbol information. If this symbol is in a section which we did not map into a BFD section, try to map the section index correctly. We use special macro definitions for the mapped diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index 0661369..a0694c1 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -9812,11 +9812,33 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd) /* This is the first object. Copy the attributes. */ _bfd_elf_copy_obj_attributes (ibfd, obfd); + out_attr = elf_known_obj_attributes_proc (obfd); + /* Use the Tag_null value to indicate the attributes have been initialized. */ - elf_known_obj_attributes_proc (obfd)[0].i = 1; + out_attr[0].i = 1; - return TRUE; + /* We do not output objects with Tag_MPextension_use_legacy - we move + the attribute's value to Tag_MPextension_use. */ + if (out_attr[Tag_MPextension_use_legacy].i != 0) + { + if (out_attr[Tag_MPextension_use].i != 0 + && out_attr[Tag_MPextension_use_legacy].i + != out_attr[Tag_MPextension_use].i) + { + _bfd_error_handler + (_("Error: %B has both the current and legacy " + "Tag_MPextension_use attributes"), ibfd); + result = FALSE; + } + + out_attr[Tag_MPextension_use] = + out_attr[Tag_MPextension_use_legacy]; + out_attr[Tag_MPextension_use_legacy].type = 0; + out_attr[Tag_MPextension_use_legacy].i = 0; + } + + return result; } in_attr = elf_known_obj_attributes_proc (ibfd); @@ -10151,6 +10173,52 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd) out_attr[i].i = in_attr[i].i; break; + case Tag_DIV_use: + /* This tag is set to zero if we can use UDIV and SDIV in Thumb + mode on a v7-M or v7-R CPU; to one if we can not use UDIV or + SDIV at all; and to two if we can use UDIV or SDIV on a v7-A + CPU. We will merge as follows: If the input attribute's value + is one then the output attribute's value remains unchanged. If + the input attribute's value is zero or two then if the output + attribute's value is one the output value is set to the input + value, otherwise the output value must be the same as the + inputs. */ + if (in_attr[i].i != 1 && out_attr[i].i != 1) + { + if (in_attr[i].i != out_attr[i].i) + { + _bfd_error_handler + (_("DIV usage mismatch between %B and %B"), + ibfd, obfd); + result = FALSE; + } + } + + if (in_attr[i].i != 1) + out_attr[i].i = in_attr[i].i; + + break; + + case Tag_MPextension_use_legacy: + /* We don't output objects with Tag_MPextension_use_legacy - we + move the value to Tag_MPextension_use. */ + if (in_attr[i].i != 0 && in_attr[Tag_MPextension_use].i != 0) + { + if (in_attr[Tag_MPextension_use].i != in_attr[i].i) + { + _bfd_error_handler + (_("%B has has both the current and legacy " + "Tag_MPextension_use attributes"), + ibfd); + result = FALSE; + } + } + + if (in_attr[i].i > out_attr[Tag_MPextension_use].i) + out_attr[Tag_MPextension_use] = in_attr[i]; + + break; + case Tag_nodefaults: /* This tag is set if it exists, but the value is unused (and is typically zero). We don't actually need to do anything here - diff --git a/bfd/elf32-avr.c b/bfd/elf32-avr.c index 0b85105..92c5be9 100644 --- a/bfd/elf32-avr.c +++ b/bfd/elf32-avr.c @@ -473,7 +473,7 @@ static reloc_howto_type elf_avr_howto_table[] = 0xffff, /* dst_mask */ FALSE), /* pcrel_offset */ /* A low 8 bit absolute relocation of 24 bit program memory address. - For LDI command. Will be changed when linker stubs are needed. */ + For LDI command. Will be changed when linker stubs are needed. */ HOWTO (R_AVR_LO8_LDI_GS, /* type */ 1, /* rightshift */ 1, /* size (0 = byte, 1 = short, 2 = long) */ @@ -488,7 +488,7 @@ static reloc_howto_type elf_avr_howto_table[] = 0xffff, /* dst_mask */ FALSE), /* pcrel_offset */ /* A low 8 bit absolute relocation of 24 bit program memory address. - For LDI command. Will be changed when linker stubs are needed. */ + For LDI command. Will be changed when linker stubs are needed. */ HOWTO (R_AVR_HI8_LDI_GS, /* type */ 9, /* rightshift */ 1, /* size (0 = byte, 1 = short, 2 = long) */ @@ -501,7 +501,21 @@ static reloc_howto_type elf_avr_howto_table[] = FALSE, /* partial_inplace */ 0xffff, /* src_mask */ 0xffff, /* dst_mask */ - FALSE) /* pcrel_offset */ + FALSE), /* pcrel_offset */ + /* 8 bit offset. */ + HOWTO (R_AVR_8, /* type */ + 0, /* rightshift */ + 0, /* size (0 = byte, 1 = short, 2 = long) */ + 8, /* bitsize */ + FALSE, /* pc_relative */ + 0, /* bitpos */ + complain_overflow_bitfield,/* complain_on_overflow */ + bfd_elf_generic_reloc, /* special_function */ + "R_AVR_8", /* name */ + FALSE, /* partial_inplace */ + 0x000000ff, /* src_mask */ + 0x000000ff, /* dst_mask */ + FALSE), /* pcrel_offset */ }; /* Map BFD reloc types to AVR ELF reloc types. */ @@ -539,7 +553,8 @@ static const struct avr_reloc_map avr_reloc_map[] = { BFD_RELOC_AVR_CALL, R_AVR_CALL }, hooks/post-receive -- Repository for Project Archer.