From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8007 invoked by alias); 19 Mar 2012 15:08:30 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 7882 invoked by uid 9514); 19 Mar 2012 15:08:24 -0000 Date: Mon, 19 Mar 2012 15:08:00 -0000 Message-ID: <20120319150824.7865.qmail@sourceware.org> From: pmuldoon@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] archer-pmuldoon-python-backtrace: Merge remote-tracking branch 'gdb/master' into archer-pmuldoon-python-backtrace X-Git-Refname: refs/heads/archer-pmuldoon-python-backtrace X-Git-Reftype: branch X-Git-Oldrev: d34a750b8b79c1260f21e8c25f61b7197448d78f X-Git-Newrev: 63da93e5e430b18bda11ca83dabc861ff60a0aef X-SW-Source: 2012-q1/txt/msg00067.txt.bz2 List-Id: The branch, archer-pmuldoon-python-backtrace has been updated via 63da93e5e430b18bda11ca83dabc861ff60a0aef (commit) via 186404b922ac69f05e8fed4c35bea14b0d800789 (commit) via 4521af1eac0a64252b25589ef061c7aa413767b2 (commit) via 1ed0872161a4a49810b2686179979b46f12ad746 (commit) via 8f76c9938614819e2390efc6b386c8fb2f452b4e (commit) via 8ab59c15b5d137ddccd432f0946e59fa462e30ef (commit) via 8281376dc21b49eb1cda353cbcfc1b964d05b544 (commit) via 3d3ec0b91e50c07e5400b7b54f54abb782761bcb (commit) via ad290c1f04dc60f599d351800fb156e571839156 (commit) via 198f38cfaf0c47455278772acb7499920b3f7f9b (commit) via dc8b55393ea3f1d41542b867fad99be3ad5e5f9e (commit) via 3d359a151ef30fd6670933c90d2c25e57661a757 (commit) via 8b6432db4f820d48346e40404a55279fbb0fa203 (commit) via be9570d85d16a8f236e7a491d5d37a5f0f5e01ff (commit) via 54a949f3445bf1f892948b0e230110c9ddc4bfd0 (commit) via 628d407b7cefcdadc5d1d83e70901e2103aecc9c (commit) via c0a3cf19c5685ee971445c6684e081b6273cefb7 (commit) via 911c219a4dc5f54622ba9c11c88adebfd3868bc5 (commit) via 8dd8348932371b493c3123ff457e7eefcc4af30e (commit) via c6fac428e24e1fbf29e8971953152bcb80946f2f (commit) via 0ea61917ed3bc31a0fa98d1280bf87890ba89b06 (commit) via 60c520c9959c107cdc25a2cbeeeecfa62dddddca (commit) via d5bc117868b2062712a1b3de41de8d0a79b669c2 (commit) via b3a19e4dbf598ae0b33e80f77583b25b94196459 (commit) via fb064b7e2ed57d24a5deb87245ccba336a161d3e (commit) via facda9cb2701bda45dc901ecf9be8115b70f04d5 (commit) via c55ff693014c302c8b91b99cee0484751f105e15 (commit) via e6fdde6964c1d797f9e9337adb0afe24e46ae9db (commit) via 759c5fffb2d76fa8844c2ee5ec91746dcea434a8 (commit) via 7f8076204b091192cb2050f5aa80cdf4c45a7926 (commit) via cc89c790f5fe692768ba246325c71b7e58f496f6 (commit) via cf56649757d05c7bbe2f76d9fcadfdee65b99c7d (commit) via d77939f6c2c8efa0e583abbf61a0920eabb579a2 (commit) via 5cddcb364a808283eed8f4a427796a789b83ebde (commit) via 75dcd60a60fa0e3f47d558b8312d00fe2b08efa4 (commit) via 171e9f303ff92d99018142fc40bca86989ca396b (commit) via 601078dae9e3e738ab39bfe5eee21f653304f485 (commit) via 8aaf828f00db4415170187f1d9e786bbb916d489 (commit) via 69acdef42f5cff62cf1d069348fcf4ed14305c96 (commit) via cdfae53fa67f5576d6a15500bba8ea3fb7e5aa71 (commit) via de2f714807e42df981348b72164f60ea71b37543 (commit) via 8f255da61a5667b640ee0c5d68d3a5fb380db813 (commit) via d1620965b61cd9a39a766fbb07b8b2681c14f47a (commit) via 7493f930ad532c91f186f7b2fbaacba308f90945 (commit) via 5ba09d5182a185d0b7a1cf686d7808131536d281 (commit) via 89cc5bbe4b835a5b4efa384ef2da9c3ba1b3cac5 (commit) via fe7de29ee44ce25f11b2cd0f5aafa86170d0d867 (commit) via dbc01db95dfa6f9d32e156d13abc437a80b858b9 (commit) via fcbe86bcd4734566694e12e6c0c519364e2ed538 (commit) via ee520d1b19ccd7bd17bf7cb0cb0264b1f5446f2c (commit) via 05dbea72ad0b63e512fcdb94136acf42c6a86f77 (commit) via becc34639008f2a60146735f8fb26ac080edd208 (commit) via da6ec63a13ac3cd2cf6b8a8ea7e59ea1ee4f6cb9 (commit) via 0067cc7c1ad992da92f1a4e8568c6e7990f5c6e4 (commit) via 1c603d2d9bc394132964ca3681eb4745a84932f3 (commit) via 181c7f1c94a549fad5ce0a73c8855f462a184a8c (commit) via c1b07e788b83e73e0a76306392c8d94b86bdaeb9 (commit) via d7a9e1cdfb8eb4ba72c32e97bf143db71c6d94b7 (commit) via 7058f6ce5949ab67021d681410cdc363ff8e6141 (commit) via 8b1db1260675f235c66446533c4b224d644ea51f (commit) via 820dd2b62a2f176874c5b08c114d89d70ca3880f (commit) via e0da1dbc89bdddf6f45e7f98eef935fcb5ca30c3 (commit) via a6c252423c3bfe1adb83d8e1120c7cede77ecd04 (commit) via 7e0874ee6165f4284daf1d378fe44a665ee46be1 (commit) via 3b8846cfe9c3f6f33666d8d22dfd0efbd67edb22 (commit) via b7522666365970695d1948f80faaa5cff93ee4a9 (commit) via d2b433de6faa61355736bc72318f929fd4ca98f5 (commit) via c7412c9f6c1bdbbb8e4fcc20313994cc243accec (commit) via 286407d1b9af8ecfc3859bc2d9c4c5e6c7c3feb3 (commit) via e0df8b05e0c2b392c03ba8a8b0529d16d6e34b90 (commit) via 5dfd18a698f2086fa06e1634b226c89c1fa8493c (commit) via 0f1d8761733fd245fcc3b86246b6b2b11273d538 (commit) via 4ae3017e7e53a24094e4e8437e681d7e745484b6 (commit) via c5d108c464f20bd59707af4752ad25fbcd9c9d3b (commit) via 9f98300654f84be38a0458438e2b1f7ef8b3c87e (commit) via 27dfec4afd75d65692a401010ba20946715d6ea6 (commit) via 402efa941c15e4bd21377c9d7f7b20588bac07dd (commit) via afae5bf85c2b98660a98768353bcffd0eee86a3f (commit) via d1b294216946f6f45d401f479fa6f09fb058d458 (commit) via 1827ba892b03be2f1e1836d711cdfe152c2d00b9 (commit) from d34a750b8b79c1260f21e8c25f61b7197448d78f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 63da93e5e430b18bda11ca83dabc861ff60a0aef Merge: d34a750 186404b Author: Phil Muldoon Date: Mon Mar 19 15:07:57 2012 +0000 Merge remote-tracking branch 'gdb/master' into archer-pmuldoon-python-backtrace commit 186404b922ac69f05e8fed4c35bea14b0d800789 Author: Jan Kratochvil Date: Mon Mar 19 09:34:13 2012 +0000 gdb/testsuite/ * gdb.base/cond-eval-mode.exp: Fix the anticipated warning string. commit 4521af1eac0a64252b25589ef061c7aa413767b2 Author: Mike Frysinger Date: Mon Mar 19 05:39:45 2012 +0000 sim: bfin: add exhaustive parallel-insn tests commit 1ed0872161a4a49810b2686179979b46f12ad746 Author: Mike Frysinger Date: Mon Mar 19 05:34:29 2012 +0000 sim: bfin: unify se_all*opcodes tests The current se_all*opcodes tests are very similar in how they work. In preparation for adding more tests along these lines, unify the common bits into a framework that others can include and build off of easily. Signed-off-by: Mike Frysinger commit 8f76c9938614819e2390efc6b386c8fb2f452b4e Author: Mike Frysinger Date: Mon Mar 19 05:25:50 2012 +0000 sim: bfin: add tests for new shift behavior commit 8ab59c15b5d137ddccd432f0946e59fa462e30ef Author: Mike Frysinger Date: Mon Mar 19 05:17:49 2012 +0000 sim: bfin: add tests for new shift behavior commit 8281376dc21b49eb1cda353cbcfc1b964d05b544 Author: Mike Frysinger Date: Mon Mar 19 05:06:23 2012 +0000 sim: bfin: fix corner case Logical shift issues From: Robin Getz Overflow with shift operations happens independently of saturation, but we have the logic merged. Extend the lshift function so that callers can tell it when to handle each independently, and then do so when it's needed. Signed-off-by: Robin Getz Signed-off-by: Mike Frysinger commit 3d3ec0b91e50c07e5400b7b54f54abb782761bcb Author: Mike Frysinger Date: Mon Mar 19 04:54:47 2012 +0000 sim: use character classes rather than ranges A-Z ranges don't work in all locales, so use character classes instead. Signed-off-by: Mike Frysinger commit ad290c1f04dc60f599d351800fb156e571839156 Author: Mike Frysinger Date: Mon Mar 19 03:58:36 2012 +0000 sim: nrun: decode signal when crashing This isn't entirely correct in that it assumes the signal numbering of the target and host match, but seeing as we already make that assumption in a few places, this patch doesn't make the situation any worse. Signed-off-by: Mike Frysinger commit 198f38cfaf0c47455278772acb7499920b3f7f9b Author: Mike Frysinger Date: Mon Mar 19 03:51:09 2012 +0000 sim: tests: ignore generated tests commit dc8b55393ea3f1d41542b867fad99be3ad5e5f9e Author: Mike Frysinger Date: Mon Mar 19 03:09:20 2012 +0000 sim: bfin: ebiu_amc: push down hardcoded base addresses To make it easier to support ebiu banks at other addresses, move the base to a runtime parameter rather than structure. Future work will make this more dynamic, but I'm waiting for more details first. Signed-off-by: Mike Frysinger commit 3d359a151ef30fd6670933c90d2c25e57661a757 Author: Mike Frysinger Date: Mon Mar 19 02:49:18 2012 +0000 sim: bfin: import optimizations from 32bit test into 16bit test The 32bit allopcodes test had quite a bit of optimization added to it so that it ran in a reasonable amount of time out of uncached memory. Port those changes over to the 16bit test so the two share common code. Signed-off-by: Mike Frysinger commit 8b6432db4f820d48346e40404a55279fbb0fa203 Author: Mike Frysinger Date: Mon Mar 19 01:16:25 2012 +0000 sim: bfin: use ARRAY_SIZE Rather than hardcode the constant, use ARRAY_SIZE to get it. Should be no functional changes here. Signed-off-by: Mike Frysinger commit be9570d85d16a8f236e7a491d5d37a5f0f5e01ff Author: Doug Evans Date: Mon Mar 19 00:27:39 2012 +0000 Fix spellings of filenames. commit 54a949f3445bf1f892948b0e230110c9ddc4bfd0 Author: gdbadmin Date: Mon Mar 19 00:00:02 2012 +0000 *** empty log message *** commit 628d407b7cefcdadc5d1d83e70901e2103aecc9c Author: Alan Modra Date: Sun Mar 18 23:00:05 2012 +0000 daily update commit c0a3cf19c5685ee971445c6684e081b6273cefb7 Author: Doug Evans Date: Sun Mar 18 04:17:15 2012 +0000 * dg-extract-results.sh: Handle KFAILs. commit 911c219a4dc5f54622ba9c11c88adebfd3868bc5 Author: gdbadmin Date: Sun Mar 18 00:00:33 2012 +0000 *** empty log message *** commit 8dd8348932371b493c3123ff457e7eefcc4af30e Author: Alan Modra Date: Sat Mar 17 23:00:05 2012 +0000 daily update ----------------------------------------------------------------------- Summary of changes: ChangeLog | 14 + bfd/ChangeLog | 64 + bfd/config.bfd | 6 + bfd/configure | 3 +- bfd/configure.in | 11 +- bfd/elf-m10300.c | 11 +- bfd/elf32-arm.c | 90 +- bfd/elf32-cr16.c | 11 +- bfd/elf32-cris.c | 11 +- bfd/elf32-hppa.c | 11 +- bfd/elf32-i370.c | 11 +- bfd/elf32-i386.c | 18 +- bfd/elf32-lm32.c | 11 +- bfd/elf32-m32r.c | 11 +- bfd/elf32-m68k.c | 11 +- bfd/elf32-ppc.c | 9 +- bfd/elf32-s390.c | 11 +- bfd/elf32-sh.c | 9 +- bfd/elf32-tic6x.c | 11 +- bfd/elf32-tilepro.c | 11 +- bfd/elf32-vax.c | 11 +- bfd/elf64-ppc.c | 9 +- bfd/elf64-s390.c | 11 +- bfd/elf64-sh64.c | 11 +- bfd/elf64-x86-64.c | 434 +- bfd/elfxx-sparc.c | 9 +- bfd/elfxx-tilegx.c | 11 +- bfd/targets.c | 6 +- bfd/version.h | 2 +- configure | 23 +- configure.ac | 23 +- gdb/ChangeLog | 302 + gdb/Makefile.in | 4 + gdb/NEWS | 16 + gdb/ada-lang.c | 17 +- gdb/aix-thread.c | 13 +- gdb/amd64-windows-nat.c | 3 + gdb/amd64bsd-nat.c | 2 +- gdb/arm-tdep.c | 42 +- gdb/ax-gdb.c | 9 +- gdb/breakpoint.c | 191 +- gdb/breakpoint.h | 17 +- gdb/buildsym.c | 6 +- gdb/buildsym.h | 8 - gdb/common/linux-procfs.c | 108 +- gdb/common/linux-procfs.h | 11 +- gdb/common/linux-ptrace.c | 49 + gdb/common/linux-ptrace.h | 4 + gdb/config/alpha/alpha-linux.mh | 2 +- gdb/config/arm/linux.mh | 2 +- gdb/config/i386/linux.mh | 2 +- gdb/config/i386/linux64.mh | 2 +- gdb/config/ia64/linux.mh | 2 +- gdb/config/m32r/linux.mh | 2 +- gdb/config/m68k/linux.mh | 2 +- gdb/config/mips/linux.mh | 2 +- gdb/config/pa/linux.mh | 2 +- gdb/config/powerpc/linux.mh | 2 +- gdb/config/powerpc/ppc64-linux.mh | 2 +- gdb/config/powerpc/spu-linux.mh | 2 +- gdb/config/s390/s390.mh | 2 +- gdb/config/sparc/linux.mh | 2 +- gdb/config/sparc/linux64.mh | 2 +- gdb/config/xtensa/linux.mh | 2 +- gdb/cp-abi.c | 10 + gdb/cp-abi.h | 6 + gdb/cp-support.c | 18 + gdb/cp-valprint.c | 11 + gdb/d-lang.c | 2 +- gdb/darwin-nat-info.c | 5 +- gdb/darwin-nat.c | 3 + gdb/doc/ChangeLog | 21 + gdb/doc/gdb.texinfo | 68 +- gdb/doc/gdbint.texinfo | 5 - gdb/doc/refcard.tex | 2 +- gdb/dwarf2loc.c | 2 + gdb/dwarf2read.c | 83 +- gdb/features/arm-with-m-fpa-layout.c | 44 + gdb/features/arm-with-m-fpa-layout.xml | 45 + gdb/gdbserver/ChangeLog | 34 + gdb/gdbserver/Makefile.in | 3 + gdb/gdbserver/configure.srv | 17 + gdb/gdbserver/linux-low.c | 13 +- gdb/gdbserver/tracepoint.c | 211 +- gdb/gnu-v3-abi.c | 242 + gdb/i386-darwin-nat.c | 3 +- gdb/inf-ptrace.c | 2 +- gdb/inferior.h | 14 - gdb/linespec.c | 56 +- gdb/linux-nat.c | 64 +- gdb/m32r-tdep.c | 3 +- gdb/machoread.c | 3 + gdb/main.c | 6 + gdb/mem-break.c | 17 +- gdb/mi/mi-cmd-break.c | 2 +- gdb/mi/mi-interp.c | 14 +- gdb/mi/mi-main.c | 5 +- gdb/p-typeprint.c | 3 +- gdb/python/py-breakpoint.c | 2 +- gdb/python/py-finishbreakpoint.c | 2 +- gdb/remote.c | 28 +- gdb/rs6000-nat.c | 2 + gdb/rs6000-tdep.c | 9 + gdb/source.c | 2 +- gdb/spu-tdep.c | 2 +- gdb/stabsread.c | 4 +- gdb/symfile.c | 25 - gdb/symfile.h | 3 + gdb/testsuite/ChangeLog | 85 + gdb/testsuite/dg-extract-results.sh | 8 +- gdb/testsuite/gdb.ada/bp_range_type.exp | 41 + gdb/testsuite/gdb.ada/bp_range_type/foo.adb | 26 + gdb/testsuite/gdb.ada/bp_range_type/pck.adb | 21 + gdb/testsuite/gdb.ada/bp_range_type/pck.ads | 19 + gdb/testsuite/gdb.ada/set_pckd_arr_elt.exp | 47 + gdb/testsuite/gdb.ada/set_pckd_arr_elt/foo.adb | 22 + gdb/testsuite/gdb.ada/set_pckd_arr_elt/pck.adb | 21 + gdb/testsuite/gdb.ada/set_pckd_arr_elt/pck.ads | 22 + gdb/testsuite/gdb.base/annota1.exp | 2 +- gdb/testsuite/gdb.base/async-shell.exp | 4 +- .../gdb.base/attach-twice.c} | 44 +- gdb/testsuite/gdb.base/attach-twice.exp | 52 + gdb/testsuite/gdb.base/cond-eval-mode.exp | 2 +- gdb/testsuite/gdb.base/default.exp | 4 - .../gdb.base/enum_cond.c} | 42 +- gdb/testsuite/gdb.base/enum_cond.exp | 44 + gdb/testsuite/gdb.base/gdb_history | 2 - gdb/testsuite/gdb.base/help.exp | 4 - gdb/testsuite/gdb.base/setshow.exp | 4 - gdb/testsuite/gdb.cp/casts.exp | 2 +- gdb/testsuite/gdb.cp/inherit.exp | 4 +- gdb/testsuite/gdb.cp/member-ptr.exp | 4 +- gdb/testsuite/gdb.cp/pr9631.exp | 2 +- gdb/testsuite/gdb.cp/virtbase.exp | 2 +- gdb/testsuite/gdb.cp/virtfunc.cc | 1 + gdb/testsuite/gdb.cp/virtfunc.exp | 49 + gdb/testsuite/gdb.cp/virtfunc2.exp | 1 + gdb/testsuite/gdb.dwarf2/dw2-ada-ffffffff.S | 4 +- gdb/testsuite/gdb.dwarf2/dw2-bad-parameter-type.S | 10 +- gdb/testsuite/gdb.dwarf2/dw2-double-set-die-type.S | 98 +- gdb/testsuite/gdb.dwarf2/dw2-empty-pc-range.S | 4 +- gdb/testsuite/gdb.dwarf2/dw2-entry-value.S | 16 +- gdb/testsuite/gdb.dwarf2/dw2-inline-break.S | 1663 + gdb/testsuite/gdb.dwarf2/dw2-inline-break.exp | 124 + gdb/testsuite/gdb.dwarf2/dw2-modula2-self-type.S | 18 +- gdb/testsuite/gdb.dwarf2/dw2-param-error.S | 12 +- gdb/testsuite/gdb.dwarf2/dw2-skip-prologue.S | 12 +- gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.S | 4 +- gdb/testsuite/gdb.dwarf2/dw4-sig-type-unused.S | 10 +- gdb/testsuite/gdb.dwarf2/implptr-optimized-out.S | 6 +- gdb/testsuite/gdb.dwarf2/member-ptr-forwardref.S | 76 +- gdb/testsuite/gdb.dwarf2/pr11465.S | 70 +- gdb/testsuite/gdb.mi/mi2-prompt.exp | 38 + gdb/testsuite/gdb.opt/inline-break.c | 159 + gdb/testsuite/gdb.opt/inline-break.exp | 114 + gdb/testsuite/lib/mi-support.exp | 3 +- gdb/tui/tui-win.c | 11 +- gdb/value.c | 13 +- gdb/value.h | 1 + gdb/version.in | 2 +- gdb/xcoffsolib.c | 2 + include/ChangeLog | 4 + include/dis-asm.h | 3 +- opcodes/ChangeLog | 23 + opcodes/disassemble.c | 13 +- opcodes/ppc-dis.c | 134 +- sim/bfin/ChangeLog | 23 + sim/bfin/bfin-sim.c | 98 +- sim/bfin/dv-bfin_ebiu_amc.c | 9 +- sim/common/ChangeLog | 11 + sim/common/Make-common.in | 2 +- sim/common/acinclude.m4 | 2 +- sim/common/gennltvals.sh | 32 +- sim/common/nrun.c | 3 +- sim/ppc/ChangeLog | 4 + sim/ppc/emul_unix.c | 5 + sim/testsuite/.gitignore | 1 + sim/testsuite/ChangeLog | 4 + sim/testsuite/sim/bfin/ChangeLog | 23 + sim/testsuite/sim/bfin/c_dsp32shiftim_amix.s | 7 + sim/testsuite/sim/bfin/random_0014.S | 82 + sim/testsuite/sim/bfin/random_0015.S | 25 + sim/testsuite/sim/bfin/random_0016.S | 26 + sim/testsuite/sim/bfin/se_all16bitopcodes.S | 142 +- sim/testsuite/sim/bfin/se_all32bitopcodes.S | 163 +- sim/testsuite/sim/bfin/se_all64bitg0opcodes.S |33371 ++++++++++++++++++++ sim/testsuite/sim/bfin/se_all64bitg1opcodes.S | 83 + sim/testsuite/sim/bfin/se_all64bitg2opcodes.S | 58 + sim/testsuite/sim/bfin/se_allopcodes.h | 211 + 189 files changed, 39095 insertions(+), 1363 deletions(-) create mode 100644 gdb/common/linux-ptrace.c create mode 100644 gdb/features/arm-with-m-fpa-layout.c create mode 100644 gdb/features/arm-with-m-fpa-layout.xml create mode 100644 gdb/testsuite/gdb.ada/bp_range_type.exp create mode 100644 gdb/testsuite/gdb.ada/bp_range_type/foo.adb create mode 100644 gdb/testsuite/gdb.ada/bp_range_type/pck.adb create mode 100644 gdb/testsuite/gdb.ada/bp_range_type/pck.ads create mode 100644 gdb/testsuite/gdb.ada/set_pckd_arr_elt.exp create mode 100644 gdb/testsuite/gdb.ada/set_pckd_arr_elt/foo.adb create mode 100644 gdb/testsuite/gdb.ada/set_pckd_arr_elt/pck.adb create mode 100644 gdb/testsuite/gdb.ada/set_pckd_arr_elt/pck.ads copy gdb/{common/linux-procfs.h => testsuite/gdb.base/attach-twice.c} (55%) create mode 100644 gdb/testsuite/gdb.base/attach-twice.exp copy gdb/{common/linux-procfs.h => testsuite/gdb.base/enum_cond.c} (54%) create mode 100644 gdb/testsuite/gdb.base/enum_cond.exp create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-inline-break.S create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-inline-break.exp create mode 100644 gdb/testsuite/gdb.mi/mi2-prompt.exp create mode 100644 gdb/testsuite/gdb.opt/inline-break.c create mode 100644 gdb/testsuite/gdb.opt/inline-break.exp create mode 100644 sim/testsuite/.gitignore create mode 100644 sim/testsuite/sim/bfin/random_0014.S create mode 100644 sim/testsuite/sim/bfin/random_0015.S create mode 100644 sim/testsuite/sim/bfin/random_0016.S create mode 100644 sim/testsuite/sim/bfin/se_all64bitg0opcodes.S create mode 100644 sim/testsuite/sim/bfin/se_all64bitg1opcodes.S create mode 100644 sim/testsuite/sim/bfin/se_all64bitg2opcodes.S create mode 100644 sim/testsuite/sim/bfin/se_allopcodes.h First 500 lines of diff: diff --git a/ChangeLog b/ChangeLog index a7a08e8..cff1dfb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2012-03-14 Rainer Orth + + * configure.ac (enable_libgomp): Remove *-*-irix6*. + (unsupported_languages): Remove mips-sgi-irix6.*. + (noconfigdirs): Don't add ${libgcj} for mips*-*-irix6*. + (with_stabs): Remove. + * configure: Regenerate. + +2012-03-12 Rainer Orth + + * configure.ac (enable_libgomp): Remove *-*-osf*. + (with_stabs): Remove alpha*-*-osf*. + * configure: Regenerate. + 2012-03-09 Jeff Johnston * COPYING.NEWLIB: Modify DJ Delorie license to include diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a65e854..b9849f8 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,67 @@ +2012-03-16 Roland McGrath + + * config.bfd: Handle x86_64-*-nacl*. + * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza. + (bfd_elf32_x86_64_nacl_vec): Likewise. + * targets.c: Support them. + * configure.in: Likewise. + * configure: Regenerated. + +2012-03-16 Matthew Gretton-Dann + + * elf32-arm.c (elf32_arm_attributes_accept_div): New function. + (elf32_arm_attributes_forbid_div): Likewise. + (elf32_arm_merge_eabi_attributes): Correct handling of + Tag_DIV_use. + +2012-03-15 Roland McGrath + + * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use + elf_x86_64_backend_data parameters for plt_eh_frame. + + * elf64-x86-64.c (struct elf_x86_64_backend_data): New type. + (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros. + (elf_x86_64_arch_bed): New variable. + (elf_backend_arch_data): New macro. + (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE. + (elf_x86_64_allocate_dynrelocs): Likewise. + (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_plt_sym_val): Likewise. + (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data + parameters for PLT details. + (elf_x86_64_finish_dynamic_sections): Likewise. + +2012-03-14 Roland McGrath + + * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up + to the full size, padding out with nop instructions. + +2012-03-12 Alan Modra + + * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn + on zero size dynbss symbol. + * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. + * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise. + * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. + * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. + * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. + * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise. + * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise. + * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. + * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. + * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. + * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. + * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. + * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise. + * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise. + * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. + * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. + * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. + * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. + * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. + * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise. + 2012-03-10 Edmar Wienskoski * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500. diff --git a/bfd/config.bfd b/bfd/config.bfd index 2cf89ed..e84ba58 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -574,6 +574,7 @@ case "${targ}" in i[3-7]86-*-nacl*) targ_defvec=bfd_elf32_i386_nacl_vec targ_selvecs="bfd_elf32_i386_vec" + targ64_selvecs="bfd_elf64_x86_64_nacl_vec bfd_elf32_x86_64_nacl_vec" ;; #ifdef BFD64 x86_64-*-darwin*) @@ -612,6 +613,11 @@ case "${targ}" in targ_selvecs="bfd_elf32_i386_vec bfd_elf32_x86_64_vec i386linux_vec i386pei_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec" want64=true ;; + x86_64-*-nacl*) + targ_defvec=bfd_elf32_x86_64_nacl_vec + targ_selvecs="bfd_elf32_i386_nacl_vec bfd_elf64_x86_64_nacl_vec" + want64=true + ;; x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep) targ_defvec=x86_64pe_vec targ_selvecs="x86_64pe_vec x86_64pei_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec i386pe_vec i386pei_vec bfd_elf32_i386_vec" diff --git a/bfd/configure b/bfd/configure index dc2a63c..cff9b26 100755 --- a/bfd/configure +++ b/bfd/configure @@ -15349,9 +15349,11 @@ do bfd_elf64_tradlittlemips_vec | bfd_elf64_tradlittlemips_freebsd_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; bfd_elf64_x86_64_freebsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; + bfd_elf64_x86_64_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_x86_64_sol2_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_x86_64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf32_x86_64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo elf32.lo $elf"; target_size=64 ;; + bfd_elf32_x86_64_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo elf32.lo $elf"; target_size=64 ;; bfd_elf64_l1om_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_l1om_freebsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_k1om_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; @@ -18750,4 +18752,3 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi - diff --git a/bfd/configure.in b/bfd/configure.in index d6f3fe3..c40c825 100644 --- a/bfd/configure.in +++ b/bfd/configure.in @@ -109,7 +109,7 @@ if test $want_elf_stt_common = true; then AC_DEFINE(USE_STT_COMMON, 1, [Define if we may generate symbols with ELF's STT_COMMON type]) fi - + ACX_PKGVERSION([GNU Binutils]) ACX_BUGURL([http://www.sourceware.org/bugzilla/]) @@ -684,9 +684,9 @@ do bfd_elf32_big_generic_vec) tb="$tb elf32-gen.lo elf32.lo $elf" ;; bfd_elf32_bigarc_vec) tb="$tb elf32-arc.lo elf32.lo $elf" ;; bfd_elf32_bigarm_vec) tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;; - bfd_elf32_bigarm_symbian_vec) + bfd_elf32_bigarm_symbian_vec) tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;; - bfd_elf32_bigarm_vxworks_vec) + bfd_elf32_bigarm_vxworks_vec) tb="$tb elf32-arm.lo elf32.lo elf-vxworks.lo $elf" ;; bfd_elf32_bigmips_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;; bfd_elf32_bigmips_vxworks_vec) @@ -694,7 +694,7 @@ do bfd_elf32_cr16_vec) tb="$tb elf32-cr16.lo elf32.lo $elf" ;; bfd_elf32_cr16c_vec) tb="$tb elf32-cr16c.lo elf32.lo $elf" ;; bfd_elf32_cris_vec) tb="$tb elf32-cris.lo elf32.lo $elf" ;; - bfd_elf32_crx_vec) tb="$tb elf32-crx.lo elf32.lo $elf" ;; + bfd_elf32_crx_vec) tb="$tb elf32-crx.lo elf32.lo $elf" ;; bfd_elf32_d10v_vec) tb="$tb elf32-d10v.lo elf32.lo $elf" ;; bfd_elf32_d30v_vec) tb="$tb elf32-d30v.lo elf32.lo $elf" ;; bfd_elf32_dlx_big_vec) tb="$tb elf32-dlx.lo elf32.lo $elf" ;; @@ -848,9 +848,11 @@ do bfd_elf64_tradlittlemips_vec | bfd_elf64_tradlittlemips_freebsd_vec) tb="$tb elf64-mips.lo elf64.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo"; target_size=64 ;; bfd_elf64_x86_64_freebsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; + bfd_elf64_x86_64_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_x86_64_sol2_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_x86_64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf32_x86_64_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo elf32.lo $elf"; target_size=64 ;; + bfd_elf32_x86_64_nacl_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo elf32.lo $elf"; target_size=64 ;; bfd_elf64_l1om_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_l1om_freebsd_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_k1om_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;; @@ -1150,4 +1152,3 @@ AC_SUBST(htmldir) AC_SUBST(pdfdir) AC_OUTPUT - diff --git a/bfd/elf-m10300.c b/bfd/elf-m10300.c index d5e183d..428de4c 100644 --- a/bfd/elf-m10300.c +++ b/bfd/elf-m10300.c @@ -1,6 +1,6 @@ /* Matsushita 10300 specific support for 32-bit ELF Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, - 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. + 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -5023,13 +5023,6 @@ _bfd_mn10300_elf_adjust_dynamic_symbol (struct bfd_link_info * info, if (!h->non_got_ref) return TRUE; - if (h->size == 0) - { - (*_bfd_error_handler) (_("dynamic variable `%s' is zero size"), - h->root.root.string); - return TRUE; - } - /* We must allocate the symbol in our .dynbss section, which will become part of the .bss section of the executable. There will be an entry for this symbol in the .dynsym section. The dynamic @@ -5047,7 +5040,7 @@ _bfd_mn10300_elf_adjust_dynamic_symbol (struct bfd_link_info * info, copy the initial value out of the dynamic object and into the runtime process image. We need to remember the offset into the .rela.bss section we are going to use. */ - if ((h->root.u.def.section->flags & SEC_ALLOC) != 0) + if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) { asection * srel; diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index 62a0b8d..8721f94 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -1,6 +1,6 @@ /* 32-bit ELF support for ARM Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010, 2011 Free Software Foundation, Inc. + 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -11268,6 +11268,46 @@ tag_cpu_arch_combine (bfd *ibfd, int oldtag, int *secondary_compat_out, #undef T } +/* Query attributes object to see if integer divide instructions may be + present in an object. */ +static bfd_boolean +elf32_arm_attributes_accept_div (const obj_attribute *attr) +{ + int arch = attr[Tag_CPU_arch].i; + int profile = attr[Tag_CPU_arch_profile].i; + + switch (attr[Tag_DIV_use].i) + { + case 0: + /* Integer divide allowed if instruction contained in archetecture. */ + if (arch == TAG_CPU_ARCH_V7 && (profile == 'R' || profile == 'M')) + return TRUE; + else if (arch >= TAG_CPU_ARCH_V7E_M) + return TRUE; + else + return FALSE; + + case 1: + /* Integer divide explicitly prohibited. */ + return FALSE; + + default: + /* Unrecognised case - treat as allowing divide everywhere. */ + case 2: + /* Integer divide allowed in ARM state. */ + return TRUE; + } +} + +/* Query attributes object to see if integer divide instructions are + forbidden to be in the object. This is not the inverse of + elf32_arm_attributes_accept_div. */ +static bfd_boolean +elf32_arm_attributes_forbid_div (const obj_attribute *attr) +{ + return attr[Tag_DIV_use].i == 1; +} + /* Merge EABI object attributes from IBFD into OBFD. Raise an error if there are conflicting attributes. */ @@ -11709,29 +11749,22 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd) 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; - + /* A value of zero on input means that the divide instruction may + be used if available in the base architecture as specified via + Tag_CPU_arch and Tag_CPU_arch_profile. A value of 1 means that + the user did not want divide instructions. A value of 2 + explicitly means that divide instructions were allowed in ARM + and Thumb state. */ + if (in_attr[i].i == out_attr[i].i) + /* Do nothing. */ ; + else if (elf32_arm_attributes_forbid_div (in_attr) + && !elf32_arm_attributes_accept_div (out_attr)) + out_attr[i].i = 1; + else if (elf32_arm_attributes_forbid_div (out_attr) + && elf32_arm_attributes_accept_div (in_attr)) + out_attr[i].i = in_attr[i].i; + else if (in_attr[i].i == 2) + out_attr[i].i = in_attr[i].i; break; case Tag_MPextension_use_legacy: @@ -12846,13 +12879,6 @@ elf32_arm_adjust_dynamic_symbol (struct bfd_link_info * info, if (info->shared || globals->root.is_relocatable_executable) return TRUE; - if (h->size == 0) - { - (*_bfd_error_handler) (_("dynamic variable `%s' is zero size"), - h->root.root.string); - return TRUE; - } - /* We must allocate the symbol in our .dynbss section, which will become part of the .bss section of the executable. There will be an entry for this symbol in the .dynsym section. The dynamic @@ -12869,7 +12895,7 @@ elf32_arm_adjust_dynamic_symbol (struct bfd_link_info * info, copy the initial value out of the dynamic object and into the runtime process image. We need to remember the offset into the .rel(a).bss section we are going to use. */ - if ((h->root.u.def.section->flags & SEC_ALLOC) != 0) + if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) { asection *srel; diff --git a/bfd/elf32-cr16.c b/bfd/elf32-cr16.c index 0118131..1f2fb49 100644 --- a/bfd/elf32-cr16.c +++ b/bfd/elf32-cr16.c @@ -1,5 +1,5 @@ /* BFD back-end for National Semiconductor's CR16 ELF - Copyright 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright 2007, 2008, 2009, 2010, 2012 Free Software Foundation, Inc. Written by M R Swami Reddy. This file is part of BFD, the Binary File Descriptor library. @@ -2446,13 +2446,6 @@ _bfd_cr16_elf_adjust_dynamic_symbol (struct bfd_link_info * info, if (!h->non_got_ref) return TRUE; - if (h->size == 0) - { - (*_bfd_error_handler) (_("dynamic variable `%s' is zero size"), - h->root.root.string); - return TRUE; - } - /* We must allocate the symbol in our .dynbss section, which will become part of the .bss section of the executable. There will be an entry for this symbol in the .dynsym section. The dynamic @@ -2470,7 +2463,7 @@ _bfd_cr16_elf_adjust_dynamic_symbol (struct bfd_link_info * info, copy the initial value out of the dynamic object and into the runtime process image. We need to remember the offset into the .rela.bss section we are going to use. */ - if ((h->root.u.def.section->flags & SEC_ALLOC) != 0) + if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) { asection * srel; diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c index 563e2c0..c0da359 100644 --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -1,6 +1,6 @@ /* CRIS-specific support for 32-bit ELF. Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, - 2010, 2011 Free Software Foundation, Inc. + 2010, 2011, 2012 Free Software Foundation, Inc. Contributed by Axis Communications AB. Written by Hans-Peter Nilsson, based on elf32-fr30.c PIC and shlib bits based primarily on elf32-m68k.c and elf32-i386.c. @@ -3052,13 +3052,6 @@ elf_cris_adjust_dynamic_symbol (struct bfd_link_info *info, if (!h->non_got_ref) return TRUE; - if (h->size == 0) - { - (*_bfd_error_handler) (_("dynamic variable `%s' is zero size"), - h->root.root.string); - return TRUE; - } - /* We must allocate the symbol in our .dynbss section, which will become part of the .bss section of the executable. There will be an entry for this symbol in the .dynsym section. The dynamic @@ -3076,7 +3069,7 @@ elf_cris_adjust_dynamic_symbol (struct bfd_link_info *info, copy the initial value out of the dynamic object and into the runtime process image. We need to remember the offset into the .rela.bss section we are going to use. */ - if ((h->root.u.def.section->flags & SEC_ALLOC) != 0) + if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) { asection *srel; diff --git a/bfd/elf32-hppa.c b/bfd/elf32-hppa.c index dcf6df0..10ec4f5 100644 --- a/bfd/elf32-hppa.c +++ b/bfd/elf32-hppa.c @@ -1,6 +1,6 @@ /* BFD back-end for HP PA-RISC ELF files. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1999, 2000, 2001, - 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 + 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. Original code by @@ -1898,13 +1898,6 @@ elf32_hppa_adjust_dynamic_symbol (struct bfd_link_info *info, } } - if (eh->size == 0) - { - (*_bfd_error_handler) (_("dynamic variable `%s' is zero size"), - eh->root.root.string); - return TRUE; - } - /* We must allocate the symbol in our .dynbss section, which will become part of the .bss section of the executable. There will be an entry for this symbol in the .dynsym section. The dynamic @@ -1922,7 +1915,7 @@ elf32_hppa_adjust_dynamic_symbol (struct bfd_link_info *info, /* We must generate a COPY reloc to tell the dynamic linker to copy the initial value out of the dynamic object and into the runtime process image. */ - if ((eh->root.u.def.section->flags & SEC_ALLOC) != 0) + if ((eh->root.u.def.section->flags & SEC_ALLOC) != 0 && eh->size != 0) { htab->srelbss->size += sizeof (Elf32_External_Rela); eh->needs_copy = 1; diff --git a/bfd/elf32-i370.c b/bfd/elf32-i370.c index 8082927..5f713c7 100644 --- a/bfd/elf32-i370.c +++ b/bfd/elf32-i370.c @@ -1,6 +1,6 @@ /* i370-specific support for 32-bit ELF Copyright 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, - 2005, 2006, 2007, 2008, 2010, 2011 Free Software Foundation, Inc. + 2005, 2006, 2007, 2008, 2010, 2011, 2012 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Support. Hacked by Linas Vepstas for i370 linas@linas.org @@ -498,13 +498,6 @@ i370_elf_adjust_dynamic_symbol (struct bfd_link_info *info, if (info->shared) return TRUE; - if (h->size == 0) - { - (*_bfd_error_handler) (_("dynamic variable `%s' is zero size"), - h->root.root.string); - return TRUE; - } - /* We must allocate the symbol in our .dynbss section, which will become part of the .bss section of the executable. There will be an entry for this symbol in the .dynsym section. The dynamic @@ -529,7 +522,7 @@ i370_elf_adjust_dynamic_symbol (struct bfd_link_info *info, copy the initial value out of the dynamic object and into the runtime process image. We need to remember the offset into the .rela.bss section we are going to use. */ - if ((h->root.u.def.section->flags & SEC_ALLOC) != 0) + if ((h->root.u.def.section->flags & SEC_ALLOC) != 0 && h->size != 0) { asection *srel; diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index 01c0669..4ae2166 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -1,6 +1,6 @@ /* Intel 80386/80486-specific support for 32-bit ELF Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 hooks/post-receive -- Repository for Project Archer.