From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3515 invoked by alias); 4 Mar 2012 20:15:20 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 3429 invoked by uid 9674); 4 Mar 2012 20:15:18 -0000 Date: Sun, 04 Mar 2012 20:15:00 -0000 Message-ID: <20120304201518.3414.qmail@sourceware.org> From: jkratoch@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] archer-jankratochvil-autoload: . X-Git-Refname: refs/heads/archer-jankratochvil-autoload X-Git-Reftype: branch X-Git-Oldrev: 6935b91bd6e86bddccac4c34a313f835b5c325e7 X-Git-Newrev: 1ffaa210103f1415eac3e59080dfa82477f0615b X-SW-Source: 2012-q1/txt/msg00048.txt.bz2 List-Id: The branch, archer-jankratochvil-autoload has been updated via 1ffaa210103f1415eac3e59080dfa82477f0615b (commit) via 0b3e9bfa82a5712c55ecd9696c97d372c87aab46 (commit) via ca6539833e52649830e450a435254c57b2bbb072 (commit) via 1cb6de5100aa1f5f332853c947fa7cb41851a335 (commit) via 5d78f1247276cf76a3d5761ce69f42d208ff4b82 (commit) via 723061950551dc34ab6ec795ba23da1a6f690f3c (commit) via 6e43512c2da938938a7ddb0125ccc362c8c2b1e1 (commit) via 2cec33f67f16ed1be212379f2d493181d72022fc (commit) via 6e97741d84bdec4d76284dd38d33c84c12804372 (commit) via fb15ea50d42989508a83ac74ac59dc1c602171f7 (commit) via a3667112e04741fdf60544b36fd990259686fcd2 (commit) via 4db7bf26a50e2e18f9b1ff0a8164a69c8ffaae6b (commit) via 700540423aad061d7135ee5aefa8a7087ee36862 (commit) via 4d299104d01bd38658736948c360537ff0dbd51e (commit) via 0f1b0eb398d8b5779f9659116130445d541eba64 (commit) via c5a7f72d9b9da7b13373bfe2090e70e85e6e0d3a (commit) via 380281ab3fa3d6724a92fb5ccbdcef7ac09616c8 (commit) via a47f7e625860970c54e8c77d83aa7a1521863e34 (commit) via 090cdae71eb2221fe6ae2f79178152deb033f61a (commit) via 8523da3398612541899fd1c66bcb928d940a92f8 (commit) via d290d98ea3a1424eb6eb3db343f3943d47d3437a (commit) via 530c5d08c4d40d94af91a37263fd77c5d109bc75 (commit) via 74d9b0405a8975f28f00f27352afbf3bb6276b03 (commit) via 6defe671d1a7e11e8a7e9b682a2c20e26fb8d4d0 (commit) via 45331a69bfe6e5100bc4f3b1d92001ff5b6b4e51 (commit) via 5d3a2c8ba77d0d1302f4a24d8c3a608fc0df3a18 (commit) via 0819c877d3c463df0dcada25a8bee788e6239ffc (commit) via 022a761ce1c0ec0db2c06eb920844d39c7c118d5 (commit) via aa3135fbe1b7939a857516bb13d5970bec9769f4 (commit) via a51012aee12673e6b63c03bc28d25b31d4450193 (commit) via 7b4ac7b1e42a577abdd020c8a52a641d60798414 (commit) via 6a6978ff4bf308a4360fa8080ab675e7fdee8a02 (commit) via 6c30bb3b6ee2540786b41a6ee93dafc15386b25b (commit) via c7dde25667e3e2d9f3b11d0f0e0b27c37e9ca66a (commit) via 8f4b0d967a7ed8580ffda44c9bd0478c6a366bc3 (commit) via 43f62655b51dcf8dd120ac2b1c4809ea160af7f8 (commit) via f33b308b864f12ec8fc5d7a10886e4105b3c51c1 (commit) via d887b712dbeeec6bc3a95e8dc3ffba3397bdd443 (commit) via 2bf545ac5925bfb528bd26150fc67612f39eca93 (commit) via e8f8f1399f2595a81ecd3cd55107bae8f03abd1e (commit) via d63889e3ab5e12e05197418a892369fc1d0673bf (commit) via 3b5bc3dd00fc8fc4f1d9dacaa0ec84a150beebc9 (commit) via c7eb1772f571ed8846954acc1a3369662fec3c1f (commit) via 72951d8b9fe1b39c018acd043565a98fe55b8a05 (commit) via 57f955853369d4764dec4bd8b2234f2849c966b4 (commit) via d041ac588d2a1e8dbee8fcfe862db424806df309 (commit) via 70b189e9b95708c1c24fda375a5ff5a7dc0b8903 (commit) via 0ddbcf00c10042cea38735a91ed170d6ee33132a (commit) via f3076f4197f998bbd2ca6a30ced68c1574d9b967 (commit) via 509bc81b5ced831dab21df39f99305d5f100d0a4 (commit) from 6935b91bd6e86bddccac4c34a313f835b5c325e7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 1ffaa210103f1415eac3e59080dfa82477f0615b Author: Jan Kratochvil Date: Thu Mar 1 09:33:37 2012 +0100 . commit 0b3e9bfa82a5712c55ecd9696c97d372c87aab46 Author: Jan Kratochvil Date: Wed Feb 29 21:04:22 2012 +0100 . commit ca6539833e52649830e450a435254c57b2bbb072 Author: Jan Kratochvil Date: Wed Feb 29 19:52:04 2012 +0100 . commit 1cb6de5100aa1f5f332853c947fa7cb41851a335 Author: Jan Kratochvil Date: Wed Feb 29 19:48:11 2012 +0100 Fix language initialization. commit 5d78f1247276cf76a3d5761ce69f42d208ff4b82 Merge: 6935b91 7230619 Author: Jan Kratochvil Date: Wed Feb 29 18:25:40 2012 +0100 Merge branch 'initclean-initx-gdbinitb-move2-misc-pfx-warn-safepath-debug-warnlocal' into initclean-initx-gdbinitb-move2-misc-pfx-warn-safepath-debug-warnlocal-pfx2 commit 723061950551dc34ab6ec795ba23da1a6f690f3c Merge: edab774 6e43512 Author: Jan Kratochvil Date: Wed Feb 29 18:25:40 2012 +0100 Merge branch 'initclean-initx-gdbinitb-move2-misc-pfx-warn-safepath-debug' into initclean-initx-gdbinitb-move2-misc-pfx-warn-safepath-debug-warnlocal commit 6e43512c2da938938a7ddb0125ccc362c8c2b1e1 Merge: 61bc346 2cec33f Author: Jan Kratochvil Date: Wed Feb 29 18:25:40 2012 +0100 Merge branch 'initclean-initx-gdbinitb-move2-misc-pfx-warn-safepath' into initclean-initx-gdbinitb-move2-misc-pfx-warn-safepath-debug commit 2cec33f67f16ed1be212379f2d493181d72022fc Merge: 3b9e2da 6e97741 Author: Jan Kratochvil Date: Wed Feb 29 18:25:39 2012 +0100 Merge branch 'initclean-initx-gdbinitb-move2-misc-pfx-warn' into initclean-initx-gdbinitb-move2-misc-pfx-warn-safepath commit 6e97741d84bdec4d76284dd38d33c84c12804372 Merge: 416d9b4 fb15ea5 Author: Jan Kratochvil Date: Wed Feb 29 18:25:39 2012 +0100 Merge branch 'initclean-initx-gdbinitb-move2-misc-pfx' into initclean-initx-gdbinitb-move2-misc-pfx-warn commit fb15ea50d42989508a83ac74ac59dc1c602171f7 Merge: 584a07d a366711 Author: Jan Kratochvil Date: Wed Feb 29 18:25:39 2012 +0100 Merge branch 'initclean-initx-gdbinitb-move2-misc' into initclean-initx-gdbinitb-move2-misc-pfx commit a3667112e04741fdf60544b36fd990259686fcd2 Merge: f397d7c 4db7bf2 Author: Jan Kratochvil Date: Wed Feb 29 18:25:38 2012 +0100 Merge branch 'initclean-initx-gdbinitb-move2' into initclean-initx-gdbinitb-move2-misc commit 4db7bf26a50e2e18f9b1ff0a8164a69c8ffaae6b Merge: e315556 7005404 Author: Jan Kratochvil Date: Wed Feb 29 18:25:38 2012 +0100 Merge branch 'initclean-initx-gdbinitb' into initclean-initx-gdbinitb-move2 commit 700540423aad061d7135ee5aefa8a7087ee36862 Merge: b26609a 4d29910 Author: Jan Kratochvil Date: Wed Feb 29 18:25:38 2012 +0100 Merge branch 'initclean-initx' into initclean-initx-gdbinitb commit 4d299104d01bd38658736948c360537ff0dbd51e Merge: fd00a49 0f1b0eb Author: Jan Kratochvil Date: Wed Feb 29 18:25:37 2012 +0100 Merge branch 'initclean' into initclean-initx commit 0f1b0eb398d8b5779f9659116130445d541eba64 Merge: a6e7dc0 c5a7f72 Author: Jan Kratochvil Date: Wed Feb 29 18:25:37 2012 +0100 Merge remote-tracking branch 'gdb/master' into initclean ----------------------------------------------------------------------- Summary of changes: bfd/ChangeLog | 161 ++++ bfd/archures.c | 1 + bfd/bfd-in2.h | 55 +- bfd/config.bfd | 8 +- bfd/configure | 6 +- bfd/configure.in | 6 +- bfd/cpu-tilegx.c | 19 +- bfd/doc/ChangeLog | 4 + bfd/doc/chew.c | 8 +- bfd/elf32-sh.c | 12 +- bfd/elf32-spu.c | 5 +- bfd/elf32-tilegx.c | 6 +- bfd/elf32-tilepro.c | 550 +++++++++++-- bfd/elf64-tilegx.c | 7 +- bfd/elfxx-tilegx.c | 843 ++++++++++++++----- bfd/libbfd.h | 54 +- bfd/reloc.c | 96 ++- bfd/targets.c | 12 +- bfd/version.h | 2 +- cpu/ChangeLog | 4 + cpu/mt.opc | 4 +- gdb/ChangeLog | 82 ++ gdb/ada-tasks.c | 16 +- gdb/arm-linux-tdep.c | 3 + gdb/auto-load.c | 63 +- gdb/auto-load.h | 4 +- gdb/breakpoint.c | 3 + gdb/common/linux-procfs.c | 31 + gdb/common/linux-procfs.h | 5 + gdb/elfread.c | 3 + gdb/gdbserver/ChangeLog | 22 + gdb/gdbserver/linux-low.c | 36 + gdb/gdbserver/mem-break.c | 10 +- gdb/i386-linux-tdep.c | 76 ++- gdb/i386-tdep.c | 7 +- gdb/infcall.c | 4 + gdb/infcmd.c | 3 + gdb/infrun.c | 7 +- gdb/linux-nat.c | 33 +- gdb/microblaze-tdep.c | 1 + gdb/mips-linux-tdep.c | 1 + gdb/mips-tdep.c | 232 +++++ gdb/python/py-auto-load.c | 96 ++- gdb/sh-tdep.c | 53 ++ gdb/testsuite/ChangeLog | 59 ++ gdb/testsuite/gdb.base/annota1.c | 10 +- gdb/testsuite/gdb.base/annota1.exp | 31 +- gdb/testsuite/gdb.base/annota3.c | 10 +- gdb/testsuite/gdb.base/annota3.exp | 66 +- gdb/testsuite/gdb.base/disp-step-syscall.exp | 13 +- gdb/testsuite/gdb.base/save-bp.exp | 2 +- gdb/testsuite/gdb.base/sigall.c | 3 - gdb/testsuite/gdb.base/signals.c | 4 - gdb/testsuite/gdb.cp/breakpoint.exp | 2 +- gdb/testsuite/gdb.reverse/i386-sse-reverse.c | 23 +- gdb/testsuite/gdb.reverse/i386-sse-reverse.exp | 175 +++-- gdb/testsuite/gdb.reverse/sigall-reverse.c | 3 - gdb/testsuite/gdb.trace/trace-mt.c | 63 ++ gdb/testsuite/gdb.trace/trace-mt.exp | 136 +++ gdb/version.in | 2 +- include/elf/ChangeLog | 57 ++ include/elf/tilegx.h | 48 +- include/elf/tilepro.h | 18 +- include/opcode/ChangeLog | 11 + include/opcode/crx.h | 4 +- include/opcode/tilegx.h | 2 + include/opcode/tilepro.h | 2 + opcodes/ChangeLog | 32 + opcodes/arc-dis.c | 11 +- opcodes/crx-dis.c | 12 +- opcodes/crx-opc.c | 4 +- opcodes/mt-dis.c | 2 +- opcodes/tilegx-opc.c | 930 +++++++++++---------- opcodes/tilepro-opc.c | 1091 +++++++++++++----------- opcodes/v850-opc.c | 56 +- 75 files changed, 3841 insertions(+), 1695 deletions(-) create mode 100644 gdb/testsuite/gdb.trace/trace-mt.c create mode 100644 gdb/testsuite/gdb.trace/trace-mt.exp First 500 lines of diff: diff --git a/bfd/ChangeLog b/bfd/ChangeLog index cf9bf17..93eb6fb 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,164 @@ +2012-02-27 Alan Modra + + * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd + before calling elf specific function. + (sh_elf_osec_readonly_p): Test for error return from above. + +2012-02-27 Alan Modra + + * elf32-spu.c (build_stub): Fix malloc under-allocation. + +2012-02-25 Walter Lee + * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL, + BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD, + BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD, + BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD, + BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD, + BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE, + BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO, + BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI, + BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA, + BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE, + BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD, + BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD, + BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD, + BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD, + BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD, + BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD, + BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD. + Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT, + BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT, + BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT, + BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT, + BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT, + BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT, + BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT, + BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT, + BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE, + BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE, + BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE, + BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE, + BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE, + BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE, + BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE, + BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE. + * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro + relocations. + (tilepro_reloc_map): Ditto. + (tilepro_info_to_howto_rela): Ditto. + (reloc_to_create_func): Ditto. + (tilepro_tls_translate_to_le): New. + (tilepro_tls_translate_to_ie): New. + (tilepro_elf_tls_transition): New. + (tilepro_elf_check_relocs): Handle new tls relocations. + (tilepro_elf_gc_sweep_hook): Ditto. + (allocate_dynrelocs): Ditto. + (tilepro_elf_relocate_section): Ditto. + (tilepro_replace_insn): New. + (insn_mask_X1): New. + (insn_mask_X0_no_dest_no_srca): New + (insn_mask_X1_no_dest_no_srca): New + (insn_mask_Y0_no_dest_no_srca): New + (insn_mask_Y1_no_dest_no_srca): New + (srca_mask_X0): New + (srca_mask_X1): New + (insn_tls_le_move_X1): New + (insn_tls_le_move_zero_X0X1): New + (insn_tls_ie_lw_X1): New + (insn_tls_ie_add_X0X1): New + (insn_tls_ie_add_Y0Y1): New + (insn_tls_gd_add_X0X1): New + (insn_tls_gd_add_Y0Y1): New + * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx + relocations. + (tilegx_reloc_map): Ditto. + (tilegx_info_to_howto_rela): Ditto. + (reloc_to_create_func): Ditto. + (tilegx_elf_link_hash_table): New field disable_le_transition. + (tilegx_tls_translate_to_le): New. + (tilegx_tls_translate_to_ie): New. + (tilegx_elf_tls_transition): New. + (tilegx_elf_check_relocs): Handle new tls relocations. + (tilegx_elf_gc_sweep_hook): Ditto. + (allocate_dynrelocs): Ditto. + (tilegx_elf_relocate_section): Ditto. + (tilegx_copy_bits): New. + (tilegx_replace_insn): New. + (insn_mask_X1): New. + (insn_mask_X0_no_dest_no_srca): New. + (insn_mask_X1_no_dest_no_srca): New. + (insn_mask_Y0_no_dest_no_srca): New. + (insn_mask_Y1_no_dest_no_srca): New. + (insn_mask_X0_no_operand): New. + (insn_mask_X1_no_operand): New. + (insn_mask_Y0_no_operand): New. + (insn_mask_Y1_no_operand): New. + (insn_tls_ie_ld_X1): New. + (insn_tls_ie_ld4s_X1): New. + (insn_tls_ie_add_X0X1): New. + (insn_tls_ie_add_Y0Y1): New. + (insn_tls_ie_addx_X0X1): New. + (insn_tls_ie_addx_Y0Y1): New. + (insn_tls_gd_add_X0X1): New. + (insn_tls_gd_add_Y0Y1): New. + (insn_move_X0X1): New. + (insn_move_Y0Y1): New. + (insn_add_X0X1): New. + (insn_add_Y0Y1): New. + (insn_addx_X0X1): New. + (insn_addx_Y0Y1): New. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + +2012-02-25 Walter Lee + + * config.bfd (tilegx-*-*): rename little endian vector; add big + endian vector. + (tilegxbe-*-*): New case. + * configure.in (bfd_elf32_tilegx_vec): Rename... + (bfd_elf32_tilegx_le_vec): ... to this. + (bfd_elf32_tilegx_be_vec): New vector. + (bfd_elf64_tilegx_vec): Rename... + (bfd_elf64_tilegx_le_vec): ... to this. + (bfd_elf64_tilegx_be_vec): New vector. + * configure: Regenerate. + * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename. + (TARGET_LITTLE_NAME): Ditto. + (TARGET_BIG_SYM): Define. + (TARGET_BIG_NAME): Define. + * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename. + (TARGET_LITTLE_NAME): Ditto. + (TARGET_BIG_SYM): Define. + (TARGET_BIG_NAME): Define. + * targets.c (bfd_elf32_tilegx_vec): Rename... + (bfd_elf32_tilegx_le_vec): ... to this. + (bfd_elf32_tilegx_be_vec): Declare. + (bfd_elf64_tilegx_vec): Rename... + (bfd_elf64_tilegx_le_vec): ... to this. + (bfd_elf64_tilegx_be_vec): Declare. + (_bfd_target_vector): Add / rename above vectors. + * arctures.c (bfd_architecture): Define bfd_mach_tilegx32. + * bfd-in2.h: Regenerate. + * cpu-tilegx.c (bfd_tilegx32_arch): define. + (bfd_tilegx_arch): link to bfd_tilegx32_arch. + 2012-02-24 Nick Clifton PR ld/13730 diff --git a/bfd/archures.c b/bfd/archures.c index c833cbf..92c4867 100644 --- a/bfd/archures.c +++ b/bfd/archures.c @@ -453,6 +453,7 @@ DESCRIPTION . bfd_arch_tilegx, {* Tilera TILE-Gx *} .#define bfd_mach_tilepro 1 .#define bfd_mach_tilegx 1 +.#define bfd_mach_tilegx32 2 . bfd_arch_last . }; */ diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index fb56337..9c77fed 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -2159,6 +2159,7 @@ enum bfd_architecture bfd_arch_tilegx, /* Tilera TILE-Gx */ #define bfd_mach_tilepro 1 #define bfd_mach_tilegx 1 +#define bfd_mach_tilegx32 2 bfd_arch_last }; @@ -4958,6 +4959,12 @@ the dynamic object into the runtime process image. */ BFD_RELOC_TILEPRO_SHAMT_X1, BFD_RELOC_TILEPRO_SHAMT_Y0, BFD_RELOC_TILEPRO_SHAMT_Y1, + BFD_RELOC_TILEPRO_TLS_GD_CALL, + BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD, + BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD, + BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD, + BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD, + BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD, BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_LO, @@ -4977,6 +4984,14 @@ the dynamic object into the runtime process image. */ BFD_RELOC_TILEPRO_TLS_DTPMOD32, BFD_RELOC_TILEPRO_TLS_DTPOFF32, BFD_RELOC_TILEPRO_TLS_TPOFF32, + BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE, + BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO, + BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI, + BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA, + BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA, /* Tilera TILE-Gx Relocations. */ BFD_RELOC_TILEGX_HW0, @@ -5036,52 +5051,44 @@ the dynamic object into the runtime process image. */ BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PCREL, BFD_RELOC_TILEGX_IMM16_X0_HW0_GOT, BFD_RELOC_TILEGX_IMM16_X1_HW0_GOT, - BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT, - BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT, - BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT, - BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT, - BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT, - BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT, BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_GOT, BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_GOT, BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_GOT, BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_GOT, - BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT, - BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT, BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_GD, BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD, + BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE, + BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE, BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_GD, BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_GD, BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_GD, BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD, - BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD, BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_IE, BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE, BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_IE, BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_IE, BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_IE, BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE, - BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE, BFD_RELOC_TILEGX_TLS_DTPMOD64, BFD_RELOC_TILEGX_TLS_DTPOFF64, BFD_RELOC_TILEGX_TLS_TPOFF64, BFD_RELOC_TILEGX_TLS_DTPMOD32, BFD_RELOC_TILEGX_TLS_DTPOFF32, BFD_RELOC_TILEGX_TLS_TPOFF32, + BFD_RELOC_TILEGX_TLS_GD_CALL, + BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD, + BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD, + BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD, + BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, + BFD_RELOC_TILEGX_TLS_IE_LOAD, + BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD, + BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD, + BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, + BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD, /* Adapteva EPIPHANY - 8 bit signed pc-relative displacement */ BFD_RELOC_EPIPHANY_SIMM8, diff --git a/bfd/config.bfd b/bfd/config.bfd index bd4e20e..2cf89ed 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -1507,8 +1507,12 @@ case "${targ}" in #ifdef BFD64 tilegx-*-*) - targ_defvec=bfd_elf64_tilegx_vec - targ_selvecs=bfd_elf32_tilegx_vec + targ_defvec=bfd_elf64_tilegx_le_vec + targ_selvecs="bfd_elf64_tilegx_be_vec bfd_elf32_tilegx_be_vec bfd_elf32_tilegx_le_vec" + ;; + tilegxbe-*-*) + targ_defvec=bfd_elf64_tilegx_be_vec + targ_selvecs="bfd_elf64_tilegx_le_vec bfd_elf32_tilegx_be_vec bfd_elf32_tilegx_le_vec" ;; #endif diff --git a/bfd/configure b/bfd/configure index a2cd675..dc2a63c 100755 --- a/bfd/configure +++ b/bfd/configure @@ -15302,7 +15302,8 @@ do bfd_elf32_tic6x_linux_le_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; bfd_elf32_tic6x_elf_be_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; bfd_elf32_tic6x_elf_le_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; - bfd_elf32_tilegx_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; + bfd_elf32_tilegx_be_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; + bfd_elf32_tilegx_le_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; bfd_elf32_tilepro_vec) tb="$tb elf32-tilepro.lo elf32.lo $elf" ;; bfd_elf32_tradbigmips_vec | bfd_elf32_tradbigmips_freebsd_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;; @@ -15341,7 +15342,8 @@ do bfd_elf64_sparc_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_sparc_freebsd_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_sparc_sol2_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; - bfd_elf64_tilegx_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; + bfd_elf64_tilegx_be_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; + bfd_elf64_tilegx_le_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; bfd_elf64_tradbigmips_vec | bfd_elf64_tradbigmips_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_tradlittlemips_vec | bfd_elf64_tradlittlemips_freebsd_vec) diff --git a/bfd/configure.in b/bfd/configure.in index fc94c34..d6f3fe3 100644 --- a/bfd/configure.in +++ b/bfd/configure.in @@ -801,7 +801,8 @@ do bfd_elf32_tic6x_linux_le_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; bfd_elf32_tic6x_elf_be_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; bfd_elf32_tic6x_elf_le_vec) tb="$tb elf32-tic6x.lo elf32.lo $elf" ;; - bfd_elf32_tilegx_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; + bfd_elf32_tilegx_be_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; + bfd_elf32_tilegx_le_vec) tb="$tb elf32-tilegx.lo elfxx-tilegx.lo elf32.lo $elf" ; target_size=32 ;; bfd_elf32_tilepro_vec) tb="$tb elf32-tilepro.lo elf32.lo $elf" ;; bfd_elf32_tradbigmips_vec | bfd_elf32_tradbigmips_freebsd_vec) tb="$tb elf32-mips.lo elfxx-mips.lo elf-vxworks.lo elf32.lo $elf ecofflink.lo" ;; @@ -840,7 +841,8 @@ do bfd_elf64_sparc_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_sparc_freebsd_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; bfd_elf64_sparc_sol2_vec) tb="$tb elf64-sparc.lo elfxx-sparc.lo elf-vxworks.lo elf64.lo $elf"; target_size=64 ;; - bfd_elf64_tilegx_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; + bfd_elf64_tilegx_be_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; + bfd_elf64_tilegx_le_vec) tb="$tb elf64-tilegx.lo elfxx-tilegx.lo elf64.lo $elf" ; target_size=64 ;; bfd_elf64_tradbigmips_vec | bfd_elf64_tradbigmips_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_tradlittlemips_vec | bfd_elf64_tradlittlemips_freebsd_vec) diff --git a/bfd/cpu-tilegx.c b/bfd/cpu-tilegx.c index dc9bc63..f98cb0c 100644 --- a/bfd/cpu-tilegx.c +++ b/bfd/cpu-tilegx.c @@ -22,6 +22,23 @@ #include "sysdep.h" #include "libbfd.h" +const bfd_arch_info_type bfd_tilegx32_arch = + { + 32, /* 32 bits in a word */ + 32, /* 32 bits in an address */ + 8, /* 8 bits in a byte */ + bfd_arch_tilegx, + bfd_mach_tilegx32, + "tilegx32", + "tilegx32", + 3, + FALSE, + bfd_default_compatible, + bfd_default_scan, + bfd_arch_default_fill, + 0, + }; + const bfd_arch_info_type bfd_tilegx_arch = { 64, /* 64 bits in a word */ @@ -36,5 +53,5 @@ const bfd_arch_info_type bfd_tilegx_arch = bfd_default_compatible, bfd_default_scan, bfd_arch_default_fill, - 0, + &bfd_tilegx32_arch, }; diff --git a/bfd/doc/ChangeLog b/bfd/doc/ChangeLog index 87e2a2e..37a7e38 100644 --- a/bfd/doc/ChangeLog +++ b/bfd/doc/ChangeLog @@ -1,3 +1,7 @@ +2012-02-27 Alan Modra + + * chew.c (print_stack_level, main): Use %ld to print stack delta. + 2010-10-28 Matthias Klose * bfd.texinfo: Add directory section for info document. diff --git a/bfd/doc/chew.c b/bfd/doc/chew.c index 2276c8a..f949e1f 100644 --- a/bfd/doc/chew.c +++ b/bfd/doc/chew.c @@ -1,6 +1,6 @@ /* chew Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 2000, 2001, - 2002, 2003, 2005, 2007, 2009 + 2002, 2003, 2005, 2007, 2009, 2012 Free Software Foundation, Inc. Contributed by steve chamberlain @cygnus @@ -476,8 +476,8 @@ remove_noncomments (src, dst) static void print_stack_level () { - fprintf (stderr, "current string stack depth = %d, ", tos - stack); - fprintf (stderr, "current integer stack depth = %d\n", isp - istack); + fprintf (stderr, "current string stack depth = %ld, ", tos - stack); + fprintf (stderr, "current integer stack depth = %ld\n", isp - istack); pc++; } @@ -1563,7 +1563,7 @@ main (ac, av) write_buffer (stack + 0, stdout); if (tos != stack) { - fprintf (stderr, "finishing with current stack level %d\n", + fprintf (stderr, "finishing with current stack level %ld\n", tos - stack); return 1; } diff --git a/bfd/elf32-sh.c b/bfd/elf32-sh.c index 780a3bf..8d8b28c 100644 --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -1,6 +1,7 @@ /* Renesas / SuperH SH 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. Contributed by Ian Lance Taylor, Cygnus Support. This file is part of BFD, the Binary File Descriptor library. @@ -3788,8 +3789,10 @@ sh_elf_got_offset (struct elf_sh_link_hash_table *htab) static unsigned sh_elf_osec_to_segment (bfd *output_bfd, asection *osec) { - Elf_Internal_Phdr *p = _bfd_elf_find_segment_containing_section (output_bfd, - osec); + Elf_Internal_Phdr *p = NULL; + + if (output_bfd->xvec->flavour == bfd_target_elf_flavour) + p = _bfd_elf_find_segment_containing_section (output_bfd, osec); /* FIXME: Nothing ever says what this index is relative to. The kernel supplies data in terms of the number of load segments but this is @@ -3802,7 +3805,8 @@ sh_elf_osec_readonly_p (bfd *output_bfd, asection *osec) { unsigned seg = sh_elf_osec_to_segment (output_bfd, osec); - return ! (elf_tdata (output_bfd)->phdr[seg].p_flags & PF_W); + return (seg != (unsigned) -1 + && ! (elf_tdata (output_bfd)->phdr[seg].p_flags & PF_W)); } /* Generate the initial contents of a local function descriptor, along diff --git a/bfd/elf32-spu.c b/bfd/elf32-spu.c index cff9185..ab13b7b 100644 --- a/bfd/elf32-spu.c +++ b/bfd/elf32-spu.c @@ -1,6 +1,7 @@ /* SPU specific support for 32-bit ELF - Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 + Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -1425,7 +1426,7 @@ build_stub (struct bfd_link_info *info, add = (int) irela->r_addend & 0xffffffff; if (add != 0) len += 1 + 8; - name = bfd_malloc (len); + name = bfd_malloc (len + 1); if (name == NULL) return FALSE; diff --git a/bfd/elf32-tilegx.c b/bfd/elf32-tilegx.c index 902e9ba..1b4884b 100644 --- a/bfd/elf32-tilegx.c +++ b/bfd/elf32-tilegx.c @@ -87,8 +87,10 @@ tilegx_elf_grok_psinfo (bfd *abfd, Elf_Internal_Note *note) #define ELF_MAXPAGESIZE 0x10000 hooks/post-receive -- Repository for Project Archer.