Nick Clifton [Thu, 26 Jan 2012 09:59:30 +0000 (09:59 +0000)]
PR binutils/13622
* readelf.c (process_section_groups): If there are no section
headers do not scan for section groups.
(process_note_sections): Likewise for note sections.
Joel Brobecker [Thu, 26 Jan 2012 04:21:40 +0000 (04:21 +0000)]
Remove language param from name_matcher in struct quick_symbol_functions
The quick_symbol_functions struct contains a field which is pointer
a function which takes another function, called name_matcher, as
its parameter. This name_matcher currently has 3 arguments, one
of them being the language. This parameter is no longer used, and
thus deleted.
gdb/ChangeLog:
* symfile.h (struct quick_symbol_functions) [expand_symtabs_matching]:
Remove language parameter from name_matcher. Adjust the comment.
* symtab.c (search_symbols_name_matches, expand_partial_symbol_name):
Remove language parameter.
* ada-lang.c (ada_expand_partial_symbol_name): Likewise.
* linespec.c (iterate_name_matcher): Likewise.
* dwarf2read.c (dw2_expand_symtabs_matching): Adjust type of
name_matcher. Adjust call accordingly.
* psymtab.c (expand_symtabs_matching_via_partial): Likewise.
(maintenance_check_symtabs): Adjust type of parameter "fun".
* psymtab.h (maintenance_check_symtabs): Likewise.
Joel Brobecker [Thu, 26 Jan 2012 04:20:36 +0000 (04:20 +0000)]
Ada: allow unqualified function names in linespecs
This is the meat, where we replace the old la_symbol_name_compare
language method with the new ada_get_symbol_name_match_p.
It fixes the problem when trying to insert a breakpoint on "+".
gdb/ChangeLog:
* language.h (symbol_name_match_p_ftype): New typedef.
(struct language_defn): Replace field la_symbol_name_compare
by la_get_symbol_name_match_p.
* ada-lang.c (ada_get_symbol_name_match_p): New function.
(ada_language_defn): Use it.
* linespec.c (struct symbol_matcher_data): New type.
(iterate_name_matcher): Rewrite.
(iterate_over_all_matching_symtabs): Pass a pointer to
a symbol_matcher_data struct to expand_symtabs_matching
instead of just the lookup name.
* c-lang.c, d-lang.c, jv-lang.c, m2-lang.c, objc-lang.c,
opencl-lang.c, p-lang.c, language.c: Delete field
la_symbol_name_compare, and replace by NULL for new field
la_get_symbol_name_match_p.
* symfile.h (struct quick_symbol_functions): Update comment.
gdbadmin [Thu, 26 Jan 2012 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 25 Jan 2012 23:00:06 +0000 (23:00 +0000)]
daily update
Jan Kratochvil [Wed, 25 Jan 2012 18:25:13 +0000 (18:25 +0000)]
gdb/gdbserver/
* linux-low.c (linux_wait_for_event_1): Rename to ...
(linux_wait_for_event): ... here and merge it with former
linux_wait_for_event - new variable wait_ptid, use it.
(linux_wait_for_event): Remove - merge it to linux_wait_for_event_1.
Tom Tromey [Wed, 25 Jan 2012 16:20:31 +0000 (16:20 +0000)]
* gdb.base/solib-disc.exp: Fix regexps.
Tom Tromey [Wed, 25 Jan 2012 15:57:04 +0000 (15:57 +0000)]
* breakpoint.c (bpstat_stop_status): Check 'breakpoint_at' before
dereferencing.
Cary Coutant [Wed, 25 Jan 2012 07:34:55 +0000 (07:34 +0000)]
* int_encoding.cc (read_unsigned_LEB_128): Replaced with inline
definition and ...
(read_unsigned_LEB_128_x): ... this new function.
(read_signed_LEB_128): Replaced with inline definition and ...
(read_signed_LEB_128_x): ... this new function.
* int_encoding.h (read_unsigned_LEB_128_x): New function.
(read_unsigned_LEB_128): Add inline definition.
(read_signed_LEB_128_x): New function.
(read_signed_LEB_128): Add inline definition.
* testsuite/Makefile.am (leb128_unittest): New unit test.
* testsuite/Makefile.in: Regenerate.
* testsuite/leb128_unittest.cc: New unit test.
DJ Delorie [Wed, 25 Jan 2012 01:40:11 +0000 (01:40 +0000)]
* rl78-decode.opc (rl78_decode_opcode): Add NOT1.
* rl78-decode.c: Regenerate.
* config/rl78-parse.y (NOT1): Add.
gdbadmin [Wed, 25 Jan 2012 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 24 Jan 2012 23:00:06 +0000 (23:00 +0000)]
daily update
Tom Tromey [Tue, 24 Jan 2012 21:39:18 +0000 (21:39 +0000)]
PR symtab/12406:
* solib.c (update_solib_list): Update the program space's
added_solibs and deleted_solibs fields.
* progspace.h (struct program_space) <added_solibs,
deleted_solibs>: New fields.
(clear_program_space_solib_cache): Declare.
* progspace.c (release_program_space): Call
clear_program_space_solib_cache.
(clear_program_space_solib_cache): New function.
* infrun.c (handle_inferior_event) <TARGET_WAITKIND_LOADED>: Call
bpstat_stop_status. Use handle_solib_event.
* breakpoint.c: Include gdb_regex.h.
(print_solib_event): New function.
(bpstat_print): Use print_solib_event.
(bpstat_stop_status): Add special case for bp_shlib_event.
(handle_solib_event): New function.
(bpstat_what): Use handle_solib_event.
(struct solib_catchpoint): New.
(dtor_catch_solib, insert_catch_solib, remove_catch_solib)
(breakpoint_hit_catch_solib, check_status_catch_solib)
(print_it_catch_solib, print_one_catch_solib)
(print_mention_catch_solib, print_recreate_catch_solib): New
functions.
(catch_solib_breakpoint_ops): New global.
(catch_load_or_unload, catch_load_command_1)
(catch_unload_command_1): New functions.
(internal_bkpt_check_status): Add special case for
bp_shlib_event.
(internal_bkpt_print_it): Use print_solib_event.
(initialize_breakpoint_ops): Initialize
catch_solib_breakpoint_ops.
(_initialize_breakpoint): Register "catch load" and "catch
unload".
* breakpoint.h (handle_solib_event): Declare.
* NEWS: Add entry for "catch load" and "catch unload".
gdb/doc
* gdb.texinfo (Set Catchpoints): Document "catch load" and "catch
unload".
(Files): Mention new catch commands.
(GDB/MI Async Records): Likewise.
gdb/testsuite
* lib/mi-support.exp (mi_expect_stop): Add special case for
solib-event.
* gdb.base/catch-load-so.c: New file.
* gdb.base/catch-load.exp: New file.
* gdb.base/catch-load.c: New file.
* gdb.base/break-interp.exp (reach_1): Update regexp.
Tom Tromey [Tue, 24 Jan 2012 21:36:37 +0000 (21:36 +0000)]
* ada-lang.c: Include gdb_vecs.h.
* charset.c: Include gdb_vecs.h.
* tracepoint.h: Include gdb_vecs.h.
* gdb_vecs.h: New file.
Tom Tromey [Tue, 24 Jan 2012 21:32:56 +0000 (21:32 +0000)]
2012-01-24 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (breakpoint_hit_catch_fork)
(breakpoint_hit_catch_vfork, breakpoint_hit_catch_syscall)
(breakpoint_hit_catch_exec): Make use of the `ws' argument.
* infrun.c (inferior_has_forked, inferior_has_vforked)
(inferior_has_execd, inferior_has_called_syscall): Delete.
(handle_syscall_event): Get syscall_number from the execution
control state's wait status.
(wait_for_inferior): Don't clear syscall_number.
Tom Tromey [Tue, 24 Jan 2012 21:31:24 +0000 (21:31 +0000)]
2012-01-24 Pedro Alves <palves@redhat.com>
* breakpoint.c (bpstat_check_location, bpstat_stop_status,
pc_at_non_inline_function): Add `ws' parameter, and pass it down.
(breakpoint_hit_catch_fork, breakpoint_hit_catch_vfork)
(breakpoint_hit_catch_syscall, breakpoint_hit_catch_exec): Add
`ws' parameter.
(breakpoint_hit_ranged_breakpoint): Add `ws' parameter. Return
false for events other than TARGET_SIGNAL_TRAP.
(breakpoint_hit_watchpoint, base_breakpoint_breakpoint_hit):
Add `ws' parameter.
(bkpt_breakpoint_hit): Add `ws' parameter. Return false for
events other than TARGET_SIGNAL_TRAP.
(tracepoint_breakpoint_hit): Add `ws' parameter.
* breakpoint.h (struct breakpoint_ops) <breakpoint_hit>: Add `ws'
parameter.
(bpstat_stop_status): Same.
(pc_at_non_inline_function): Same.
* infrun.c (handle_syscall_event, handle_inferior_event): Adjust
to pass the current event's waitstatus to bpstat_stop_status
and pc_at_non_inline_function.
Jan Kratochvil [Tue, 24 Jan 2012 20:56:33 +0000 (20:56 +0000)]
gdb/
Code cleanup.
* cli/cli-cmds.c (source_script_from_stream): Never fclose STREAM.
Update the function comment for it.
(source_script_with_search): Call make_cleanup_fclose for STREAM.
* cli/cli-script.c (script_from_file): Do not call make_cleanup_fclose
for STREAM.
Jan Kratochvil [Tue, 24 Jan 2012 20:35:35 +0000 (20:35 +0000)]
gdb/testsuite/
Fix fuzzy results.
* gdb.mi/var-cmd.c (do_locals_tests): Initialize variables lsimple,
lpsimple and func.
Pedro Alves [Tue, 24 Jan 2012 19:12:32 +0000 (19:12 +0000)]
2012-01-24 Pedro Alves <palves@redhat.com>
* breakpoint.c (bpstat_stop_status): Moving clearing print_it
outside `bs->stop' block.
(bpstat_what): Rework bp_shlib_event handling.
(internal_bkpt_check_status): If the breakpoint is a
bp_shlib_event, then set bs->stop and bs->print if
stop_on_solib_events is set.
Gary Benson [Tue, 24 Jan 2012 15:13:30 +0000 (15:13 +0000)]
ChangeLog:
Delete #if 0'd out code.
* stack.c (print_frame_label_vars): Remove.
(catch_info): Likewise.
(_initialize_stack): Remove "info catch" command.
* NEWS: Mention the above.
doc/ChangeLog:
Delete #if 0'd out code.
* gdb.texinfo (Frame Info): Remove "info catch".
testsuite/ChangeLog:
Delete #if 0'd out code.
* gdb.base/default.exp (info catch): Remove.
* gdb.base/gdb_history (info catch): Likewise.
* gdb.base/help.exp (info catch): Likewise.
Pedro Alves [Tue, 24 Jan 2012 14:19:03 +0000 (14:19 +0000)]
2012-01-24 Pedro Alves <palves@redhat.com>
* remote.c (remote_add_inferior): New `fake_pid_p' parameter. Use
it.
(remote_notice_new_inferior): If the remote end doesn't support
the multiprocess extensions, then the PID is fake.
(add_current_inferior_and_thread): New.
(remote_start_remote): Use it.
(extended_remote_attach_1): Adjust.
(extended_remote_create_inferior_1): Use
add_current_inferior_and_thread.
Jan Kratochvil [Tue, 24 Jan 2012 13:49:58 +0000 (13:49 +0000)]
gdb/
Fix watchpoints to be specific for each inferior.
* breakpoint.c (watchpoint_in_thread_scope): Verify also
current_program_space.
* i386-nat.c (i386_inferior_data_cleanup): New.
(i386_inferior_data_get): Replace variable inf_data_local by an
inferior_data call.
(i386_use_watchpoints): Initialize i386_inferior_data.
* linux-nat.c (linux_nat_iterate_watchpoint_lwps): Use INFERIOR_PTID
specific iterate_over_lwps.
gdb/testsuite/
Fix watchpoints to be specific for each inferior.
* gdb.multi/watchpoint-multi.c: New file.
* gdb.multi/watchpoint-multi.exp: New file.
Jan Kratochvil [Tue, 24 Jan 2012 13:46:55 +0000 (13:46 +0000)]
gdb/
Fix watchpoints across inferior fork.
* amd64-linux-nat.c (update_debug_registers_callback): Update the
comment for linux_nat_iterate_watchpoint_lwps.
(amd64_linux_dr_set_control, amd64_linux_dr_set_addr): Use
linux_nat_iterate_watchpoint_lwps.
(amd64_linux_prepare_to_resume): New comment on Linux kernel.
* i386-linux-nat.c (update_debug_registers_callback): Update the
comment for linux_nat_iterate_watchpoint_lwps.
(i386_linux_dr_set_control, i386_linux_dr_set_addr): Use
linux_nat_iterate_watchpoint_lwps.
(i386_linux_prepare_to_resume): New comment on Linux kernel.
* i386-nat.c: Include inferior.h.
(dr_mirror): Remove.
(i386_inferior_data, struct i386_inferior_data)
(i386_inferior_data_get): New.
(i386_debug_reg_state): Use i386_inferior_data_get.
(i386_cleanup_dregs, i386_update_inferior_debug_regs)
(i386_insert_watchpoint, i386_remove_watchpoint)
(i386_stopped_data_address, i386_insert_hw_breakpoint)
(i386_remove_hw_breakpoint): New variable state, use
i386_debug_reg_state instead of DR_MIRROR.
* linux-nat.c (delete_lwp): New declaration.
(num_lwps): Move here from downwards.
(delete_lwp_cleanup): New.
(linux_child_follow_fork): Create new child_lp, call
linux_nat_new_thread and linux_nat_prepare_to_resume before calling
PTRACE_DETACH.
(num_lwps): Move upwards.
(linux_nat_iterate_watchpoint_lwps): New.
* linux-nat.h (linux_nat_iterate_watchpoint_lwps_ftype): New.
(linux_nat_iterate_watchpoint_lwps_ftype): New declaration.
gdb/testsuite/
Fix watchpoints across inferior fork.
* gdb.threads/watchpoint-fork-child.c: New file.
* gdb.threads/watchpoint-fork-mt.c: New file.
* gdb.threads/watchpoint-fork-parent.c: New file.
* gdb.threads/watchpoint-fork-st.c: New file.
* gdb.threads/watchpoint-fork.exp: New file.
* gdb.threads/watchpoint-fork.h: New file.
gdbadmin [Tue, 24 Jan 2012 11:35:39 +0000 (11:35 +0000)]
GDB 7.4 released.
Ian Lance Taylor [Tue, 24 Jan 2012 06:21:47 +0000 (06:21 +0000)]
Use my google.com address.
Ian Lance Taylor [Tue, 24 Jan 2012 06:21:11 +0000 (06:21 +0000)]
PR gold/13617
* i386.cc (Target_i386::do_code_fill): When using a jmp
instruction, pad with nop instructions.
* x86_64.cc (Target_x86_64::do_code_fill): Likewise.
Alan Modra [Tue, 24 Jan 2012 01:22:37 +0000 (01:22 +0000)]
daily update
gdbadmin [Tue, 24 Jan 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Roland McGrath [Mon, 23 Jan 2012 21:42:04 +0000 (21:42 +0000)]
* configure.tgt (i386-*-nacl*): Match it.
* config/te-nacl.h: New file.
* config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT): Define for this case.
* config/tc-i386.c [TE_NACL] (i386_comment_chars, PREFIX_SEPARATOR):
Use TE_GNU et al case for TE_NACL too.
Pedro Alves [Mon, 23 Jan 2012 17:12:30 +0000 (17:12 +0000)]
2012-01-23 Pedro Alves <palves@redhat.com>
* top.c (caution): Rename to ...
(confirm): ... this.
(show_caution): Rename to ...
(show_confirm): ... this.
(quit_cover): Adjust.
(init_main): Adjust.
* top.h (caution): Rename to ...
(confirm): ... this.
* utils.c (internal_vproblem, defaulted_query): Adjust.
Pedro Alves [Mon, 23 Jan 2012 17:11:50 +0000 (17:11 +0000)]
gdb/
2012-01-23 Pedro Alves <palves@redhat.com>
* top.c (caution): Update comment.
(execute_command): Don't consider the current value of `caution'.
gdb/testsuite/
2012-01-23 Pedro Alves <palves@redhat.com>
* gdb.base/call-signal-resume.exp: Allow output after "return".
Pedro Alves [Mon, 23 Jan 2012 16:40:26 +0000 (16:40 +0000)]
2012-01-23 Pedro Alves <palves@redhat.com>
* server.c (main): Avoid yet another case of infinite loop while
detaching/killing after a longjmp.
Jan Kratochvil [Mon, 23 Jan 2012 16:37:03 +0000 (16:37 +0000)]
gdb/
* cli/cli-cmds.c (find_and_open_script): Handle failure of fdopen.
Ulrich Weigand [Mon, 23 Jan 2012 13:35:22 +0000 (13:35 +0000)]
* inf-child.c: Include "gdb_stat.h" instead of <sys/stat.h>.
* linux-tdep.c (linux_info_proc): Avoid ARI coding style warning.
* target.c (target_fileio_pwrite): Remove buffer address from
debug output.
(target_fileio_pread): Likewise.
DJ Delorie [Mon, 23 Jan 2012 07:01:21 +0000 (07:01 +0000)]
merge from gcc
Alan Modra [Mon, 23 Jan 2012 06:16:38 +0000 (06:16 +0000)]
* elf-bfd.h: Formatting.
(struct elf_backend_data): Add "maybe_function_sym".
(_bfd_elf_maybe_function_sym): Declare.
* elfxx-target.h (elf_backend_maybe_function_sym): Define.
(elfNN_bed): Init new field.
* elf.c (elf_find_function): Use maybe_function_sym.
(_bfd_elf_maybe_function_sym): New function.
* elf64-ppc.c (elf_backend_maybe_function_sym): Define.
(ppc64_elf_maybe_function_sym): New function.
gdbadmin [Mon, 23 Jan 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 22 Jan 2012 23:00:05 +0000 (23:00 +0000)]
daily update
gdbadmin [Sun, 22 Jan 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 21 Jan 2012 23:00:05 +0000 (23:00 +0000)]
daily update
gdbadmin [Sat, 21 Jan 2012 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 20 Jan 2012 23:00:05 +0000 (23:00 +0000)]
daily update
H.J. Lu [Fri, 20 Jan 2012 20:53:50 +0000 (20:53 +0000)]
Add .d8 suffix support to x86 assembler
gas/
2012-01-20 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (_i386_insn): Replace disp32_encoding with
disp_encoding.
(md_assemble): Updated.
(output_branch): Likewise.
(parse_insn): Support .d8 suffix.
(build_modrm_byte): Fake zero displacement for .d8 and .d32
suffixes.
* doc/c-i386.texi: Document .d8 suffix.
gas/testsuite/
2012-01-20 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/disp32.s: Add tests for .d8 suffix.
* gas/i386/x86-64-disp32.s: Likewise.
* gas/i386/disp32.d: Updated.
* gas/i386/x86-64-disp32.d: Likewise.
Jan Kratochvil [Fri, 20 Jan 2012 20:02:25 +0000 (20:02 +0000)]
gdb/gdbserver/
Code cleanup.
* linux-low.c (linux_wait_for_event_1): Use ptid_is_pid.
Pedro Alves [Fri, 20 Jan 2012 20:00:14 +0000 (20:00 +0000)]
2012-01-20 Pedro Alves <palves@redhat.com>
* gdb.python/py-finish-breakpoint.py: Fix typo.
Nick Clifton [Fri, 20 Jan 2012 14:42:57 +0000 (14:42 +0000)]
PR binutils/13534
* archive.c (_bfd_ar_sizepad): New function. Correctly install and
pad the size field in an archive header.
(_bfd_generic_read_ar_hdr_mag): Use the correct type and scan
function for the archive size field.
(bfd_generic_openr_next_archived_file): Likewise.
(do_slurp_coff_armap): Likewise.
(_bfd_write_archive_contents): Likewise.
(_bfd_bsd44_write_ar_hdr): Use the new function.
(bfd_ar_hdr_from_filesystem): Likewise.
(_bfd_write_archive_contents): Likewise.
(bsd_write_armap): Likewise.
(coff_write_armap): Likewise.
* archive64.c (bfd_elf64_archive_write_armap): Likewise.
* bfdio.c (bfd_bread): Use correct type for archive element
sizes.
* ar.c (open_inarch): Likewise.
(extract_file): Likewise.
* libbfd-in.h (struct areltdata): Use correct types for
parsed_size and extra_size fields.
Prototype _bfd_ar_sizepad function.
* libbfd.h: Regenerate.
Tristan Gingold [Fri, 20 Jan 2012 10:40:53 +0000 (10:40 +0000)]
2012-01-20 Tristan Gingold <gingold@adacore.com>
* od-macho.c (OPT_SEG_SPLIT_INFO): New macro.
(options): Add an entry for seg_split_info.
(mach_o_help): Document it.
(dump_segment_split_info): New function.
(dump_load_command): Handle seg_split_info.
Ulrich Weigand [Fri, 20 Jan 2012 10:31:26 +0000 (10:31 +0000)]
* NEWS: Document remote "info proc" and "generate-core-file".
Ulrich Weigand [Fri, 20 Jan 2012 09:59:15 +0000 (09:59 +0000)]
* gdbarch.sh (find_memory_regions): New callback.
* gdbarch.c, gdbarch.h: Regenerate.
* gcore.c (gcore_memory_sections): Try gdbarch find_memory_regions
callback before falling back to target method.
* linux-nat.c (read_mapping, linux_nat_find_memory_regions): Remove.
(linux_target_install_ops): No longer install it.
* linux-tdep.c (linux_find_memory_regions): New function.
(linux_init_abi): Install it.
Ulrich Weigand [Fri, 20 Jan 2012 09:56:56 +0000 (09:56 +0000)]
* gdbarch.sh (make_corefile_notes): New architecture callback.
* gdbarch.c: Regenerate.
* gdbarch.h: Likewise.
* gcore.c (write_gcore_file): Try gdbarch_make_corefile_notes
before target_make_corefile_notes. If NULL is returned, the
target does not support core file generation.
* linux-nat.c: Include "linux-tdep.h".
(find_signalled_thread, find_stop_signal): Remove.
(linux_nat_do_thread_registers): Likewise.
(struct linux_nat_corefile_thread_data): Likewise.
(linux_nat_corefile_thread_callback): Likewise.
(iterate_over_spus): Likewise.
(struct linux_spu_corefile_data): Likewise.
(linux_spu_corefile_callback): Likewise.
(linux_spu_make_corefile_notes): Likewise.
(linux_nat_collect_thread_registers): New function.
(linux_nat_make_corefile_notes): Replace contents by call to
linux_make_corefile_notes passing linux_nat_collect_thread_registers
as native-only callback.
* linux-tdep.h: Include "bfd.h".
(struct regcache): Add forward declaration.
(linux_collect_thread_registers_ftype): New typedef.
(linux_make_corefile_notes): Add prototype.
* linux-tdep.c: Include "gdbthread.h", "gdbcore.h", "regcache.h",
"regset.h", and "elf-bfd.h".
(find_signalled_thread, find_stop_signal): New functions.
(linux_spu_make_corefile_notes): Likewise.
(linux_collect_thread_registers): Likewise.
(struct linux_corefile_thread_data): New data structure.
(linux_corefile_thread_callback): New funcion.
(linux_make_corefile_notes): Likewise.
(linux_make_corefile_notes_1): Likewise.
(linux_init_abi): Install it.
Ulrich Weigand [Fri, 20 Jan 2012 09:52:43 +0000 (09:52 +0000)]
* elf.c (elfcore_write_prpsinfo): Provide unconditionally.
Return NULL if core file generation is unsupported.
(elfcore_write_prstatus): Likewise.
* elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
(elf_backend_write_core_note): Define.
Ulrich Weigand [Fri, 20 Jan 2012 09:49:58 +0000 (09:49 +0000)]
* gdbarch.sh (info_proc): New callback.
* gdbarch.c, gdbarch.h: Regenerate.
* infcmd.c (info_proc_cmd_1): Try gdbarch info_proc callback
before falling back to the target info_proc callback.
* linux-nat.c: Do not include "cli/cli-utils.h".
(linux_nat_info_proc): Remove.
(linux_target_install_ops): No longer install it.
* linux-tdep.c: Include "cli/cli-utils.h" and <ctype.h>.
(read_mapping): New function.
(linux_info_proc): Likewise.
(linux_init_abi): Install it.
Ulrich Weigand [Fri, 20 Jan 2012 09:49:01 +0000 (09:49 +0000)]
ChangeLog:
* defs.h (enum info_proc_what): Moved here from linux-nat.c
* infcmd.c: (info_proc_cmd_1): New function.
(info_proc_cmd): New function, moved here from equivalent routine
orignally in linux-nat.c.
(info_proc_cmd_mappings): Likewise.
(info_proc_cmd_stat): Likewise.
(info_proc_cmd_status): Likewise.
(info_proc_cmd_cwd): Likewise.
(info_proc_cmd_cmdline): Likewise.
(info_proc_cmd_exe): Likewise.
(info_proc_cmd_all): Likewise.
(_initialize_infcmd): Install "info proc" command and subcommands.
* target.h (struct target_ops): Add to_info_proc.
(target_info_proc): Add prototype.
* target.c (target_info_proc): New function.
* procfs.c (procfs_info_proc): Add prototype.
(info_proc_cmd): Rename into ...
(procfs_info_proc): ... this. Update argument types as appropriate
for a to_info_proc implementation. Handle "what" argument.
(procfs_target): Install procfs_info_proc.
(_initialize_procfs): No longer install "info proc" command.
* linux-nat.c: (enum info_proc_what): Remove.
(linux_nat_info_proc_cmd_1): Rename into ...
(linux_nat_info_proc): ... this. Update argument types as appropriate
for a to_info_proc implementation.
(linux_nat_info_proc_cmd): Remove.
(linux_nat_info_proc_cmd_mappings): Likewise.
(linux_nat_info_proc_cmd_stat): Likewise.
(linux_nat_info_proc_cmd_status): Likewise.
(linux_nat_info_proc_cmd_cwd): Likewise.
(linux_nat_info_proc_cmd_cmdline): Likewise.
(linux_nat_info_proc_cmd_exe): Likewise.
(linux_nat_info_proc_cmd_all): Likewise.
(linux_target_install_ops): Install linux_nat_info_proc.
(_initialize_linux_nat): No longer install "info proc" command
and subcommands.
testsuite/ChangeLog:
* gdb.base/info-proc.exp: Also run on remote targets. Main
"info proc" command is now always present; whether target supports
actual info proc operation is detected when attempting to issue
the command.
Ulrich Weigand [Fri, 20 Jan 2012 09:47:32 +0000 (09:47 +0000)]
ChangeLog:
* configure.ac [AC_CHECK_FUNCS]: Check for readlink.
* config.in, configure: Regenerate.
* target.h (struct target_ops): Add to_fileio_readlink.
(target_fileio_readlink): Add prototype.
* target.c (target_fileio_readlink): New function.
* inf-child.c: Conditionally include <sys/param.h>.
(inf_child_fileio_readlink): New function.
(inf_child_target): Install it.
* remote.c (PACKET_vFile_readlink): New enum value.
(remote_hostio_readlink): New function.
(init_remote_ops): Install it.
(_initialize_remote): Handle vFile:readlink packet type.
doc/ChangeLog:
* gdb.texinfo (Remote Configuration): Document
"set remote hostio-readlink-packet" command.
(General Query Packets): Document vFile:readlink packet.
gdbserver/ChangeLog:
* hostio.c (handle_readlink): New function.
(handle_vFile): Call it to handle "vFile:readlink" packets.
Ulrich Weigand [Fri, 20 Jan 2012 09:45:51 +0000 (09:45 +0000)]
2012-01-20 Pedro Alves <palves@redhat.com>
Ulrich Weigand <ulrich.weigand@linaro.org>
* configure.ac [AC_CHECK_FUNCS]: Check for pread and pwrite.
* config.in, configure: Regenerate.
* target.h (struct target_ops): Add to_fileio_open, to_fileio_pwrite,
to_fileio_pread, to_fileio_close, to_fileio_unlink.
(target_fileio_open): Add prototype.
(target_fileio_pwrite): Likewise.
(target_fileio_pread): Likewise.
(target_fileio_close): Likewise.
(target_fileio_unlink): Likewise.
(target_fileio_read_alloc): Likewise.
(target_fileio_read_stralloc): Likewise.
* target.c: Include "gdb/fileio.h".
(target_read_stralloc): Accept trailing, but not embedded NUL bytes.
(default_fileio_target): New function.
(target_fileio_open): Likewise.
(target_fileio_pwrite): Likewise.
(target_fileio_pread): Likewise.
(target_fileio_close): Likewise.
(target_fileio_unlink): Likewise.
(target_fileio_close_cleanup): Likewise.
(target_fileio_read_alloc_1): Likewise.
(target_fileio_read_alloc): Likewise.
(target_fileio_read_stralloc): Likewise.
* inf-child.c: Include "gdb/fileio.h", <sys/types.h>, <sys/stat.h>,
<fcntl.h>, and <unistd.h>.
(inf_child_fileio_open_flags_to_host): New function.
(inf_child_errno_to_fileio_error): Likewise.
(inf_child_fileio_open): Likewise.
(inf_child_fileio_pwrite): Likewise.
(inf_child_fileio_pread): Likewise.
(inf_child_fileio_close): Likewise.
(inf_child_fileio_unlink): Likewise.
(inf_child_target): Install to_fileio routines.
* remote.c (init_remote_ops): Install to_fileio routines.
Ulrich Weigand [Fri, 20 Jan 2012 09:44:35 +0000 (09:44 +0000)]
2012-01-20 Pedro Alves <palves@redhat.com>
Ulrich Weigand <ulrich.weigand@linaro.org>
ChangeLog:
* remote.c (remote_multi_process_p): Only check for multi-process
protocol feature, do not check for extended protocol.
(remote_supports_multi_process): Check for extended protocol here.
(set_general_process): Likewise.
(extended_remote_kill): Likewise.
(remote_pid_to_str): Likewise.
(remote_query_supported): Always query multiprocess mode.
gdbserver/ChangeLog:
* server.c (handle_v_requests): Only support vAttach and vRun to
start multiple processes when in extended protocol mode.
Ulrich Weigand [Fri, 20 Jan 2012 09:42:44 +0000 (09:42 +0000)]
2012-01-20 Pedro Alves <palves@redhat.com>
Ulrich Weigand <ulrich.weigand@linaro.org>
* inferior.h (struct inferior): Add fake_pid_p.
* inferior.c (exit_inferior_1): Clear fake_pid_p.
* remote.c (remote_start_remote): Set fake_pid_p if we have to use
magic_null_ptid since the remote side doesn't provide a real PID.
H.J. Lu [Fri, 20 Jan 2012 00:43:57 +0000 (00:43 +0000)]
Add typename on types used in template
2012-01-22 H.J. Lu <hongjiu.lu@intel.com>
* x86_64.cc (gc_process_relocs): Add typename on types used in
template.
(scan_relocs): Likewise.
(relocate_section): Likewise.
(apply_relocation): Likewise.
gdbadmin [Fri, 20 Jan 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 19 Jan 2012 23:00:07 +0000 (23:00 +0000)]
daily update
Tom Tromey [Thu, 19 Jan 2012 16:54:03 +0000 (16:54 +0000)]
* NEWS: Combine the two Python sections.
Jan Kratochvil [Thu, 19 Jan 2012 16:36:38 +0000 (16:36 +0000)]
gdb/
* target.h (target_close): Update comment on the target's unpush state.
Pedro Alves [Thu, 19 Jan 2012 16:32:59 +0000 (16:32 +0000)]
2012-01-19 Pedro Alves <palves@redhat.com>
* linux-nat.c (linux_nat_close): Call linux_nat_is_async_p and
linux_nat_async directly instead of going through the target
vector.
* target.c (unpush_target): Close target after unpushing it, not
before.
Tristan Gingold [Thu, 19 Jan 2012 13:58:15 +0000 (13:58 +0000)]
2012-01-19 Tristan Gingold <gingold@adacore.com>
* dwarf.c (process_extended_line_op): Add a cast to silent a
warning.
Gary Benson [Thu, 19 Jan 2012 12:51:04 +0000 (12:51 +0000)]
2012-01-19 Gary Benson <gbenson@redhat.com>
* mdebugread.c (sort_blocks): Replace integer constants with ones
derived from FIRST_LOCAL_BLOCK.
Jan Kratochvil [Thu, 19 Jan 2012 12:44:01 +0000 (12:44 +0000)]
gdb/testsuite/
* .gdbinit: Remove.
Pedro Alves [Thu, 19 Jan 2012 12:37:28 +0000 (12:37 +0000)]
2012-01-19 Pedro Alves <palves@redhat.com>
* gdb.java/jprint.exp: Don't rely on inferior output, but instead
look at the funtions' returns.
* gdb.java/jprint.java (jvclass.addprint, jprint.print(int))
(jprint.print(int, int)): Change return type to int. Adjust.
Tristan Gingold [Thu, 19 Jan 2012 11:45:36 +0000 (11:45 +0000)]
2012-01-19 Tristan Gingold <gingold@adacore.com>
* pef.c: Add a comment.
* xsym.c: Likewise.
Tristan Gingold [Thu, 19 Jan 2012 11:34:44 +0000 (11:34 +0000)]
2012-01-19 Tristan Gingold <gingold@adacore.com>
* dwarf.c (process_extended_line_op): Reindent define_file output.
Detect define_file opcode length mismatch.
(display_debug_lines_decoded): Add an entry in file_table for each
define_file opcode.
Ignore DW_LNE_set_discriminator and DW_LNE_HP_set_sequence.
Display extended opcode for unhandle opcode.
gdbadmin [Thu, 19 Jan 2012 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 18 Jan 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Paul Pluzhnikov [Wed, 18 Jan 2012 18:58:43 +0000 (18:58 +0000)]
2012-01-18 Paul Pluzhnikov <ppluzhnikov@google.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
PR gdb/9538
* symfile.c (find_separate_debug_file): New function.
(terminate_after_last_dir_separator): Likewise.
(find_separate_debug_file_by_debuglink): Also try realpath.
* configure.ac (AC_CHECK_FUNCS): Add lstat.
* configure: Regenerate.
* config.in: Regenerate.
testsuite/ChangeLog:
2012-01-18 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/9538
* gdb.base/sepdebug.exp: New test.
Doug Evans [Wed, 18 Jan 2012 18:35:43 +0000 (18:35 +0000)]
* Makefile.in (TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE): Delete.
(main.o): Remove rule.
* configure.ac (BINDIR): Define with AC_DEFINE_DIR.
(--with-sysroot): Rewrite.
* configure: Regenerate.
* config.in: Regenerate.
Pedro Alves [Wed, 18 Jan 2012 17:00:17 +0000 (17:00 +0000)]
2012-01-18 Pedro Alves <palves@redhat.com>
* gdb.ada/mi_task_info.exp (-ada-task-info with no argument):
Allow output before ^done.
Sergio Durigan Junior [Wed, 18 Jan 2012 12:47:35 +0000 (12:47 +0000)]
2012-01-18 Sergio Durigan Junior <sergiodj@redhat.com>
* parse.c (initialize_expout): New function.
(reallocate_expout): Likewise.
(parse_exp_in_context): Use `initialize_expout' and
`reallocate_expout' when appropriate.
Pedro Alves [Wed, 18 Jan 2012 11:51:55 +0000 (11:51 +0000)]
2012-01-18 Pedro Alves <palves@redhat.com>
* record.c (struct record_breakpoint, record_breakpoint_p)
(record_breakpoints): New.
(record_insert_breakpoint, record_remove_breakpoint): Manage
record breakpoints list. Only remove breakpoints from the
inferior if they had been inserted there in the first place.
gdbadmin [Wed, 18 Jan 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 17 Jan 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Doug Evans [Tue, 17 Jan 2012 20:30:22 +0000 (20:30 +0000)]
* linespec.c (decode_line_internal): Don't call symtabs_from_filename
if we know we don't have a file name to look for.
Pedro Alves [Tue, 17 Jan 2012 17:22:10 +0000 (17:22 +0000)]
2012-01-17 Pedro Alves <palves@redhat.com>
* tracepoint.c (initialize_tracepoint): Use mmap instead of
memalign plus mprotect to allocate the scratch buffer.
Pedro Alves [Tue, 17 Jan 2012 14:03:33 +0000 (14:03 +0000)]
2012-01-17 Pedro Alves <palves@redhat.com>
* dwarf2-frame.c (dwarf2_frame_cfa): Throw NOT_AVAILABLE_ERROR, if
the frame's stop reason is UNWIND_UNAVAILABLE.
Alan Modra [Tue, 17 Jan 2012 00:20:30 +0000 (00:20 +0000)]
* write.c (fix_new_internal): Don't mark used parameter as unused.
Alan Modra [Tue, 17 Jan 2012 00:16:54 +0000 (00:16 +0000)]
* config/default.exp: Provide tmpdir/ld/collect-ld.
Alan Modra [Tue, 17 Jan 2012 00:07:04 +0000 (00:07 +0000)]
Update copyright message year.
Jan Kratochvil [Tue, 17 Jan 2012 00:06:47 +0000 (00:06 +0000)]
gdb/
Fix compilation error.
* m2-exp.y (yyerror): Use ANSI C prototype.
gdbadmin [Tue, 17 Jan 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 16 Jan 2012 23:51:35 +0000 (23:51 +0000)]
PR binutils/10173
* cr16-dis.c (print_arg): Test symtab_size not num_symbols.
Andreas Schwab [Mon, 16 Jan 2012 23:19:20 +0000 (23:19 +0000)]
* gas/testsuite/gas/m68k/pmove.s, gas/testsuite/gas/m68k/pmove.d: New test.
* gas/testsuite/gas/m68k/all.exp: Run it.
* opcodes/m68k-opc.c (m68k_opcodes): Fix entries for pmove with BADx/BACx
register and move them after pmove with PSR/PCSR register.
Alan Modra [Mon, 16 Jan 2012 23:00:05 +0000 (23:00 +0000)]
daily update
Alan Modra [Mon, 16 Jan 2012 22:30:19 +0000 (22:30 +0000)]
* elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
trailing garbage in the note.
* elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
Sergio Durigan Junior [Mon, 16 Jan 2012 21:03:36 +0000 (21:03 +0000)]
2012-01-16 Sergio Durigan Junior <sergiodj@redhat.com>
* f-exp.y (parse_number): Convert prototype from K&R to ANSI C.
(growbuf_by_size): Likewise.
(yyerror): Likewise.
* m2-exp.y (make_qualname): Remove function (was #if 0'ed).
(modblock): Remove variable (was #if 0'ed).
(parse_number): Convert prototype from K&R to ANSI C.
(yyerror): Likewise.
* objc-exp.y (parse_number): Likewise.
(yyerror): Likewise.
(yylex): Remove #if 0'ed code.
* p-exp.y (uptok): Convert prototype from K&R to ANSI C.
(yyerror): Likewise.
Tom Tromey [Mon, 16 Jan 2012 20:40:53 +0000 (20:40 +0000)]
gdb
* NEWS: Add item.
* symtab.h (compare_filenames_for_search): Declare.
* symtab.c (compare_filenames_for_search): New function.
(iterate_over_some_symtabs): Use it.
* symfile.h (struct quick_symbol_functions)
<map_symtabs_matching_filename>: Change spec.
* psymtab.c (partial_map_symtabs_matching_filename): Use
compare_filenames_for_search. Update for new spec.
* dwarf2read.c (dw2_map_symtabs_matching_filename): Use
compare_filenames_for_search. Update for new spec.
* breakpoint.c (clear_command): Use compare_filenames_for_search.
gdb/doc
* gdb.texinfo (Specify Location): Document relative file name
handling.
gdb/testsuite
* gdb.linespec/linespec.exp: Change some tests to use $decimal.
Add tests for relative directory.
Tom Tromey [Mon, 16 Jan 2012 19:44:16 +0000 (19:44 +0000)]
gdb
PR python/13281:
* gdbtypes.h (TYPE_FLAG_ENUM): New macro.
(struct main_type) <flag_flag_enum>: New field.
* dwarf2read.c (process_enumeration_scope): Detect "flag" enums.
* NEWS: Add entries.
* c-valprint.c (c_val_print) <TYPE_CODE_ENUM>: Handle "flag"
enums.
* python/lib/gdb/printing.py (_EnumInstance): New class.
(FlagEnumerationPrinter): Likewise.
gdb/doc
* gdb.texinfo (gdb.printing): Document FlagEnumerationPrinter.
gdb/testsuite
* gdb.base/printcmds.c (enum flag_enum): New.
(three): New global.
* gdb.base/printcmds.exp (test_print_enums): Add test for flag
enum printing.
* gdb.python/py-pp-maint.py (build_pretty_printer): Instantiate
FlagEnumerationPrinter.
* gdb.python/py-pp-maint.exp: Add tests for FlagEnumerationPrinter.
* gdb.python/py-pp-maint.c (enum flag_enum): New.
(fval): New global.
Sergio Durigan Junior [Mon, 16 Jan 2012 17:44:36 +0000 (17:44 +0000)]
2012-01-16 Sergio Durigan Junior <sergiodj@redhat.com>
* breakpoint.c (create_sals_from_address_default): New function.
(create_breakpoints_sal_default): Likewise.
(decode_linespec_default): Likewise.
(is_marker_spec): Removed.
(strace_marker_p): New function.
(init_breakpoint_sal): Using `strace_marker_p' instead of
`is_marker_spec'.
(create_breakpoint): Call method `create_sals_from_address' from
breakpoint_ops, replacing code that created SALs conditionally
on the type of the breakpoint. Call method `create_breakpoints_sal',
replacing code that created breakpoints conditionally on the type
wanted.
(base_breakpoint_create_sals_from_address): New function.
(base_breakpoint_create_breakpoints_sal): Likewise.
(base_breakpoint_decode_linespec): Likewise.
(base_breakpoint_ops): Add methods
`base_breakpoint_create_sals_from_address',
`base_breakpoint_create_breakpoints_sal' and
`base_breakpoint_decode_linespec'.
(bkpt_create_sals_from_address): New function.
(bkpt_create_breakpoints_sal): Likewise.
(bkpt_decode_linespec): Likewise.
(tracepoint_create_sals_from_address): Likewise.
(tracepoint_create_breakpoints_sal): Likewise.
(tracepoint_decode_linespec): Likewise.
(strace_marker_create_sals_from_address): Likewise.
(strace_marker_create_breakpoints_sal): Likewise.
(strace_marker_decode_linespec): Likewise.
(strace_marker_breakpoint_ops): New variable.
(addr_string_to_sals): Remove `marker_spec'. Call method
`decode_linespec' from breakpoint_ops, replacing code that decoded
an address string into a SAL. Use `strace_marker_p' instead of
`marker_spec'.
(strace_command): Decide whether we are dealing with a static
tracepoint with marker or not. Use the appropriate breakpoint_ops.
(initialize_breakpoint_ops): Initialize new fields of breakpoint_ops.
* breakpoint.h (linespec_result, linespec_sals): New forward
declarations.
(breakpoint_ops) <create_sals_from_address>,
<create_breakpoints_sal>, <decode_linespec>: New methods.
Pedro Alves [Mon, 16 Jan 2012 17:31:25 +0000 (17:31 +0000)]
2012-01-16 Pedro Alves <palves@redhat.com>
* lib/gdb.exp (banned_procedures): New variable.
(banned_variables_traced): Rename to ...
(banned_traced): ... this.
(gdb_init): Also trace banned procedures.
(gdb_finish): Also untrace banned procedures.
Pedro Alves [Mon, 16 Jan 2012 16:21:53 +0000 (16:21 +0000)]
2012-01-16 Pedro Alves <palves@redhat.com>
Remove all calls to strace.
Alan Modra [Mon, 16 Jan 2012 08:43:20 +0000 (08:43 +0000)]
PR binutils/13593
* nm.c (OPTION_SIZE_SORT): Define.
(long_options): Don't set no_sort, sort_numerically or
sort_by_size directly.
(main): Instead set the flags here, making them mutually exclusive.
Alan Modra [Mon, 16 Jan 2012 08:30:18 +0000 (08:30 +0000)]
PR ld/13491
* coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
h->root.type not h->type.
* coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
gdbadmin [Mon, 16 Jan 2012 00:00:04 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 15 Jan 2012 23:00:06 +0000 (23:00 +0000)]
daily update