public inbox for archer-commits@sourceware.org help / color / mirror / Atom feed
From: jkratoch@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] archer-jankratochvil-python: Merge commit 'origin/archer-tromey-python' into archer-jankratochvil-python Date: Fri, 26 Jun 2009 13:51:00 -0000 [thread overview] Message-ID: <20090626135108.29160.qmail@sourceware.org> (raw) The branch, archer-jankratochvil-python has been updated via 725480fec09998dbd52df1b30fa5aaabaf03f004 (commit) via 18d519b77a10771c92b8942f9f4ba202a10182a0 (commit) via 27864e441f63a596e0c6896bf26e5594949332a3 (commit) via f8d2da2d8353b6850f847fd3f0b710e27cf19c3d (commit) via 1657fe434a4c30495959f707c80c7deb1736f883 (commit) via d56fb1922950addd30c761755328ab22e11ece1a (commit) via 204034ea25dd552ffb3c464e3495373ae95a1c29 (commit) via 631162cfc21c649cc7b4348c34d82141458c3897 (commit) via d6a564476a586759e0197355ec414c57c465f0f7 (commit) via bdbbc99af120cbed5ab7e70a5cc641e25c45693f (commit) via 4aba94aee1ec62631e374f56e7b663228ea9b844 (commit) via a5133b5808c88f924471b54adb995389fe271143 (commit) via 00ceaa46a7b32de3725c71fa7cfe1d49bae988a9 (commit) via dd2b7c83458971fe9913fa090f7ff0ac8908dcb9 (commit) via 670c9f14b289153d9e6cee63b6a07395f27da411 (commit) via e8f8ceab0830198c9f8417f4aaa78ed8cec565ec (commit) via d99cc5ff7f712fa95d0088d61fdb1388d7c7f7fd (commit) via 99fed820d59957045cab648b0f590eb2f1608fdc (commit) via 07517a764e067b0d51aad3ea709eece78c129ffa (commit) via dd3c068a8992a62520966b7b995c1eab633e4d01 (commit) via ee82b0f3ce7b4cb241a4a47b82bd160a1a9d584f (commit) via a7eab7ca9f3e72649d20061bb7fb82d00157ec4e (commit) via 266b32c46c0490da02454d11925ae2c957e4a8e7 (commit) via b792e3f279f2e97426551c6def0d54175345ba12 (commit) via 94f728e3e2cba80e7e69e7516787f96251196744 (commit) via 94cd6b61db67d25c1f490f7b7a2fbf6ca33de917 (commit) via da85b7464016e598ab52d749011248be3349a97c (commit) via 774d588d6a6625f1429380fb188c9d895e1b3828 (commit) via 6438f4615202149330f83f2a00a24f899ec0488d (commit) via 91f83ec148e00425a56eb0bbd58b92f83e677f44 (commit) via 611ecd1eccf8b1b75dac0c7e815938e893133143 (commit) via 62ac46f24ce72e95225f11da6276fdbf4a8c0084 (commit) via 28fd786ae855936d970046edb0923e34670bb103 (commit) via a3bfe50522d5569e1448ed658de1c6095863b539 (commit) via 1598d0587cbfe0af5f819a36e874b06ca38879b3 (commit) via d870112d827ffe607896358f6c7bb99aed210c57 (commit) via 04687403162fc6cd98679d98abfc7b34a2d44c83 (commit) via c7d9ddfbfc71bdb63152defdc3cd38217bd2c84f (commit) via cb9e0721888056bf67f56cdd718142a33361cb0a (commit) via eaaf690a1a521b88418bb71d41cf620e11949692 (commit) via b494f111290407d0aff43245d95d685f742c2574 (commit) via e689d32aa08e4e44927e308b45a6577e2e166547 (commit) via 50c163f184912dc8c49918527aaab5e79a7406c9 (commit) via dc819dc03600217379d46d9b2035081bf0998844 (commit) via 6bc1281be79a0301af5975312d6041b26f5f0d09 (commit) via 1c942a12c392ccb841d10d152dd8a75ba0f8c58b (commit) via 8b3b9e0e5b245a830df492eb8ad53a3b2accdefd (commit) via dfe0569acfc83773bffbbee3c3b367f95c24aca6 (commit) via b4008950667b96caeae8da75fa88c4fb0c34ea81 (commit) via 08a3baba8d4c0e08295cf694ad886902346b205b (commit) via ca4aee6f39522ca9d5688a3232f98053748bd76c (commit) via 2ea0c9c0a1be8813e735544bac92d75a544e0d4b (commit) via e5ef087820ce89b48b31d3df368ca9c5cc6faa39 (commit) via a3f53d04c2005ca3ebe4d1f9d8a35d3b0746e01c (commit) via 98c8f4ad592e12f048aa0283f811938069e9c8c9 (commit) via 6a5159cf2e62b4c038aad5197b56f39c2c4b7828 (commit) via 35a298634d6dba3a8d504018e3e3883270dd82b4 (commit) via 9a60c03aaabe878f395e4158140b910c78115c70 (commit) via 23f94c7e31924c5f4a75160b6e190320788bc015 (commit) via f802b04a465484d532631a283282d82f1eaf4742 (commit) via d3c83ad5ec9f7672b87af9ad29279f459e53da11 (commit) via cb2b7a541caeb06fb445bcadd785c61e3fb6d44a (commit) via fd8aac6a938dc4bb127a0b4c114611e49e108b6d (commit) via 9fb6f32c7058328ec08efac2eb2c4838261b9705 (commit) via 0ab7f7fff17e89d3a01dd720b4c857120af6dd95 (commit) via b5fae1114b5f6b2748e864cd42668f5a70db7e27 (commit) via ea59c1b78c91bf5fa3f86bdef2f0a982b62a63c2 (commit) via ede4b6284a7269c9019afc1e609b15ff965dc5bd (commit) via 63c0f33ffb33ec6412a7bed6d77e5f2329fa9fee (commit) via 9c3a1d66a1cf9ad0b565ca9a9421ddcb6e074dfe (commit) via f890dfe48b075970744089b96086cae8a523e7f3 (commit) via 6999df1e2bc1dc0758782220f3b05997f1cb12cc (commit) via 6f72e3aabb5003b122630ba710030e0724b753e9 (commit) via 23d4c598a61989a7cb8a617e41d1649a82e41c69 (commit) via 5c9cfba5481ca11270ae4b66f334589b1246b74b (commit) via 8f2d11a0ab6b41dcb2a16cef2746f6db24c8eb30 (commit) via 30694f93d4a412614d819cbf361102cc26bff1ba (commit) via fbb87559bb19198db0265d0e4402639a6bb1191d (commit) via b27d958ef69eef2dece490af88a6062ae4e8b5a5 (commit) via bdeb17716c0e7deab059245d9b0297cf02c7e66a (commit) via 3aa76975264f166f4a0cfc02682c29f55b3ca82f (commit) via efca68d4734dd8aed126161eae4406fbd3dbf0f9 (commit) via 3fbdedd57f5502cf99a7a6a6a4a69f839d6301b1 (commit) via 41a6048fa52e72d36eec64f6f63614f504fdad74 (commit) via 007e2beed8f9a6eb7a94f5cd08f6f4550b9df995 (commit) via e86f805127ee532e968dda33d291e8130f15eeb1 (commit) via 0eed6da5f6a39b6c2220eeb6df9db99866505b1f (commit) via 91037e3c68f9959687d98e050db7c021a72f6ba1 (commit) via ffc8d494a22c525b1603d1396282a7202ddd47dc (commit) via 0219d54f165088785f56e7dfe046a8b81aa30d65 (commit) via 7c9a1d3de8ca1071889504bda5126f429cfef826 (commit) via f9bedb806c036ba345887d86dbb280a0d48189c3 (commit) via ca89850fb293b9367ba478c3b64c0a3a954013bb (commit) via f04484802a7a2a2e0e2a9ca8fc431e6286bbb3b1 (commit) via 46d9edb3cc87900695ed4f72b3db11d6b39f07f3 (commit) via 33b624c666c0657d879322da307a8ff9712d5017 (commit) via 1f875a4da263b0d5be4a01cb9fb7079d1c26a74f (commit) via 01a7fe27ba681c9c5cca7a0fea7e3c32db019105 (commit) via 4aafb4fe9ace5b76de1d315dd31321a8e19233b2 (commit) via 4122c5c211b4ce5345579bfc2de9e20d473c8109 (commit) via 23da2762737346f683b2be1db5d4305c80ce33fe (commit) via 82879e9f139e22f6d7b8846399a62594474e4f77 (commit) from 250924957fe147f3d74543f4d731e0e7dcb1eeea (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 725480fec09998dbd52df1b30fa5aaabaf03f004 Merge: 18d519b77a10771c92b8942f9f4ba202a10182a0 27864e441f63a596e0c6896bf26e5594949332a3 Author: Jan Kratochvil <jan.kratochvil@redhat.com> Date: Tue Apr 7 19:57:12 2009 +0200 Merge commit 'origin/archer-tromey-python' into archer-jankratochvil-python commit 18d519b77a10771c92b8942f9f4ba202a10182a0 Merge: 250924957fe147f3d74543f4d731e0e7dcb1eeea f8d2da2d8353b6850f847fd3f0b710e27cf19c3d Author: Jan Kratochvil <jan.kratochvil@redhat.com> Date: Tue Apr 7 18:22:13 2009 +0200 Merge commit 'origin/master' into archer-jankratochvil-python Conflicts: gdb/breakpoint.h gdb/doc/gdb.texinfo gdb/dwarf2read.c gdb/python/python-frame.c gdb/python/python-internal.h gdb/python/python-value.c gdb/python/python.c gdb/testsuite/gdb.python/python-frame.exp gdb/testsuite/gdb.python/python-value.exp ----------------------------------------------------------------------- Summary of changes: ChangeLog | 5 + bfd/ChangeLog | 154 +++ bfd/bfd-in.h | 4 + bfd/bfd-in2.h | 4 + bfd/coff-arm.c | 10 +- bfd/coff-rs6000.c | 504 ++++---- bfd/coff-x86_64.c | 7 +- bfd/cpu-arm.c | 4 +- bfd/elf-attrs.c | 4 +- bfd/elf32-arm.c | 145 ++- bfd/elf32-vax.c | 44 +- bfd/elf32-xtensa.c | 7 +- bfd/elflink.c | 3 +- bfd/libpei.h | 1 + bfd/peXXigen.c | 82 ++ bfd/section.c | 10 + bfd/version.h | 2 +- bfd/xcofflink.c | 1159 +++++++++++-------- djunpack.bat | 2 +- gdb/ChangeLog | 290 +++++- gdb/NEWS | 13 + gdb/ada-lang.h | 4 +- gdb/ada-tasks.c | 5 +- gdb/breakpoint.c | 555 +++++++++- gdb/breakpoint.h | 29 +- gdb/config/djgpp/fnchange.lst | 165 +++- gdb/cp-name-parser.y | 2 +- gdb/cp-valprint.c | 28 +- gdb/doc/ChangeLog | 42 + gdb/doc/gdb.texinfo | 186 ++- gdb/dwarf2read.c | 4 +- gdb/gdbserver/ChangeLog | 427 +++++++ gdb/gdbserver/Makefile.in | 3 +- gdb/gdbserver/event-loop.c | 504 ++++++++ gdb/gdbserver/gdb_proc_service.h | 4 +- gdb/gdbserver/inferiors.c | 169 +++- gdb/gdbserver/linux-low.c | 1368 ++++++++++++++++------ gdb/gdbserver/linux-low.h | 35 +- gdb/gdbserver/mem-break.c | 47 +- gdb/gdbserver/mem-break.h | 5 + gdb/gdbserver/proc-service.c | 5 +- gdb/gdbserver/remote-utils.c | 364 +++++-- gdb/gdbserver/server.c | 1439 +++++++++++++++-------- gdb/gdbserver/server.h | 154 +++- gdb/gdbserver/spu-low.c | 109 ++- gdb/gdbserver/target.c | 72 +- gdb/gdbserver/target.h | 160 ++- gdb/gdbserver/thread-db.c | 74 +- gdb/gdbserver/win32-low.c | 189 ++-- gdb/gdbthread.h | 4 + gdb/inf-loop.c | 5 +- gdb/linux-nat.c | 21 +- gdb/minsyms.c | 32 +- gdb/mips-tdep.c | 14 + gdb/mn10300-tdep.c | 3 + gdb/observer.sh | 4 +- gdb/ppc-linux-nat.c | 73 +- gdb/python/python-frame.c | 9 +- gdb/python/python-internal.h | 1 + gdb/python/python-membuf.c | 59 +- gdb/python/python-objfile.c | 4 + gdb/python/python.c | 51 +- gdb/remote.c | 164 ++-- gdb/sparc64nbsd-nat.c | 7 +- gdb/spu-linux-nat.c | 19 +- gdb/stabsread.c | 4 +- gdb/symtab.h | 8 +- gdb/testsuite/ChangeLog | 106 ++- gdb/testsuite/gdb.ada/tasks.exp | 79 ++ gdb/testsuite/gdb.ada/tasks/foo.adb | 68 ++ gdb/testsuite/gdb.arch/powerpc-prologue.exp | 4 +- gdb/testsuite/gdb.base/attach.exp | 5 - gdb/testsuite/gdb.dwarf2/dw2-strp.S | 18 +- gdb/testsuite/gdb.dwarf2/dw2-unresolved-main.c | 46 + gdb/testsuite/gdb.dwarf2/dw2-unresolved.S | 171 +++ gdb/testsuite/gdb.dwarf2/dw2-unresolved.exp | 41 + gdb/testsuite/gdb.mi/basics.c | 7 +- gdb/testsuite/gdb.mi/mi-nonstop-exit.exp | 44 +- gdb/testsuite/gdb.mi/mi-nonstop.exp | 73 +- gdb/testsuite/gdb.mi/mi-nsintrall.exp | 36 +- gdb/testsuite/gdb.mi/mi-nsmoribund.exp | 36 +- gdb/testsuite/gdb.python/python-frame.exp | 4 +- gdb/testsuite/gdb.python/python-membuf.c | 11 + gdb/testsuite/gdb.python/python-membuf.exp | 70 ++ gdb/testsuite/gdb.python/python-prettyprint.c | 34 +- gdb/testsuite/gdb.python/python-prettyprint.exp | 4 +- gdb/testsuite/gdb.python/python-prettyprint.py | 17 + gdb/testsuite/gdb.server/ext-attach.exp | 7 +- gdb/testsuite/gdb.threads/pending-step.c | 61 + gdb/testsuite/gdb.threads/pending-step.exp | 95 ++ gdb/testsuite/gdb.trace/actions.exp | 78 +- gdb/testsuite/gdb.trace/deltrace.exp | 97 +-- gdb/testsuite/gdb.trace/infotrace.exp | 12 +- gdb/testsuite/gdb.trace/passcount.exp | 74 +- gdb/testsuite/gdb.trace/save-trace.exp | 11 +- gdb/testsuite/gdb.trace/tracecmd.exp | 3 +- gdb/testsuite/gdb.trace/while-stepping.exp | 15 +- gdb/testsuite/lib/mi-support.exp | 28 +- gdb/thread.c | 16 + gdb/tracepoint.c | 767 ++----------- gdb/tracepoint.h | 95 +-- gdb/version.in | 2 +- gdb/windows-nat.c | 7 + include/coff/ChangeLog | 4 + include/coff/xcoff.h | 61 - include/elf/ChangeLog | 15 + include/elf/common.h | 5 + libdecnumber/ChangeLog | 13 + libdecnumber/decBasic.c | 911 +++++++++------ libdecnumber/decCommon.c | 431 ++++--- libdecnumber/decContext.c | 83 +- libdecnumber/decContext.h | 78 +- libdecnumber/decDPD.h | 45 +- libdecnumber/decDouble.c | 174 ++-- libdecnumber/decDouble.h | 25 +- libdecnumber/decNumber.c | 866 +++++++------- libdecnumber/decNumber.h | 6 +- libdecnumber/decNumberLocal.h | 241 +++-- libdecnumber/decPacked.c | 24 +- libdecnumber/decPacked.h | 14 +- libdecnumber/decQuad.c | 170 ++-- libdecnumber/decQuad.h | 49 +- libdecnumber/decSingle.c | 53 +- libdecnumber/decSingle.h | 20 +- libdecnumber/dpd/decimal128.c | 119 +- libdecnumber/dpd/decimal128.h | 16 +- libdecnumber/dpd/decimal32.c | 83 +- libdecnumber/dpd/decimal32.h | 14 +- libdecnumber/dpd/decimal64.c | 133 +-- libdecnumber/dpd/decimal64.h | 14 +- libiberty/ChangeLog | 10 + libiberty/Makefile.in | 14 +- libiberty/config.in | 3 + libiberty/configure | 4 +- libiberty/configure.ac | 3 +- libiberty/functions.texi | 13 +- libiberty/memmem.c | 70 ++ opcodes/ChangeLog | 27 + opcodes/arm-dis.c | 10 +- opcodes/ppc-dis.c | 24 +- opcodes/ppc-opc.c | 62 +- 141 files changed, 10135 insertions(+), 5098 deletions(-) create mode 100644 gdb/gdbserver/event-loop.c create mode 100644 gdb/testsuite/gdb.ada/tasks.exp create mode 100644 gdb/testsuite/gdb.ada/tasks/foo.adb create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-unresolved-main.c create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-unresolved.S create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-unresolved.exp create mode 100644 gdb/testsuite/gdb.python/python-membuf.c create mode 100644 gdb/testsuite/gdb.python/python-membuf.exp create mode 100644 gdb/testsuite/gdb.threads/pending-step.c create mode 100644 gdb/testsuite/gdb.threads/pending-step.exp create mode 100644 libiberty/memmem.c First 500 lines of diff: diff --git a/ChangeLog b/ChangeLog index 7e44f7d..85cc9df 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-03-27 Eli Zaretskii <eliz@gnu.org> + + * djunpack.bat: Use ".." quoting in Sed command, for the sake of + Windows builds of Sed. + 2009-03-18 Tom Tromey <tromey@redhat.com> * configure: Rebuild. diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 11a0acb..6fdba4d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,157 @@ +2009-04-06 H.J. Lu <hongjiu.lu@intel.com> + + * coff-x86_64.c (bfd_pe_print_pdata): Defined to + _bfd_pex64_print_pdata only if PE is defined. + + * libpei.h (_bfd_pep_print_x64_pdata): Renamed to ... + (_bfd_pex64_print_pdata): This. + + * peXXigen.c (_bfd_pep_print_x64_pdata): Renamed to ... + (_bfd_pex64_print_pdata): This. Defined only if COFF_WITH_pex64 + is defined. + +2009-04-05 Kai Tietz <kai.tietz@onevision.com> + + * coff-x86_64.c (bfd_pe_print_pdata): Define as + _bfd_pep_print_x64_pdata. + * libpei.h (_bfd_pep_print_x64_pdata): Add prototype. + * peXXigen.c (_bfd_pep_print_x64_pdata): New. + +2009-04-02 Sterling Augustine <sterling@jaw.hq.tensilica.com> + + * elf32-xtensa.c (relax_property_section): Always set r_offset + to zero. + +2009-04-02 Christophe Lyon <christophe.lyon@st.com> + + * elf32-arm.c (elf32_arm_stub_long_branch_v4t_thumb_thumb, + elf32_arm_stub_long_branch_v4t_thumb_thumb_pic): Two new long + branch stubs. + (elf32_arm_stub_type): New enum values for the two new stubs. + (arm_type_of_stub): Make use of the two new stubs. + (arm_size_one_stub): Handle the two new stubs. + +2009-04-01 Matt Thomas <matt@netbsd.org> + + * elf32-vax.c (elf_vax_check_relocs): Do not put relocations against + hidden symbols into the GOT or PLT.GOT. + (elf_vax_relocate_section): Do not emit a PCREL reloc + into a shared object if it is against a hidden symbol. + +2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com> + + * xcofflink.c (xcoff_archive_info): Add contains_shared_object_p + and know_contains_shared_object_p. + (xcoff_archive_contains_shared_object_p): Add an "info" parameter. + Cache the result in the archive_info table. + (xcoff_auto_export_p): Add an "info" parameter and update the + call to xcoff_archive_contains_shared_object_p. + (xcoff_mark_auto_exports): Update accordingly. + (xcoff_post_gc_symbol): Likewise. + +2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com> + + * xcofflink.c (bfd_link_input_bfd): Treat __rtinit as C_HIDEXT + rather than C_EXT. + +2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com> + + * coff-rs6000.c (member_layout): New structure. + (archive_iterator): Likewise. + (member_layout_init): New function. + (archive_iterator_begin): Likewise. + (archive_iterator_next): Likewise. + (xcoff_write_armap_old): Use the new iterator functions. + (do_shared_object_padding): Delete. + (xcoff_write_armap_big): Use the new iterator functions. Simplify + handling of arch_info. + (xcoff_write_archive_contents_old): Allocate arelt_data in the + first loop rather than the second. Allocate a member header if + there isn't one, then work out the stat information and length + in the first loop too. Use the new iterators for the second loop. + (xcoff_write_archive_contents_big): Likewise. + +2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com> + + * bfd-in.h (bfd_xcoff_split_import_path): Declare. + (bfd_xcoff_set_archive_import_path): Likewise. + * bfd-in2.h: Regenerate. + * xcofflink.c: Include libiberty.h. + (xcoff_archive_info): New structure. + (xcoff_archive_info_hash): New function. + (xcoff_archive_info_eq): Likewise. + (xcoff_get_archive_info): Likewise. + (_bfd_xcoff_bfd_link_hash_table_create): Initialize archive_info. + (bfd_xcoff_split_import_path): New function. + (bfd_xcoff_set_archive_import_path): Likewise. + (xcoff_set_import_path): Move earlier in file. + (xcoff_link_add_dynamic_symbols): Set the import path of a non-archive + object to the the directory part of the bfd's filename. Get the + import path and filename of an archive object from the archive's + xcoff_tdata, initializing it if necessary. Update use of + import_file_id. + (bfd_link_input_bfd): Update use of import_file_id. + (xcoff_write_global_symbol): Likewise. + +2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com> + + * xcofflink.c (xcoff_link_hash_table): Moved from include/coff/xcoff.h. + +2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com> + + * xcofflink.c (xcoff_link_create_extra_sections): Don't create + a .loader section for relocatable links. + (xcoff_need_ldrel_p): New function. + (xcoff_mark): Use it. + (bfd_xcoff_link_count_reloc): Only count loader relocs if there's + a loader section. + (xcoff_build_ldsym): New function, split out from... + (xcoff_build_ldsyms): ...here. Rename to... + (xcoff_post_gc_symbol): ...this. Only export symbols, and only + call xcoff_build_ldsym, if there's a loader section. + (xcoff_build_loader_section): New function, extracted verbatim from... + (bfd_xcoff_size_dynamic_sections): ...here. Only call it if + there's a loader section. Only add an __rtinit loader symbol + if there's a loader section. Update after above name change. + (xcoff_symbol_section, xcoff_create_ldrel): New functions. + (bfd_link_input_bfd): Use xcoff_need_ldrel_p, xcoff_symbol_section + and xcoff_create_ldrel. + (xcoff_write_global_symbol): Use xcoff_create_ldrel. + (xcoff_reloc_link_order): Likewise, but only call it if there's + a loader section. Use xcoff_symbol_section. + (_bfd_xcoff_bfd_final_link): Only use fdinfo.ldrel and fdinfo.ldsym + if there's a loader section. + +2009-04-01 Richard Sandiford <rdsandiford@googlemail.com> + + * xcofflink.c (bfd_link_input_bfd): Fix buffer overrun. + +2009-04-01 Christophe Lyon <christophe.lyon@st.com> + + * elf32-arm.c (group_sections): Rewrite loops for better + readability. + +2009-03-30 DJ Delorie <dj@redhat.com> + + * elflink.c (elf_link_input_bfd): Don't try to resolve complex + relocs when doing a relocatable link. + +2009-03-28 Mark Mitchell <mark@codesourcery.com> + + * coff-arm.c (coff_arm_merge_private_bfd_data): Use "error:", not + "ERROR:", in error messages. + * cpu-arm.c (bfd_arm_merge_machines): Likewise. + * elf-attrs.c (_bfd_elf_merge_object_attributes): Likewise. + * elf32-arm.c (tag_cpu_arch_combine): Likewise. + (elf32_arm_merge_eabi_attributes): Likewise. + (elf32_arm_merge_private_bfd_data): Likewise. + +2009-03-27 Nick Clifton <nickc@redhat.com> + + * section.c (bfd_get_section_contents): Detect and handle the case + where a section has the SEC_IN_MEMORY flag set but no actual + contents allocated. + 2009-03-26 Alan Modra <amodra@bigpond.net.au> PR 6494 diff --git a/bfd/bfd-in.h b/bfd/bfd-in.h index 5a3e13f..9a303e0 100644 --- a/bfd/bfd-in.h +++ b/bfd/bfd-in.h @@ -765,6 +765,10 @@ extern bfd_boolean bfd_get_file_window /* XCOFF support routines for the linker. */ +extern bfd_boolean bfd_xcoff_split_import_path + (bfd *, const char *, const char **, const char **); +extern bfd_boolean bfd_xcoff_set_archive_import_path + (struct bfd_link_info *, bfd *, const char *); extern bfd_boolean bfd_xcoff_link_record_set (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_size_type); extern bfd_boolean bfd_xcoff_import_symbol diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index 78a5bd9..646be2c 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -772,6 +772,10 @@ extern bfd_boolean bfd_get_file_window /* XCOFF support routines for the linker. */ +extern bfd_boolean bfd_xcoff_split_import_path + (bfd *, const char *, const char **, const char **); +extern bfd_boolean bfd_xcoff_set_archive_import_path + (struct bfd_link_info *, bfd *, const char *); extern bfd_boolean bfd_xcoff_link_record_set (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *, bfd_size_type); extern bfd_boolean bfd_xcoff_import_symbol diff --git a/bfd/coff-arm.c b/bfd/coff-arm.c index d2c27c4..a5bcc77 100644 --- a/bfd/coff-arm.c +++ b/bfd/coff-arm.c @@ -2208,7 +2208,7 @@ coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd) { _bfd_error_handler /* xgettext: c-format */ - (_("ERROR: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d"), + (_("error: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d"), ibfd, obfd, APCS_26_FLAG (ibfd) ? 26 : 32, APCS_26_FLAG (obfd) ? 26 : 32 @@ -2224,10 +2224,10 @@ coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd) if (APCS_FLOAT_FLAG (ibfd)) /* xgettext: c-format */ - msg = _("ERROR: %B passes floats in float registers, whereas %B passes them in integer registers"); + msg = _("error: %B passes floats in float registers, whereas %B passes them in integer registers"); else /* xgettext: c-format */ - msg = _("ERROR: %B passes floats in integer registers, whereas %B passes them in float registers"); + msg = _("error: %B passes floats in integer registers, whereas %B passes them in float registers"); _bfd_error_handler (msg, ibfd, obfd); @@ -2241,10 +2241,10 @@ coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd) if (PIC_FLAG (ibfd)) /* xgettext: c-format */ - msg = _("ERROR: %B is compiled as position independent code, whereas target %B is absolute position"); + msg = _("error: %B is compiled as position independent code, whereas target %B is absolute position"); else /* xgettext: c-format */ - msg = _("ERROR: %B is compiled as absolute position code, whereas target %B is position independent"); + msg = _("error: %B is compiled as absolute position code, whereas target %B is position independent"); _bfd_error_handler (msg, ibfd, obfd); bfd_set_error (bfd_error_wrong_format); diff --git a/bfd/coff-rs6000.c b/bfd/coff-rs6000.c index 3343530..c5a486b 100644 --- a/bfd/coff-rs6000.c +++ b/bfd/coff-rs6000.c @@ -180,8 +180,6 @@ static bfd_boolean do_pad PARAMS ((bfd *, unsigned int)); static bfd_boolean do_copy PARAMS ((bfd *, bfd *)); -static bfd_boolean do_shared_object_padding - PARAMS ((bfd *, bfd *, file_ptr *, int)); /* Relocation functions */ static bfd_boolean xcoff_reloc_type_br @@ -238,6 +236,119 @@ bfd_boolean (*xcoff_complain_overflow[XCOFF_MAX_COMPLAIN_OVERFLOW]) xcoff_complain_overflow_unsigned_func, }; +/* Information about one member of an archive. */ +struct member_layout { + /* The archive member that this structure describes. */ + bfd *member; + + /* The number of bytes of padding that must be inserted before the + start of the member in order to ensure that the section contents + are correctly aligned. */ + unsigned int leading_padding; + + /* The offset of MEMBER from the start of the archive (i.e. the end + of the leading padding). */ + file_ptr offset; + + /* The normalized name of MEMBER. */ + const char *name; + + /* The length of NAME, without padding. */ + bfd_size_type namlen; + + /* The length of NAME, with padding. */ + bfd_size_type padded_namlen; + + /* The size of MEMBER's header, including the name and magic sequence. */ + bfd_size_type header_size; + + /* The size of the MEMBER's contents. */ + bfd_size_type contents_size; + + /* The number of bytes of padding that must be inserted after MEMBER + in order to preserve even alignment. */ + bfd_size_type trailing_padding; +}; + +/* A structure used for iterating over the members of an archive. */ +struct archive_iterator { + /* The archive itself. */ + bfd *archive; + + /* Information about the current archive member. */ + struct member_layout current; + + /* Information about the next archive member. MEMBER is null if there + are no more archive members, in which case OFFSET is the offset of + the first unused byte. */ + struct member_layout next; +}; + +/* Initialize INFO so that it describes member MEMBER of archive ARCHIVE. + OFFSET is the even-padded offset of MEMBER, not including any leading + padding needed for section alignment. */ + +static void +member_layout_init (struct member_layout *info, bfd *archive, + bfd *member, file_ptr offset) +{ + info->member = member; + info->leading_padding = 0; + if (member) + { + info->name = normalize_filename (member); + info->namlen = strlen (info->name); + info->padded_namlen = info->namlen + (info->namlen & 1); + if (xcoff_big_format_p (archive)) + info->header_size = SIZEOF_AR_HDR_BIG; + else + info->header_size = SIZEOF_AR_HDR; + info->header_size += info->padded_namlen + SXCOFFARFMAG; + info->contents_size = arelt_size (member); + info->trailing_padding = info->contents_size & 1; + + if (bfd_check_format (member, bfd_object) + && bfd_get_flavour (member) == bfd_target_xcoff_flavour + && (member->flags & DYNAMIC) != 0) + info->leading_padding + = (-(offset + info->header_size) + & ((1 << bfd_xcoff_text_align_power (member)) - 1)); + } + info->offset = offset + info->leading_padding; +} + +/* Set up ITERATOR to iterate through archive ARCHIVE. */ + +static void +archive_iterator_begin (struct archive_iterator *iterator, + bfd *archive) +{ + iterator->archive = archive; + member_layout_init (&iterator->next, archive, archive->archive_head, + xcoff_big_format_p (archive) + ? SIZEOF_AR_FILE_HDR_BIG + : SIZEOF_AR_FILE_HDR); +} + +/* Make ITERATOR visit the first unvisited archive member. Return true + on success; return false if all members have been visited. */ + +static bfd_boolean +archive_iterator_next (struct archive_iterator *iterator) +{ + if (!iterator->next.member) + return FALSE; + + iterator->current = iterator->next; + member_layout_init (&iterator->next, iterator->archive, + iterator->current.member->archive_next, + iterator->current.offset + + iterator->current.header_size + + iterator->current.contents_size + + iterator->current.trailing_padding); + return TRUE; +} + /* We use our own tdata type. Its first field is the COFF tdata type, so the COFF routines are compatible. */ @@ -1603,11 +1714,10 @@ xcoff_write_armap_old (abfd, elength, map, orl_count, stridx) unsigned int orl_count; int stridx; { + struct archive_iterator iterator; struct xcoff_ar_hdr hdr; char *p; unsigned char buf[4]; - bfd *sub; - file_ptr fileoff; unsigned int i; memset (&hdr, 0, sizeof hdr); @@ -1635,29 +1745,16 @@ xcoff_write_armap_old (abfd, elength, map, orl_count, stridx) if (bfd_bwrite (buf, (bfd_size_type) 4, abfd) != 4) return FALSE; - sub = abfd->archive_head; - fileoff = SIZEOF_AR_FILE_HDR; i = 0; - while (sub != NULL && i < orl_count) - { - size_t namlen; - - while (map[i].u.abfd == sub) - { - H_PUT_32 (abfd, fileoff, buf); - if (bfd_bwrite (buf, (bfd_size_type) 4, abfd) != 4) - return FALSE; - ++i; - } - namlen = strlen (normalize_filename (sub)); - namlen = (namlen + 1) &~ (size_t) 1; - fileoff += (SIZEOF_AR_HDR - + namlen - + SXCOFFARFMAG - + arelt_size (sub)); - fileoff = (fileoff + 1) &~ 1; - sub = sub->archive_next; - } + archive_iterator_begin (&iterator, abfd); + while (i < orl_count && archive_iterator_next (&iterator)) + while (map[i].u.abfd == iterator.current.member) + { + H_PUT_32 (abfd, iterator.current.offset, buf); + if (bfd_bwrite (buf, (bfd_size_type) 4, abfd) != 4) + return FALSE; + ++i; + } for (i = 0; i < orl_count; i++) { @@ -1759,34 +1856,6 @@ do_copy (out_bfd, in_bfd) } static bfd_boolean -do_shared_object_padding (out_bfd, in_bfd, offset, ar_header_size) - bfd *out_bfd; - bfd *in_bfd; - file_ptr *offset; - int ar_header_size; -{ - if (bfd_check_format (in_bfd, bfd_object) - && bfd_get_flavour (in_bfd) == bfd_target_xcoff_flavour - && (in_bfd->flags & DYNAMIC) != 0) - { - bfd_size_type pad = 0; - int text_align_power; - - text_align_power = bfd_xcoff_text_align_power (in_bfd); - - pad = 1 << text_align_power; - pad -= (*offset + ar_header_size) & (pad - 1); - - if (! do_pad (out_bfd, pad)) - return FALSE; - - *offset += pad; - } - - return TRUE; -} - -static bfd_boolean xcoff_write_armap_big (abfd, elength, map, orl_count, stridx) bfd *abfd; unsigned int elength ATTRIBUTE_UNUSED; @@ -1794,9 +1863,10 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx) unsigned int orl_count; int stridx; { + struct archive_iterator iterator; struct xcoff_ar_file_hdr_big *fhdr; bfd_vma i, sym_32, sym_64, str_32, str_64; - const bfd_arch_info_type *arch_info = NULL; + const bfd_arch_info_type *arch_info; bfd *current_bfd; size_t string_length; file_ptr nextoff, prevoff; @@ -1805,16 +1875,15 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx) from 32-bit objects and which from 64-bit ones. */ sym_32 = sym_64 = str_32 = str_64 = 0; - current_bfd = abfd->archive_head; - if (current_bfd != NULL) - arch_info = bfd_get_arch_info (current_bfd); - i = 0; - while (current_bfd != NULL && i < orl_count) + i = 0; + for (current_bfd = abfd->archive_head; + current_bfd != NULL && i < orl_count; + current_bfd = current_bfd->archive_next) { + arch_info = bfd_get_arch_info (current_bfd); while (map[i].u.abfd == current_bfd) { string_length = strlen (*map[i].name) + 1; - if (arch_info->bits_per_address == 64) { sym_64++; @@ -1827,9 +1896,6 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx) } hooks/post-receive -- Repository for Project Archer.
next reply other threads:[~2009-06-26 13:51 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2009-06-26 13:51 jkratoch [this message] -- strict thread matches above, loose matches on Subject: below -- 2009-03-30 17:22 jkratoch 2009-03-29 22:42 jkratoch 2009-03-27 0:35 jkratoch 2009-03-25 19:00 jkratoch 2009-03-24 17:33 jkratoch 2009-03-09 17:05 jkratoch 2009-03-06 16:59 jkratoch 2009-03-06 14:26 jkratoch 2009-03-05 21:53 jkratoch 2009-03-05 21:15 jkratoch 2009-03-04 23:54 jkratoch 2009-03-04 22:34 jkratoch 2009-03-04 15:02 jkratoch 2009-03-03 21:46 jkratoch 2009-03-03 21:45 jkratoch 2009-03-02 20:46 jkratoch 2009-03-01 14:38 jkratoch 2009-02-28 19:26 jkratoch 2009-02-26 23:01 jkratoch
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20090626135108.29160.qmail@sourceware.org \ --to=jkratoch@sourceware.org \ --cc=archer-commits@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).