OSDN Git Service
dj [Mon, 13 Jun 2011 23:01:42 +0000 (23:01 +0000)]
merge from gcc
dj [Mon, 13 Jun 2011 16:37:46 +0000 (16:37 +0000)]
merge from gcc
nickc [Mon, 13 Jun 2011 15:57:17 +0000 (15:57 +0000)]
* elf32-tilepro.c (tilepro_elf_check_relocs): Delete unused local
variable 'local_got_offsets'.
* elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise.
(tilegx_finish_dyn): Delete unused local variable 'abi_64_p'.
nickc [Mon, 13 Jun 2011 15:24:42 +0000 (15:24 +0000)]
* configure.ac (tilepro-*-*) New case.
(tilegx-*-*): Likewise.
* configure: Regenerate.
nickc [Mon, 13 Jun 2011 15:18:44 +0000 (15:18 +0000)]
* Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
(ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c.
(BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo,
and elfxx-tilegx.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and
elfxx-tilegx.c.
(BFD64_BACKENDS): Add elf64-tilegx.lo.
(BFD64_BACKENDS_CFILES): Add elf64-tilegx.c.
* Makefile.in: Regenerate.
* arctures.c (bfd_architecture): Define bfd_arch_tilepro,
bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx.
(bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch.
(bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch.
bfd-in2.h: Regenerate.
* config.bfd: Handle tilegx-*-* and tilepro-*-*.
* configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* configure: Regenerate.
* elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and
TILEPRO_ELF_DATA.
* libbfd.h: Regenerate.
* reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT,
RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0,
IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1,
IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI,
IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL,
IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL,
IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL,
IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO,
IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI,
IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0,
MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1,
IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO,
IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI,
IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE,
IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO,
IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA,
IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST,
HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1,
JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1,
DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0,
SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0,
IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2,
IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST,
IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST,
IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL,
IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL,
IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL,
IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL,
IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL,
IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL,
IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT,
IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT,
IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT,
IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT,
IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT,
IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD,
IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD,
IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD,
IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD,
IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD,
IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD,
IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE,
IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE,
IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE,
IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE,
IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE,
IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE,
IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64,
TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
* targets.c (bfd_elf32_tilegx_vec): Declare.
(bfd_elf32_tilepro_vec): Declare.
(bfd_elf64_tilegx_vec): Declare.
(bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* cpu-tilegx.c: New file.
* cpu-tilepro.c: New file.
* elf32-tilepro.h: New file.
* elf32-tilepro.c: New file.
* elf32-tilegx.c: New file.
* elf32-tilegx.h: New file.
* elf64-tilegx.c: New file.
* elf64-tilegx.h: New file.
* elfxx-tilegx.c: New file.
* elfxx-tilegx.h: New file.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tilegx.c and
config/tc-tilepro.c.
(TARGET_CPU_HFILES): Add config/tc-tilegx.h and
config/tc-tilepro.h.
* Makefile.in: Regenerate.
* configure.tgt (tilepro-*-*): New.
(tilegx-*-*): Likewise.
* config/tc-tilegx.c: New file.
* config/tc-tilegx.h: Likewise.
* config/tc-tilepro.h: Likewise.
* config/tc-tilepro.c: Likewise.
* doc/Makefile.am (CPU_DOCS): Add c-tilegx.texi and
c-tilepro.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TILEGX): Define.
(TILEPRO): Define.
* doc/as.texinfo: Add Tile-Gx and TILEPro documentation. Include
c-tilegx.texi and c-tilepro.texi.
* doc/c-tilegx.texi: New.
* doc/c-tilepro.texi: New.
* gas/tilepro/t_constants.s: New file.
* gas/tilepro/t_constants.d: Likewise.
* gas/tilepro/t_insns.s: Likewise.
* gas/tilepro/tilepro.exp: Likewise.
* gas/tilepro/t_insns.d: Likewise.
* gas/tilegx/tilegx.exp: Likewise.
* gas/tilegx/t_insns.d: Likewise.
* gas/tilegx/t_insns.s: Likewise.
* dis-asm.h (print_insn_tilegx): Declare.
(print_insn_tilepro): Likewise.
* tilegx.h: New file.
* tilepro.h: New file.
* common.h: Add EM_TILEGX.
* tilegx.h: New file.
* tilepro.h: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
eelf32tilepro.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
(eelf32tilegx.c): New target.
(eelf32tilepro.c): Likewise.
(eelf64tilegx.c): Likewise.
* Makefile.in: Regenerate.
* configure.tgt: Handle tilegx-*-* and tilepro-*-*.
* emulparams/elf32tilegx.sh: New file.
* emulparams/elf64tilegx.sh: New file.
* emulparams/elf32tilepro.sh: New file.
* ld-elf/eh5.d: Don't run on tile*.
* ld-srec/srec.exp: xfail on tile*.
* ld-tilegx/external.s: New file.
* ld-tilegx/reloc.d: New file.
* ld-tilegx/reloc.s: New file.
* ld-tilegx/tilegx.exp: New file.
* ld-tilepro/external.s: New file.
* ld-tilepro/reloc.d: New file.
* ld-tilepro/reloc.s: New file.
* ld-tilepro/tilepro.exp: New file.
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tilegx-dis.c,
tilegx-opc.c, tilepro-dis.c, and tilepro-opc.c.
* Makefile.in: Regenerate.
* configure.in: Handle bfd_tilegx_arch and bfd_tilepro_arch.
* configure: Regenerate.
* disassemble.c (disassembler): Add ARCH_tilegx and ARCH_tilepro.
* po/POTFILES.in: Regenerate.
* tilegx-dis.c: New file.
* tilegx-opc.c: New file.
* tilepro-dis.c: New file.
* tilepro-opc.c: New file.
nickc [Mon, 13 Jun 2011 12:50:18 +0000 (12:50 +0000)]
PR gas/12854
Add additional checks for extraneous shifts and extra tests in the testsuite.
palves [Mon, 13 Jun 2011 10:55:25 +0000 (10:55 +0000)]
2011-06-13 Pedro Alves <pedro@codesourcery.com>
gdb/
* top.h (line): Rename to ...
(saved_command_line): ... this.
(linesize): Rename to ...
(saved_command_line_size): ... this.
* top.c (line): Rename to ...
(saved_command_line): ... this.
(linesize): Rename to ...
(saved_command_line_size): ... this.
(dont_repeat, command_line_input, dont_repeat_command): Adjust.
* event-top.c (command_line_handler): Adjust.
* main.c (captured_main): Adjust.
nickc [Mon, 13 Jun 2011 09:57:33 +0000 (09:57 +0000)]
PR gas/12854
* gas/arm/shift-bad.s: New test.
* gas/arm/shift-bad.l: Expcted error output.
* gas/arm/shift-bad.s: New control file.
* config/tc-arm.c (do_shift): Do not allow shift operations at the
end of a register based shift insn.
(do_t_shift): Likewise.
nickc [Mon, 13 Jun 2011 09:45:26 +0000 (09:45 +0000)]
* config/tc-score.c (s3_my_get_expression): Delete unused local
variable 'seg'.
(s3_do_ldst_insn): Delete unused local variable 'strbak'.
(s3_do16_ldst_insn): Delete unused local variable 'temp'.
(s3_do_macro_bcmp): Zero inst_expand array.
(s3_do_macro_bcmpz): Likewise.
(s3_s_score_end): Delete unused local variable 'dot'.
(s3_gen_reloc): Delete unused local variables 'f', 's', and 'e'.
* config/tc-score7.c (s7_my_get_expression): Delete unused local
variable 'seg'.
(s7_do_ldst_insn): Delete unused local variable 'strbak'.
(s7_b32_relax_to_b16): Delete unused local variables 'r_old' and
'r_new'.
(s7_s_score_end): Delete unused local variable 'dot'.
(s7_relax_frag): Delete unused local variable 'relax_size'.
(s7_gen_reloc): Delete unused local variables 'f', 's', and 'e'.
hjl [Mon, 13 Jun 2011 02:41:24 +0000 (02:41 +0000)]
Update lzcnt testcases.
2011-06-12 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/arch-10-lzcnt.d: Updated.
* gas/i386/x86-64-arch-2-lzcnt.d: Likewise.
amodra [Mon, 13 Jun 2011 00:59:42 +0000 (00:59 +0000)]
* ldlang.c (sort_def_symbol, lang_one_common): Don't handle
warning symbols here.
* emultempl/pe.em (pr_sym): Remove redundant test.
* emultempl/pep.em (pr_sym): Likewise.
amodra [Mon, 13 Jun 2011 00:59:07 +0000 (00:59 +0000)]
* linker.c (bfd_link_hash_traverse): Follow warning symbol link.
(_bfd_generic_link_write_global_symbol, fix_syms): Don't handle
warning symbols here.
* elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
* elf32-arm.c (allocate_dynrelocs_for_symbol,
elf32_arm_readonly_dynrelocs): Likewise.
* elf32-bfin.c (bfin_discard_copies): Likewise.
* elf32-cris.c (elf_cris_adjust_gotplt_to_got,
elf_cris_discard_excess_dso_dynamics,
elf_cris_discard_excess_program_dynamics): Likewise.
* elf32-hppa.c (allocate_plt_static, allocate_dynrelocs,
clobber_millicode_symbols, readonly_dynrelocs): Likewise.
* elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
* elf32-i386.c (elf_i386_allocate_dynrelocs,
elf_i386_readonly_dynrelocs): Likewise.
* elf32-lm32.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
* elf32-m32c.c (m32c_relax_plt_check, m32c_relax_plt_realloc): Likewise.
* elf32-m32r.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
* elf32-m68k.c (elf_m68k_discard_copies): Likewise.
* elf32-microblaze.c (allocate_dynrelocs): Likewise.
* elf32-ppc.c (allocate_dynrelocs, maybe_set_textrel): Likewise.
* elf32-s390.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
* elf32-score.c (score_elf_sort_hash_table_f): Likewise.
* elf32-score7.c (score_elf_sort_hash_table_f): Likewise.
* elf32-sh.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
* elf32-tic6x.c (elf32_tic6x_allocate_dynrelocs,
elf32_tic6x_readonly_dynrelocs): Likewise.
* elf32-vax.c (elf_vax_discard_copies): Likewise.
* elf32-xstormy16.c (xstormy16_relax_plt_check,
xstormy16_relax_plt_realloc): Likewise.
* elf32-xtensa.c (elf_xtensa_allocate_dynrelocs): Likewise.
* elf64-alpha.c (elf64_alpha_output_extsym,
elf64_alpha_calc_got_offsets_for_symbol,
elf64_alpha_calc_dynrel_sizes, elf64_alpha_size_rela_got_1): Likewise.
* elf64-hppa.c (elf64_hppa_mark_exported_functions,
allocate_global_data_opd, elf64_hppa_mark_milli_and_exported_functions,
elf_hppa_unmark_useless_dynamic_symbols,
elf_hppa_remark_useless_dynamic_symbols): Likewise.
* elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref, func_desc_adjust,
adjust_opd_syms, adjust_toc_syms, allocate_dynrelocs,
readonly_dynrelocs, merge_global_got, reallocate_got,
undo_symbol_twiddle): Likewise.
* elf64-s390.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
* elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
* elf64-x86-64.c (elf_x86_64_allocate_dynrelocs,
elf_x86_64_readonly_dynrelocs): Likewise.
* elflink.c (elf_link_renumber_hash_table_dynsyms,
elf_link_renumber_local_hash_table_dynsyms, _bfd_elf_export_symbol,
_bfd_elf_link_find_version_dependencies,
_bfd_elf_link_assign_sym_version, _bfd_elf_adjust_dynamic_symbol,
_bfd_elf_link_sec_merge_syms, elf_adjust_dynstr_offsets,
elf_collect_hash_codes, elf_collect_gnu_hash_codes,
elf_renumber_gnu_hash_syms, elf_gc_sweep_symbol,
elf_gc_propagate_vtable_entries_used,
elf_gc_smash_unused_vtentry_relocs, bfd_elf_gc_mark_dynamic_ref_symbol,
elf_gc_allocate_got_offsets): Likewise.
* elfnn-ia64.c (elfNN_ia64_global_dyn_info_free,
elfNN_ia64_global_dyn_sym_thunk): Likewise.
* elfxx-mips.c (mips_elf_check_symbols, mips_elf_output_extsym,
mips_elf_sort_hash_table_f, allocate_dynrelocs): Likewise.
* elfxx-sparc.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
* i386linux.c (linux_tally_symbols): Likewise.
* m68klinux.c (linux_tally_symbols): Likewise.
* sparclinux.c (linux_tally_symbols): Likewise.
* sunos.c (sunos_scan_dynamic_symbol): Likewise.
* xcofflink.c (xcoff_post_gc_symbol): Likewise.
* elflink.c (elf_link_output_extsym): Make it a bfd_hash_traverse
function. Update all callers.
* aoutx.h (aout_link_write_other_symbol): Likewise.
* pdp11.c (aout_link_write_other_symbol): Likewise.
* cofflink.c (_bfd_coff_write_global_sym): Likewise.
* ecoff.c (ecoff_link_write_external): Likewise.
* xcofflink.c (xcoff_write_global_symbol): Likewise.
* vms-alpha.c (alpha_vms_link_output_symbol): Likewise. Handle
warning symbols.
* ecoff.c (ecoff_link_hash_traverse): Delete.
* coff-ppc.c (ppc_bfd_coff_final_link): Use bfd_hash_traverse for
_bfd_coff_write_global_sym.
* libcoff-in.h (_bfd_coff_write_global_sym): Update prototype.
* libcoff.h: Regenerate.
gdbadmin [Mon, 13 Jun 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 13 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
kettenis [Sun, 12 Jun 2011 20:46:11 +0000 (20:46 +0000)]
* i386-tdep.c (i386_epilogue_frame_cache): Simplify code. Call
get_frame_func instead of get_frame_pc to determine the code
address used to construct the frame ID.
(i386_epilogue_frame_unwind_stop_reason): Fix coding style.
(i386_epilogue_frame_this_id): Likewise.
(i386_epilogue_frame_prev_register): New function.
(i386_epilogue_frame_unwind): Use i386_epilogue_frame_prev_register.
(i386_stack_tramp_frame_sniffer): Fix coding style.
(i386_stack_tramp_frame_unwind): Use i386_epilogue_frame_prev_register.
(i386_gdbarch_init): Fix comments.
cgf [Sun, 12 Jun 2011 20:15:25 +0000 (20:15 +0000)]
Rename FH_BAD to FH_NADA throughout.
* devices.h (FH_ERROR): New value.
(iscons_dev): Extend to detect all the console device types.
* devices.in: Set aside storage for FH_ERROR.
* dtable.cc (dtable::init_std_file_from_handle): Use iscons_dev to detect when
device is a console.
(fh_alloc): Pass device to console constructor.
(build_fh_pc): Short circuit when we detect that the constructor saw an error.
* fhandler.h (fhandler_console::fhandler_console): Accept fh_devices parameter.
(get_tty_stuff): Change to void.
* fhandler_console (fhandler_console::set_unit): Set device to FH_ERROR on
attempt to access anything other than the current console.
(fhandler_console::get_tty_stuff): Change to void return.
(fhandler_console::open): Return EPERM on FH_ERROR device type.
(fhandler_console::fhandler_console): Set the device type appropriately before
calling get_tty_stuff and rely on that function to reset it if necessary.
kettenis [Sun, 12 Jun 2011 18:21:54 +0000 (18:21 +0000)]
* i386-tdep.c (i386_match_insn_block): Use length of the proper
instruction when walking back through the instruction stream.
amodra [Sun, 12 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 12 Jun 2011 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
gdbadmin [Sat, 11 Jun 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Sat, 11 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
jkratoch [Fri, 10 Jun 2011 21:50:53 +0000 (21:50 +0000)]
gdb/
* symtab.c (output_partial_symbol_filename): Exchange the filename and
fullname parameters order.
gdb/testsuite/
* gdb.dwarf2/dw2-filename.exp (info sources): New testcase.
jkratoch [Fri, 10 Jun 2011 21:48:03 +0000 (21:48 +0000)]
gdb/
Code cleanup.
* dwarf2read.c (dw2_map_symbol_filenames): Use symbol_filename_ftype
for fun.
* psymtab.c (map_symbol_filenames_psymtab)
(map_partial_symbol_filenames): Likewise.
* psymtab.h: Include symfile.h.
(map_partial_symbol_filenames): Use symbol_filename_ftype for fun.
* symfile.h (symbol_filename_ftype): New.
(struct quick_symbol_functions): Use symbol_filename_ftype for fun of
map_symbol_filenames, clarify more the naming in comment.
hjl [Fri, 10 Jun 2011 21:27:36 +0000 (21:27 +0000)]
Support AVX Programming Reference (June, 2011).
gas/
2011-06-10 H.J. Lu <hongjiu.lu@intel.com>
AVX Programming Reference (June, 2011)
* config/tc-i386.c (i386_error): Add invalid_vsib_address and
unsupported_vector_index_register.
(cpu_arch): Add .avx2, .bmi2, .lzcnt and .invpcid.
(check_VecOperands): New.
(match_template): Call check_VecOperands. Handle
invalid_vsib_address and unsupported_vector_index_register.
(build_modrm_byte): Support VecSIB. Check register-only source
operand when two source operands are swapped.
(i386_index_check): Allow Xmm/Ymm index registers.
* doc/c-i386.texi: Document avx2/.avx2, bmi2/.bmi2, lzcnt/.lzcnt
and invpcid./invpcid.
gas/testsuite/
2011-06-10 H.J. Lu <hongjiu.lu@intel.com>
AVX Programming Reference (June, 2011)
* gas/i386/arch-10-1.l: Updated.
* gas/i386/arch-10-2.l: Likewise.
* gas/i386/arch-10-3.l: Likewise.
* gas/i386/arch-10-4.l: Likewise.
* gas/i386/arch-10.s: Add LZCNT to comments.
* gas/i386/x86-64-arch-2.s: Likewise.
* gas/i386/arch-10-lzcnt.d: New.
* gas/i386/avx-gather-intel.d: Likewise.
* gas/i386/avx-gather.d: Likewise.
* gas/i386/avx-gather.s: Likewise.
* gas/i386/avx2-intel.d: Likewise.
* gas/i386/avx2.d: Likewise.
* gas/i386/avx2.s: Likewise
* gas/i386/avx256int-intel.d: Likewise.
* gas/i386/avx256int.d: Likewise.
* gas/i386/avx256int.s: Likewise.
* gas/i386/bmi2-intel.d: Likewise.
* gas/i386/bmi2.d: Likewise.
* gas/i386/bmi2.s: Likewise.
* gas/i386/inval-invpcid.l:Likewise.
* gas/i386/inval-invpcid.s: Likewise.
* gas/i386/invpcid-intel.d: Likewise.
* gas/i386/invpcid.d: Likewise.
* gas/i386/invpcid.s: Likewise.
* gas/i386/x86-64-arch-2-lzcnt.d: Likewise.
* gas/i386/x86-64-avx-gather-intel.d: Likewise.
* gas/i386/x86-64-avx-gather.d: Likewise.
* gas/i386/x86-64-avx-gather.s: Likewise.
* gas/i386/x86-64-avx2-intel.d: Likewise.
* gas/i386/x86-64-avx2.d: Likewise.
* gas/i386/x86-64-avx2.s: Likewise.
* gas/i386/x86-64-avx256int-intel.d: Likewise.
* gas/i386/x86-64-avx256int.d: Likewise.
* gas/i386/x86-64-avx256int.s: Likewise.
* gas/i386/x86-64-bmi2-intel.d: Likewise.
* gas/i386/x86-64-bmi2.d: Likewise.
* gas/i386/x86-64-bmi2.s: Likewise.
* gas/i386/x86-64-inval-invpcid.l: Likewise.
* gas/i386/x86-64-inval-invpcid.s: Likewise.
* gas/i386/x86-64-invpcid-intel.d: Likewise.
* gas/i386/x86-64-invpcid.d: Likewise.
* gas/i386/x86-64-invpcid.s: Likewise.
opcodes/
2011-06-10 H.J. Lu <hongjiu.lu@intel.com>
AVX Programming Reference (June, 2011)
* i386-dis.c (XMGatherQ): New.
* i386-dis.c (EXxmm_mb): New.
(EXxmm_mb): Likewise.
(EXxmm_mw): Likewise.
(EXxmm_md): Likewise.
(EXxmm_mq): Likewise.
(EXxmmdw): Likewise.
(EXxmmqd): Likewise.
(VexGatherQ): Likewise.
(MVexVSIBDWpX): Likewise.
(MVexVSIBQWpX): Likewise.
(xmm_mb_mode): Likewise.
(xmm_mw_mode): Likewise.
(xmm_md_mode): Likewise.
(xmm_mq_mode): Likewise.
(xmmdw_mode): Likewise.
(xmmqd_mode): Likewise.
(ymmxmm_mode): Likewise.
(vex_vsib_d_w_dq_mode): Likewise.
(vex_vsib_q_w_dq_mode): Likewise.
(MOD_VEX_0F385A_PREFIX_2): Likewise.
(MOD_VEX_0F388C_PREFIX_2): Likewise.
(MOD_VEX_0F388E_PREFIX_2): Likewise.
(PREFIX_0F3882): Likewise.
(PREFIX_VEX_0F3816): Likewise.
(PREFIX_VEX_0F3836): Likewise.
(PREFIX_VEX_0F3845): Likewise.
(PREFIX_VEX_0F3846): Likewise.
(PREFIX_VEX_0F3847): Likewise.
(PREFIX_VEX_0F3858): Likewise.
(PREFIX_VEX_0F3859): Likewise.
(PREFIX_VEX_0F385A): Likewise.
(PREFIX_VEX_0F3878): Likewise.
(PREFIX_VEX_0F3879): Likewise.
(PREFIX_VEX_0F388C): Likewise.
(PREFIX_VEX_0F388E): Likewise.
(PREFIX_VEX_0F3890..PREFIX_VEX_0F3893): Likewise.
(PREFIX_VEX_0F38F5): Likewise.
(PREFIX_VEX_0F38F6): Likewise.
(PREFIX_VEX_0F3A00): Likewise.
(PREFIX_VEX_0F3A01): Likewise.
(PREFIX_VEX_0F3A02): Likewise.
(PREFIX_VEX_0F3A38): Likewise.
(PREFIX_VEX_0F3A39): Likewise.
(PREFIX_VEX_0F3A46): Likewise.
(PREFIX_VEX_0F3AF0): Likewise.
(VEX_LEN_0F3816_P_2): Likewise.
(VEX_LEN_0F3819_P_2): Likewise.
(VEX_LEN_0F3836_P_2): Likewise.
(VEX_LEN_0F385A_P_2_M_0): Likewise.
(VEX_LEN_0F38F5_P_0): Likewise.
(VEX_LEN_0F38F5_P_1): Likewise.
(VEX_LEN_0F38F5_P_3): Likewise.
(VEX_LEN_0F38F6_P_3): Likewise.
(VEX_LEN_0F38F7_P_1): Likewise.
(VEX_LEN_0F38F7_P_2): Likewise.
(VEX_LEN_0F38F7_P_3): Likewise.
(VEX_LEN_0F3A00_P_2): Likewise.
(VEX_LEN_0F3A01_P_2): Likewise.
(VEX_LEN_0F3A38_P_2): Likewise.
(VEX_LEN_0F3A39_P_2): Likewise.
(VEX_LEN_0F3A46_P_2): Likewise.
(VEX_LEN_0F3AF0_P_3): Likewise.
(VEX_W_0F3816_P_2): Likewise.
(VEX_W_0F3818_P_2): Likewise.
(VEX_W_0F3819_P_2): Likewise.
(VEX_W_0F3836_P_2): Likewise.
(VEX_W_0F3846_P_2): Likewise.
(VEX_W_0F3858_P_2): Likewise.
(VEX_W_0F3859_P_2): Likewise.
(VEX_W_0F385A_P_2_M_0): Likewise.
(VEX_W_0F3878_P_2): Likewise.
(VEX_W_0F3879_P_2): Likewise.
(VEX_W_0F3A00_P_2): Likewise.
(VEX_W_0F3A01_P_2): Likewise.
(VEX_W_0F3A02_P_2): Likewise.
(VEX_W_0F3A38_P_2): Likewise.
(VEX_W_0F3A39_P_2): Likewise.
(VEX_W_0F3A46_P_2): Likewise.
(MOD_VEX_0F3818_PREFIX_2): Removed.
(MOD_VEX_0F3819_PREFIX_2): Likewise.
(VEX_LEN_0F60_P_2..VEX_LEN_0F6D_P_2): Likewise.
(VEX_LEN_0F70_P_1..VEX_LEN_0F76_P_2): Likewise.
(VEX_LEN_0FD1_P_2..VEX_LEN_0FD5_P_2): Likewise.
(VEX_LEN_0FD7_P_2_M_1..VEX_LEN_0F3819_P_2_M_0): Likewise.
(VEX_LEN_0F381C_P_2..VEX_LEN_0F3840_P_2): Likewise.
(VEX_LEN_0F3A0E_P_2): Likewise.
(VEX_LEN_0F3A0F_P_2): Likewise.
(VEX_LEN_0F3A42_P_2): Likewise.
(VEX_LEN_0F3A4C_P_2): Likewise.
(VEX_W_0F3818_P_2_M_0): Likewise.
(VEX_W_0F3819_P_2_M_0): Likewise.
(prefix_table): Updated.
(three_byte_table): Likewise.
(vex_table): Likewise.
(vex_len_table): Likewise.
(vex_w_table): Likewise.
(mod_table): Likewise.
(putop): Handle "LW".
(intel_operand_size): Handle xmm_mb_mode, xmm_mw_mode,
xmm_md_mode, xmm_mq_mode, xmmdw_mode, xmmqd_mode, ymmxmm_mode,
vex_vsib_d_w_dq_mode, vex_vsib_q_w_dq_mode.
(OP_EX): Likewise.
(OP_E_memory): Handle vex_vsib_d_w_dq_mode and
vex_vsib_q_w_dq_mode.
(OP_XMM): Handle vex_vsib_q_w_dq_mode.
(OP_VEX): Likewise.
* i386-gen.c (cpu_flag_init): Add CpuAVX2 to CPU_ANY_SSE_FLAGS
and CPU_ANY_AVX_FLAGS. Add CPU_BMI2_FLAGS, CPU_LZCNT_FLAGS,
CPU_INVPCID_FLAGS and CPU_AVX2_FLAGS.
(cpu_flags): Add CpuAVX2, CpuBMI2, CpuLZCNT and CpuINVPCID.
(opcode_modifiers): Add VecSIB.
* i386-opc.h (CpuAVX2): New.
(CpuBMI2): Likewise.
(CpuLZCNT): Likewise.
(CpuINVPCID): Likewise.
(VecSIB128): Likewise.
(VecSIB256): Likewise.
(VecSIB): Likewise.
(i386_cpu_flags): Add cpuavx2, cpubmi2, cpulzcnt and cpuinvpcid.
(i386_opcode_modifier): Add vecsib.
* i386-opc.tbl: Add invpcid, AVX2 and BMI2 instructions.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
jjohnstn [Fri, 10 Jun 2011 18:30:38 +0000 (18:30 +0000)]
2011-06-09 Yaakov Selkowitz <yselkowitz@...>
* libc/include/string.h (strdupa): New macro function.
(strndupa): New macro function.
tromey [Fri, 10 Jun 2011 16:21:46 +0000 (16:21 +0000)]
* gdb.cp/temargs.exp: Let tests pass if compiler bug is fixed.
Add tests for pointer-to-member-function.
* gdb.cp/temargs.cc (S::somefunc): New function.
(K2): New class.
(main): Instantiate K2; call method.
cgf [Fri, 10 Jun 2011 15:06:11 +0000 (15:06 +0000)]
* environ.cc (create_upcaseenv): Delete.
(ucenv): Don't honor create_upcaseenv.
(environ_init): Remove early retrieval of CYGWIN environment variable. Change
comment to reflect new behavior.
nickc [Fri, 10 Jun 2011 14:04:23 +0000 (14:04 +0000)]
* elflink.c (_bfd_elf_link_create_dynamic_sections): If the
backend does not provide a function for creating dynamic sections
then fail.
(bfd_elf_final_link): Issue a warning message if a dynamic section
has the SHT_NOTE type.
(bfd_elf_final_link): Do not look for dynamic strings in a section
that does not have the SHT_STRTAB type or the name .dynstr.
* elf32-arm.c (elf32_arm_finish_dynamic_sections): Fail if the got
section is not in the output binary.
* elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Likewise.
* ld-elf/elf.exp: Add test for linking a shared library with a
broken linker script that marks dynamic sections as being notes.
* ld-elf/note-3.s: New test source file.
* ld-elf/note-3.t: New test linker script.
* ld-elf/note-3.l: Expected output from the linker.
* lib/ld-lib.exp (run_ld_link_tests): Improve description.
amodra [Fri, 10 Jun 2011 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 10 Jun 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
cgf [Thu, 9 Jun 2011 21:20:25 +0000 (21:20 +0000)]
* child_info.h (CURR_CHILD_INFO_MAGIC): Reset.
(child_info::old_title): Delete.
(child_info::~child_info_spawn): Remove recording of old_title.
* dcrt0.cc (title_buf): Delete.
(child_info_spawn::handle_spawn): Remove recording of old_title.
(dll_crt0_1): Get rid of all title handling.
(do_exit): Ditto.
* environ.cc (known): Delete strip_title and title.
* fhandler_console.cc (fhandler_console::write): Remove recording of old_title.
* globals.cc (exit_states): Remove ES_TITLE.
(display_title): Delete.
(strip_title_path): Delete.
(old_title): Delete.
* spawn.cc (spawn_guts): Remove old_title accommodation.
ian [Thu, 9 Jun 2011 19:25:02 +0000 (19:25 +0000)]
* script-sections.cc
(Orphan_output_section::set_section_addresses): For a relocatable
link set address to 0.
cgf [Thu, 9 Jun 2011 19:08:21 +0000 (19:08 +0000)]
* environ.cc (envcache): Delete.
(known): Remove envcache.
(getwinenv): Don't honor envcache setting.
ccoutant [Thu, 9 Jun 2011 18:18:43 +0000 (18:18 +0000)]
PR gold/12804
* gold/gold.cc (queue_initial_tasks): Warn if --incremental is
used with --compress-debug-sections.
* gold/object.cc (Sized_relobj_file::do_layout): Report
uncompressed size of compressed input sections.
cgf [Thu, 9 Jun 2011 17:50:39 +0000 (17:50 +0000)]
* environ.c: Move code earlier to allow:
(_addenv): Call parse_options() when CYGWIN environment variable is being
changed.
(parse_options): Change parameter to 'const'.
nickc [Thu, 9 Jun 2011 15:43:51 +0000 (15:43 +0000)]
PR gas/12861
* config/tc-cr16.c (tc_gen_reloc): Remove unused local variable
code.
(check_cinv_options): Remove unused local variables. Make
function void.
(md_assemble): Remove unused local variable.
gingold [Thu, 9 Jun 2011 15:35:30 +0000 (15:35 +0000)]
2011-06-09 Tristan Gingold <gingold@adacore.com>
* elfnn-ia64.c (elfNN_ia64_relax_section, elfNN_ia64_choose_gp)
(elfNN_ia64_relocate_section, elfNN_vms_object_p): Remove trailing
spaces.
vapier [Thu, 9 Jun 2011 15:33:03 +0000 (15:33 +0000)]
sim: erc32: ignore --sysroot that gdb passes down
gingold [Thu, 9 Jun 2011 15:31:39 +0000 (15:31 +0000)]
2011-06-09 Tristan Gingold <gingold@adacore.com>
* bfd.c (bfd_get_sign_extend_vma): Handle aixcoff.
gingold [Thu, 9 Jun 2011 15:29:05 +0000 (15:29 +0000)]
2011-06-09 Tristan Gingold <gingold@adacore.com>
* od-xcoff.c (xcoff32_read_symbols): Allow missing string table
length.
brobecke [Thu, 9 Jun 2011 14:21:43 +0000 (14:21 +0000)]
sim/ppc: Fix check for --sysroot= option
Fixes an error reported by Tristan and which can be evidenced by
doing:
% powerpc-elf-gdb
(gdb) target sim --sysroot=var
Invalid option: --sysroot=/var
[...]
sim/ppc/ChangeLog:
* psim.c (psim_options): Fix length of comparison when checking
for --sysroot= option.
brobecke [Thu, 9 Jun 2011 14:21:36 +0000 (14:21 +0000)]
Spelling fixes in ChangeLog.
nickc [Thu, 9 Jun 2011 10:36:18 +0000 (10:36 +0000)]
PR ld/12845
* elf.c (_bfd_elf_init_private_section_data): Add an assertion
that the output section has an allocated bfd_elf_section_data
structure.
* elfxx-mips.c (mips_elf_check_symbols): Do not create a stub for
symbols in sections that have been removed by garbage collection.
* emultempl/mipself.em (mips_add_stub_section): Do not add stubs
for sections that have been removed by garbage collection.
rearnsha [Thu, 9 Jun 2011 09:59:32 +0000 (09:59 +0000)]
2011-06-09 James Greenhalgh <james.greenhalgh@arm.com>
* config/tc-arm.c (do_ldrd): Warn in unpredictable cases.
2011-06-09 James Greenhalgh <james.greenhalgh@arm.com>
* gas/arm/ldrd-unpredicatble.d: New testcase.
* gas/arm/ldrd-unpredicatble.s: Likewise.
* gas/arm/ldrd-unpredicatble.l: Likewise.
gingold [Thu, 9 Jun 2011 08:53:05 +0000 (08:53 +0000)]
2011-06-09 Tristan Gingold <gingold@adacore.com>
* ia64.h (Elf64_External_VMS_ORIG_DYN_Note): New struct.
hjl [Thu, 9 Jun 2011 06:00:07 +0000 (06:00 +0000)]
Build x32 DSO from x86-64 object file only for native.
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/x86-64.exp: Build x32 DSO from x86-64 object file
only for native.
hjl [Thu, 9 Jun 2011 05:51:09 +0000 (05:51 +0000)]
Allow building x32 DSO from x86-64 object file.
bfd/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_x86_64_check_relocs): Allow R_X86_64_64
relocations in SEC_DEBUGGING sections when building shared
libraries.
ld/testsuite/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/simple.c: New.
* ld-x86-64/x86-64-x32.rd: Likewise.
* ld-x86-64/x86-64.exp: Check building x32 DSO from x86-64
object file.
hjl [Thu, 9 Jun 2011 04:52:12 +0000 (04:52 +0000)]
Check relocations in note sections for --gc-sections.
bfd/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12851
* elflink.c (elf_gc_sweep): Don't check SHT_NOTE sections here.
(bfd_elf_gc_sections): Also check SHT_NOTE sections.
ld/testsuite/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12851
* ld-elf/pr12851.d: New.
* ld-elf/pr12851.s: Likewise.
ccoutant [Thu, 9 Jun 2011 00:51:38 +0000 (00:51 +0000)]
PR gold/12804
* testsuite/two_file_test_2_v1.cc: Change initialization of
v2 to keep it in .data.
gdbadmin [Thu, 9 Jun 2011 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Thu, 9 Jun 2011 00:00:06 +0000 (00:00 +0000)]
daily update
cgf [Wed, 8 Jun 2011 19:51:15 +0000 (19:51 +0000)]
* environ.cc (tty_is_gone): Add missing space to message.
cgf [Wed, 8 Jun 2011 19:27:48 +0000 (19:27 +0000)]
* environ.cc (settings::set_process_state): Delete.
(tty_is_gone): New function.
(known): Change "tty" to call tty_is_gone(). Remove unneeded '&' from
beginning of function address.
(parse_options): Remove set_process_state handling.
* shared_info.h (CURR_USER_MAGIC): Reset.
(user_info::warned_notty): New member.
brobecke [Wed, 8 Jun 2011 16:56:11 +0000 (16:56 +0000)]
py-inferior.exp: Make sure local var is allocated on the stack.
The testcase, at some point, is trying to change the contents
of a string that was defined as follow:
char *str = "hello, testsuite";
The problem is that the string is constant, and str is never used
to change the contents of the string in the program, so the compiler
is free to allocate it in a read-only section. This is what happens
on x86-windows, for instance.
As a result, trying to change the contents of the string during
the `python gdb.inferiors()[0].write_memory (addr, str)' results
in the following error:
(gdb) python gdb.inferiors()[0].write_memory (addr, str)
gdb: write target memory, 5 bytes at 0x00403064
Traceback (most recent call last):
File "<string>", line 1, in <module>
gdb.MemoryError: Cannot access memory at address 0x403064
Error while executing Python code.
This patch prevents this from happening by declaring str as an
array rather than a pointer.
gdb/testsuite/ChangeLog:
* gdb.python/py-inferior.c (f2): Make str an array rather
than a pointer.
* gdb.python/py-inferior.exp: Adjust testcase accordingly.
brobecke [Wed, 8 Jun 2011 16:44:28 +0000 (16:44 +0000)]
ppc sim: Improve invalid option error message
This patch improves the error message when an invalid option is
detected, by also printing the option that actually caused the error.
For instance, from GDB:
(gdb) target sim --hello
Invalid option: --hello
Usage:
[...]
We also added the usage after an invalid long-name option (Eg: --hello)
to be in line with what's being done for all other invalid options
being detected.
sim/ppc/ChangeLog:
* psim.c (psim_options): Add option that cause the error
in invalid-option error messages. Print the usage when
detecting an invalid long-name option.
brobecke [Wed, 8 Jun 2011 16:44:20 +0000 (16:44 +0000)]
ppc sim: Allow --sysroot command-line option
There was a recent change that cuased the "target sim" command
to add a --sysroot option to the argument vector passed down to
the simulator. This caused a failure in the powerpc simulator,
as it did not recognize it. This patch fixes the problem by adding
support for the --sysroot option (it ignores it).
sim/ppc/ChangeLog:
* psim.c (psim_options): Accept and ignore `--sysroot=...'.
nickc [Wed, 8 Jun 2011 15:59:06 +0000 (15:59 +0000)]
PR binutils/12855
* readelf.c (process_version_sections): Handle binaries containing
corrupt version information.
(process_symbol_table): Stop processing a symbol's version
information if it could not be read in.
(get_data): Add comment describing the function.
(process_section_headers): Set dynamic_strings_length to 0 if the
dynamic strings could not be read in.
(process_dynamic_section): Likewise.
(process_section_groups): Stop processing the group information if
the data could not be read in.
(hppa_processs_unwind): Assert that there is only one string table
in the file.
(arm_process_unwind): Likewise.
(ia64_process_unwind): Likewise.
Set the size of the unwind auxillary information to 0 if the data
could not be read.
(load_specific_debug_section): Handle a failure to read in the
section.
(process_mips_specific): Stop display of the PLT GOT section if it
could not be read in.
gingold [Wed, 8 Jun 2011 12:40:28 +0000 (12:40 +0000)]
2011-06-08 Tristan Gingold <gingold@adacore.com>
* makefile.vms (DEFS): Define OBJDUMP_PRIVATE_VECTORS.
gingold [Wed, 8 Jun 2011 12:33:46 +0000 (12:33 +0000)]
2011-06-08 Tristan Gingold <gingold@adacore.com>
* makefile.vms (OBJS): Add elfxx-ia64.obj
Remove vax case.
nickc [Wed, 8 Jun 2011 07:43:18 +0000 (07:43 +0000)]
configure.tgt: Accept any V850 architecture.
hjl [Wed, 8 Jun 2011 04:47:03 +0000 (04:47 +0000)]
Add a testcase for warning on common symbol in archive.
2011-06-07 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/elf.exp: Build symbol3.a and symbol3w.a.
* ld-elf/symbol3.s: New.
* ld-elf/symbol3w.s: Likewise.
* ld-elf/warn3.d: Likewise.
ccoutant [Wed, 8 Jun 2011 04:43:28 +0000 (04:43 +0000)]
* common.cc (Symbol_table::do_allocate_commons_list): Call
gold_fallback.
* errors.cc (Errors::fatal): Adjust call to gold_exit.
(Errors::fallback): New function.
(gold_fallback): New function.
* errors.h (Errors::fallback): New function.
* gold.cc (gold_exit): Change status parameter to enum; adjust
all callers.
(queue_initial_tasks): Call gold_fallback.
* gold.h: Include cstdlib.
(Exit_status): New enum type.
(gold_exit): Change status parameter to enum.
(gold_fallback): New function.
* layout.cc (Layout::set_section_offsets): Call gold_fallback.
(Layout::create_symtab_sections): Likewise.
(Layout::create_shdrs): Likewise.
* main.cc (main): Adjust call to gold_exit.
* output.cc (Output_data_got::add_got_entry): Call gold_fallback.
(Output_data_got::add_got_entry_pair): Likewise.
(Output_section::add_input_section): Likewise.
(Output_section::add_output_section_data): Likewise.
(Output_segment::set_section_list_addresses): Likewise.
* x86_64.cc (Output_data_plt_x86_64::add_entry): Likewise.
ccoutant [Wed, 8 Jun 2011 04:34:21 +0000 (04:34 +0000)]
* layout.cc (Layout::set_segment_offsets): Don't adjust layout
for incremental links.
* output.cc (Output_segment::set_section_list_addresses): Remove
FIXME and test for TLS or BSS.
ccoutant [Wed, 8 Jun 2011 04:24:58 +0000 (04:24 +0000)]
* testsuite/Makefile.am: Add incremental_copy_test,
incremental_common_test_1.
* testsuite/Makefile.in: Regenerate.
* testsuite/common_test_1_v1.c: New source file.
* testsuite/common_test_1_v2.c: New source file.
* testsuite/copy_test_v1.cc: New source file.
ccoutant [Wed, 8 Jun 2011 04:05:24 +0000 (04:05 +0000)]
* common.cc (Symbol_table::do_allocate_commons_list): For incremental
update, allocate common from bss section's free list.
* incremental-dump.cc (dump_incremental_inputs): Print flag for
linker-defined symbols.
* incremental.cc (Sized_incremental_binary::do_process_got_plt):
Skip GOT and PLT entries that are no longer referenced.
(Output_section_incremental_inputs::write_info_blocks): Mark
linker-defined symbols.
(Sized_incr_relobj::do_add_symbols): Process linker-defined symbols.
* output.cc (Output_section::allocate): New function.
* output.h (Output_section::allocate): New function.
* resolve.cc (Symbol_table::report_resolve_problem): Add case for
linker-defined symbols.
(Symbol::override_base_with_special): Copy is_predefined_ flag.
* symtab.cc (Symbol::init_fields): Initialize is_predefined_ flag.
(Symbol::init_base_output_data): Likewise.
(Symbol::init_base_output_segment): Likewise.
(Symbol::init_base_constant): Likewise.
(Sized_symbol::init_output_data): Likewise.
(Sized_symbol::init_output_segment): Likewise.
(Sized_symbol::init_constant): Likewise.
(Symbol_table::do_define_in_output_data): Likewise.
(Symbol_table::do_define_in_output_segment): Likewise.
(Symbol_table::do_define_as_constant): Likewise.
* symtab.h (Symbol::is_predefined): New function.
(Symbol::init_base_output_data): Add is_predefined parameter.
(Symbol::init_base_output_segment): Likewise.
(Symbol::init_base_constant): Likewise.
(Symbol::is_predefined_): New data member.
(Sized_symbol::init_output_data): Add is_predefined parameter.
(Sized_symbol::init_output_segment): Likewise.
(Sized_symbol::init_constant): Likewise.
(enum Symbol_table::Defined): Add INCREMENTAL_BASE.
ccoutant [Wed, 8 Jun 2011 03:50:10 +0000 (03:50 +0000)]
* copy-relocs.cc (Copy_relocs::copy_reloc): Call make_copy_reloc
instead of emit_copy_reloc.
(Copy_relocs::emit_copy_reloc): Refactor.
(Copy_relocs::make_copy_reloc): New function.
(Copy_relocs::add_copy_reloc): Remove.
* copy-relocs.h (Copy_relocs::emit_copy_reloc): Move to public
section.
(Copy_relocs::make_copy_reloc): New function.
(Copy_relocs::add_copy_reloc): Remove.
* gold.cc (queue_middle_tasks): Emit old COPY relocations from
unchanged input files.
* incremental-dump.cc (dump_incremental_inputs): Print "COPY" flag.
* incremental.cc (Sized_incremental_binary::do_reserve_layout):
Reserve BSS space for COPY relocations.
(Sized_incremental_binary::do_emit_copy_relocs): New function.
(Output_section_incremental_inputs::write_info_blocks): Record
whether a symbol is copied from a shared object.
(Sized_incr_dynobj::do_add_symbols): Record COPY relocations.
* incremental.h (enum Incremental_shlib_symbol_flags): New type.
(INCREMENTAL_SHLIB_SYM_FLAGS_SHIFT): New constant.
(Incremental_input_entry_reader::get_output_symbol_index): Add
is_copy parameter.
(Incremental_binary::emit_copy_relocs): New function.
(Incremental_binary::do_emit_copy_relocs): New function.
(Sized_incremental_binary::Sized_incremental_binary): Initialize
new data member.
(Sized_incremental_binary::add_copy_reloc): New function.
(Sized_incremental_binary::do_emit_copy_relocs): New function.
(Sized_incremental_binary::Copy_reloc): New struct.
(Sized_incremental_binary::Copy_relocs): New typedef.
(Sized_incremental_binary::copy_relocs_): New data member.
* symtab.cc (Symbol_table::add_from_incrobj): Change return type.
* symtab.h (Symbol_table::add_from_incrobj): Change return type.
* target.h (Sized_target::emit_copy_reloc): New function.
* x86_64.cc (Target_x86_64::emit_copy_reloc): New function.
devans [Wed, 8 Jun 2011 01:40:58 +0000 (01:40 +0000)]
* cc-with-index.sh: Look for ../../gdb, for fullname.exp.
amodra [Wed, 8 Jun 2011 00:16:53 +0000 (00:16 +0000)]
* aix386-core.c, * cisco-core.c, * hpux-core.c, * osf-core.c,
* sco5-core.c: Init match_priority field.
devans [Wed, 8 Jun 2011 00:15:51 +0000 (00:15 +0000)]
* cc-with-index.sh: Fix typos in comment.
amodra [Wed, 8 Jun 2011 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 8 Jun 2011 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Tue, 7 Jun 2011 23:58:30 +0000 (23:58 +0000)]
* ldlang.c (lang_one_common): Handle warning symbols.
amodra [Tue, 7 Jun 2011 23:57:50 +0000 (23:57 +0000)]
* elflink.c (_bfd_elf_archive_symbol_lookup): Follow warning and
indirect links here.
ccoutant [Tue, 7 Jun 2011 23:39:28 +0000 (23:39 +0000)]
* dwarf.c: Fix conversion to TU number.
cgf [Tue, 7 Jun 2011 20:55:10 +0000 (20:55 +0000)]
* fhandler_console.cc (fhandler_console::open_shared_console): Semi-revert to
using fixed location for console stuff.
* shared.cc (offsets): Ditto. Comment.
* shared_info (shared_locations): Re-add SH_SHARED_CONSOLE.
brobecke [Tue, 7 Jun 2011 19:50:07 +0000 (19:50 +0000)]
Fix build error on mips-irix (missing match_priority)
A new field was recently added to struct bfd_target, and irix-core.c
needs an update...
bfd/ChangeLog:
* irix-core.c (irix_core_vec): Add match_priority field.
jkratoch [Tue, 7 Jun 2011 17:26:41 +0000 (17:26 +0000)]
gdb/
* cli/cli-cmds.c (shell_escape): Use waitpid.
* rs6000-nat.c (exec_one_dummy_insn): Likewise.
gdb/testsuite/
* gdb.base/async-shell.c: New file.
* gdb.base/async-shell.exp: New file.
nickc [Tue, 7 Jun 2011 13:33:20 +0000 (13:33 +0000)]
* corefile.c (core_sym_class): Allow for multiple iterations of
clone clones and subprograms.
gingold [Tue, 7 Jun 2011 12:31:03 +0000 (12:31 +0000)]
2011-06-07 Tristan Gingold <gingold@adacore.com>
* xcoffread.c (dwarf2_xcoff_names): New variable.
(aix_process_linenos): Add a guard.
(xcoff_symfile_finish): Free dwarf2.
(xcoff_initial_scan): Add dwarf2 support.
amodra [Tue, 7 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 7 Jun 2011 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 6 Jun 2011 14:51:42 +0000 (14:51 +0000)]
Regenerate.
palves [Mon, 6 Jun 2011 13:33:07 +0000 (13:33 +0000)]
2011-06-06 Pedro Alves <pedro@codesourcery.com>
gdb/testsuite/
* gdb.threads/pending-step.exp: Add more context to SIGTRAP match.
palves [Mon, 6 Jun 2011 12:47:05 +0000 (12:47 +0000)]
2011-06-06 Pedro Alves <pedro@codesourcery.com>
gdb/
* infcall.c (run_inferior_call): Don't mask async. Instead force
a synchronous wait, if the target can async.
* target.h (struct target_ops): Delete to_async_mask.
(target_async_mask): Delete.
* target.c (update_current_target): Delete references to to_async_mask.
* linux-nat.c (linux_nat_async_mask_value): Delete.
(linux_nat_is_async_p, linux_nat_can_async_p): Remove references
to linux_nat_async_mask_value.
(linux_nat_async_mask): Delete.
(linux_nat_async, linux_nat_close): Remove references to
linux_nat_async_mask_value.
* record.c (record_async_mask_value): Delete.
(record_async): Remove references to record_async_mask_value.
(record_async_mask): Delete.
(record_can_async_p, record_is_async_p): Remove references to
record_async_mask_value.
(init_record_ops, init_record_core_ops): Remove references to
record_async_mask.
* remote.c (remote_async_mask_value): Delete.
(init_remote_ops): Remove reference to remote_async_mask.
(remote_can_async_p, remote_is_async_p): Remove references to
remote_async_mask_value.
(remote_async): Remove references to remote_async_mask_value.
(remote_async_mask): Delete.
* infrun.c (fetch_inferior_event): Don't claim registers changed
if the current thread is already not executing.
nickc [Mon, 6 Jun 2011 10:36:06 +0000 (10:36 +0000)]
Sync from upstream:
2011-06-03 Nick Clifton <nickc@redhat.com>
Ben Elliston <bje@gnu.org>
* config.sub (v850e1, v850es, v850e2, v850e2v3): New.
2011-05-30 Chris Metcalf <cmetcalf@tilera.com>
Ben Elliston <bje@gnu.org>
* config.guess (tile*:Linux:*:*): Use vendor "unknown", not
"tilera", for consistency with other architectures.
* config.sub (tile*-*, tilegx-*): Use a more general pattern for
"tile" to allow matching tilepro, tilegx32 and other variants.
cgf [Mon, 6 Jun 2011 05:02:08 +0000 (05:02 +0000)]
whitespace elimination
amodra [Mon, 6 Jun 2011 01:25:59 +0000 (01:25 +0000)]
* targets.c (bfd_target): Make ar_max_namelen an unsigned char.
Add match_priority.
* configure.in: Bump bfd version.
* elfcode.h (elf_object_p): Delete hacks preventing match of
EM_NONE and ELFOSABI_NONE targets when a better match exists.
* elfxx-target.h (elf_match_priority): Define and use.
* format.c (bfd_check_format_matches): Use target match_priority
to choose best of multiple matching targets. In cases with multiple
matches rerun _bfd_check_format if we don't choose the last match.
* aout-adobe.c, * aout-arm.c, * aout-target.h, * aout-tic30.c,
* binary.c, * bout.c, * coff-alpha.c, * coff-i386.c, * coff-i860.c,
* coff-i960.c, * coff-ia64.c, * coff-mips.c, * coff-or32.c,
* coff-ppc.c, * coff-rs6000.c, * coff-sh.c, * coff-tic30.c,
* coff-tic54x.c, * coff-x86_64.c, * coff64-rs6000.c, * coffcode.h,
* i386msdos.c, * i386os9k.c, * ieee.c, * ihex.c, * mach-o-target.c,
* mipsbsd.c, * mmo.c, * nlm-target.h, * oasys.c, * pdp11.c,
* pe-mips.c, * pef.c, * plugin.c, * ppcboot.c, * som.c, * srec.c,
* tekhex.c, * trad-core.c, * verilog.c, * versados.c, * vms-alpha.c,
* vms-lib.c, * xsym.c: Init match_priority field.
* configure: Regenerate.
* bfd-in2.h: Regenerate.
cgf [Mon, 6 Jun 2011 00:25:44 +0000 (00:25 +0000)]
* fhandler_disk_file.cc (fhandler_disk_file::pread): Reset windows file
position pointer back to previous location after successful read.
gdbadmin [Mon, 6 Jun 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Mon, 6 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
vapier [Sun, 5 Jun 2011 21:32:34 +0000 (21:32 +0000)]
sim: bfin: add missing gitignore file
cgf [Sun, 5 Jun 2011 02:10:30 +0000 (02:10 +0000)]
* fhandler_console.cc (fhandler_console::open_shared_console): Don't zero
handle to open_shared since it is supposed to be an input.
(enum_windows): Set handle input to open_shared to NULL since it does not
represent any previously opened shared region.
* shared.cc (open_shared): Tweak debugging output.
gdbadmin [Sun, 5 Jun 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
amodra [Sun, 5 Jun 2011 00:00:05 +0000 (00:00 +0000)]
daily update
hjl [Sat, 4 Jun 2011 18:16:16 +0000 (18:16 +0000)]
Revert the last change on elf_object_p.
2011-06-04 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12842
* elfcode.h (elf_object_p): Revert the last change.
vapier [Sat, 4 Jun 2011 17:44:20 +0000 (17:44 +0000)]
sim: bfin: import testsuite
Now that the common sim testsuite code supports .S and .c files, we
can import the Blackfin testsuite. There are about ~800 tests here,
so I'm only attaching a compressed patch of them. Other than adding
files to sim/testsuite/sim/bfin/, the sim/configure.tgt file was
updated to mark Blackfin as having a testsuite, and sim/configure
regenerated.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
vapier [Sat, 4 Jun 2011 17:18:04 +0000 (17:18 +0000)]
sim: bfin: add support for glued SIC interrupt lines
The BF537 family glues a bunch of peripherals into single interrupt lines
that run into the SIC. To model this same behavior in the sim, we need to
use the glue-or device, and in order to use that, we need to tweak things
a bit in the mach code to allow declaring of these new devices.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
vapier [Sat, 4 Jun 2011 17:11:19 +0000 (17:11 +0000)]
sim: bfin: push SIC mappings to device tree
The machs.c file is the best place for holding cpu-specific details, so
restructure the way the SIC manages its ports to do just that. Now the
SIC's have a standard set of input pins and the different line routing
from peripherals is kept in the device tree only. This better models
the hardware where the SIC doesn't care about the exact peripheral that
is sending it stuff, just which input pin it gets it on.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
amodra [Sat, 4 Jun 2011 04:07:52 +0000 (04:07 +0000)]
* archures.c (bfd_arch_get_compatible): If one arch is unknown,
return the other arch.
* elfcode.h (elf_object_p): Allow explicit match to generic ELF
target.
cgf [Sat, 4 Jun 2011 01:06:16 +0000 (01:06 +0000)]
* ntdll.h (FILE_PIPE_*): Define constants.
* select.cc (pipe_data_available): Detect closing state.