Nathan Froyd [Fri, 27 Aug 2010 13:59:55 +0000 (13:59 +0000)]
opcodes/
* ppc-opc.c (powerpc_opcodes) [lswx,lswi,stswx,stswi]: Deprecate
on E500 and E500MC.
Pedro Alves [Fri, 27 Aug 2010 12:02:20 +0000 (12:02 +0000)]
Fix whitespace, tabs/spaces.
Pedro Alves [Fri, 27 Aug 2010 10:20:07 +0000 (10:20 +0000)]
* configure.ac (build_warnings): Add -Wno-char-subscripts.
* configure: Regenerate.
Nick Clifton [Fri, 27 Aug 2010 08:50:05 +0000 (08:50 +0000)]
* options.cc (version_script): Fix small typo in previous
whitespace tidyup.
Pedro Alves [Fri, 27 Aug 2010 00:16:48 +0000 (00:16 +0000)]
* linux-low.c (linux_unprepare_to_access_memory): Rename to ...
(linux_done_accessing_memory): ... this.
(linux_target_ops): Adjust.
* linux-x86-low.c (x86_insert_point, x86_remove_point): Adjust.
* nto-low.c (nto_target_ops): Adjust comment.
* server.c (gdb_read_memory, gdb_write_memory): Adjust.
* spu-low.c (spu_target_ops): Adjust comment.
* target.h (target_ops): Rename unprepare_to_access_memory field
to done_accessing_memory.
(unprepare_to_access_memory): Rename to ...
(done_accessing_memory): ... this.
Alan Modra [Fri, 27 Aug 2010 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 27 Aug 2010 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Thu, 26 Aug 2010 23:36:53 +0000 (23:36 +0000)]
* dwarf2read.c (dw2_require_full_path): Rename parameter cu to per_cu.
(dw2_forget_cached_source_info): Rename local cu to per_cu.
(dw2_lookup_symtab, dw2_do_expand_symtabs_matching): Ditto.
(dw2_print_stats, dw2_expand_all_symtabs): Ditto.
(dw2_expand_symtabs_with_filename, dw2_find_symbol_file): Ditto.
(dw2_find_symbol_file, dw2_expand_symtabs_matching): Ditto.
(dw2_map_symbol_filenames, dwarf2_initialize_objfile): Ditto.
(dwarf2_free_objfile, write_one_signatured_type): Ditto.
(write_psymtabs_to_index): Ditto.
Pedro Alves [Thu, 26 Aug 2010 23:17:22 +0000 (23:17 +0000)]
* linux-low.c (linux_prepare_to_access_memory): New.
(linux_unprepare_to_access_memory): New.
(linux_target_ops): Install them.
* server.c (read_memory): Rename to ...
(gdb_read_memory): ... this. Use
prepare_to_access_memory/prepare_to_access_memory.
(write_memory): Rename to ...
(gdb_write_memory): ... this. Use
prepare_to_access_memory/prepare_to_access_memory.
(handle_search_memory_1): Adjust.
(process_serial_event): Adjust.
* target.h (struct target_ops): New fields
prepare_to_access_memory and unprepare_to_access_memory.
(prepare_to_access_memory, unprepare_to_access_memory): New.
* linux-x86-low.c (x86_insert_point, x86_remove_point): Use
prepare_to_access_memory/prepare_to_access_memory.
* nto-low.c (nto_target_ops): Adjust.
* spu-low.c (spu_target_ops): Adjust.
* win32-low.c (win32_target_ops): Adjust.
Pedro Alves [Thu, 26 Aug 2010 19:47:23 +0000 (19:47 +0000)]
* NEWS: Mention libthread_db debugging with core files.
Pedro Alves [Thu, 26 Aug 2010 18:36:28 +0000 (18:36 +0000)]
* Makefile.in (WARN_CFLAGS): Get it from configure.
(WERROR_CFLAGS): New.
(INTERNAL_CFLAGS): Add WERROR_CFLAGS.
* configure.ac: Introduce --enable-werror, which adds -Werror to
the compiler command line. Enabled by default. Disable with
--disable-werror. Add -Wdeclaration-after-statement
Wpointer-arith and -Wformat-nonliteral to warning flags.
* configure: Regenerate.
Pedro Alves [Thu, 26 Aug 2010 18:03:02 +0000 (18:03 +0000)]
* Makefile.in (WARN_CFLAGS): Get it from configure.
(WERROR_CFLAGS): New.
(INTERNAL_CFLAGS): Add WERROR_CFLAGS.
* configure.ac: Introduce --enable-werror, which adds -Werror to
the compiler command line. Enabled by default. Disable with
--disable-werror. Add -Wdeclaration-after-statement
Wpointer-arith and -Wformat-nonliteral to warning flags.
* configure: Regenerate.
Doug Evans [Thu, 26 Aug 2010 16:47:55 +0000 (16:47 +0000)]
* dwarf2read.c (dwarf2_build_include_psymtabs): Remove unnecessary
forward decl. Pass pst->dirname to dwarf_decode_lines.
(psymtab_include_file_name): New function.
(dwarf_decode_lines): Call it. Update comments.
Pedro Alves [Thu, 26 Aug 2010 16:47:05 +0000 (16:47 +0000)]
* mem-break.c [HAVE_MALLOC_H]: Include malloc.h.
Pedro Alves [Thu, 26 Aug 2010 16:24:41 +0000 (16:24 +0000)]
* gdbreplay.c (remote_error): New.
(gdbchar): New.
(expect): Use gdbchar. Check for error reading from GDB.
Clarify sync error output.
(play): Check for errors writing to GDB.
* linux-low.c (sigchld_handler): Really ignore `write' errors.
* remote-utils.c (getpkt): Check for errors writing to the remote
descriptor.
Pedro Alves [Thu, 26 Aug 2010 14:53:45 +0000 (14:53 +0000)]
* gdb.mi/mi-nsmoribund.exp: Revert back to send_gdb/gdb_expect in
one test.
Nathan Sidwell [Thu, 26 Aug 2010 10:32:26 +0000 (10:32 +0000)]
* elf32-arm.c (elf32_arm_final_link): Process stub sections
exactly once.
Alan Modra [Thu, 26 Aug 2010 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 26 Aug 2010 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
H.J. Lu [Wed, 25 Aug 2010 20:35:58 +0000 (20:35 +0000)]
Don't set unique_global for non-ELF hash link table.
2010-08-25 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11939
* elflink.c (elf_link_add_object_symbols): Don't set
unique_global for non-ELF hash link table.
Pedro Alves [Wed, 25 Aug 2010 18:20:07 +0000 (18:20 +0000)]
* dwarf2read.c (inherit_abstract_dies): Handle origin die's
compilation unit being different from target die's.
H.J. Lu [Wed, 25 Aug 2010 16:57:32 +0000 (16:57 +0000)]
Check audit entry only on ELF input.
2010-08-25 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11946
* emultempl/elf32.em (_before_allocation): Check audit entry
only on ELF input.
Pedro Alves [Wed, 25 Aug 2010 16:49:04 +0000 (16:49 +0000)]
* linux-low.c (linux_wait_1): Move non-debugging code out of
`debug_threads' control.
Pedro Alves [Wed, 25 Aug 2010 16:27:05 +0000 (16:27 +0000)]
* linux-low.c (linux_wait_1): Don't set last_status here.
* server.c (push_event, queue_stop_reply_callback): Assert we're
not pushing a TARGET_WAITKIND_IGNORE event.
(start_inferior, start_inferior, attach_inferior, handle_v_cont)
(myresume, handle_target_event): Set the thread's last_resume_kind
and last_status from the target returned status.
H.J. Lu [Wed, 25 Aug 2010 16:03:58 +0000 (16:03 +0000)]
Move gas/ld NEWS from binutils to gas/ld.
H.J. Lu [Wed, 25 Aug 2010 14:53:45 +0000 (14:53 +0000)]
Add target_id to elf_backend_data.
2010-08-25 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11944
* elf-bfd.h (elf_backend_data): Add target_id.
(bfd_elf_make_generic_object): Renamed to ...
(bfd_elf_make_object): This.
* elf.c (bfd_elf_make_generic_object): Removed.
(bfd_elf_make_object): New.
(bfd_elf_mkcorefile): Really treat it as an object file.
* elf-m10300.c (ELF_TARGET_ID): New.
* elf32-arm.c (ELF_TARGET_ID): Likewise.
* elf32-bfin.c (ELF_TARGET_ID): Likewise.
* elf32-cris.c (ELF_TARGET_ID): Likewise.
* elf32-frv.c (ELF_TARGET_ID): Likewise.
* elf32-i386.c (ELF_TARGET_ID): Likewise.
* elf32-lm32.c (ELF_TARGET_ID): Likewise.
* elf32-m32r.c (ELF_TARGET_ID): Likewise.
* elf32-m68hc11.c (ELF_TARGET_ID): Likewise.
* elf32-m68hc12.c (ELF_TARGET_ID): Likewise.
* elf32-m68k.c (ELF_TARGET_ID): Likewise.
* elf32-microblaze.c (ELF_TARGET_ID): Likewise.
* elf32-ppc.c (ELF_TARGET_ID): Likewise.
* elf32-s390.c (ELF_TARGET_ID): Likewise.
* elf32-sh.c (ELF_TARGET_ID): Likewise.
* elf32-sparc.c (ELF_TARGET_ID): Likewise.
* elf32-spu.c (ELF_TARGET_ID): Likewise.
* elf32-tic6x.c (ELF_TARGET_ID): Likewise.
* elf32-xtensa.c (ELF_TARGET_ID): Likewise.
* elf64-alpha.c (ELF_TARGET_ID): Likewise.
* elf64-hppa.c (ELF_TARGET_ID): Likewise.
* elf64-ppc.c (ELF_TARGET_ID): Likewise.
* elf64-s390.c (ELF_TARGET_ID): Likewise.
* elf64-x86-64.c (ELF_TARGET_ID): Likewise.
* elfxx-ia64.c (ELF_TARGET_ID): Likewise.
* elf32-hppa.c (elf32_hppa_mkobject): Removed.
(bfd_elf32_mkobject): Likewise.
(ELF_TARGET_ID): New.
* elf32-mips.c (ELF_TARGET_ID): New.
(bfd_elf32_mkobject): Removed.
* elf64-mips.c (ELF_TARGET_ID): New.
(bfd_elf64_mkobject): Removed.
* elfn32-mips.c (ELF_TARGET_ID): New.
(bfd_elf32_mkobject): Removed.
* elfxx-mips.c (_bfd_mips_elf_mkobject): Removed.
* elfxx-mips.h (_bfd_mips_elf_mkobject): Likewise.
* elfxx-target.h (bfd_elfNN_mkobject): Default to
bfd_elf_make_object.
(ELF_TARGET_ID): New. Default to GENERIC_ELF_DATA.
(elfNN_bed): Initialize target_id.
Pedro Alves [Wed, 25 Aug 2010 14:40:21 +0000 (14:40 +0000)]
PR threads/10729
* linux-x86-low.c (update_debug_registers_callback): New.
(i386_dr_low_set_addr): Use it.
(i386_dr_low_get_addr): New.
(i386_dr_low_set_control): Use update_debug_registers_callback.
(i386_dr_low_get_control): New.
(i386_dr_low_get_status): Adjust.
* linux-low.c (linux_stop_lwp): New.
* linux-low.h (linux_stop_lwp): Declare.
* i386-low.c (I386_DR_GET_RW_LEN): Take the dr7 contents as
argument instead of a i386_debug_reg_state.
(I386_DR_WATCH_HIT): Take the dr6 contents as argument instead of
a i386_debug_reg_state.
(i386_insert_aligned_watchpoint): Adjust.
(i386_remove_aligned_watchpoint): Adjust.
(i386_low_stopped_data_address): Read the debug registers from the
inferior instead of from the mirrors.
* i386-low.h (struct i386_debug_reg_state): Extend comment.
(i386_dr_low_get_addr): Declare.
(i386_dr_low_get_control): Declare.
(i386_dr_low_get_status): Change prototype.
* win32-i386-low.c (dr_status_mirror, dr_control_mirror): New globals.
(i386_dr_low_get_addr): New.
(i386_dr_low_get_control): New.
(i386_dr_low_get_status): Adjust prototype. Return
dr_status_mirror.
(i386_initial_stuff): Clear dr_status_mirror and
dr_control_mirror.
(i386_get_thread_context): Adjust.
(i386_set_thread_context): Adjust.
(i386_thread_added): Adjust.
Julian Brown [Wed, 25 Aug 2010 12:37:30 +0000 (12:37 +0000)]
bfd/
* elf32-arm.c (arm_stub_required_alignment): New.
(arm_build_one_stub): Use above to partition stubs.
(make_branch_to_a8_stub): Use arm_stub_a8_veneer_lwm not
arm_stub_a8_veneer_b_cond.
ld/testsuite/
* ld-arm/arm-elf.exp (armelftests): Add cortex-a8-fix-blx-bcond.s.
* ld-arm/cortex-a8-fix-blx-bcond.s: New.
* ld-arm/cortex-a8-fix-blx-bcond.d: New.
Alan Modra [Wed, 25 Aug 2010 12:03:30 +0000 (12:03 +0000)]
* configure.tgt (m68k-*-aout): Change to bfd_gas=yes.
Alan Modra [Wed, 25 Aug 2010 11:51:07 +0000 (11:51 +0000)]
* config/tc-d10v.c (do_assemble): Correctly detect overflow of
"name" buffer.
* config/tc-m68hc11.c (md_assemble): Likewise.
* config/tc-microblaze.c (md_assemble): Likewise. Correct cast
of is_end_of_line index.
Nick Clifton [Wed, 25 Aug 2010 08:36:54 +0000 (08:36 +0000)]
* archive.cc: Formatting fixes: Remove whitespace between
typename and following asterisk. Remove whitespace between
function name and opening parenthesis.
* archive.h: Likewise.
* arm.cc: Likewise.
* attributes.cc: Likewise.
* attributes.h: Likewise.
* common.cc: Likewise.
* copy-relocs.cc: Likewise.
* dirsearch.h: Likewise.
* dynobj.cc: Likewise.
* ehframe.cc: Likewise.
* ehframe.h: Likewise.
* expression.cc: Likewise.
* fileread.cc: Likewise.
* fileread.h: Likewise.
* gc.h: Likewise.
* gold-threads.cc: Likewise.
* gold.cc: Likewise.
* i386.cc: Likewise.
* icf.h: Likewise.
* incremental-dump.cc: Likewise.
* incremental.cc: Likewise.
* layout.cc: Likewise.
* layout.h: Likewise.
* main.cc: Likewise.
* merge.cc: Likewise.
* merge.h: Likewise.
* object.cc: Likewise.
* object.h: Likewise.
* options.cc: Likewise.
* options.h: Likewise.
* output.cc: Likewise.
* output.h: Likewise.
* plugin.cc: Likewise.
* plugin.h: Likewise.
* powerpc.cc: Likewise.
* reloc.cc: Likewise.
* script-c.h: Likewise.
* script-sections.cc: Likewise.
* script.cc: Likewise.
* stringpool.cc: Likewise.
* symtab.cc: Likewise.
* symtab.h: Likewise.
* target.cc: Likewise.
* timer.cc: Likewise.
* timer.h: Likewise.
* version.cc: Likewise.
* x86_64.cc: Likewise.
Alan Modra [Wed, 25 Aug 2010 08:26:37 +0000 (08:26 +0000)]
* NEWS: Mention ampersand in macro change.
Alan Modra [Wed, 25 Aug 2010 07:02:40 +0000 (07:02 +0000)]
* aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address.
* aout-ns32k.c (MY(bfd_reloc_type_lookup)): Likewise.
* aoutx.h (NAME(aout,reloc_type_lookup)): Likewise.
* coff-arm.c (coff_arm_reloc_type_lookup): Likewise.
* elf-hppa.h (elf_hppa_reloc_final_type): Likewise.
* reloc.c (bfd_default_reloc_type_lookup): Likewise.
* riscix.c (riscix_reloc_type_lookup): Likewise.
Alan Modra [Wed, 25 Aug 2010 06:49:55 +0000 (06:49 +0000)]
* elf.c (_bfd_elf_map_sections_to_segments): Don't load program
headers if any loaded section wraps the address space. Simplify
~(m-1) to -m. Use lma rather than vma when determining whether
note sections are adjacent.
Jie Zhang [Wed, 25 Aug 2010 05:59:13 +0000 (05:59 +0000)]
* config/tc-arm.c (encode_arm_addr_mode_2): Fix comment.
Jie Zhang [Wed, 25 Aug 2010 05:25:09 +0000 (05:25 +0000)]
* config/tc-arm.c (encode_arm_addr_mode_2): Fix
BAD_PC_ADDRESSING condition.
testsuite/
* gas/arm/ldst-pc.d: New test.
* gas/arm/ldst-pc.s: New test.
* gas/arm/sp-pc-validations-bad.s: `str r0,[pc,#4]' is valid.
* gas/arm/sp-pc-validations-bad.l: Adjust accordingly.
Doug Evans [Wed, 25 Aug 2010 00:09:14 +0000 (00:09 +0000)]
PR symtab/11942
* dwarf2read.c (dwarf2_per_objfile): New members debug_info_type_hash,
debug_types_type_hash.
(dwarf2_cu, dwarf2_per_cu_data): Delete member type_hash.
All uses updated.
(lookup_die_type): Renamed from tag_type_to_tag. First look in
appropriate type_hash table. All callers updated.
(allocate_signatured_type_table): Renamed from
allocate_signatured_type_hash_table. All callers updated.
(create_signatured_type_table_from_index): Renamed from
create_signatured_type_hash_from_index. All callers updated.
(read_die_type): Add comment. Move actual reading to ...
(read_die_type_1): ... here. New function.
(follow_die_ref_or_sig): Tweak comment.
(set_die_type): Rewrite to use appropriate choice of
debug_info_type_hash or debug_types_type_hash.
(get_die_type_at_offset): New function.
(get_die_type): Call it.
testsuite/
PR symtab/11942
* gdb.dwarf2/dw4-sig-types.cc: New file.
* gdb.dwarf2/dw4-sig-types.h: New file.
* gdb.dwarf2/dw4-sig-types-b.cc: New file.
* gdb.dwarf2/dw4-sig-types.exp: New file.
gdbadmin [Wed, 25 Aug 2010 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 25 Aug 2010 00:00:05 +0000 (00:00 +0000)]
daily update
Pedro Alves [Tue, 24 Aug 2010 20:13:15 +0000 (20:13 +0000)]
* linux-low.h (linux_thread_area): Delete declaration.
Jan Kratochvil [Tue, 24 Aug 2010 17:24:28 +0000 (17:24 +0000)]
gdb/
* python/py-type.c (typy_richcompare): Initialize worklist.
H.J. Lu [Tue, 24 Aug 2010 16:36:25 +0000 (16:36 +0000)]
Fix typos in ld-x86-64/x86-64.exp.
2010-08-24 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/x86-64.exp: Fix typos.
Daniel Jacobowitz [Tue, 24 Aug 2010 15:56:15 +0000 (15:56 +0000)]
* arm-tdep.c: Include features/arm-with-m.c.
(arm_psr_thumb_bit): New. Update all uses of CPSR_T to
call this function.
(arm_pc_is_thumb): Add a gdbarch argument. Update all callers.
Check is_m after force-mode.
(arm_gdbarch_init): Check the binary before the target description.
Add check for M profile attribute. If we have an M-profile device,
but no target register description, use arm-with-m. Recognize the
new org.gnu.gdb.arm.m-profile feature and its xpsr register.
(_initialize_arm_tdep): Call initialize_tdesc_arm_with_m.
* arm-tdep.h (XPSR_T): Define.
(struct gdbarch_tdep): Add is_m member.
* features/arm-m-profile.xml, features/arm-with-m.c,
features/arm-with-m.xml: New files.
doc/
* gdb.texinfo (ARM Features): Document
org.gnu.gdb.arm.m-profile.
Nick Clifton [Tue, 24 Aug 2010 07:24:10 +0000 (07:24 +0000)]
PR 11899
* layout.cc (segment_precedes): Sort segments by their physical
addresses, if they have been set.
Hans-Peter Nilsson [Tue, 24 Aug 2010 01:14:38 +0000 (01:14 +0000)]
* sim/cris/asm/nonvcv32.ms: Neutralize changed &&-in-macro gas syntax.
Alan Modra [Tue, 24 Aug 2010 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 24 Aug 2010 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Mon, 23 Aug 2010 21:49:26 +0000 (21:49 +0000)]
* dwarf2read.c (set_die_type): Fix typo in comment.
Doug Evans [Mon, 23 Aug 2010 21:44:39 +0000 (21:44 +0000)]
* dwarf2read.c (read_structure_type): Add comment.
(read_enumeration_type): Add comment.
(process_enumeration_scope): Move definition of some locals
closer to their use.
(read_namespace_type): Add comment.
Tom Tromey [Mon, 23 Aug 2010 20:29:19 +0000 (20:29 +0000)]
gdb
PR python/11145:
* python/py-value.c: Include expression.h.
(valpy_do_cast): New function.
(valpy_cast): Use it.
(valpy_dynamic_cast): New function.
(valpy_reinterpret_cast): Likewise.
(value_object_methods): Add dynamic_cast, reinterpret_cast.
gdb/doc
PR python/11145:
* gdb.texinfo (Values From Inferior): Document dynamic_cast and
reinterpret_cast methods.
gdb/testsuite
PR python/11145:
* gdb.python/py-value.c (Base, Derived): New types.
(base): New global.
* gdb.python/py-value.exp (test_subscript_regression): Add
dynamic_cast test.
Cary Coutant [Mon, 23 Aug 2010 20:28:24 +0000 (20:28 +0000)]
* archive.cc (Lib_group::add_symbols): Lock object before deleting its
symbols data.
(Lib_group::include_member): Unlock object after deleting its
symbols data.
* testsuite/start_lib_test_3.c: Remove all global symbols to trigger
the bug fixed here.
Tom Tromey [Mon, 23 Aug 2010 20:27:49 +0000 (20:27 +0000)]
PR python/11391:
* python/py-value.c (valpy_nonzero): Don't throw error for other
Value types.
Tom Tromey [Mon, 23 Aug 2010 20:26:10 +0000 (20:26 +0000)]
gdb
PR python/10676:
* python/py-type.c: Include bcache.h, vec.h.
(struct type_equality_entry): New.
(compare_strings): New function.
(check_types_equal): Likewise.
(check_types_worklist): Likewise.
(typy_richcompare): Likewise.
(type_object_type): Set tp_richcompare field.
gdb/testsuite
PR python/10676:
* gdb.python/py-type.exp (test_fields): Add tests for type
equality.
Tom Tromey [Mon, 23 Aug 2010 20:23:55 +0000 (20:23 +0000)]
PR python/10953:
* python/py-type.c (typy_fields): Call check_typedef.
(typy_template_argument): Add TRY_CATCH.
Tom Tromey [Mon, 23 Aug 2010 20:21:28 +0000 (20:21 +0000)]
gdb
PR python/11915:
* python/py-type.c (typy_array): New function.
(type_object_methods): Add "array".
gdb/doc
PR python/11915:
* gdb.texinfo (Types In Python): Document array method.
gdb/testsuite
PR python/11915:
* gdb.python/py-type.exp (test_fields): Add tests for array.
Keith Seitz [Mon, 23 Aug 2010 19:12:53 +0000 (19:12 +0000)]
* gdb.dwarf2/dw2-double-set-die-type.S: DIE 0x51f does not
have any children. Create a new abbrev for it.
Add missing terminal sequence to .debug_abbrev.
H.J. Lu [Mon, 23 Aug 2010 16:25:53 +0000 (16:25 +0000)]
Add --input-osabi and --output-osabi to elfedit.
binutils/
2010-08-23 H.J. Lu <hongjiu.lu@intel.com>
* elfedit.c (input_elf_osabi): New.
(output_elf_osbi): Likewise.
(osabis): Likewise.
(elf_osabi): Likewise.
(update_elf_header): Support updating ELF OSABI.
(make_qualified_name): Break long line.
(command_line_switch): Add OPTION_INPUT_OSABI and
OPTION_OUTPUT_OSABI.
(options): Likewise.
(usage): Add --input-osabi and --output-osabi.
(main): Handle OPTION_INPUT_OSABI and OPTION_OUTPUT_OSABI.
* doc/binutils.texi: Document --input-osabi and --output-osabi
for elfedit.
binutils/testsuite/
2010-08-23 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/elfedit-3.d: New.
* binutils-all/elfedit.exp: Run elfedit-3.
Maciej W. Rozycki [Mon, 23 Aug 2010 13:51:40 +0000 (13:51 +0000)]
binutils/
* readelf.c (display_mips_gnu_attribute): Replace GCC options
with a textual description of a MIPS32r2 64-bit FPU.
ld/testsuite/
* ld-mips-elf/attr-gnu-4-04.d: Adjust Tag_GNU_MIPS_ABI_FP for
the new MIPS32r2 64-bit FPU description.
* ld-mips-elf/attr-gnu-4-40.d: Likewise.
* ld-mips-elf/attr-gnu-4-44.d: Likewise.
Alan Modra [Mon, 23 Aug 2010 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Mon, 23 Aug 2010 00:00:04 +0000 (00:00 +0000)]
*** empty log message ***
H.J. Lu [Sun, 22 Aug 2010 20:21:21 +0000 (20:21 +0000)]
Find one .eh_frame section for --eh-frame-hdr.
2010-08-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11937
* emultempl/elf32.em (_after_open): Find one .eh_frame section
for --eh-frame-hdr.
H.J. Lu [Sun, 22 Aug 2010 19:14:25 +0000 (19:14 +0000)]
Don't check relocation if input ELF object ID doesn't match output.
bfd/
2010-08-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11933
* elflink.c (elf_link_add_object_symbols): Don't check relocation
if input ELF object ID doesn't match output.
ld/testsuite/
2010-08-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11933
* ld-x86-64/mixed1a.s: New.
* ld-x86-64/mixed1b.s: Likewise.
* ld-x86-64/mixed2a.s: Likewise.
* ld-x86-64/mixed2b.s: Likewise.
* ld-x86-64/x86-64.exp: Text mixed x86_64 and i386 inputs.
H.J. Lu [Sun, 22 Aug 2010 19:11:58 +0000 (19:11 +0000)]
Find an ELF input for --build-id and --eh-frame-hdr.
2010-08-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/11937
* emultempl/elf32.em (_after_open): Find an ELF input for
--build-id and --eh-frame-hdr.
gdbadmin [Sun, 22 Aug 2010 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 22 Aug 2010 00:00:05 +0000 (00:00 +0000)]
daily update
Ralf Wildenhues [Sat, 21 Aug 2010 12:34:06 +0000 (12:34 +0000)]
Fix misquoting in stdint.m4.
config/:
PR target/45084
* stdint.m4 (GCC_HEADER_STDINT): Use m4 quotes for arguments
of AC_MSG_ERROR.
libdecnumber/:
* configure: Regenerate.
bfd/:
* configure: Regenerate.
Alan Modra [Sat, 21 Aug 2010 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 21 Aug 2010 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
DJ Delorie [Fri, 20 Aug 2010 23:58:16 +0000 (23:58 +0000)]
merge from gcc
H.J. Lu [Fri, 20 Aug 2010 22:29:28 +0000 (22:29 +0000)]
Revert the last checkin on sec_merge_emit.
2010-08-20 H.J. Lu <hongjiu.lu@intel.com>
* merge.c (sec_merge_emit): Revert the last checkin.
Maciej W. Rozycki [Fri, 20 Aug 2010 21:18:39 +0000 (21:18 +0000)]
* Makefile.am (eshlelf_fd.c): Correct the name of the tool
directory.
* Makefile.in: Regenerate.
Maciej W. Rozycki [Fri, 20 Aug 2010 21:15:03 +0000 (21:15 +0000)]
* elf32-sh.c (sh_elf_relocate_section): Handle non-ELF output
BFD.
Maciej W. Rozycki [Fri, 20 Aug 2010 21:13:03 +0000 (21:13 +0000)]
* ld-sh/sh.exp: Add missing newline.
Maciej W. Rozycki [Fri, 20 Aug 2010 21:06:30 +0000 (21:06 +0000)]
* elf32-m68k.c (bfd_elf_m68k_set_target_options): Don't set GOT
options unless an m68k hash table has been found.
Maciej W. Rozycki [Fri, 20 Aug 2010 21:04:07 +0000 (21:04 +0000)]
binutils/
* ChangeLog: Add a missing entry for 2010-04-20's commit.
ld/testsuite/
* ld-mips-elf/attr-gnu-4-01.d: Correct Tag_GNU_MIPS_ABI_FP.
* ld-mips-elf/attr-gnu-4-02.d: Likewise.
* ld-mips-elf/attr-gnu-4-10.d: Likewise.
* ld-mips-elf/attr-gnu-4-11.d: Likewise.
* ld-mips-elf/attr-gnu-4-15.d: Likewise.
* ld-mips-elf/attr-gnu-4-20.d: Likewise.
* ld-mips-elf/attr-gnu-4-22.d: Likewise.
* ld-mips-elf/attr-gnu-4-25.d: Likewise.
Maciej W. Rozycki [Fri, 20 Aug 2010 20:53:28 +0000 (20:53 +0000)]
* doc/c-arm.texi (ARM Options): Document -mfpu=fp4-sp-d16.
Pedro Alves [Fri, 20 Aug 2010 18:52:11 +0000 (18:52 +0000)]
* python/python.c: Include "serial.h".
(gdbpy_event_fds): Change type to `struct serial *' a array from
int array.
(gdbpy_run_events): Change parameters. Use serial_readchar in
place of read.
(gdbpy_post_event): Use serial_write in place of write.
(gdbpy_initialize_events): Use serial_pipe instead of pipe, and
serial_async in place of add_file_handler.
Pedro Alves [Fri, 20 Aug 2010 18:49:20 +0000 (18:49 +0000)]
* serial.h (gdb_pipe, serial_pipe): Declare.
* serial.c (serial_interface_lookup): Take a const char pointer.
(serial_fdopen): Rename to ...
(serial_fdopen_ops): ... this. Add an OPS parameter and use it.
Call the OPS' fdopen function if there is one.
(serial_fdopen): Rewrite as wrapper to serial_fdopen_ops.
(serial_pipe): New.
(struct serial_ops) <fdopen>: New field.
* ser-mingw.c (free_pipe_state):
(free_pipe_state): Close output on non-pex pipes.
(pipe_windows_fdopen): New.
(gdb_pipe): New.
(_initialize_ser_windows): Register pipe_windows_fdopen.
* ser-go32.c (gdb_pipe): New.
* ser-pipe.c (pipe_close): Close file descriptor even if there's
no state pointer.
(pipe_ops): Delete.
(gdb_pipe): New.
Keith Seitz [Fri, 20 Aug 2010 17:16:44 +0000 (17:16 +0000)]
PR symtab/11465:
* dwarf2read.c (struct delayed_method_info): New struct.
(struct dwarf2_cu): Add vector method_list.
(scan_partial_symbols): Count methods for union, class, structure,
and interface types.
(add_to_method_list): New function.
(free_delayed_list): New function.
(compute_delayed_physnames): New function.
(process_full_comp_unit): Make a cleanup for the CU's delayed
physname list, compute the delayed physnames, and free the
the list.
(dwarf2_add_member_fn): For C++ and Java, delay the computation
of the physname until after the CU is read.
* dwarf2read.c (read_structure_type): Check if the current
DIE's type was already completed after dwarf2_full_name
was called.
Keith Seitz [Fri, 20 Aug 2010 17:16:15 +0000 (17:16 +0000)]
PR symtab/11465:
* gdb.dwarf2/pr11465.exp: New test.
* gdb.dwarf2/pr11465.S: New file.
* gdb.dwarf2/dw2-double-set-die-type.S: New file.
* gdb.dwarf2/dw2-double-set-die-type.exp: New test.
Nick Clifton [Fri, 20 Aug 2010 15:01:45 +0000 (15:01 +0000)]
* emultempl/elf32.em (_after_open): Check for get_elf_backend_data
returning NULL.
Nick Clifton [Fri, 20 Aug 2010 14:41:48 +0000 (14:41 +0000)]
* merge.c (sec_merge_emit): Do not zero pad sections that do not
have an alignment.
Cary Coutant [Fri, 20 Aug 2010 00:35:13 +0000 (00:35 +0000)]
* gold/archive.h (Add_lib_group_symbols): Add readsyms_blocker_, adjust
constructor, and set_blocker.
* gold/archive.cc (Add_lib_group_symbols::is_runnable): Also check
readsyms_blocker_.
* gold/readsyms.cc (Read_symbols::do_lib_group): Also pass
this->this_blocker_ to Add_lib_group_symbols::set_blocker.
* testsuite/Makefile.am (start_lib_test): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/start_lib_test_main.c: New file.
* testsuite/start_lib_test_1.c: New file.
* testsuite/start_lib_test_2.c: New file.
* testsuite/start_lib_test_3.c: New file.
Alan Modra [Fri, 20 Aug 2010 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 20 Aug 2010 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Stan Shebs [Thu, 19 Aug 2010 23:43:31 +0000 (23:43 +0000)]
* NEWS: Mention some additional changes.
Ian Lance Taylor [Thu, 19 Aug 2010 23:42:03 +0000 (23:42 +0000)]
* Makefile.in: Rebuild with automake 1.11.1.
* aclocal.m4: Likewise.
* testsuite/Makefile.in: Likewise.
Ian Lance Taylor [Thu, 19 Aug 2010 22:50:16 +0000 (22:50 +0000)]
PR 10893
* i386.cc (class Output_data_plt_i386): Update declarations.
Define Global_ifunc and Local_ifunc types. Add global_ifuncs_ and
local_ifuncs_ fields.
(Target_i386::do_plt_section_for_global): New function.
(Target_i386::do_plt_section_for_local): New function.
(Output_data_plt_i386::Output_data_plt_i386): Add symtab
parameter; change all callers. Initialize global_ifuncs_ and
local_ifuncs_. If doing a static link define __rel_iplt_start and
__rel_iplt_end.
(Output_data_plt_i386::add_entry): Handle IFUNC symbols.
(Output_data_plt_i386::add_local_ifunc_entry): New function.
(Output_data_plt_i386::do_write): Fix GOT entries for IFUNC
symbols.
(Target_i386::make_plt_section): New function, broken out of
make_plt_entry. Set sh_info field of .rel.plt to point to .plt.
(Target_i386::make_plt_entry): Call make_plt_section.
(Target_i386::make_local_ifunc_plt_entry): New function.
(Target_i386::Scan::reloc_needs_iplt_for_ifunc): New function.
(Target_i386::Scan::local): Handle IFUNC symbols. Add
R_386_IRELATIVE to switch.
(Target_i386::Scan::global): Likewise.
(Target_i386::Relocate::relocate): Likewise.
(Target_i386::Relocatable_size_for_reloc): Add R_386_IRELATIVE to
switch.
* x86_64.cc (class Output_data_plt_x86_64): Update declarations.
(Target_x86_64::do_plt_section_for_global): New function.
(Target_x86_64::do_plt_section_for_local): New function.
(Output_data_plt_x86_64::Output_data_plt_x86_64): Add symtab
parameter; change all callers. If doing a static link define
__rela_iplt_start and __rela_iplt_end.
(Output_data_plt_x86_64::add_entry): Handle IFUNC symbols.
(Output_data_plt_x86_64::add_local_ifunc_entry): New function.
(Target_x86_64::make_plt_section): Set sh_info field of .rel.plt
to point to .plt.
(Target_x86_64::make_local_ifunc_plt_entry): New function.
(Target_x86_64::Scan::check_non_pic): Add R_X86_64_IRELATIVE to
switch.
(Target_x86_64::Scan::reloc_needs_iplt_for_ifunc): New function.
(Target_x86_64::Scan::local): Handle IFUNC symbols. Add
R_X86_64_IRELATIVE to switch.
(Target_x86_64::Scan::global): Likewise.
(Target_x86_64::Relocate::relocate): Likewise.
(Target_x86_64::Relocatable_size_for_reloc): Add R_X86_64_IRELATIVE to
switch.
* target.h (class Target): Add plt_section_for_global and
plt_section_for_local functions. Add do_plt_section_for_global
and do_plt_section_for_local virtual functions.
* symtab.h (Symbol::needs_plt_entry): Handle IFUNC symbol. Add
clarifying comments.
(Symbol::use_plt_offset): Handle IFUNC symbol.
* object.cc (Sized_relobj::Sized_relobj): Initialize
local_plt_offsets_.
(Sized_relobj::local_has_plt_offset): New function.
(Sized_relobj::local_plt_offset): New function.
(Sized_relobj::set_local_plt_offset): New function.
(Sized_relobj::do_count): Handle IFUNC symbol.
* object.h (class Symbol_value): Add is_ifunc_symbol_ field. Take
a bit away from input_shndx_ field. Add set_is_func_symbol and
is_ifunc_symbol functions.
(class Sized_relobj): Update declarations. Remove Tls_got_entry
and Local_tls_got_offsets. Define Local_plt_offsets. Add
local_plt_offsets_ field.
(Sized_relobj::clear_local_symbols): Clear local_plt_offsets_.
* output.h (class Output_section_data): Add non-const
output_section function.
(class Output_data_got): Update declarations.
(class Output_data_got::Got_entry): Add use_plt_offset_ field.
Add use_plt_offset parameter to global and local constructors.
Change all callers. Change local_sym_index_ field to 31 bits.
Change GSYM_CODE and CONSTANT_CODE accordingly.
* output.cc (Output_data_reloc_base::do_adjust_output_section): If
doing a static link don't set sh_link field.
(Output_data_got::Got_entry::write): Use PLT offset if
appropriate.
(Output_data_got::add_global_plt): New function.
(Output_data_got::add_local_plt): New function.
* target-reloc.h (relocate_section): Handle IFUNC symbol.
* defstd.cc (in_section): Remove entries for __rel_iplt_start,
__rel_iplt_end, __rela_iplt_start, and __rela_iplt_end.
* configure.ac: Set IFUNC automake conditional for glibc >= 2.11.
* testsuite/Makefile.am: Add a bunch of IFUNC tests, all within
IFUNC conditional.
* testsuite/ifunc-sel.h: New file.
* testsuite/ifuncmain1.c: New file.
* testsuite/ifuncmain1vis.c: New file.
* testsuite/ifuncmod1.c: New file.
* testsuite/ifuncdep2.c: New file.
* testsuite/ifuncmain2.c: New file.
* testsuite/ifuncmain3.c: New file.
* testsuite/ifuncmod3.c: New file.
* testsuite/ifuncmain4.c: New file.
* testsuite/ifuncmain5.c: New file.
* testsuite/ifuncmod5.c: New file.
* testsuite/ifuncmain6pie.c: New file.
* testsuite/ifuncmod6.c: New file.
* testsuite/ifuncmain7.c: New file.
* configure, testsuite/Makefile.in: Rebuild.
H.J. Lu [Thu, 19 Aug 2010 21:04:36 +0000 (21:04 +0000)]
Fix a typo in comments.
2010-08-19 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (VEX_check_operands): Fix a typo in comments.
Tom Tromey [Thu, 19 Aug 2010 18:40:46 +0000 (18:40 +0000)]
* Makefile.in (install-python): Add DESTDIR.
Thiago Jung Bauermann [Thu, 19 Aug 2010 17:52:49 +0000 (17:52 +0000)]
* gdb.arch/vsx-regs.exp: Remove wrong comment about testing AltiVec
registers. Update data sets with the new v2_double element in the
VSX register union. Add vector_register3_vr data set for the AltiVec
registers. Use gdb_test_no_output instead of send_gdb.
Pedro Alves [Thu, 19 Aug 2010 17:00:58 +0000 (17:00 +0000)]
* gdb.python/py-shared.exp: New file, factored out from
python.exp.
* gdb.python/py-shared.c: New file.
* gdb.python/py-shared-sl.c: New file.
* gdb.python/python-1.c: New file.
* gdb.python/python-sl.c: Delete.
* gdb.python/python.c: Mention python-1.c.
* gdb.python/python.exp: Move shared library tests to
py-shared.exp.
* gdb.python/Makefile.in (EXECUTABLES): Add py-shared and python.
(MISCELLANEOUS): New.
(clean mostlyclean): Also remove $MISCELLANEOUS.
Doug Evans [Thu, 19 Aug 2010 13:33:15 +0000 (13:33 +0000)]
PR exp/11926
* parser-defs.h (parse_float, parse_c_float): Declare.
* parse.c (parse_float, parse_c_float): New function.
* c-exp.y (parse_number): Call parse_c_float.
* objc-exp.y (parse_number): Ditto.
* p-exp.y (parse_number): Ditto. Use ANSI/ISO-style definition.
* jv-exp.y (parse_number): Call parse_float, fix suffix handling.
testsuite/
* gdb.base/printcmds.exp (test_float_accepted): New function.
Move existing float tests there. Add tests for floats with suffixes.
(test_float_rejected): New function.
* gdb.java/jv-print.exp (test_float_accepted): New function.
(test_float_rejected): New function.
* gdb.objc/print.exp: New file.
* gdb.pascal/print.exp: New file.
* lib/objc.exp: New file.
Joel Brobecker [Thu, 19 Aug 2010 09:04:13 +0000 (09:04 +0000)]
Fix regression in -file-list-exec-source-files command.
See http://sourceware.org/ml/gdb/2010-07/msg00118.html for
a description of the problem. Namely, the file and fullname
fields are inverted in the output of the -file-list-exec-source-files
GDB/MI command:
(gdb) interpreter-exec mi -file-list-exec-source-files
^done,files=[{file="/takamaka.a/brobecke/ex/list-exec-source-files/foo.c",fullname="foo.c"},{file="/takamaka.a/brobecke/ex/list-exec-source-files/foo.c",fullname="foo.c"},{file="",fullname="init.c"},{file="",fullname="../sysdeps/x86_64/elf/start.S"},{file="",fullname="../sysdeps/x86_64/elf/start.S"}]
It turns out to be a silly thinko: The map_symbol_filenames function
calls the psymtab version of map_symbol_filenames routine, and this
version called the callback function with filename and fullname
in the wrong order (fullname/filename instead of filename/fullname).
The routine description in symfile.h confirst that expected order for
the FUN callback parameters:
/* Call a callback for every file defined in OBJFILE. FUN is the
callback. It is passed the file's name, the file's full name,
and the DATA passed to this function. */
void (*map_symbol_filenames) (struct objfile *objfile,
void (*fun) (const char *, const char *,
void *),
void *data);
Fixing this error uncovered another location where the arguments
were reversed: maybe_add_partial_symtab_filename. Once the first
error was fixed, the debugger would crash while attempting to do
completion, because it was given a NULL fullname instead of the
non-NULL filename.
gdb/ChangeLog:
* psymtab.c (map_symbol_filenames_psymtab): Call FUN with
the arguments in the correct order.
* symtab.c (maybe_add_partial_symtab_filename): Declare
the arguments in the correct order.
Jan Kratochvil [Thu, 19 Aug 2010 07:34:27 +0000 (07:34 +0000)]
gdb/
* varobj.c (varobj_create): Replace variable old_fi with old_id,
initialize it by null_frame_id, wrap its usage by get_frame_id,
frame_id_p and frame_find_by_id.
Pierre Muller [Thu, 19 Aug 2010 07:05:56 +0000 (07:05 +0000)]
* gdb.base/default.exp (info set): Avoid full buffer error and force
reading up to final gdb prompt.
(show): Likewise.
Alan Modra [Thu, 19 Aug 2010 05:51:50 +0000 (05:51 +0000)]
binutils/
* NEWS: Mention change in linker script expression evaluation.
ld/
* ld.texinfo (Expression Section): Detail expression evaluation.
(Builtin Functions <ADDR>): Correct.
(Builtin Functions <LOADADDR>): Don't mention LOADADDR normally
the same as ADDR.
(Builtin Functions <SEGMENT_START>): Typo fix.
* ldexp.c (new_number): New function.
(make_abs, exp_get_abs_int): Cope with NULL expld.result.section.
(fold_unary <'~', '!', '-'>): Don't make_abs.
(fold_binary): Simplify result section logic. Return NULL section
for logical ops.
(fold_binary <SEGMENT_START>): Use new_rel_from_abs to set value to
a consistent result.
(fold_name <SIZEOF_HEADERS>): Return new_number, not new_abs.
(fold_name <DEFINED, SIZEOF, ALIGNOF, LENGTH, CONSTANT>): Likewise.
(fold_name <NAME>): No need to handle absolute symbols differently
from relative ones.
(fold_name <ORIGIN>): Don't return valid result when
lang_first_phase_enum. Return new_rel_from_abs, not new_abs.
(exp_fold_tree_1 <etree_value>): Return new_number, not new_rel.
(exp_fold_tree_1): Ajust for NULL expld.result.section. When assigning
a plain number to dot, assume the value is relative to expld.section.
Make terms not in an output section, absolute.
* ldlang.c (print_assignment): Fix style nit.
(lang_size_sections_1): Cope with NULL expld.result.section.
(lang_do_assignments_1): Likewise.
ld/testsuite/
* ld-scripts/memory.t: Remove ORIGIN fudge.
Ian Lance Taylor [Thu, 19 Aug 2010 00:02:18 +0000 (00:02 +0000)]
* incremental.cc
(Output_section_incremental_inputs::write_input_files): Add cast
to avoid signed/unsigned comparison warning.
(Output_section_incremental_inputs::write_info_blocks): Likewise.
gdbadmin [Thu, 19 Aug 2010 00:00:35 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 19 Aug 2010 00:00:06 +0000 (00:00 +0000)]
daily update