2011-11-05 Doug Evans * source.c (forget_cached_source_info_for_objfile): Move call to objfile->sf->qf->forget_cached_source_info outside of ALL_OBJFILE_SYMTABS loop. (forget_cached_source_info): Delete unused variable `s'. 2011-11-05 Jan Kratochvil * i386-nat.c (dr_ref_count): Remove unused variable. 2011-11-05 Doug Evans * main.c (captured_main): Set lim_at_start before calling make_command_stats_cleanup. 2011-11-04 Doug Evans * utils.c: #include "timeval-utils.h". (cmd_stats): Rename start_time to start_cpu_time. New member start_wall_time. (report_command_stats): Report wall time. (make_command_stats_cleanup): Record start wall time. 2011-11-04 Tom Tromey * cp-namespace.c (cp_lookup_symbol_imports): Reindent. 2011-11-04 Rainer Orth * coff-pe-read.c: Include defs.h before bfd.h. 2011-11-04 Phil Muldoon PR Python/13345 * python/python.c (python_run_simple_file): Expand tilde in path. 2011-11-04 Phil Muldoon PR Python/13363 * python/py-type.c (typy_lookup_type): Do not return a type in an exception handler. 2011-11-03 Jan Kratochvil Eli Zaretskii * linux-nat.c (_initialize_linux_nat): Improve help for `info proc stat', `info proc status', `info proc cwd', `info proc cmdline' and `info proc exe'. 2011-11-02 Stan Shebs String collection for tracepoints. * NEWS: Mention string collection. * common/ax.def (tracenz): New bytecode. * ax-gdb.h (trace_string_kludge): Declare. * ax-gdb.c: Include valprint.h and c-lang.h. (trace_string_kludge): New global. (gen_traced_pop): Add string case. (agent_command): Add string case. * tracepoint.h (decode_agent_options): Declare. * tracepoint.c: Include cli-utils.h. (decode_agent_options): New function. (validate_actionline): Call it. (encode_actions_1): Ditto. * target.h (struct target_ops): New method to_supports_string_tracing. (target_supports_string_tracing): New macro. * target.c (update_current_target): Add to_supports_string_tracing. * remote.c (struct remote_state): New field string_tracing. (remote_string_tracing_feature): New function. (remote_protocol_features): New feature tracenz. (remote_supports_string_tracing): New function. (init_remote_ops): Set to_supports_string_tracing. 2011-11-02 Pedro Alves Jan Kratochvil * linux-nat.c: Include cli/cli-utils.h. (enum info_proc_what): New. (linux_nat_info_proc_cmd): Rename to ... (linux_nat_info_proc_cmd_1): ... here. Remove variables argv and all. New parameter what. Initialize cmdline_f, cwd_f, exe_f, mappings_f, status_f and stat_f from WHAT. Throw error on extra parameters. (linux_nat_info_proc_cmd, linux_nat_info_proc_cmd_mappings) (linux_nat_info_proc_cmd_stat, linux_nat_info_proc_cmd_status) (linux_nat_info_proc_cmd_cwd, linux_nat_info_proc_cmd_cmdline) (linux_nat_info_proc_cmd_exe, linux_nat_info_proc_cmd_all): New. (_initialize_linux_nat): New variable info_proc_cmdlist. Install `info proc mappings', `info proc stat`, `info proc status', `info proc cwd', `info proc cmdline', `info proc exe' and `info proc all' as real subcommands of `info proc'. 2011-11-01 Justin Lebar * Makefile.in: (SFILES): Add skip.c. (HFILES_NO_SRCDIR): Add skip.h. (COMMON_OBS): Add skip.o. * skip.h, skip.c: New. * breakpoint.h (set_default_breakpoint): Remove. (get_sal_arch): Declare. * breakpoint.c: Remove default_breakpoint_valid, default_breakpoint_address, default_breakpoint_symtab, default_breakpoint_line, default_breakpoint_pspace variables. (get_sal_arch): Make public. (set_default_breakpoint): Remove. (parse_breakpoint_sals, create_breakpoint, clear_command, decode_line_spec_1): Remove uses of default_breakpoint variables; replaced with function calls into stack.c. * cli/cli-cmds.h: Add cmd_list_element *skiplist. * cli/cli-cmds.c: Add skiplist. (init_cmd_lists): Initialize skiplist. (init_cli_cmds): Fix comment (classes of commands appear in alphabetical order). * infrun.c (handle_inferior_event): Add check that we don't step into a function whose pc is marked for skip. * stack.c: Declare last_displayed_sal_valid, last_displayed_pspace, last_displayed_addr, last_displayed_symtab, last_displayed_line variables. (set_last_displayed_sal): New static function. (print_frame_info): Switch call to set_default_breakpoint to call to set_last_displayed_sal. (clear_last_displayed_sal, last_displayed_sal_is_valid, get_last_displayed_pspace, get_last_displayed_addr, get_last_displayed_symtab, get_last_displayed_line, get_last_displayed_sal): New public functions. * stack.h (clear_last_displayed_sal, last_displayed_sal_is_valid, get_last_displayed_pspace, get_last_displayed_addr, get_last_displayed_symtab, get_last_displayed_line, get_last_displayed_sal): Declare. 2011-11-01 Justin Lebar * MAINTAINERS (Write After Approval): Add myself to the list. 2011-10-29 Yao Qi * infcmd.c (disconnect_command): Call disconnect_tracing. 2011-10-29 Jan Kratochvil Code cleanup. * symtab.c (skip_prologue_sal): Code reformatting. 2011-10-28 Jan Kratochvil PR symtab/13208 * jit.c (jit_register_code): Remove unused variable my_cleanups. Check for NULL from bfd_open_from_target_memory. Fix ownership of NBFD and SAI. 2011-10-28 Pedro Alves * linux-nat.c (linux_nat_filter_event): Remove `options' parameter, and dead code that used it. If we're handling a PTRACE_EVENT_EXEC event, and the thread group leader is no longer in our lwp list, re-add it. (check_zombie_leaders): New. (linux_nat_wait_1): Remove `options' and `pid' locals. Always wait for children with WNOHANG, and always wait for all children. Don't check for no resumed children upfront. Simplify wait loop. Check for zombie thread group leaders after handling all wait statuses. Return TARGET_WAITKIND_NO_RESUMED if there no unwaited-for children left. * infrun.c (fetch_inferior_event): Handle TARGET_WAITKIND_NO_RESUMED. (handle_inferior_event): Handle TARGET_WAITKIND_NO_RESUMED. (normal_stop): Handle TARGET_WAITKIND_NO_RESUMED. * target.h (enum target_waitkind) : New. 2011-10-28 Sterling Augustine * psymtab.c (map_symbol_filenames_psymtab): Call QUIT. * symtab.c (free_completion_list): New function. (do_free_completion_list): Likewise. (default_make_symbol_completion_list_break_on): New variable back_to. Call make_cleanup and discard_cleanups. (make_source_files_completion_list): Likewise. 2011-10-28 Paul Koning * python/lib/gdb/types.py (deep_items): Rename from deepitems. * NEWS: Mention deep_items. 2011-10-28 Alen Skondro * ser-tcp.c [USE_WIN32API] (ETIMEOUT): Don't define if already defined. 2011-10-27 Meador Inge * MAINTAINERS (Write After Approval): Add myself to the list. 2011-10-27 Joel Brobecker * value.h (read_frame_register_value): Add declaration. * findvar.c (read_frame_register_value): New function. (value_from_register): Use read_frame_register_value instead of get_frame_register_value + value_contents_copy to get value contents. 2011-10-27 Doug Evans * cli/cli-cmds.c (source_script_with_search): Pass full path to source_script_from_stream if it may have been found on the search path. * python/py-auto-load.c (source_section_scripts): Pass full path to source_python_script_for_objfile. * python/python.c (source_python_script): Delete stream parameter. All callers updated. (source_python_script_for_objfile): Ditto. * python/python-internal.h (source_python_script_for_objfile): Update. * python/python.h (source_python_script): Update. 2011-10-27 Tom Tromey * ada-lang.h (ada_start_decode_line_1, ada_finish_decode_line_1) (ada_sals_for_line): Remove declarations. 2011-10-27 Kevin Pouget Move unwind reasons to an external .def file * frame.c (frame_stop_reason_string): Rewrite using unwind_stop_reasons.def. * frame.h (enum unwind_stop_reason): Likewise. * python/py-frame.c (gdbpy_initialize_frames): Likewise. (gdbpy_frame_stop_reason_string): Use new enum unwind_stop_reason constants for bound-checking. * unwind_stop_reasons.def: New file. * stack.c (backtrace_command_1): Handle UNWIND_FIRST_ERROR as an alias instead of a distinct value. 2011-10-27 Phil Muldoon PR python/13331 * python/py-function.c (fnpy_call): Check 'args' is not NULL. (convert_values_to_python): Return on Python tuple allocation failure. Return NULL on value conversion error. 2011-10-27 Phil Muldoon * python/py-breakpoint.c (bppy_set_enabled): Use TRY_CATCH. (bppy_set_task): Ditto. (bppy_delete_breakpoint): Ditto. * python/py-symbol.c (gdbpy_lookup_symbol): Ditto. (gdbpy_lookup_global_symbol): Ditto. * python/py-lazy-string.c (stpy_convert_to_value): Ditto. * python/py-frame.c (frapy_is_valid): Ditto. (frame_info_to_frame_object): Ditto. * python/py-type.c (typy_lookup_type): Ditto. (typy_getitem): Ditto. (typy_has_key): Ditto. (typy_richcompare): Use TRY_CATCH. Do not return Py_NE on error. 2011-10-26 Joel Brobecker * gdbarch.h: Regenerate. 2011-10-26 Meador Inge * gdbarch.sh (function_list): Use 'pstring' when printing 'gcore_bfd_target'. * gdbarch.c: Regenerate. 2011-10-26 Ulrich Weigand * regcache.c (registers_changed_ptid): Invalidate thread architecture and frame caches if PTID refers to all threads of a process. 2011-10-26 Ulrich Weigand * spu-tdep.c (spu_catch_start): Pass non-NULL breakpoint ops to create_breakpoint. 2011-10-26 Ulrich Weigand * ppc-sysv-tdep.c (ppc_sysv_use_opencl_abi): New function. (ppc_sysv_abi_push_dummy_call): Use it. (do_ppc_sysv_return_value): Likewise. (ppc64_sysv_abi_push_dummy_call): Likewise. (ppc64_sysv_abi_return_value): Likewise. 2011-10-26 Paul Koning * python/lib/gdb/types.py (deepitems): New function. 2011-10-25 Paul Koning PR python/13327 * python/py-value.c (value_to_value_object): Remove fetching of the value if it was lazy. (valpy_get_is_lazy): New function. (valpy_fetch_lazy): New function. 2011-10-24 Joel Brobecker * ppc-sysv-tdep.c (do_ppc_sysv_return_value): Do not check FUNC_TYPE's calling convention if FUNC_TYPE is not a function. 2011-10-24 Pedro Alves * linux-nat.c (linux_handle_extended_wait): When handling a clone event, in non-stop, if not stopping, make sure the new lwp has last_resume_kind set to resume_continue. Assert that when we're resuming the new lwp, its last_resume_kind is resume_continue. 2011-10-24 Pedro Alves * infrun.c (handle_inferior_event): Don't assume inferior_ptid is already set when marking the event thread as not executing in non-stop mode. 2011-10-24 Pedro Alves * infrun.c (handle_inferior_event): Add debug output for TARGET_WAITKIND_NO_HISTORY. 2011-10-24 Phil Muldoon * NEWS: Move set/show extended-prompt to "New Options". Expand description. Fix typos. 2011-10-24 Phil Muldoon PR python/13310 * python/py-param.c (call_doc_function): Correctly deference on function exit. 2011-10-21 Joel Brobecker * ada-tasks.c (print_ada_task_info): Fix computation of number of tasks displayed in command output. 2011-10-20 Jan Kratochvil Ulrich Weigand * dwarf2-frame-tailcall.c: Include dwarf2-frame.h. (dwarf2_tailcall_prev_register_first): Use dwarf2_frame_cfa. (dwarf2_tailcall_sniffer_first): Remove variable pc_regnum. Replace gdbarch_pc_regnum and frame_unwind_register_unsigned by gdbarch_unwind_pc. 2011-10-20 Cary Coutant * dwarf2read.c (dw2_get_file_names): Move adjustment for type section to... (partial_read_comp_unit_head): ...here. Add is_debug_type_section flag. Adjust all callers. (process_psymtab_comp_unit): Remove adjustment for type section. 2011-10-20 Aleksandar Ristovski * cp-namespace.c (cp_scan_for_anonymous_namespaces): Changed function arguments by adding OBJFILE. Instead of getting objfile from symbol's symtab, use new argument OBJFILE. * cp-support.h (cp_scan_for_anonymous_namespaces): Changed function arguments by adding OBJFILE. * gdb/dwarf2read.c (new_symbol_full): Change call to cp_scan_for_anonymous_namespaces to match new signature. * gdb/stabsread.c (define_symbol): Change call to cp_scan_for_anonymous_namespaces to match new signature. 2011-10-20 Phil Muldoon PR python/13308 PR python/13309 * python/py-breakpoint.c (gdbpy_breakpoints): Fix List reference leak. * python/py-inferior.c (gdbpy_inferiors): Fix List reference leak. Delete unused variables. 2011-10-20 Phil Muldoon PR python/12656 * python/py-frame.c (frapy_read_var): Use const struct *block. * python/py-type.c (typy_lookup_typename): Likewise. (typy_lookup_type): Likewise. (typy_legacy_template_argument): Likewise. (typy_template_argument): Likewise. (gdbpy_lookup_type): Likewise. * python/py-symbol.c (gdbpy_lookup_symbol): Likewise. * python/py-block.c (blpy_block_object): Likewise. (blpy_iter): Likewise. (blpy_get_start): Likewise. (blpy_get_end): Likewise. (blpy_get_function): Likewise. (blpy_get_superblock): Likewise. (set_block): Likewise. (block_to_block_object): Likewise. (block_object_to_block): Likewise. (blpy_is_valid): Likewise. (blpy_get_global_block): New function. (blpy_get_static_block): New function. (blpy_is_global): New function. (blpy_is_static): New function. * blockframe.c (block_innermost_frame): Likewise. * valops.c (value_of_variable): Likewise. * frame.h: Update prototypes. * python/python-internal.h: Likewise. * value.h: Likewise. 2011-10-19 Cary Coutant * dwarf2read.c (create_debug_types_hash_table): Fix size of type_offset field. 2011-10-19 Cary Coutant * dwarf2read.c (peek_abbrev_code): New function. (dw2_get_file_names): Check for dummy compilation units. (create_debug_types_hash_table): Likewise. (process_psymtab_comp_unit): Likewise. (load_partial_comp_unit): Likewise. (load_full_comp_unit): Likewise. 2011-10-18 Aleksandar Ristovski * solib-svr4.c (read_program_header): New variables pt_phdr, pt_phdr_p, initialize them from target PT_PHDR p_vaddr, relocate sect_addr by pt_phdr if PT_PHDR was found. 2011-10-17 Joost van der Sluis * gdbtypes.h: Added TYPE_SAFE_NAME macro to get the name of a type or " when there is no name assigned. * gnu-v3-abi.c (gnuv3_rtti_type): Use TYPE_SAFE_NAME macro to avoid a sigint when no name is assigned. 2011-10-17 Jan Kratochvil Revert: 2011-07-27 Jan Kratochvil * dwarf2expr.c (ctx_no_read_reg): New function. * dwarf2expr.h (ctx_no_read_reg): New declaration. * dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove. (decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New. (decode_locdesc): Replace by a caller of dwarf_expr_eval. 2011-10-16 Doug Evans * NEWS: Document python gdb.printing.register_pretty_printer's new `replace' parameter. 2011-10-14 Keith Seitz PR c++/13225 * eval.c (evaluate_subexp_standard): Do not construct an array of types; pass the value array directly to find_overload_match. * gdbtypes.h (NULL_POINTER_CONVERSION_BADNESS): Declare. (rank_function): Take an array of values instead of types. (rank_one_type): Add struct value * parameter. * gdbtypes.c (NULL_POINTER_CONVERSION_BADNESS): Define. (rank_function): For each argument, pass the argument's value to rank_one_type. (rank_one_type): Add VALUE parameter. If the parameter type is a pointer and the argument type is an integer, return NULL_POINTER_CONVERSION_BADNESS if VALUE is zero. Update all calls to rank_one_type, passing NULL for new VALUE parameter. * valarith.c (value_user_defined_cpp_op): Do not construct an array of types; pass the value array directly to find_overload_match. * valops.c (find_overload_method_list): Take an array of values instead of types. Save the type of OBJP for later use. Update calls to find_oload_champ, and find_oload_champ_namespace. (find_oload_champ_namespace): Take an array of values instead of types. (find_oload_champ_namespace_loop): Likewise. (find_oload_champ): Likewise. (classify_oload_match): Inspect all arguments until INCOMPATIBLE is found. Return the worst badness found otherwise. (compare_parameters): Update call to rank_one_type. * value.h (find_overload_match): Take an array of values instead of types. 2011-10-14 Jan Kratochvil Drop lazy lm_info reading. * solib-svr4.c (struct lm_info): Remove field lm. New fields l_addr_p, l_addr_inferior, l_ld, l_next, l_prev and l_name. (lm_info_read): New function. (lm_addr_from_link_map, lm_dynamic_from_link_map): Remove. (lm_addr_check): Use l_addr_p. No longer use lm_addr_from_link_map and lm_dynamic_from_link_map. (lm_next, lm_prev, lm_name): Remove. (svr4_keep_data_in_core): Use lm_info_read, drop the lm_info entries initialization incl. read_memory. No longer use lm_name. (svr4_free_so): Drop lm_info->lm freeing. (svr4_default_sos): Initialize lminfo with zeroes. Use l_addr_p. Drop explicit lm_addr and lm initialization. (svr4_read_so_list): Use lm_info_read, drop the initailization of fields by hand, incl. read_memory. No longer use lm_next, lm_prev and lm_name. 2011-10-14 Jan Kratochvil Paul Pluzhnikov * defs.h (struct so_list): New forward declaration. (make_cleanup_free_so): New declaration. * solib-svr4.c (ignore_first_link_map_entry): Remove. (svr4_free_so): Move the function here from downwards. Handle NULL so->lm_info. (svr4_free_library_list): New. (svr4_read_so_list): New, moved here code from svr4_current_sos. Use more cleanups. Use new parameter ignore_first instead of ignore_first_link_map_entry. (svr4_current_sos): New variable ignore_first, initialize it. New variable back_to, use it for svr4_free_library_list protection. (svr4_free_so): Remove - move upwards. * utils.c: Include solist.h. (do_free_so, make_cleanup_free_so): New functions. 2011-10-13 Jan Kratochvil Fix internal error regression. * value.c (value_primitive_field): Handle value_optimized_out. Move packed bitfields comment. 2011-10-13 Tom Tromey * python/py-breakpoint.c (gdbpy_breakpoint_deleted): Ensure GIL is always released. 2011-10-13 Tom Tromey * python/py-type.c (typy_has_key): Make 'field' const. 2011-10-13 Luis Machado * remote.c (remote_save_trace_data): Invert comparison. 2011-10-13 Luis Machado * tracepoint.c (trace_save_command): Use filename instead of args when printing. 2011-10-13 Jan Kratochvil * dwarf2read.c (dwarf2_fetch_die_location_block): Initialize .data even if .size is 0. 2011-10-13 Yao Qi PR gdb/12703 * arm-tdep.c (thumb_analyze_prologue): Call thumb_insn_size to check whether insn is a 32-bit Thumb-2 instruction. (thumb_in_function_epilogue_p): Likewise. (thumb_get_next_pc_raw): Likewise. (arm_breakpoint_from_pc): Likewise. 2011-10-12 Jan Kratochvil Fix empty DWARF expressions DATA vs. SIZE conditionals. * dwarf2loc.c (dwarf2_find_location_expression): Clear *LOCEXPR_LENGTH. (dwarf_expr_frame_base_1): Indicate unavailability via zero *LENGTH. (locexpr_tracepoint_var_ref): Check only zero SIZE, not zero DATA. (loclist_read_variable, loclist_tracepoint_var_ref): Do not check for zero DATA. * dwarf2loc.h (struct dwarf2_locexpr_baton): Comment DATA vs. SIZE validity. * dwarf2read.c (struct dwarf_block): Comment DATA validity. (dwarf2_fetch_die_location_block, dwarf2_symbol_mark_computed): Do not clear DATA on zero SIZE. 2011-10-12 Doug Evans * dwarf2read.c (partial_read_comp_unit_head): Set header->offset, header->first_die_offset here. All callers updated. 2011-10-12 Jan Kratochvil Fix compatibility with texinfo versions older than 4.12. * Makefile.in (MAKEINFO): Set to @MAKEINFO@. (MAKEINFOFLAGS, MAKEINFO_EXTRA_FLAGS, MAKEINFO_CMD): New. (MAKEHTMLFLAGS): Use MAKEINFO_CMD. (FLAGS_TO_PASS): Add MAKEINFOFLAGS and MAKEINFO_EXTRA_FLAGS. * configure: Regenerate. * configure.ac (MAKEINFO): Find it, from libiberty/configure.ac. (MAKEINFOFLAGS): Pre-set it to --split-size=5000000. (MAKEINFO_EXTRA_FLAGS): New test for -DHAVE_MAKEINFO_CLICK. 2011-10-12 Gary Benson * breakpoint.h (pc_at_non_inline_function): Declare. * breakpoint.c (is_non_inline_function, pc_at_non_inline_function): New functions. * infrun.c (handle_inferior_event): Don't call skip_inline_frames if the stop is at a location where functions cannot be inlined. 2011-10-12 Pedro Alves * linux-nat.c (stop_and_resume_callback): Don't re-resume LWPs if the core wanted them stopped, or if they now have a pending event to report. (linux_nat_filter_event): New parameter `new_pending_p'. Pass it down to stop_and_resume_callback. (linux_nat_wait_1): Always clear `options' when retrying. Handle having new pending events after calling linux_nat_filter_event. 2011-10-11 Sterling Augustine * dwarf2read.c: Undo inadvertent changes in previous commit. 2011-10-11 Sterling Augustine * dwarf2read.c (partial_die_parent_scope): Rearrange conditional logic. 2011-10-11 Ulrich Weigand * symfile.c (separate_debug_file_exists): Fix condition. 2011-10-11 David S. Miller * regcache.c (regcache_restore): Do not write unavailable regs, mark static. * regcache.h (regcache_restore): Remove declaration. * gdbarch.sh: New field 'long_long_align_bit'. * gdbarch.c, gdbarch.h: Regenerate. * i386-tdep.c (i386_gdbarch_init): Set long_long_align_bit to 32. * jit.c (jit_read_code_entry): Use it to determine correct size offset. 2011-10-11 Jan Kratochvil Revert this part of: 2011-10-09 Jan Kratochvil Support @entry in input expressions. * c-exp.y (ENTRY, unknown_cpp_name): New. (exp: UNKNOWN_CPP_NAME): Change to `exp: unknown_cpp_name'. (unknown_cpp_name: UNKNOWN_CPP_NAME, unknown_cpp_name: ENTRY) (variable: name_not_typename '@' ENTRY, name: ENTRY) (name_not_typename: ENTRY): New. (yylex): Recognize ENTRY. Reimplement @entry in input expressions. * c-exp.y (ENTRY): New. (variable: name_not_typename ENTRY): New. (lex_one_token): Optionally return ENTRY instead of the '@' lex. 2011-10-11 Pedro Alves * linux-nat.c (linux_handle_extended_wait): Always dump both the parent and child's pids as soon as we detect a clone event. Adjust another debug message. 2011-10-11 Pedro Alves * linux-nat.c (linux_lwp_is_zombie): Return early if the LWP is not zombie instead of reading the whole file. 2011-10-11 Jan Kratochvil Fix separate debuginfo warning with "remote:" access. * objfiles.h (struct objfile): New fields crc32 and crc32_p. * symfile.c (get_file_crc): New function with the code moved from ... (separate_debug_file_exists): ... this function, specifically variables buffer and count. New variable verified_as_different, set it. Remove file_crc initialization. Verify also if both files are not the same manually, if needed. 2011-10-11 Yao Qi * arm-tdep.c (arm_get_next_pc_raw): Use read_memory_unsigned_integer to get address. 2011-10-10 Doug Evans * linux-thread-db.c (thread_db_new_objfile): Only try to load libthread_db when we load libpthread or the main symbol file. (thread_db_inferior_created): New function. (_initialize_thread_db): Attach inferior_created observer. * linux-nat.c (linux_child_post_attach): Remove call to check_for_thread_db. (linux_child_post_startup_inferior): Ditto. * objfiles.h (OBJF_MAINLINE): Define. * symfile.c (symbol_file_add_with_addrs_or_offsets): Pass it to allocate_objfile when appropriate. 2011-10-10 Ulrich Weigand PR gdb/13218 * arm-linux-nat.c (os_version, os_major, os_minor, os_release): Remove unused variables. (get_linux_version): Remove function. (_initialize_arm_linux_nat): Do not call it. 2011-10-10 Pedro Alves * linux-nat.c (linux_handle_extended_wait): Don't resume the new new clone lwp if the core asked it to stop. Don't pass on unexpected signals to the new clone; leave them pending instead. 2011-10-10 Pedro Alves * linux-nat.c (resume_lwp): Remove redundant debug output. 2011-10-10 Pedro Alves * linux-nat.c (linux_nat_wait_1): Copy the event lwp's last_resume_kind before clearing it, and use the copy instead to determine whether to report a SIGSTOP as TARGET_SIGNAL_0. Use resume_clear_callback in the non-stop path too. 2011-10-09 Yao Qi * valprint.c (value_check_printable): Add one parameter OPTIONS. Honor OPTIONS and VAL's type. (common_val_print, value_print): Update to pass one more parameter. 2011-10-09 Doug Evans Add new "alias" command. * NEWS: Mention new command. * command.h (valid_user_defined_cmd_name_p): Declare. * defs.h (make_cleanup_dyn_string_delete): Declare. * utils.c: #include "dyn-string.h". (do_dyn_string_delete, make_cleanup_dyn_string_delete): New functions. * cli/cli-cmds.c: #include "dyn-string.h". (argv_to_dyn_string, valid_command_p, alias_command): New functions. (init_cli_cmds): Add new command. * cli/cli-decode.c (valid_user_defined_cmd_name_p): New function. 2011-10-09 Jan Kratochvil Fix compatibility with older GCCs. * dwarf2loc.c (dwarf_expr_reg_to_entry_parameter): Initialize parameter. * stack.c (read_frame_arg): Initialize val_deref. 2011-10-09 Jan Kratochvil Entry values NEWS entries, DWARF disassembly support. * NEWS: New entry values entry. (set print entry-values, show print entry-values) (set debug entry-values, show debug entry-values): New entries. * dwarf2loc.c (disassemble_dwarf_expression): New parameters start and indent. Remove variable start. Move header printing out. Respect INDENT. Support DW_OP_GNU_entry_value. (locexpr_describe_location_1): Move the header printing here, extend the disassemble_dwarf_expression passed parameters. 2011-10-09 Jan Kratochvil Display @entry parameter values even for references. * ada-valprint.c (ada_val_print_1) : Try also coerce_ref_if_computed. * c-valprint.c (c_val_print) : Likewise. * dwarf2expr.c (dwarf_block_to_dwarf_reg_deref): New function. (execute_stack_op) : Add -1 deref_size to the existing push_dwarf_reg_entry_value call. Add new detection calling dwarf_block_to_dwarf_reg_deref. Update the error message. (ctx_no_push_dwarf_reg_entry_value): New parameter deref_size. * dwarf2expr.h (struct dwarf_expr_context_funcs) : Add new parameter deref_size, describe it in the comment. (ctx_no_push_dwarf_reg_entry_value): Add new parameter deref_size. (dwarf_block_to_dwarf_reg_deref): New declaration. * dwarf2loc.c (dwarf_entry_parameter_to_value): Add new parameter deref_size, describe it in the function comment. New variables data_src and size, fetch the alternative block accoring to DEREF_SIZE. (dwarf_expr_push_dwarf_reg_entry_value): Add new parameter deref_size, describe it in the function comment. Fetch the alternative block accoring to DEREF_SIZE. (entry_data_value_coerce_ref, entry_data_value_copy_closure) (entry_data_value_free_closure, entry_data_value_funcs): New. (value_of_dwarf_reg_entry): New variables checked_type, target_type, outer_val, target_val, val and addr. Try to fetch and create also referenced value content. (pieced_value_funcs): NULL value for coerce_ref. (needs_dwarf_reg_entry_value): Add new parameter deref_size. * f-valprint.c (f_val_print) : Try also coerce_ref_if_computed. * opencl-lang.c (opencl_value_funcs): NULL value for coerce_ref. * p-valprint.c (pascal_val_print) : Likewise. * stack.c (read_frame_arg): Compare also dereferenced values. * value.c (value_computed_funcs): Make the parameter v const, use value_lval_const for it. (value_lval_const, coerce_ref_if_computed): New function. (coerce_ref): New variable retval. Call also coerce_ref_if_computed. * value.h (struct lval_funcs): New field coerce_ref. (value_computed_funcs): Make the parameter v const. (value_lval_const, coerce_ref_if_computed): New declarations. 2011-10-09 Jan Kratochvil Support @entry in input expressions. * c-exp.y (ENTRY, unknown_cpp_name): New. (exp: UNKNOWN_CPP_NAME): Change to `exp: unknown_cpp_name'. (unknown_cpp_name: UNKNOWN_CPP_NAME, unknown_cpp_name: ENTRY) (variable: name_not_typename '@' ENTRY, name: ENTRY) (name_not_typename: ENTRY): New. (yylex): Recognize ENTRY. * eval.c (evaluate_subexp_standard): Support also OP_VAR_ENTRY_VALUE. * expprint.c (print_subexp_standard, dump_subexp_body_standard): Likewise. * parse.c (operator_length_standard): Likewise. * std-operator.def: New operator OP_VAR_ENTRY_VALUE. 2011-10-09 Jan Kratochvil Display referenced values in backtraces. * printcmd.c (print_variable_and_value): Set OPTS.DEREF_REF to 1. * stack.c (print_frame_arg): Likewise. 2011-10-09 Jan Kratochvil Make some lval_funcs methods to default on NULL. * valops.c (value_fetch_lazy): Check if lval_computed read method is NULL. (value_assign): Check if lval_computed write method is NULL. * value.h (struct lval_funcs): Comment NULL values for read and write methods. 2011-10-09 Jan Kratochvil Display @entry parameter values (without references). * dwarf2expr.c (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset): New functions. * dwarf2expr.h (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset): New declarations. * dwarf2loc.c (dwarf2_find_location_expression): Support location list entry record. (dwarf_entry_parameter_to_value, value_of_dwarf_reg_entry) (value_of_dwarf_block_entry, locexpr_read_variable_at_entry): New functions. (dwarf2_locexpr_funcs): Install locexpr_read_variable_at_entry. (loclist_read_variable_at_entry): New function. (dwarf2_loclist_funcs): Install loclist_read_variable_at_entry. * dwarf2read.c (read_call_site_scope): Support also DW_OP_fbreg in DW_AT_location, call dwarf_block_to_sp_offset for it. * frame.h (print_entry_values_no, print_entry_values_only) (print_entry_values_preferred, print_entry_values_if_needed) (print_entry_values_both, print_entry_values_compact) (print_entry_values_default, print_entry_values): New declarations. (struct frame_arg): New field entry_kind. (read_frame_arg): New parameter entryargp. * mi/mi-cmd-stack.c (list_arg_or_local): New gdb_assert for arg->entry_kind. Optionally print the `@entry' suffix. (list_args_or_locals): New variable entryarg, initialize it. Initialize also entry_kind of arg and entryarg. Conditionalize list_arg_or_local for arg, add list_arg_or_local for entryarg. Call xfree for entryarg.error. * stack.c (print_entry_values_no, print_entry_values_only) (print_entry_values_preferred, print_entry_values_if_needed) (print_entry_values_both, print_entry_values_compact) (print_entry_values_default, print_entry_values_choices) (print_entry_values): New variables. (print_frame_arg): New gdb_assert for arg->entry_kind. Optionally print the `@entry' suffix, possibly in combination for print_entry_values_compact. (read_frame_arg): New parameter entryargp, new variables entryval, entryval_error and val_equal. Read in also entryargp, respect print_entry_values, compare the values using val_equal, fill in also argp->entry_kind (together with entryargp->entry_kind). (print_frame_args): New variable entryarg, initialize it. Conditionalize print_frame_arg for arg, add print_frame_arg for entryarg. Call xfree for entryarg.error. (_initialize_stack): Call add_setshow_enum_cmd for `entry-values'. * symtab.h (struct symbol_computed_ops): New field read_variable_at_entry. 2011-10-09 Jan Kratochvil Code reshuffle. * frame.h (struct frame_arg): New definition. (read_frame_arg): New declaration. * mi/mi-cmd-stack.c (list_arg_or_local): New functiom from ... (list_args_or_locals): ... the code here. New variable arg, call read_frame_arg and list_arg_or_local with it. Unify the PRINT_SIMPLE_VALUES and PRINT_ALL_VALUES cases. Call xfree for arg.error. * stack.c (print_frame_arg): New functiom from the code of print_frame_args. (read_frame_arg): New function. (print_frame_args): Remove variable val. New variable arg, call read_frame_arg and print_frame_arg with it. Call xfree for arg.error. 2011-10-09 Jan Kratochvil Protect entry values against self tail calls. * dwarf2loc.c (VEC (CORE_ADDR), func_verify_no_selftailcall): New. (dwarf_expr_dwarf_reg_entry_value): Call func_verify_no_selftailcall. 2011-10-09 Jan Kratochvil Recognize virtual tail call frames. * Makefile.in (SFILES): Add dwarf2-frame-tailcall.c. (HFILES_NO_SRCDIR): Add dwarf2-frame-tailcall.h. (COMMON_OBS): Add dwarf2-frame-tailcall.o. * dwarf2-frame-tailcall.c: New file. * dwarf2-frame-tailcall.h: New file. * dwarf2-frame.c: Include dwarf2-frame-tailcall.h. (execute_cfa_program): New function comment. Return INSN_PTR. Reset REGS.PREV only after CIE execution. (struct dwarf2_frame_cache): New field tailcall_cache. (dwarf2_frame_cache): New variables entry_pc, entry_cfa_sp_offset, entry_cfa_sp_offset_p and instr. Execute FDE instructions in two parts, try to find entry_cfa_sp_offset. Call dwarf2_tailcall_sniffer_first. (dwarf2_frame_prev_register): Call dwarf2_tailcall_prev_register_first when appropriate. (dwarf2_frame_dealloc_cache): New function. (dwarf2_frame_sniffer): Preinitialize cache by dwarf2_frame_cache. (dwarf2_frame_unwind): Install dwarf2_frame_dealloc_cache. (dwarf2_signal_frame_unwind): Do not install dwarf2_frame_dealloc_cache. (dwarf2_append_unwinders): Add dwarf2_tailcall_frame_unwind. (dwarf2_frame_cfa): Support also dwarf2_tailcall_frame_unwind. * dwarf2loc.c (func_addr_to_tail_call_list) (tailcall_dump, call_sitep, VEC (call_sitep), chain_candidate) (call_site_find_chain_1, call_site_find_chain): New. * dwarf2loc.h (struct call_site_chain): New. (call_site_find_chain): New declaration. * frame.c (get_frame_address_in_block): Support also TAILCALL_FRAME. * frame.h (enum frame_type): New entry TAILCALL_FRAME. * python/py-frame.c (gdbpy_initialize_frames): Add TAILCALL_FRAME. * stack.c (frame_info): Support also TAILCALL_FRAME. 2011-10-09 Jan Kratochvil Tail call sites reader implementation. * dwarf2read.c (read_call_site_scope): Recognize DW_AT_GNU_tail_call, fill in TYPE_TAIL_CALL_LIST. * gdbtypes.h (struct func_type): New field tail_call_list. (struct call_site): New field tail_call_next. (TYPE_TAIL_CALL_LIST): New definition. 2011-10-09 Jan Kratochvil Implement basic support for DW_TAG_GNU_call_site. * block.c: Include gdbtypes.h and exceptions.h. (call_site_for_pc): New function. * block.h (call_site_for_pc): New declaration. * defs.h: Include hashtab.h. (make_cleanup_htab_delete, core_addr_hash, core_addr_eq): New declarations. * dwarf2-frame.c (dwarf2_frame_ctx_funcs): Install ctx_no_push_dwarf_reg_entry_value. * dwarf2expr.c (read_uleb128, read_sleb128): Support R as NULL. (dwarf_block_to_dwarf_reg): New function. (execute_stack_op) : Implement it. (ctx_no_push_dwarf_reg_entry_value): New function. * dwarf2expr.h (struct dwarf_expr_context_funcs): New field push_dwarf_reg_entry_value. (ctx_no_push_dwarf_reg_entry_value, dwarf_block_to_dwarf_reg): New declarations. * dwarf2loc.c: Include gdbcmd.h. (dwarf_expr_ctx_funcs): New forward declaration. (entry_values_debug, show_entry_values_debug, call_site_to_target_addr) (dwarf_expr_reg_to_entry_parameter) (dwarf_expr_push_dwarf_reg_entry_value): New. (dwarf_expr_ctx_funcs): Install dwarf_expr_push_dwarf_reg_entry_value. (dwarf2_evaluate_loc_desc_full): Handle NO_ENTRY_VALUE_ERROR. (needs_dwarf_reg_entry_value): New function. (needs_frame_ctx_funcs): Install it. (_initialize_dwarf2loc): New function. * dwarf2loc.h (entry_values_debug): New declaration. * dwarf2read.c (struct dwarf2_cu): New field call_site_htab. (read_call_site_scope): New forward declaration. (process_full_comp_unit): Copy call_site_htab. (process_die): Support DW_TAG_GNU_call_site. (read_call_site_scope): New function. (dwarf2_get_pc_bounds): Support NULL HIGHPC. (dwarf_tag_name): Support DW_TAG_GNU_call_site. (cleanup_htab): Delete. (write_psymtabs_to_index): Use make_cleanup_htab_delete instead of it. * exceptions.h (enum errors): New NO_ENTRY_VALUE_ERROR. * gdb-gdb.py (StructMainTypePrettyPrinter): Support FIELD_LOC_KIND_DWARF_BLOCK. * gdbtypes.h (enum field_loc_kind): New entry FIELD_LOC_KIND_DWARF_BLOCK. (struct main_type): New loc entry dwarf_block. (struct call_site, FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK) (TYPE_FIELD_DWARF_BLOCK): New. * python/py-type.c: Include dwarf2loc.h. (check_types_equal): Support FIELD_LOC_KIND_DWARF_BLOCK. New internal_error call on unknown FIELD_LOC_KIND. * symtab.h (struct symtab): New field call_site_htab. * utils.c (do_htab_delete_cleanup, make_cleanup_htab_delete) (core_addr_hash, core_addr_eq): New functions. 2011-10-09 Jan Kratochvil Code reshuffle. * gdb-gdb.py (StructMainTypePrettyPrinter): Change TYPE_SPECIFIC_CALLING_CONVENTION to TYPE_SPECIFIC_FUNC. Move calling_convention under func_stuff there. * gdbtypes.c (make_function_type): Call INIT_FUNC_SPECIFIC. (init_type) : Likewise. (recursive_dump_type): Change TYPE_SPECIFIC_CALLING_CONVENTION to TYPE_SPECIFIC_FUNC. New comment for tail_call_list. * gdbtypes.h (enum type_specific_kind): Change TYPE_SPECIFIC_CALLING_CONVENTION to TYPE_SPECIFIC_FUNC. (struct main_type) : Change calling_convention to func_stuff. Move calling_convention to ... (struct func_type): ... this new struct. (INIT_FUNC_SPECIFIC): New #define. (TYPE_CALLING_CONVENTION): Change calling_convention to func_stuff. 2011-10-09 Jan Kratochvil Fix DW_OP_GNU_implicit_pointer for DWARF32 v3+ on 64-bit arches. * dwarf2-frame.c (execute_stack_op): Initialize ctx->ref_addr_size. * dwarf2expr.c (execute_stack_op) : Use ctx->ref_addr_size. Handle its invalid value. * dwarf2expr.h (struct dwarf_expr_context): New field ref_addr_size. * dwarf2loc.c (dwarf2_evaluate_loc_desc_full) (dwarf2_loc_desc_needs_frame): Initialize ctx->ref_addr_size. * dwarf2loc.h (dwarf2_per_cu_ref_addr_size): New declaration. * dwarf2read.c (decode_locdesc): Initialize ctx->ref_addr_size. (dwarf2_per_cu_ref_addr_size): New function. 2011-10-09 Jan Kratochvil Code cleanup. * dwarf2read.c (per_cu_header_read_in): New function. (dwarf2_per_cu_addr_size, dwarf2_per_cu_offset_size): Use it, with new variables cu_header_local and cu_headerp. 2011-10-09 Jan Kratochvil Fix initial language detection with -readnow. * dwarf2read.c (dw2_find_symbol_file): Handle OBJF_READNOW case. * symfile.h (struct quick_symbol_functions): State find_symbol_file searches only for global symbols. 2011-10-09 Jan Kratochvil Fix printed anonymous struct name. * dwarf2read.c (fixup_partial_die): Handle for anonymous structs also DW_TAG_interface_type. Strip for anonymous structs any prefixes. (anonymous_struct_prefix): New function. (determine_prefix): New variables retval. Call anonymous_struct_prefix. (dwarf2_name): Strip for anonymous structs any prefixes. 2011-10-07 Doug Evans * python/lib/gdb/printing.py (register_pretty_printer): New argument `replace'. * python/lib/gdb/printing.py: Whitespace cleanup. * python/py-value.c (valpy_call): Initialize ftype to avoid compiler warning. 2011-10-07 Pedro Alves * linux-nat.h (ALL_LWPS): Remove the ptid parameter. * amd64-linux-nat.c (amd64_linux_dr_set_control) (amd64_linux_dr_set_addr, amd64_linux_dr_unset_status): Adjust. * arm-linux-nat.c (arm_linux_insert_hw_breakpoint) (arm_linux_remove_hw_breakpoint, arm_linux_insert_watchpoint) (arm_linux_remove_watchpoint): Adjust. * i386-linux-nat.c (i386_linux_dr_set_control) (i386_linux_dr_set_addr, i386_linux_dr_unset_status): Adjust. * ia64-linux-nat.c (ia64_linux_insert_watchpoint) (ia64_linux_remove_watchpoint): Adjust. * mips-linux-nat.c (write_watchpoint_regs): Adjust. * ppc-linux-nat.c (ppc_linux_insert_hw_breakpoint) (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint) (ppc_linux_insert_mask_watchpoint) (ppc_linux_remove_mask_watchpoint, ppc_linux_insert_watchpoint) (ppc_linux_remove_watchpoint): Adjust. * s390-nat.c (s390_insert_watchpoint, s390_remove_watchpoint): Adjust. 2011-10-07 Corinna Vinschen * windows-nat.c: Include wchar.h to avoid compiler warnings. (clear_win32_environment): New function for Cygwin to clear out Win32 environment. (windows_create_inferior): Prepare new environment from in_env for Cygwin, too. 2011-10-07 Phil Muldoon PR python/13264 * python/py-value.c (valpy_call): Check that arguments are a tuple. (is_intlike): Remove call to CHECK_TYPEDEF. (valpy_nonzero): Catch GDB exceptions. (valpy_absolute): Ditto. (valpy_lazy_string): Ditto. (valpy_call): Ditto. (valpy_get_is_optimized_out): Ditto. (valpy_long): Ditto. (valpy_float): Ditto. (valpy_int): Call CHECK_TYPEDEF. Catch GDB exceptions. (valpy_richcompare): Ditto. 2011-10-07 Ulrich Weigand * inferior.h (disable_randomization): Declare. * infrun.c (disable_randomization): New global variable. (show_disable_randomization): New function. (set_disable_randomization): Likewise. (_initialize_infrun): Install set/show disable-randomization commands. * linux-nat.c (disable_randomization): Remove. (show_disable_randomization): Likewise. (set_disable_randomization): Likewise. (_initialize_linux_nat): No longer install set/show disable-randomization commands here. (linux_nat_supports_disable_randomization): New function. (linux_nat_add_target): Install it. * remote.c (PACKET_QDisableRandomization): New enum value. (remote_protocol_packets): Support QDisableRandomization. (_initialize_remote): Likewise. (remote_supports_disable_randomization): New function. (init_remote_ops): Install it. (extended_remote_supports_disable_randomization): New function. (init_extended_remote_ops): Install it. (extended_remote_disable_randomization): New function. (extended_remote_create_inferior_1): Call it. * target.h (struct target_ops): Add to_supports_disable_randomization. (target_supports_disable_randomization): Add prototype. * target.c (target_supports_disable_randomization): New function. (find_default_supports_disable_randomization): Likewise. (init_dummy_target): Install it. 2011-10-07 Kevin Pouget Allow Python notification of new object-file loadings. * Makefile.in (SUBDIR_PYTHON_SRCS): Add py-newobjfilevent.c. (SUBDIR_PYTHON_OBS): Add py-newobjfileevent.o. Add build rule for this file. * python/py-event.h (emit_new_objfile_event): New prototype. (newobjfile): New Python event emitter. * python/py-evts.c (gdbpy_initialize_py_events): Add new_objfile to Python event registry. * python/py-inferior.c: Include objfiles.h (python_new_objfile): New function. (gdbpy_initialize_inferior): Add python_new_objfile to the new objfile observers. * python/py-newobjfileevent.c: New file. * python-internal.h (gdbpy_initialize_new_objfile_event): New prototype. * python/python.c (_initialize_python): Add gdbpy_initialize_new_objfile_event call. * NEWS: Add item for new Python event "gdb.newobjfile" 2011-10-05 Tristan Gingold * ada-tasks.c (read_atcb): Make ravenscar_task_name static. Extract the ravenscar task name from the symbol for the atcb. 2011-10-04 Paul Koning * python/py-type.c (typy_make_iter): Add forward declaration. (typy_fields_items): Use the gdb.Type iterator. 2011-10-04 Paul Koning * NEWS: Add entry for Python gdb.Type mapping methods. 2011-10-04 Kevin Pouget PR python/12691: Add the inferior to Python exited event * python/py-exitedevent.c (create_exited_event_object): Add inferior to exited_event. * python/py-event.h (emit_exited_event): Likewise * python/-inferior.c (python_inferior_exit): Likewise 2011-10-03 Joel Brobecker * ada-tasks.c (print_ada_task_info): Add "thread-id" field in output of -ada-task-info GDB/MI command. 2011-10-03 Joel Brobecker * ada-lang.h (struct inferior): Declare. (print_ada_task_info): Add declaration. * ada-tasks.c (print_ada_task_info): Make non-static. * mi/mi-cmds.c (mi_cmds): Add "ada-task-info". * mi/mi-cmds.h (mi_cmd_ada_task_info): Add declaration. * mi/mi-main.c: #include "ada-lang.h". (mi_cmd_list_features): Add "ada-task-info" to the list of supported features. (mi_cmd_ada_task_info): New function. 2011-10-03 Joel Brobecker * python/python.c (python_run_simple_file): New function. (source_python_script, source_python_script_for_objfile): Replace call to PyRun_SimpleFile by call to python_run_simple_file. 2011-10-03 Paul Koning * python/py-value.c (valpy_get_address): Use Py_XINCREF. (value_to_value_object): Fetch value if it was lazy. 2011-10-02 Jan Kratochvil Code cleanup. * solib-svr4.c (svr4_default_sos): Remove variables head and link_ptr. Rearrange the code for it. 2011-10-02 Joel Brobecker * breakpoint.c (bkpt_print_recreate): Add call to print_recreate_thread. 2011-09-29 Mike Frysinger * common/linux-ptrace.h (PTRACE_GETFDPIC, PTRACE_GETFDPIC_EXEC, PTRACE_GETFDPIC_INTERP): Define. 2011-09-28 Yao Qi * symfile.c (add_symbol_file_command): Update message on usage. 2011-09-28 Paul Koning * python/py-type.c (make_fielditem, typy_field_names, typy_items) (typy_length, typy_get, typy_has_key, typy_make_iter) (typy_iterkeys, typy_iteritems, typy_itervalues, typy_iter) (typy_iterator_iter, typy_iterator_iternext) (typy_iterator_dealloc): New functions to implement standard Python mapping methods on gdb.Type object. (gdb.TypeIterator): New Python type. * python/python-internal.h (gdbpy_iter_kind): New enum. 2011-09-28 David S. Miller * sparc-tdep.h (SPARC_F2_REGNUM, SPARC_F3_REGNUM, SPARC_F4_REGNUM, SPARC_F5_REGNUM, SPARC_F6_REGNUM, SPARC_F7_REGNUM): New enums. * sparc-tdep.c (sparc_complex_floating_p): New function. (sparc32_store_arguments): Handle complex floats. (sparc32_extract_return_value): Likewise. (sparc32_store_return_value): Likewise. (sparc32_stabs_argument_has_addr): Likewise. * sparc64-tdep.c (sparc64_complex_floating_p): New function. (sparc64_store_floating_fields): Handle complex floats. (sparc64_store_arguments): Likewise. (sparc64_store_return_value): Likewise. 2011-09-28 Eli Zaretskii * windows-nat.c (env_sort) [!__CYGWIN__]: Function restored from before the change on 2006-12-09. (windows_create_inferior) [!__CYGWIN__]: Restore code that generates the environment block for CreateProcessA, modulo the Cygwin-specific parts that are not needed here. 2011-09-27 Tristan Gingold * target.h (enum target_object): Add TARGET_OBJECT_DARWIN_DYLD_INFO. * solib-darwin.c (DYLD_VERSION_MAX): Update number. (darwin_solib_get_all_image_info_addr_at_init): New function. (darwin_solib_read_all_image_info_addr): Likewise. (darwin_solib_create_inferior_hook): Use the above two functions. * darwin-nat.c (darwin_execvp): Renames retval to res. (darwin_read_write_inferior): Update comment. (darwin_read_dyld_info): New function. (darwin_xfer_partial): Handle DYLD_INFO. 2011-09-27 Stan Shebs Add return address collection for tracepoints. * tracepoint.c (encode_actions_1): Add case for $_ret. (validate_actionline): Check for $_ret. (trace_dump_actions): Ditto. * ax-gdb.h (gen_trace_for_return_address): Declare. * ax-gdb.c: Include arch-utils.h. (gen_trace_for_return_address): New function. (agent_command): Add return address special case. * amd64-tdep.c: Include ax.h and ax-gdb.h. (amd64_gen_return_address): New function. (amd64_init_abi): Call it. * i386-tdep.c: Include ax.h and ax-gdb.h. (i386_gen_return_address): New function. (i386_init_abi): Call it. * arch-utils.h (default_gen_return_address): Declare. * arch-utils.c (default_gen_return_address): New function. * gdbarch.sh (gen_return_address): New method. * gdbarch.h, gdbarch.c: Regenerate. 2011-09-23 Joseph Myers PR gdb/13079 * i386-tdep.c (i386_frame_align): New. (i386_gdbarch_init): Use i386_frame_align. 2011-09-23 Yao Qi * i386-linux-nat.c (i386_linux_resume): Use read_memory_unsigned_integer to get address. 2011-09-22 Tristan Gingold * fork-child.c (fork_inferior): Add exec_fun parameter. Call exec_fun or execvp. * inferior.h: Adjust prototype. * gnu-nat.c (gnu_create_inferior): Adjust fork_inferior call. * inf-ttrace.c (inf_ttrace_create_inferior): Ditto. * inf-ptrace.c (inf_ptrace_create_inferior): Ditto. * procfs.c (procfs_create_inferior): Ditto. * darwin-nat.c (darwin_execvp): New function. (darwin_create_inferior): Use it. 2011-09-22 Yao Qi * infrun.c (context_switch): Print debug message when switching to a different thread. 2011-09-21 Ulrich Weigand * s390-tdep.c (s390_function_arg_pass_by_reference): Handle complex and vector types. (s390_return_value_convention): Likewise. (s390_value_from_register): Call check_typedef. (extend_simple_arg): Likewise. (alignment_of): Likewise. (s390_push_dummy_call): Likewise. (s390_return_value): Likewise. 2011-09-21 Joseph Myers * event-top.c (async_disconnect): If an exception is thrown from quit_cover, call pop_all_targets. Use TRY_CATCH instead of catch_errors. * top.c (quit_cover): Return void and take no arguments. * top.h (quit_cover): Update prototype. 2011-09-20 Joseph Myers * mi/mi-main.c (mi_load_progress): Restore saved_uiout value to current_uiout, not uiout. 2011-09-19 Doug Evans * python/py-auto-load.c (source_section_scripts): Fix file descriptor leak. * python/python.c (source_python_script_for_objfile): Tweak comments. 2011-09-18 Yao Qi Ulrich Weigand Support displaced stepping for Thumb 16-bit insns. * arm-tdep.c (THUMB_NOP) Define. (thumb_copy_unmodified_16bit): New. (thumb_copy_b, thumb_copy_bx_blx_reg): New. (thumb_copy_alu_reg): New. (arm_copy_svc): Move some common code to ... (install_svc): ... here. New. (thumb_copy_svc): New. (install_pc_relative): New. (thumb_copy_pc_relative_16bit): New. (thumb_decode_pc_relative_16bit): New. (thumb_copy_16bit_ldr_literal): New. (thumb_copy_cbnz_cbz): New. (cleanup_pop_pc_16bit_all): New. (thumb_copy_pop_pc_16bit): New. (thumb_process_displaced_16bit_insn): New. (thumb_process_displaced_32bit_insn): New. (thumb_process_displaced_insn): process thumb instruction. Support displaced stepping for Thumb 32-bit insns. * arm-tdep.c (thumb_copy_unmodified_32bit): New. (thumb2_copy_preload): New. (thumb2_copy_copro_load_store): New. (thumb2_copy_b_bl_blx): New. (thumb2_copy_alu_imm): New. (thumb2_copy_load_reg_imm): New. (thumb2_copy_load_literal): New (thumb2_copy_block_xfer): New. (thumb_32bit_copy_undef): New. (thumb_32bit_copy_unpred): New. (thumb2_decode_ext_reg_ld_st): New. (thumb2_decode_svc_copro): New. (decode_thumb_32bit_store_single_data_item): New. (thumb_copy_pc_relative_32bit): New. (thumb_decode_pc_relative_32bit): New. (decode_thumb_32bit_ld_mem_hints): New. (thumb2_copy_table_branch): New (thumb_process_displaced_32bit_insn): Process Thumb 32-bit instructions. 2011-09-18 Yao Qi * arm-tdep.c (install_copro_load_store): PC is set 4-byte aligned. (install_b_bl_blx): Likewise. 2011-09-17 Yao Qi * arm-tdep.c (install_ldr_str_ldrb_strb): Renamed to ... (install_load_store): ... this. New. Change parameter BYTE to SIZE. (arm_copy_ldr_str_ldrb_strb): Update caller. (arm_decode_ld_st_word_ubyte): Update caller. 2011-09-17 Yao Qi * infrun.c (displaced_step_fixup): Move some code ... (displaced_step_restore): ... here. New function. (handle_inferior_event): Cleanup displaced stepping state for both child and parent when get forked or vforked event. * regcache.c (get_thread_arch_aspace_regcache): New function. get_thread_arch_regcache (): Call it. 2011-09-16 Joel Brobecker * ada-tasks.c (print_ada_task_info): New function, merging short_task_info and info_tasks together. Reimplement using ui-out instead of printing to stdout directly. Move the code building and checking the task list here, instead of leaving it in info_tasks_command. (info_task): Move the code building and checking the task list here, instead of leaving it in info_tasks_command. (info_tasks_command): Delete code building and checking the task list - moved elsewhere. Update calls to info_tasks and info_task. 2011-09-16 Joel Brobecker * ada-tasks.c (info_task): Delete parameter `from_tty'. 2011-09-16 Joel Brobecker * ada-tasks.c (info_tasks): Delete parameter `from_tty'. 2011-09-16 Joel Brobecker * ada-lang.h (ada_build_task_list): Remove parameter `warn_if_null'. * ada-tasks.c (ada_build_task_list): Remove parameter `warn_if_null'. Adjust implementation and documentation. (valid_task_id, ada_get_environment_task) iterate_over_live_ada_tasks): Adjust call to ada_build_task_list. (info_tasks_command): Adjust implementation. (task_command): Likewise. * ravenscar-thread.c (ravenscar_find_new_threads): Fix call to ada_build_task_list. 2011-09-16 Joel Brobecker * ada-tasks.c (ada_tasks_check_symbol_table, task_list): Delete. (enum ada_known_tasks_kind, struct ada_tasks_inferior_data): New. (ada_tasks_inferior_data_handle): New static global. (get_ada_tasks_inferior_data): New function. (ada_get_task_number, get_task_number_from_id, valid_task_id) (ada_get_environment_task, iterate_over_live_ada_tasks) (add_ada_task, read_known_tasks_array, read_known_tasks_list): Adjust. (ada_set_current_inferior_known_tasks_addr): New function. (read_known_tasks, ada_build_task_list, short_task_info) (info_tasks, info_task, info_tasks_command, task_command_1) (task_command, ada_task_list_changed): Adjust. (ada_tasks_invalidate_inferior_data): New function. (ada_normal_stop_observer, ada_new_objfile_observer): Adjust. (_initialize_tasks): Set ada_tasks_inferior_data_handle. * ada-lang.h (struct inferior): Add declaration. (ada_task_list_changed): Update profile. * remote-wtx-pd.c: #include "inferior.h". (switch_to_pd_internal): Update call to ada_task_list_changed. 2011-09-16 Joel Brobecker * ada-tasks.c: #include "progspace.h" and "objfiles.h". (atcb_type, atcb_common_type, atcb_ll_type, atcb_call_type) (atcb_fieldno): Delete these static globals. (struct ada_tasks_pspace_data): New struct. (ada_tasks_pspace_data_handle): New static global. (get_ada_tasks_pspace_data): New function. (ada_tasks_invalidate_pspace_data): New function. (get_tcb_types_info, ptid_from_atcb_common, read_atcb) (read_known_tasks_list, ada_new_objfile_observer): Adjust. (_initialize_tasks): Create this module's per-progspace data handle. 2011-09-16 Joel Brobecker * ada-tasks.c (struct atcb_fieldnos): Renames struct tcb_fieldnos. 2011-09-16 Tristan Gingold * fork-child.c (fork_inferior): Update comment. Use alloca instead of xmalloc for argv. Move len and shell_command declarations in the block where they are used. Only call execvp. Factorize failure code. 2011-09-16 Abhijit Halder Code cleanup. * parse.c (write_exp_elt): Change argument to pass a pointer of union `exp_element' instead of an element of the same and make the function static. (write_exp_elt_opcode, write_exp_elt_sym, write_exp_elt_block) (write_exp_elt_objfile, write_exp_elt_longcst, write_exp_elt_dblcst) (write_exp_elt_decfloatcst, write_exp_elt_type, write_exp_elt_intern): Change argument of `write_exp_elt' function call. Remove extra spaces from comments. * parser-defs.h (write_exp_elt): Remove prototype. 2011-09-15 Paul Koning * python/py-cmd.c (gdbpy_string_to_argv): Decrement reference count of item appended to list. * python/py-type.c (typy_fields): Likewise. 2011-09-15 Paul Koning * MAINTAINERS (Write After Approval): Add myself to the list. 2011-09-15 Kevin Pouget PR threads/12628 * linux-fork.c (checkpoint_command): Disallow checkpointing of processes with multiple threads. (inf_has_multiple_thread_cb): New function. (inf_has_multiple_threads): New function. 2011-09-15 Kevin Pouget PR Python/12692 Add gdb.selected_inferior() to Python interface. * python/py-inferior.c (GdbMethods): New Python method definition. 2011-09-15 Kevin Pouget Handle multiple breakpoint hits in Python interface: * python/py-bpevent.c (create_breakpoint_event_object): Rename C/Python variable to breakpoints. * python/py-stopevent.c (emit_stop_event): Return a Python tuple of bps instead of single breakpoint. Fix some space typos. * python/py-stopevent.c (create_breakpoint_event_object): Rename variable to breakpoints. 2011-09-15 Kevin Pouget * breakpoint.c (describe_other_breakpoints): Do not write 'duplicate' note if the breakpoint is internal. 2011-09-15 Kevin Pouget * MAINTAINERS (Write After Approval): Add myself to the list 2011-09-14 Pedro Alves * infrun.c (prepare_for_detach, wait_for_inferior) (fetch_inferior_event): Don't flush the register cache. * remote.c (struct stop_reply) : Add comment. 2011-09-13 Jan Kratochvil Remove excessive DWARF expressions memory duplication. * dwarf2loc.c (per_cu_dwarf_call): Remove variable back_to and its use for block.data. (indirect_pieced_value): Remove variable result. Remove variable back_to and its use for baton.data. (dwarf2_compile_expr_to_ax): Remove variable back_to and its use for block.data. * dwarf2read.c (dwarf2_fetch_die_location_block): Remove xmemdup. Update the function comment. 2011-09-13 Pedro Alves * inferior.h (ALL_INFERIORS): New. * linux-thread-db.c (thread_db_find_new_threads_2): Remove check for a stopped thread. (thread_db_find_new_threads): Look for threads in all inferiors. 2011-09-13 Pedro Alves * breakpoint.c (update_watchpoint): Handle the case of the watchpoint to update not being in the breakpoint list yet. (hw_watchpoint_use_count): New, factored out from hw_watchpoint_used_count. (hw_watchpoint_used_count): Rename to ... (hw_watchpoint_used_count_others): ... this. Add `except' parameter. Don't count resources of `except'. Use hw_watchpoint_use_count. 2011-09-13 Pedro Alves * gdbthread.h (enum thread_state): Moved here. (struct thread_info): Rename `executing_' field to `executing' and `state_' to `state'. * thread.c (enum thread_state): Moved to gdbthread.h. (new_thread, add_thread_silent, delete_thread_1) (any_live_thread_of_process, thread_alive, set_running) (set_running, is_thread_state, any_running, is_executing) (set_executing, finish_thread_state, print_thread_info) (do_captured_thread_select): Adjust. 2011-09-13 Jan Kratochvil Fix compatibility with gcc < 4.3 and non-gcc compilers. * amd64-tdep.c (amd64_skip_xmm_prologue): Convert 0b constants. 2011-09-12 Pedro Alves Matt Rice PR gdb/13175 * interps.c (struct interp) : Delete field. (interp_new): Remove the data and uiout parameters and adjust. (interp_set): Only set the current_uiout from the interpreter's uiout after initializing the interpreter. Adjust call to init_proc. (interp_ui_out): Adjust to call procs->ui_out_proc. (interp_data, interp_name): New. * interps.h (interp_init_ftype): Add `self' parameter. (interp_ui_out_ftype): New typedef. (struct interp_procs) : New method pointer. (interp_new): Remove the data and uiout parameters. (interp_data, interp_name): Declare. * tui/tui-interp.c (tui_init): Adjust prototype. (tui_ui_out): New. (_initialize_tui_interp): Install tui_ui_out. Don't instanciate tui_out here. Adjust call to interp_new. * tui/tui-io.c (tui_initialize_io): Don't set current_uiout here. * cli/cli-interp.c (cli_interpreter_init): Adjust prototype. (cli_ui_out): New. (_initialize_cli_interp): Install it. Adjust call to interp_new. * mi/mi-common.h (struct mi_interp) : New field. * mi/mi-interp.c (mi_interpreter_init): Adjust prototype. Initialize mi->uiout depending on the mi_version as extracted from the interpreter's name. (mi_ui_out): New. (_initialize_mi_interp): Install mi_ui_out. Adjust calls to interp_new. Don't allocate the ui_out's of the interpreters here. 2011-09-12 Aleksandar Ristovski * solib.c (solib_used): New function. (update_solib_list, reload_shared_libraries_1): Check if objfile is used by another so_list object before freeing it. 2011-09-11 Jan Kratochvil Code cleanup. * mi/mi-cmd-stack.c (list_args_or_locals): Use enum for the parameter values. 2011-09-09 Jan Kratochvil Code cleanup. * amd64-tdep.c (amd64_skip_prologue): Move the XMM code to ... (amd64_skip_xmm_prologue): ... this new function. Describe its parameters. No longer use amd64_prologue_line_bug. * defs.h (producer_is_gcc_ge_4): New declaration. * dwarf2read.c (producer_is_gcc_ge_4): Move to utils.c. (process_full_comp_unit): Update its caller. Remove amd64_prologue_line_bug initialization. * symtab.h (struct symtab): Remove field amd64_prologue_line_bug. * utils.c (producer_is_gcc_ge_4): Moved here from dwarf2read.c. 2011-09-09 Pedro Alves * linux-nat.h (enum resume_kind): New. (struct lwp_info) : New field. * linux-nat.c (linux_child_follow_fork): Set last_resume_kind to resume_stop on the new lwp. (add_lwp): Set last_resume_kind as resume_continue by default. (lin_lwp_attach_lwp): Set last_resume_kind as resume_stop. (resume_lwp): New, factored out from resume_callback. Also check for pending status in lp->waitstatus. (resume_callback): Reimplement. (resume_clear_callback): Set last_resume_kind as resume_stop. (resume_set_callback): Set last_resume_kind as resume_continue. (linux_nat_resume, linux_handle_extended_wait): Set last_resume_kind. (running_callback): Also check lp->waitstatus for pending events. (select_singlestep_lwp_callback): Check that lp->last_resume_kind is resume_step. (stop_and_resume_callback): Don't re-resume if the core wanted the lwp stopped. Use resume_lwp instead of resume_callback. Avoid using an invalidated pointer. (linux_nat_filter_event): Don't discard SIGSTOPs as delayed SIGSTOPs if the core wanted the LWP to stop. (linux_nat_wait_1) Don't consume a pending SIGSTOP if the core wanted the lwp to stop. If the core wanted the lwp to stop, and the lwp stopped with a SIGSTOP, report a TARGET_SIGNAL_0 instead of TARGET_SIGNAL_STOP. (linux_nat_stop_lwp): Don't synchronously wait for the lwp to stop here. Instead, signal the lwp, and set the last_resume_kind to resume_stop. 2011-09-09 Pedro Alves * linux-nat.c (lin_lwp_attach_lwp): Return 1 (ignore) instead of -1 (error), if the lwp exits right after attaching. 2011-09-08 Doug Evans * py-cmd.c: Some minor formatting fixes. (gdbpy_parse_command_name): Rename text arg to name, make const. All callers updated. * python-internal.h (gdbpy_parse_command_name): Update. * cli/cli-decode.c (add_cmd): Add comment. 2011-09-08 Jan Kratochvil PR breakpoints/12435 * amd64-tdep.c (amd64_skip_prologue): New variables start_pc_sal, next_sal, buf, offset and xmmreg. Advance PC if it sees the PR. * dwarf2read.c (process_full_comp_unit): Initialize amd64_prologue_line_bug. * symtab.h (struct symtab): New field amd64_prologue_line_bug. 2011-09-08 Jan Kratochvil Fix TUI screen corruption. * utils.c (fputs_maybe_filtered): Replace !input_from_terminal_p by batch_flag. 2011-09-08 Jan Kratochvil * findvar.c (read_var_value): Never return NULL, throw an error instead. Update the function comment. State symbol name in the error messages. * python/py-frame.c (frapy_read_var): Remove handling of NULL from read_var_value. * stack.c (print_frame_args): Likewise. * valops.c (value_of_variable): Likewise. 2011-09-08 Jan Kratochvil * stack.c (print_frame_args): New variable except. Wrap read_var_value and common_val_print into TRY_CATCH. 2011-09-08 Jan Kratochvil * eval.c (evaluate_subexp_standard) : Update the value_of_this caller to value_of_this. * p-exp.y: Update the value_of_this caller to value_of_this_silent. Twice. * valops.c (value_of_this): Remove parameter complain and variable ret. Update function comment. Never return NULL by this code. (value_of_this_silent): New function. * value.h (value_of_this): Remove parameter complain. (value_of_this_silent): New declaration. 2011-09-07 Yao Qi * gdbthread.h (struct thread_info): Remove fields `stepping_through_solib_after_catch' and `stepping_through_solib_catchpoints'. * infrun.c (init_thread_stepping_state): Update. (process_event_stop_test, currently_stepping): Update. (currently_stepping_or_nexting_callback): Update. 2011-09-07 Yao Qi * gdbthread.h (struct thread_info): Comment on field `step_after_step_resume_breakpoint'. 2011-09-07 Abhijit Halder * remote.c (remote_console_output): Reindent. 2011-09-06 Luis Machado * frame.c (has_stack_frames): Check for currently selected traceframe. 2011-09-06 Pedro Alves * event-top.h (MAXPROMPTS, struct prompts): Delete. (set_async_annotation_level, set_async_prompt, pop_prompt) (push_prompt, new_async_prompt): Delete declarations. * top.h (get_prompt, set_prompt): Change prototype. (get_prefix, set_prefix, get_suffix, set_suffix): Delete declarations. * top.c (command_loop): (top_prompt): New global. (get_prefix, set_prefix, get_suffix, ): Delete. (get_prompt, set_prompt): Rewrite. (show_new_async_prompt): Rename to ... (show_prompt): ... this. (init_main): Adjust. Don't handle --annotate=2 here. * event-top.c (new_async_prompt): Delete. (the_prompts): Delete. (more_to_come): Make static. (display_gdb_prompt): Use top_level_prompt() to compute the top level prompt, and don't notify the before_prompt observers directly here. Always trick readline into not trying to display the prompt if sync_execution and displaying the primary prompt. If displaying a local/secondary prompt, always show it, even if sync_execution is set. (change_annotation_level): Delete. (top_level_prompt): New, based on change_annotation_level. (push_prompt, pop_prompt): Delete. (async_disable_stdin): No longer pushes prompt. (command_line_handler): No longer pushes or pops prompt. If more input is expected, call display_gdb_prompt with an explicit empty prompt. (async_stop_sig): Adjust. (set_async_annotation_level, set_async_prompt): Delete. * python/python.c (before_prompt_hook): Adjust. 2011-09-05 Pedro Alves PR cli/13110 * infrun.c (fetch_inferior_event): Check if there's a selected thread before checking if the selected thread is executing. 2011-09-05 Pedro Alves * inf-loop.c (execute_command): Don't check if the current thread if running before synchronously waiting for command completion. * infrun.c (fetch_inferior_event): Handle "set exec-done-display" here. (normal_stop): Call async_enable_stdin here. * inf-loop.c (inferior_event_handler): Don't call async_enable_stdin, nor handle "set exec-done-display" here. 2011-09-04 Joel Brobecker GDB 7.3.1 released. 2011-09-04 Joel Brobecker * NEWS: Change `7.3' into `7.3.1' in `Changes since GDB 7.3'. 2011-09-04 Joel Brobecker * NEWS: Add entry for OpenBSD/NetBSD build failure. 2011-09-02 Jan Kratochvil * config/s390/s390.mh (NATDEPFILES): Add linux-procfs.o dependency. 2011-09-02 Matt Rice PR gdb/10720 * event-top.c (cli_command_loop): Replace readline setup with direct call to display_gdb_prompt. (display_gdb_prompt): Do not call observer mechanism during synchronous execution. 2011-09-02 Pedro Alves * linux-nat.c (in_pid_list_p): New. (linux_record_stopped_pid): Delete. (lin_lwp_attach_lwp): Check if PTRACE_ATTACH failed because we're already attached to the LWP. Return an indication if so. (linux_nat_filter_event): Adjust. * linux-thread-db.c (attach_thread): Handle lin_lwp_attach_lwp returning an indication to ignore this thread. 2011-09-02 Pedro Alves * top.c: Include interps.h. (execute_command): If the target can async, but the interpreter is in sync mode, synchronously wait for the command to finish before returning. (execute_command_to_string): Force the interpreter to sync mode. * infrun.c: Include interps.h. (fetch_inferior_event): Don't restore the prompt yet if the interpreter is in sync mode. * interps.c (interpreter_async): New global. * interps.h (interpreter_async): Declare. * inf-loop.c: Include interps.h. (inferior_event_handler): Don't print the language change or run breakpoint commands yet if the interpreter in is sync mode. * main.c (captured_command_loop): Flip the interpreter to async mode. * cli/cli-script.c: Include interps.h. (execute_user_command, while_command, if_command): Force the interpreter to sync mode. * python/python.c: Include interps.h. (python_command, execute_gdb_command): Force the interpreter to sync mode. 2011-09-02 Pedro Alves * value.c (show_convenience): Catch errors thrown while printing each internal variable. * infrun.c (validate_siginfo_access): New function. (siginfo_value_read, siginfo_value_write): Call it. 2011-09-01 Jan Kratochvil Revert: 2010-05-21 Pierre Muller * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter attribute. 2011-08-29 Yao Qi * solib-dsbt.c (bfd_lookup_symbol): Removed. (cmp_name): New. (enable_break2): Update caller. * solib-frv.c (bfd_lookup_symbol): Removed. (cmp_name): New. (enable_break2): Update caller. * solib-pa64.c (bfd_lookup_symbol): Removed. (cmp_name): New. * solib-svr4.c (bfd_lookup_symbol): Removed. (cmp_name_and_sec_flags): New. (enable_break): Update caller. * solib.c (gdb_bfd_lookup_symbol_from_symtab): New. (gdb_bfd_lookup_symbol_from_dyn_symtab): New. (gdb_bfd_lookup_symbol): New. * solib.h: Functions declarations. 2011-08-29 Yao Qi * Makefile.in (ALL_TARGET_OBS): Add tic6x-tdep.o tic6x-linux-tdep.o and solib-dsbt.o. 2011-08-29 Jan Kratochvil Fix TUI stepi on code without symbols. * tui/tui-stack.c (tui_show_frame_info): Remove error, set LOW for current PC instead. 2011-08-28 Jan Kratochvil Code cleanup. * mi/mi-cmd-stack.c (list_args_or_locals): Remove stb initialization and the static keyword. * mi/mi-cmd-target.c (mi_cmd_target_file_get, mi_cmd_target_file_put): Make prefix an array. * mi/mi-cmd-target.c (mi_cmd_target_file_delete): Likewise. * mi/mi-main.c (get_register): Remove stb initialization and the static keyword. 2011-08-28 Jan Kratochvil Code cleanup - make mi_opt const. * mi/mi-cmd-break.c (mi_cmd_break_insert, mi_cmd_break_watch): Make opts const. * mi/mi-cmd-disas.c (mi_cmd_disassemble): Likewise. * mi/mi-cmd-env.c (mi_cmd_env_path): Likewise. (mi_cmd_env_dir): Likewise. * mi/mi-cmd-target.c (mi_cmd_target_file_get): Likewise. (mi_cmd_target_file_put): Likewise. * mi/mi-cmd-target.c (mi_cmd_target_file_delete): Likewise. * mi/mi-cmd-var.c (mi_cmd_var_evaluate_expression): Likewise. * mi/mi-getopt.c (mi_getopt): Make opts and opt const. (mi_valid_noargs): Make opts const. * mi/mi-getopt.h (mi_getopt): Make opts and opt const. * mi/mi-main.c (mi_cmd_list_thread_groups): Make opts const. (mi_cmd_data_read_memory): Likewise. (mi_cmd_data_read_memory_bytes): Likewise. (mi_cmd_data_write_memory): Likewise. 2011-08-26 Matt Rice * solib-sunos.c (allocate_rt_common_objfile): Add missing arguments to bcache_xmalloc, replace bcache_xmalloc with call to psymbol_bcache_init for psymbol_cache. * symfile.c (reread_symbols): Remove extra calls to bcache_xmalloc. 2011-08-26 Jan Kratochvil * inf-loop.c (inferior_event_handler): Add exception_print in INF_EXEC_COMPLETE. 2011-08-26 Jan Kratochvil * breakpoint.c (bpstat_do_actions): New variable cleanup_if_error, call make_bpstat_clear_actions_cleanup and discard_cleanups for it. * defs.h (make_bpstat_clear_actions_cleanup): New declaration. * exceptions.c (throw_exception): Remove the bpstat_clear_actions call. * inf-loop.c (inferior_event_handler): New variable cleanup_if_error, call make_bpstat_clear_actions_cleanup and discard_cleanups for it. Call bpstat_clear_actions for failed fetch_inferior_event_wrapper. * infrun.c (fetch_inferior_event): Call make_bpstat_clear_actions_cleanup. * top.c (execute_command): New variable cleanup_if_error, call make_bpstat_clear_actions_cleanup and discard_cleanups for it. * utils.c (do_bpstat_clear_actions_cleanup) (make_bpstat_clear_actions_cleanup): New functions. 2011-08-26 Pedro Alves * linux-nat.c (linux_child_follow_fork): Don't set lp->resumed on either the parent or the child forks. Rename a couple locals. 2011-08-26 Pedro Alves * linux-nat.c (wait_lwp): Avoid assuming errno is preserved by a library call. Avoid reading the `status' local if all waitpid calls failed. 2011-08-26 Pedro Alves * common/linux-osdata.c (get_cores_used_by_process): Don't assume opening /proc/PID/task always succeeds. 2011-08-26 Aleksandar Ristovski * linespec.c (symtab_from_filename): Check for the end of string. 2011-08-26 Marc Khouzam PR mi/11912 * varobj.c (cplus_describe_child): Add the keyword 'class' to the output of the method when dealing with a cast to a base class. 2011-08-26 Jan Kratochvil No functionality change. * breakpoint.c (bpstat_clear_actions): Remove the BS parameter, make function comment a reference, new variables tp and bs, move here code from throw_exception. * breakpoint.h (bpstat_clear_actions): Remove the BS parameter, describe it in the comment. * exceptions.c (throw_exception): Remove variable tp, move the code for bpstat_clear_actions to bpstat_clear_actions. 2011-08-24 Luis Machado * linux-nat.h (linux_proc_get_tgid): Remove declaration. * linux-nat.c: Include linux-procfs.h. (linux_proc_get_tgid): Move to ... * common/linux-procfs.c: ... here. New file. * common/linux-procfs.h: New file. * linux-thread-db.c: Include linux-procfs.h. * Makefile.in: Update dependencies. * config/alpha/alpha-linux.mh: Add linux-procfs.o dependency. * config/arm/linux.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/mips/linux.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/linux.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/xtensa/linux.mh: Likewise. 2011-08-24 Hui Zhu * tracepoint.c (cond_string_is_same): New function. (find_matching_tracepoint): Add condition check by cond_string_is_same. 2011-08-23 Josh Matthews Fix build error in Darwin port. * darwin-nat-info.c (darwin_debug_regions_recurse): New variable uiout. 2011-08-21 Jan Kratochvil Code cleanup. * breakpoint.c (bpstat_clear_actions): Remove clearing of commands_left. (command_line_is_silent): New function. (bpstat_do_actions_1): No longer use commands_left, use command_line_is_silent for commands. (bpstat_alloc): Remove clearing of commands_left. (bpstat_stop_status): Remove initialization of commands_left, use command_line_is_silent. * breakpoint.h (struct bpstats): Remove commands_left. 2011-08-18 Keith Seitz PR c++/12266 * cp-name-parser.y (struct demangle_info): Remove unused member PREV. (d_grab): Likewise. (allocate_info): Change return type to struct demangle_info *. Always allocate a new demangle_info. Remove unused PREV pointer. (cp_new_demangle_parse_info): New function. (cp_demangled_name_parse_free): New function. (do_demangled_name_parse_free_cleanup): New function. (make_cleanup_cp_demangled_name_parse_free): New function. (cp_demangled_name_to_comp): Change return type to struct demangle_parse_info *. Allocate a new storage for each call. (main): Update usage for cp_demangled_name_to_comp API change. * cp-support.h (struct demangle_parse_info): New structure. (cp_demangled_name_to_comp): Update API change for return type. (cp_new_demangle_parse_info): Declare. (make_cleanup_cp_demangled_name_parse_free): New declaration. (cp_demangled_name_parse_free): Declare. * cp-support.c (cp_canonicalize_string): Update API change for cp_demangled_name_to_comp. (mangled_name_to_comp): Likewise. Return struct demangle_parse_info, too. (cp_class_name_from_physname): Update mangled_name_to_comp API change. (method_name_from_physname): Likewise. (cp_func_name): Update API change for cp_demangled_name_to_comp. (cp_remove_params): Likewise. * python/py-type.c (typy_legacy_template_argument): Likewise. * cp-support.h (cp_canonicalize_string_no_typedefs): Declare. (cp_merge_demangle_parse_infos): Declare. * cp-support.c (ignore_typedefs): New file global. (copy_string_to_obstack): New function. (inspect_type): New function. (replace_typedefs): New function. (replace_typedefs_qualified_name): New function. (cp_canonicalize_string_no_typedefs): New function. * cp-name-parser.y (cp_merge_demangle_parse_infos): New function. (cp_new_demangle__parse_info): Allocate and initialize the obstack. * linespec.c (find_methods): Use cp_canonicalize_string_no_typedefs instead of cp_canonicalize_string. (find_method): Likewise. (decode_compound): Before looking up the name, call cp_canonicalize_string_no_typedefs. (decode_variable): Likewise. 2011-08-17 Phil Muldoon Tom Tromey Matt Rice * python/lib/gdb/prompt.py: New file. * python/lib/gdb/command/prompt.py: New file. * NEWS: Document set extended-prompt and gdb.prompt library 2011-08-16 Yao Qi * tic6x-linux-tdep.c: Move const arrays definition from here... * tic6x-tdep.c: to here ... 2011-08-14 Yao Qi * NEWS: New port to Texas Instruments TMS320C6x. 2011-08-14 Andrew Jenner Bernd Schmidt Yao Qi * configure.tgt: Handle tic6x-*-*linux and tic6x-*-*. * solib-dsbt.c: New file. Support DSBT shared object. * tic6x-linux-tdep.c: New file. * tic6x-tdep.c: New file. * tic6x-tdep.h: New file. 2011-08-14 Andrew Stubbs Yao Qi * remote.c (PACKET_qXfer_fdpic): New enum value. (remote_protocol_features): Add qXfer:fdpic:read packet. (remote_xfer_partial): Support TARGET_OBJECT_FDPIC. (_initialize_remote): Add set/show remote read-fdpic-loadmap command. * target.h (enum target_object): Add TARGET_OBJECT_FDPIC. 2011-08-14 Yao Qi Target description for tic6x. * features/Makefile (WHICH): Add tic6x-c64xp tic6x-c64x tic6x-c62x tic6x-c64xp-linux tic6x-c64x-linux and tic6x-c62x-linux. * features/tic6x-c6xp.xml, features/tic6x-core.xml: New. * features/tic6x-gp.xml, features/tic6x-c62x.xml: New. * features/tic6x-c64x.xml, features/tic6x-c64xp.xml: New. * features/tic6x-c62x-linux.xml, features/tic6x-c64x-linux.xml: New. * features/tic6x-c64xp-linux.xml: New. * features/tic6x-c64xp.c, features/tic6x-c64x.c: Generated. * features/tic6x-c62x.c, features/tic6x-c64xp-linux.c: Generated. * features/tic6x-c64x-linux.c, features/tic6x-c62x-linux.c: Generated. * regformats/tic6x-c62x.dat, regformats/tic6x-c64x.dat: Generated. * regformats/tic6x-c64xp.dat, regformats/tic6x-c62x-linux.dat: Generated. * regformats/tic6x-c64x-linux.dat, regformats/tic6x-c64xp-linux.dat: Generated. * config/djgpp/fnchange.lst: Add features/tic6x-*.xml and features/tic6x-*.c files. Add regformats/tic6x-*.dat files. 2011-08-12 Doug Evans * NEWS: Mention new "type" attribute of python gdb.Symbol objects. * python/py-symbol.c (sympy_get_type): New function. (symbol_object_getset): Add "type". 2011-08-12 Pedro Alves PR tui/13073 * tui/tui-regs.c (tui_show_register_group): Skip registers with an empty name. (tui_show_register_group): Don't store a byte buffer in the data element's value. (tui_register_format): Skip registers with an empty name. (tui_get_register): Store a struct value in the data element's value field instead of a byte buffer holding the raw register contents. Account for optimized-out and unavailable registers when comparing register contents. 2011-08-09 Pedro Alves * printcmd.c (current_display_number): Update comment. (disable_current_display_cleanup): Delete. (do_one_display): Use make_cleanup_restore_integer. Gracefully catch errors thrown while evaluating and printing the display. 2011-08-09 Tom Tromey * mi/mi-cmd-break.c (mi_cmd_break_passcount): Fix typo. 2011-08-09 Pedro Alves * elfread.c (elf_symtab_read): Rework comments. * maint.c (maintenance_command): Ditto. * somread.c (som_symtab_read): Ditto. * solib.c (solib_find, solib_map_sections, update_solib_list) (solib_add, info_sharedlibrary_command, solib_name_from_address) (solib_create_inferior_hook, in_solib_dynsym_resolve_code) (sharedlibrary_command, no_shared_libraries): Ditto. * solib-irix.c (locate_base, disable_break, enable_break) (irix_solib_create_inferior_hook, irix_solib_create_inferior_hook) (irix_current_sos, irix_open_symbol_file_object) (irix_special_symbol_handling): Ditto. * solib-sunos.c (locate_base, first_link_map_member) (sunos_current_sos, disable_break, enable_break) (sunos_special_symbol_handling, sunos_solib_create_inferior_hook): Ditto. * solib-svr4.c (bfd_lookup_symbol, elf_locate_base, locate_base) (open_symbol_file_object, svr4_current_sos, enable_break) (svr4_special_symbol_handling, svr4_solib_create_inferior_hook): Ditto. * solib-frv.c (bfd_lookup_symbol, open_symbol_file_object) (frv_current_sos, enable_break, frv_special_symbol_handling) (frv_solib_create_inferior_hook): Ditto. * solist.h (struct target_so_ops): Extend the comments of the special_symbol_handling, current_sos and open_symbol_file_object methods. 2011-08-09 Phil Muldoon * python/lib/gdb/__init__.py: Auto-load files in command and function directories. * python/python.c (finish_python_initialization): Use os.path.join. * python/lib/gdb/command/pretty_printers.py: Self register command. * NEWS: Document auto-loading. 2011-08-08 Jan Kratochvil * dwarf2loc.c (dwarf2_evaluate_loc_desc_full) (dwarf2_evaluate_loc_desc_full) : New variable objfile_gdbarch. Fix BFD_ENDIAN_BIG case. 2011-08-08 Tom Tromey * breakpoint.c (clean_up_filters): Remove. (catch_syscall_split_args): Use VEC_cleanup. 2011-08-06 Jan Kratochvil * cp-name-parser.y (xfree): Wrap the name free by CONCAT2. (main): Uncomment "Demangling error\n". 2011-08-05 Paul Pluzhnikov * solib-target.c (segment_attributes): Make them static. (section_attributes, library_children, library_attributes): Likewise. (library_list_children, library_list_attributes): Likesise. (library_list_elements): Likewise. 2011-08-05 Pedro Alves * exceptions.c (throw_exception): Don't disable the current display. * printcmd.c (disable_current_display_cleanup): New function. (do_one_display): Install a cleanup to disable the current display if doing the display throws. 2011-08-05 Eli Zaretskii * python/py-breakpoint.c (gdbpy_initialize_breakpoints): Move the initialization of the tp_new member to the corresponding gdbpy_initialize_* function. * python/py-cmd.c (gdbpy_initialize_commands): Likewise. * python/py-frame.c (gdbpy_initialize_frames): Likewise. * python/py-function.c (gdbpy_initialize_functions): Likewise. * python/py-inferior.c (gdbpy_initialize_inferior): Likewise. * python/py-param.c (gdbpy_initialize_parameters): Likewise. 2011-08-05 Jan Kratochvil * spu-tdep.c (info_spu_event_command, info_spu_signal_command) (info_spu_mailbox_list, info_spu_mailbox_command, info_spu_dma_cmdlist) (info_spu_dma_command, info_spu_proxydma_command): Rename uiout references to current_uiout. 2011-08-04 Pedro Alves * event-loop.c (gdb_do_one_event): Remove `data' parameter. (start_event_loop): Use TRY_CATCH instead of catch_errors. * event-loop.h (gdb_do_one_event): Remove `data' parameter. * top.c (gdb_readline_wrapper): Adjust. * tui/tui-interp.c (tui_command_loop): (_initialize_tui_interp): Don't install it. 2011-08-04 Pedro Alves * ui-out.h (uiout): Rename to ... (current_uiout): ... this. * ui-out.c (uiout): Rename to ... (current_uiout): ... this. * ada-lang.c (print_it_exception, print_one_exception) (print_mention_exception): Adjust. * breakpoint.c (watchpoint_check): Adjust. (print_breakpoint_location, print_one_breakpoint, breakpoint_1) (default_collect_info, watchpoints_info, print_one_catch_fork) (print_one_catch_vfork, print_one_catch_syscall) (print_one_catch_exec, mention, print_it_ranged_breakpoint) (print_one_ranged_breakpoint, print_mention_ranged_breakpoint) (print_it_watchpoint, print_mention_watchpoint) (print_it_masked_watchpoint, print_mention_masked_watchpoint) (print_it_exception_catchpoint, print_one_exception_catchpoint) (print_mention_exception_catchpoint, say_where, bkpt_print_it) (bkpt_print_mention, momentary_bkpt_print_it) (tracepoint_print_mention, update_static_tracepoint) (tracepoints_info, save_breakpoints): Adjust. * cli-out.c (field_separator): Adjust. * cp-abi.c (list_cp_abis, show_cp_abi_cmd): Adjust. * exceptions.c (catch_exceptions_with_msg, catch_errors): Adjust. * frame.c (get_current_frame): Adjust. * infcmd.c (run_command_1, print_return_value): Adjust. * inferior.c (inferior_command, info_inferiors_command): Adjust. * infrun.c (print_end_stepping_range_reason): Adjust. (print_signal_exited_reason, print_exited_reason): Adjust. (print_signal_received_reason, print_no_history_reason): Adjust. * interps.c (interp_set): Adjust. * osdata.c (info_osdata_command): Adjust. * progspace.c (maintenance_info_program_spaces_command): Adjust. * remote-fileio.c (remote_fileio_request): Adjust. * remote.c (show_remote_cmd): Adjust. * solib.c (info_sharedlibrary_command): Adjust. * source.c (print_source_lines_base): Adjust. * stack.c (print_stack_frame): Adjust. (do_gdb_disassembly, print_frame_info, print_frame): Adjust. * symfile-mem.c (add_vsyscall_page): Adjust. * symfile.c (load_progress, generic_load) (print_transfer_performance): Adjust. * thread.c (info_threads_command, restore_selected_frame) (thread_command): Adjust. * top.c (make_cleanup_restore_ui_file): Adjust. * tracepoint.c (tvariables_info_1, trace_status_mi, tfind_1) (print_one_static_tracepoint_marker): Adjust. * cli/cli-cmds.c (print_disassembly): Adjust. * cli/cli-decode.c (print_doc_line): Adjust. * cli/cli-interp.c (safe_execute_command): Adjust. * cli/cli-logging.c (set_logging_redirect, pop_output_files) (handle_redirections): Adjust. * cli/cli-script.c (show_user_1): Adjust. * cli/cli-setshow.c (do_setshow_command, cmd_show_list): Adjust. * mi/mi-cmd-break.c (breakpoint_notify): Adjust. * mi/mi-cmd-disas.c (mi_cmd_disassemble): Adjust. * mi/mi-cmd-env.c (mi_cmd_env_pwd, mi_cmd_env_path) (mi_cmd_env_dir): Adjust. * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file) (print_partial_file_name, mi_cmd_file_list_exec_source_files): Adjust. * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames) (mi_cmd_stack_info_depth, mi_cmd_stack_list_args) (list_args_or_locals): Adjust. * mi/mi-cmd-var.c (print_varobj, mi_cmd_var_create) (mi_cmd_var_delete, mi_cmd_var_set_format, mi_cmd_var_set_frozen) (mi_cmd_var_show_format, mi_cmd_var_info_num_children) (mi_cmd_var_list_children, mi_cmd_var_info_type) (mi_cmd_var_info_path_expression, mi_cmd_var_info_expression) (mi_cmd_var_show_attributes, mi_cmd_var_evaluate_expression) (mi_cmd_var_assign, mi_cmd_var_update, varobj_update_one): Adjust. * mi/mi-interp.c (mi_on_normal_stop): Adjust. * mi/mi-main.c (mi_cmd_gdb_exit, mi_cmd_thread_select) (mi_cmd_thread_list_ids, mi_cmd_thread_info, print_one_inferior) (list_available_thread_groups, mi_cmd_list_thread_groups) (mi_cmd_data_list_register_names) (mi_cmd_data_list_changed_registers) (mi_cmd_data_list_register_values, get_register) (mi_cmd_data_evaluate_expression, mi_cmd_data_read_memory) (mi_cmd_data_read_memory_bytes, mi_cmd_list_features) (mi_cmd_list_target_features, mi_cmd_add_inferior) (mi_execute_command, mi_load_progress): Adjust. * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Adjust. * python/py-auto-load.c (print_script, info_auto_load_scripts): Adjust. * python/py-breakpoint.c (bppy_get_commands): Adjust. * tui/tui-interp.c (tui_command_loop): Adjust. * tui/tui-io.c (tui_setup_io, tui_initialize_io): Adjust. 2011-08-04 Pedro Alves * exceptions.c (struct catcher): Remove saved_uiout field. (exceptions_state_mc_init): Remove the `func_uiout' parameter, and no longer save/resvore the global ui_out builder. (catch_exceptions_with_msg): Save/override/restore the global ui_out builder manually instead of relying on TRY_CATCH to do it. (catch_errors): Save/restore the global ui_out builder manually instead of relying on TRY_CATCH to do it. * exceptions.h (exceptions_state_mc_init): Remove the `func_uiout' parameter. (TRY_CATCH): Adjust. * cli/cli-interp.c (safe_execute_command): Save/override/restore the global ui_out builder manually instead of relying on TRY_CATCH to do it. 2011-08-03 Philippe Waroquiers * breakpoint.c (update_global_location_list): Ensure invariant 'first loc marked not duplicated and inserted, following locs marked duplicated/not inserted' is respected for multiple locations at the same address. (unduplicated_should_be_inserted) New function. (swap_insertion) New function. 2011-08-03 Jan Kratochvil * stack.c (print_frame_arguments_choices): Comment typo fix. 2011-08-01 Thiago Jung Bauermann Revert: 2011-07-31 Thiago Jung Bauermann * breakpoint.c (insert_bp_location): Remove disabled_breaks argument. Update callers. 2011-08-01 Paul Pluzhnikov PR gdb/13045 * doublest.c (convert_doublest_to_floatformat): Pass correct mantissa length to put_field. 2011-08-01 Jan Kratochvil * stack.c (do_gdb_disassembly): Use RETURN_MASK_ERROR, simplify the exception_print code path. (backtrace_command): Remove variable e. Protect arg by make_cleanup in advance. Simplify memset. Remove TRY_CATCH. Remove explicit xfree. (backtrace_full_command): Remove variable e. Remove TRY_CATCH. 2011-08-01 Jan Kratochvil Code cleanup. * stack.c (struct print_stack_frame_args, print_stack_frame_stub): Remove, merge them into ... (print_stack_frame): ... here with a TRY_CATCH. New variable e, remove variable args and its initialization. (struct print_args_args, print_args_stub): Remove, merge them into print_frame. (struct gdb_disassembly_stub_args, gdb_disassembly_stub): Remove, merge them into ... (do_gdb_disassembly): ... here. Remove variable args and its initialization. (print_frame): Remove variable args and its initialization, new variable gdbarch and numargs (from print_args_stub), inline here print_args_stub with a TRY_CATCH. (struct backtrace_command_args, backtrace_command_stub): Remove, merge them into ... (backtrace_command, backtrace_full_command): ... here with a TRY_CATCH. New variable e, remove variable btargs and its initialization. 2011-08-01 Tristan Gingold * darwin-nat.c (darwin_decode_exception_message): Adjust assertion. 2011-07-31 Thiago Jung Bauermann * breakpoint.c (insert_bp_location): Document return value. (insert_breakpoint_locations): Fix documentation. (remove_breakpoints): Add documentation. 2011-07-31 Thiago Jung Bauermann * breakpoint.c (insert_bp_location): Remove disabled_breaks argument. Update callers. 2011-07-30 Jan Kratochvil * stack.c (print_frame_info): Comment typo fix. 2011-07-29 Sterling Augustine * MAINTAINERS (Write After Approval): Add myself to the list. 2011-07-29 Tom Tromey * solib-target.c: Use DEF_VEC_I, not DEF_VEC_O. (library_list_start_segment): Update. (library_list_start_section): Update. 2011-07-28 Phil Muldoon * varobj.c (value_get_print_value): Move hint check later into the function. Comment function. Free thevalue before reusing it. 2011-07-27 Jan Kratochvil Pedro Alves * eval.c (evaluate_subexp_standard): Remove not_lval from all calls of value_one. * valops.c (value_one): Remove parameter lv. Do not pass it to itself. Assert the result kind. * value.h (value_one): Remove parameter lv. 2011-07-27 Jan Kratochvil Fix crash on lval_computed values. * valops.c (value_zero): Use not_lval for lval_computed. 2011-07-27 Tom Tromey * Makefile.in (HFILES_NO_SRCDIR): Add 'common' prefix for gdb_assert.h, gdb_locale.h, gdb_dirent.h. 2011-07-27 Jan Kratochvil * typeprint.c (_initialize_typeprint): Extend the help of "whatis" and "ptype" by their typedefs difference. 2011-07-27 Jan Kratochvil * dwarf2expr.c (ctx_no_read_reg): New function. * dwarf2expr.h (ctx_no_read_reg): New declaration. * dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove. (decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New. (decode_locdesc): Replace by a caller of dwarf_expr_eval. 2011-07-27 Jan Kratochvil * dwarf2-frame.c (no_get_frame_base, no_get_frame_cfa, no_get_frame_pc) (no_get_tls_address, no_dwarf_call, no_base_type): Move to the other file. (dwarf2_frame_ctx_funcs): Reference the renamed functions. * dwarf2expr.c (ctx_no_get_frame_base, ctx_no_get_frame_cfa) (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call) (ctx_no_get_base_type): Move the functions here. * dwarf2expr.h (ctx_no_get_frame_base, ctx_no_get_frame_cfa) (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call) (ctx_no_get_base_type): New declarations. 2011-07-27 Tom Tromey * xcoffread.c (dwarf2_xcoff_names): Add 'macro' and 'sentinel' entries. * symfile.h (struct dwarf2_debug_sections) : New field. * dwarf2read.c (dwarf2_elf_names): Add sentinel entry. 2011-07-26 Sterling Augustine * cli/cli-dump.c (dump_binary_file): Change parameter type to ULONGEST. (dump_bfd_file): Likewise. 2011-07-26 Philippe Waroquiers * remote.c (remote_region_ok_for_hw_watchpoint): New function. (remote_hw_watchpoint_length_limit): New variable. (_initialize_remote) add set,show cmds for this new variable. * gdb.texinfo: document these new commands. * NEWS: Mention these new commands. 2011-07-26 Pedro Alves * breakpoint.c (works_in_software_mode_watchpoint): Also return true for software watchpoints. 2011-07-26 Joel Brobecker GDB 7.3 released. 2011-07-26 Tom Tromey * symfile.h (struct dwarf2_debug_sections) : New field. * dwarf2read.c (read_indirect_string_at_offset): New function. (read_indirect_string): Use it. (dwarf_decode_macro_bytes): New function, taken from dwarf_decode_macros. Handle DW_MACRO_GNU_*. (dwarf_decode_macros): Use it. handle DW_MACRO_GNU_*. (dwarf_parse_macro_header, skip_form_bytes, skip_unknown_opcode): New functions. (struct dwarf2_per_objfile) : New field. (dwarf2_elf_names): Add .debug_macro. (dwarf2_macros_too_long_complaint): Add 'section' argument. (dwarf2_locate_sections): Handle new section. (read_file_scope): Handle DW_AT_GNU_macros. (dwarf2_per_objfile_free): Unmap the .debug_macro section. 2011-07-26 Paul Pluzhnikov * NEWS: Mention dcache configuration. * dcache.c (dcache_set_list, dcache_show_list): New variables. (dcache_size, dcache_line_size): New variables. (LINE_SIZE_MASK, XFORM, MASK): Adjust. (struct dcache_block): Make it expandable. (struct dcache_struct): New field. (dcache_invalidate): Discard freelist upon dcache_line_size changes. (dcache_hit, dcache_alloc, dcache_peek_byte): Adjust. (dcache_poke_byte, dcache_print_line): Adjust. (set_dcache_size, set_dcache_line_size): New functions. (set_dcache_command, show_dcache_command): New functions. (_initialize_dcache): Add new commands. 2011-07-26 Paul Pluzhnikov * progspace.h (struct program_space): Add solib_add_generation. * infcmd.c (post_create_inferior): Only call solib_add if not already done. * solib.c (solib_add): Increment solib_add_generation. 2011-07-25 Jan Kratochvil Fix implicit pointer offsets. * dwarf2loc.c (indirect_pieced_value): Comment byte_offset. Use also ptr.OFFSET. 2011-07-25 Tom Tromey * ada-lang.c (ada_exception_breakpoint_ops): Make return type const. (ada_exception_sal): Make 'ops' const. (ada_decode_exception_location): Likewise. (ada_decode_assert_location): Likewise. (catch_assert_command): Update. (catch_ada_exception_command): Update. (create_ada_exception_catchpoint): Make 'ops' const. * breakpoint.c (set_raw_breakpoint_without_location) (set_raw_breakpoint, momentary_breakpoint_from_master): Make 'ops' const. (create_internal_breakpoint): Update. (init_raw_breakpoint_without_location): Make 'ops' const. (init_raw_breakpoint, init_catchpoint) (create_fork_vfork_event_catchpoint) (create_syscall_event_catchpoint, init_breakpoint_sal) (create_breakpoint_sal, create_breakpoints_sal) (create_breakpoint, init_ada_exception_breakpoint): Likewise. * breakpoint.h (struct breakpoint) : Now const. (init_ada_exception_breakpoint, create_breakpoint): Make 'ops' const. 2011-07-25 Paul Pluzhnikov * linux-thread-db.c (thread_from_lwp): Initialize th.th_unique. 2011-07-25 Pedro Alves * breakpoint.h (print_recreate_thread): Declare. (struct breakpoint): Move step_count, pass_count, number_on_target, static_trace_marker_id, static_trace_marker_id_idx ... (struct tracepoint): ... to this new struct. (get_tracepoint, get_tracepoint_by_number_on_target) (get_tracepoint_by_number): Change return type to struct tracepoint pointer. * breakpoint.c (is_tracepoint_type): New, factored out from is_tracepoint. (is_tracepoint): Adjust. (print_one_breakpoint_location): Cast to struct tracepoint as necessary, and adjust. (print_recreate_catch_fork, print_recreate_catch_vfork) (print_recreate_catch_syscall, print_recreate_catch_exec): Call print_recreate_thread. (init_breakpoint_sal): New, factored out from create_breakpoint_sal. (create_breakpoint_sal): Reimplement. (create_breakpoint): Allocate a struct tracecepoint if the caller wanted a tracepoint. Use init_breakpoint_sal and install_breakpoint. (print_recreate_ranged_breakpoint, print_recreate_watchpoint) (print_recreate_masked_watchpoint) (print_recreate_exception_catchpoint): Call print_recreate_thread. (tracepoint_print_one_detail): Adjust. (tracepoint_print_recreate): Adjust. Call print_recreate_thread. Dump the pass count here. (update_static_tracepoint): Adjust. (addr_string_to_sals): Adjust. (create_tracepoint_from_upload): Adjust. Change return type to struct tracepoint pointer. (trace_pass_set_count): Change parameter type to struct tracepoint pointer, and adjust. (trace_pass_command): Adjust. (get_tracepoint, get_tracepoint_by_number_on_target) (get_tracepoint_by_number): Change return type to struct tracepoint pointer, and adjust. (print_recreate_thread): New, factored out from save_breakpoints. (save_breakpoints): Don't print thread and task and passcount recreation here. * remote.c (remote_download_tracepoint): Adjust. * tracepoint.c (trace_actions_command, validate_actionline) (start_tracing, tfind_1, trace_find_tracepoint_command) (trace_dump_command): Adjust. (find_matching_tracepoint): Change return type to struct tracepoint pointer, and adjust. (merge_uploaded_tracepoints, tfile_get_traceframe_address) (tfile_trace_find, tfile_fetch_registers): Adjust. * tracepoint.h (create_tracepoint_from_upload): Change return type to struct tracepoint pointer. * ada-lang.c (print_recreate_exception): Call print_recreate_thread. * mi/mi-cmd-break.c (mi_cmd_break_passcount): Adjust. 2011-07-25 Pedro Alves * breakpoint.h (struct breakpoint): Move ops as first field. Move exp_string, exp_string_reparse, exp, exp_valid_block, cond_exp, cond_exp_valid_block, val, val_valid, watchpoint_frame, watchpoint_thread, watchpoint_triggered ... (struct watchpoint): ... to this new struct. (is_watchpoint): Declare. (install_breakpoint): Add new `internal' parameter. * breakpoint.c (is_watchpoint): Delete declaration. (set_breakpoint_condition): Handle watchpoints. (is_watchpoint): Make public. (watchpoint_in_thread_scope): Change parameter type to struct watchpoint. (watchpoint_del_at_next_stop): Change parameter type to struct watchpoint. Remove assertion. Adjust. (update_watchpoint): Ditto. (insert_breakpoints, breakpoint_init_inferior) (watchpoints_triggered, watchpoint_check) (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions) (bpstat_stop_status, print_one_breakpoint_location) (print_one_breakpoint_location, watchpoint_locations_match): Cast to struct watchpoint as necessary, and adjust. (install_breakpoint): Add `internal' argument. If true, don't mention the new breakpoint. Use set_breakpoint_number. (create_fork_vfork_event_catchpoint) (create_syscall_event_catchpoint): Adjust. (dtor_watchpoint): New. (re_set_watchpoint, insert_watchpoint, remove_watchpoint) (breakpoint_hit_watchpoint, resources_needed_watchpoint) (print_it_watchpoint, print_mention_watchpoint) (print_recreate_watchpoint, insert_masked_watchpoint) (remove_masked_watchpoint, resources_needed_masked_watchpoint) (print_one_detail_masked_watchpoint) (print_mention_masked_watchpoint) (print_recreate_masked_watchpoint): Cast to struct watchpoint as necessary, and adjust. (watch_command_1): Allocate and initialize a struct watchpoint instead of a struct breakpoint. Use install_breakpoint. (catch_exec_command_1): Adjust. (base_breakpoint_dtor): Delete accesses to watchpoint specific fields. (delete_breakpoint, enable_breakpoint_disp) (invalidate_bp_value_on_memory_change): Cast to struct watchpoint as necessary, and adjust. (initialize_breakpoint_ops): Install dtor_watchpoint as watchpoints' dtor method. * ada-lang.c (create_ada_exception_catchpoint): Adjust. * python/py-breakpoint.c (bppy_get_expression): Use is_watchpoint. to struct watchpoint as necessary, and adjust. 2011-07-25 Pedro Alves * ada-lang.c (dtor_exception, re_set_exception): Indirect through the the base class ops table. (catch_exception_breakpoint_ops) (catch_exception_unhandled_breakpoint_ops) (catch_assert_breakpoint_ops): Don't statically initialize. (initialize_ada_catchpoint_ops): New. (_initialize_ada_language): Call it. * breakpoint.c (base_breakpoint_ops, bkpt_base_breakpoint_ops) (bkpt_breakpoint_ops): Forward declare. (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops) (catch_syscall_breakpoint_ops, catch_exec_breakpoint_ops) (ranged_breakpoint_ops, watchpoint_breakpoint_ops) (masked_watchpoint_breakpoint_ops) (gnu_v3_exception_catchpoint_ops): Don't statically initialize. (dtor_catch_syscall, dtor_catch_exec): Indirect through the the base class ops table. (null_re_set, null_check_status, null_works_in_software_mode) (null_resources_needed, null_print_one_detail): Delete. (bkpt_dtor): Rename to ... (base_breakpoint_dtor): ... this. Make static. (bkpt_allocate_location): Rename to ... (base_breakpoint_allocate_location): ... this. Make static. (base_breakpoint_re_set): New. (internal_error_pure_virtual_called): New. (base_breakpoint_insert_location, base_breakpoint_remove_location) (base_breakpoint_breakpoint_hit, base_breakpoint_check_status) (base_breakpoint_works_in_software_mode) (base_breakpoint_resources_needed, base_breakpoint_print_it) (base_breakpoint_print_one_detail, base_breakpoint_print_mention) (base_breakpoint_print_recreate): New functions. (base_breakpoint_ops): New global. (bkpt_re_set, bkpt_insert_location, bkpt_remove_location) (bkpt_breakpoint_hit): Make static. (bkpt_check_status): Delete. (bkpt_resources_needed): Make static. (bkpt_works_in_software_mode): Delete. (bkpt_print_it, bkpt_print_mention, bkpt_print_recreate): Make static. (bkpt_breakpoint_ops, internal_breakpoint_ops) (momentary_breakpoint_ops): Don't statically initialize. (internal_bkpt_print_recreate, momentary_bkpt_print_recreate): Delete. (tracepoint_insert_location, tracepoint_remove_location) (tracepoint_check_status, tracepoint_works_in_software_mode) (tracepoint_print_it): Delete. (tracepoint_breakpoint_ops): Don't statically initialize. (initialize_breakpoint_ops): New. (_initialize_breakpoint): Call it. * breakpoint.h (null_re_set, null_works_in_software_mode) (null_resources_needed, null_check_status, null_print_one_detail): (bkpt_dtor, bkpt_allocate_location, bkpt_re_set) (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit) (bkpt_check_status, bkpt_resources_needed) (bkpt_works_in_software_mode, bkpt_print_it) (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate): Delete declarations. (initialize_breakpoint_ops): Declare. 2011-07-25 Pedro Alves * breakpoint.c (bkpt_print_it, internal_bkpt_print_it) (momentary_bkpt_print_it): Simplify. 2011-07-25 Pedro Alves Split internal, momentary and user breakpoints breakpoint_ops tables. * breakpoint.c (internal_breakpoint_ops) (momentary_breakpoint_ops): Forward declare. (create_internal_breakpoint): Add new breakpoint_ops parameter. Pass it down, rather than hardcoding bkpt_breakpoint_ops. (create_overlay_event_breakpoint) (create_std_terminate_master_breakpoint) (create_exception_master_breakpoint): Create breakpoints with internal_breakpoint_ops vtable. (set_longjmp_breakpoint): Create momentary breakpoints with momentary_breakpoint_ops vtable, using momentary_breakpoint_from_master. (create_thread_event_breakpoint, create_jit_event_breakpoint) (create_solib_event_breakpoint): Create breakpoints with internal_breakpoint_ops vtable. (set_momentary_breakpoint): Create breakpoints with momentary_breakpoint_ops vtable. (momentary_breakpoint_from_master): New, factored out from clone_momentary_breakpoint. (clone_momentary_breakpoint): Adjust. (watch_command_1): Create scope breakpoints with momentary_breakpoint_ops vtable. (bkpt_re_set): Remove handling of internal and momentary breakpoints. (bkpt_print_mention, bkpt_print_recreate): New. (bkpt_breakpoint_ops): Adjust. (internal_bkpt_re_set, internal_bkpt_check_status) (internal_bkpt_print_it, internal_bkpt_print_mention) (internal_bkpt_print_recreate, internal_breakpoint_ops): New. (momentary_bkpt_re_set, momentary_bkpt_check_status) (momentary_bkpt_print_it, momentary_bkpt_print_mention) (momentary_bkpt_print_recreate): New. (momentary_breakpoint_ops): New. 2011-07-25 Pedro Alves Implement most breakpoint_ops methods for all breakpoint types, and move the default handlings to the proper callbacks. * breakpoint.c (update_watchpoint): Always call the breakpoint's works_in_software_mode method. (insert_bp_location): Go through breakpoint_ops->insert_location for software and hardware watchpoints. (create_internal_breakpoint): Pass bkpt_breakpoint_ops as breakpoint_ops. (remove_breakpoint_1): Go through breakpoint_ops->remove_location for software and hardware watchpoints. (print_it_typical): Delete. (print_bp_stop_message): Always call the breakpoint_ops->print_it method. (watchpoint_check): Adjust comment. (bpstat_check_location): Simply always call the breakpoint's breakpoint_hit method. (bpstat_stop_status): Always call the breakpoint's check_status method. Remove special cases for watchpoints and internal event breakpoints from here (moved to the check_status implementations). (print_one_breakpoint_location): Assume b->ops is never NULL. Remove static tracepoint marker id printing from here (moved to the print_one_detail callback implementation of tracepoints). (init_bp_location): Assert OPS is never NULL. (allocate_bp_location): Always call the breakpoint's allocate_location method, and remove the default code from here. (free_bp_location): Always call the location's dtor method, and remove the default code from here. (init_raw_breakpoint_without_location): Assert OPS is never NULL. (set_raw_breakpoint_without_location): Add new breakpoint_ops parameter. Pass it down. (set_raw_breakpoint): Ditto. (print_it_catch_fork): Adjust to take a bpstat as argument. (catch_fork_breakpoint_ops): Install methods. (print_it_catch_vfork): Adjust to take a bpstat as argument. (catch_vfork_breakpoint_ops): Install methods. (dtor_catch_syscall): Call the base dtor. (print_it_catch_syscall): Adjust to take a bpstat as argument. (catch_syscall_breakpoint_ops): Install methods. (dtor_catch_exec): Call the base dtor. (print_it_catch_exec): Adjust to take a bpstat as argument. (catch_exec_breakpoint_ops): Install methods. (hw_breakpoint_used_count, hw_watchpoint_used_count): Always call the breakpoint's resources_needed method, and remove the default code from here. (set_momentary_breakpoint): Pass bkpt_breakpoint_ops as breakpoint_ops. (clone_momentary_breakpoint): Clone the original's ops. (mention): Always call the breakpoint's print_mention method, and remove the default code from here. (create_breakpoint_sal): Adjust to pass the ops to set_raw_breakpoint rather than setting it manually. (create_breakpoint): Assert ops is never NULL. Adjust to pass the ops to set_raw_breakpoint_without_location rather than setting it manually. (break_command_1): Pass bkpt_breakpoint_ops as breakpoint_ops. (print_it_ranged_breakpoint): Adjust to take a bpstat as argument. (ranged_breakpoint_ops): Install methods. (break_range_command): Adjust to pass the ops to set_raw_breakpoint rather than setting it manually. (re_set_watchpoint, breakpoint_hit_watchpoint) (check_status_watchpoint, resources_needed_watchpoint) (works_in_software_mode_watchpoint, print_it_watchpoint) (print_mention_watchpoint, print_recreate_watchpoint): New functions. (watchpoint_breakpoint_ops): Install new methods. (print_it_masked_watchpoint): New function. (masked_watchpoint_breakpoint_ops): Install new methods. (watch_command_1): Adjust to pass the right breakpoint_ops to set_raw_breakpoint_without_location rather than setting it manually later. Record the current pspace. (print_it_exception_catchpoint): Adjust to take a bpstat as argument. (gnu_v3_exception_catchpoint_ops): Install new methods. (say_where): New function. (null_re_set, null_check_status, null_works_in_software_mode) (null_resources_needed, null_print_one_detail, bp_location_dtor): New functions. (bp_location_ops): New global. (bkpt_dtor, bkpt_allocate_location, bkpt_re_set) (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit) (bkpt_check_status, bkpt_resources_needed) (bkpt_works_in_software_mode, bkpt_print_it, bkpt_print_mention) (bkpt_print_recreate): New functions. (bkpt_breakpoint_ops): New global. (tracepoint_re_set, tracepoint_insert_location) (tracepoint_remove_location, tracepoint_breakpoint_hit) (tracepoint_check_status, tracepoint_works_in_software_mode) (tracepoint_print_it, tracepoint_print_one_detail) (tracepoint_print_mention, tracepoint_print_recreate): New functions. (tracepoint_breakpoint_ops): New global. (delete_breakpoint): Always call the breakpoint's dtor method, and remove the default handling from here. (breakpoint_re_set_default): Make static. (breakpoint_re_set_one): Always call the breakpoints re_set method, and remove the default handling from here. (trace_command, ftrace_command, strace_command) (create_tracepoint_from_upload): Pass appropriate breakpoints_ops to create_breakpoint. (save_breakpoints): Always call the breakpoint's print_recreate method, and remove the default handling from here. * ada-lang.c (dtor_exception): Call the base dtor. (re_set_exception): Call the base method. (print_it_exception, print_it_catch_exception): Adjust to take a bpstat as argument. (catch_exception_breakpoint_ops): Install methods. (print_it_catch_exception_unhandled): Adjust to take a bpstat as argument. (catch_exception_unhandled_breakpoint_ops): Install methods. (print_it_catch_assert): Adjust to take a bpstat as argument. (catch_assert_breakpoint_ops): Install methods. * breakpoint.h (struct breakpoint_ops): Adjust the print_it method to take a bpstat as argument. (enum print_stop_action): Add describing comments to each enum value. (breakpoint_re_set_default): Delete declaration. (null_re_set, null_works_in_software_mode, null_resources_needed) (null_check_status, null_print_one_detail): Declare. (bkpt_breakpoint_ops): Declare. (bkpt_dtor, bkpt_allocate_location, bkpt_re_set) (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit) (bkpt_check_status, bkpt_resources_needed) (bkpt_works_in_software_mode, bkpt_print_it) (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate): Declare. * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust to pass bkpt_breakpoint_ops. * python/py-breakpoint.c (bppy_init): Ditto. 2011-07-15 Philippe Waroquiers * MAINTAINERS (Write After Approval): Add myself to the list. 2011-07-23 Paul Pluzhnikov * elfread.c (elf_rel_plt_read): Fix off-by-one bug. 2011-07-22 Pedro Alves * i386-nat.c (I386_DR_VACANT, I386_DR_LOCAL_ENABLE) (I386_DR_GLOBAL_ENABLE, I386_DR_DISABLE, I386_DR_SET_RW_LEN) (I386_DR_GET_RW_LEN, I386_DR_WATCH_HIT): Add state parameter and adjust. (dr_mirror, dr_status_mirror, dr_control_mirror): Delete. (struct i386_debug_reg_state): New. (i386_init_dregs): New. (dr_mirror): New. (i386_cleanup_dregs): Use i386_init_dregs. (i386_show_dr): Add state parameter and adjust. (i386_insert_aligned_watchpoint): Ditto. Don't pass the info to the inferior here. (i386_remove_aligned_watchpoint): Likewise. (i386_handle_nonaligned_watchpoint): Add state parameter and adjust. (i386_update_inferior_debug_regs): New. (i386_insert_watchpoint): Work on a local mirror of the debug registers, and only update the inferior on success. (i386_remove_watchpoint): Ditto. (i386_region_ok_for_watchpoint): Adjust. (i386_stopped_data_address): Adjust. (i386_insert_hw_breakpoint): Adjust. (i386_remove_hw_breakpoint): Adjust. 2011-07-22 Tom Tromey * amd64-tdep.c (amd64_pseudo_register_read_value): Rename from amd64_pseudo_register_read. Change arguments. Call mark_value_bytes_unavailable when needed. (amd64_init_abi): Use set_gdbarch_pseudo_register_read_value, not set_gdbarch_pseudo_register_read. * sentinel-frame.c (sentinel_frame_prev_register): Use regcache_cooked_read_value. * regcache.h (regcache_cooked_read_value): Declare. * regcache.c (regcache_cooked_read_value): New function. (regcache_cooked_read): Call gdbarch_pseudo_register_read_value if available. * i386-tdep.h (i386_pseudo_register_read_value): Declare. (i386_pseudo_register_read): Remove. * i386-tdep.c (i386_pseudo_register_read_into_value): Rename from i386_pseudo_register_read. Change arguments. Call mark_value_bytes_unavailable when needed. (i386_pseudo_register_read_value): New function. (i386_gdbarch_init): Call set_gdbarch_pseudo_register_read_value, not set_gdbarch_pseudo_register_read. * gdbarch.sh (pseudo_register_read_value): New method. * gdbarch.c, gdbarch.h: Rebuild. * findvar.c (value_from_register): Call get_frame_register_value. 2011-07-22 Phil Muldoon * event-top.c (cli_command_loop): Use get_prompt, get_suffix, get_prefix. (display_gdb_prompt): Likewise. (change_annotation_level): Likewise. (push_prompt): Likewise. (pop_prompt): Likewise. (handle_stop_sig): Use get_prompt with a level. * top.c (command_loop): Use get_prompt with a level. (set_async_annotation_level): Use set_prompt with a level. (get_prefix): New function. (set_prefix): Ditto. (set_suffix): Ditto. (get_suffix): Ditto. (get_prompt): Accept a level argument. (set_prompt): Accept a level argument. Free old prompts. Set new_async_prompt if level is 0. (init_main): Use set_prompt with a level. Do not set new_async_prompt. * event-top.h (PROMPT, SUFFIX, PREFIX): Move to top.c * top.h: Declare set_suffix, get_suffix, set_prefix, get_prefix. Modify set_prompt, get_prompt to account for levels. * tui/tui-interp.c (tui_command_loop): Use get_prompt with a level. * python/python.c (before_prompt_hook): Use set_prompt. 2011-07-22 Kwok Cheung Yeung * defs.h: Add guard against inclusion in gdbserver. (struct ptid, ptid_t): Move to common/ptid.h. (xfree, xzalloc, xasprintf, xvasprintf, xstrprintf, xstrvprintf, xsnprintf, internal_error): Move to common/common-utils.h. (nomem): Delete. * gdb_assert.h: Move into common/ sub-directory. * gdb_locale.h: Ditto. * gdb_dirent.h: Ditto. * inferior.h (minus_one_ptid, null_ptid, ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid): Move into common/ptid.h. * xml-support.c (xml_escape_text): Move into common/xml-utils.c. (gdb_xml_create_parser_and_cleanup_1, xml_fetch_context_from_file): Change nomem to malloc_failure. * xml-support.h (xml_escape_text): Move into common/xml-utils.h. * utils.c (nomem): Rename to malloc_failure. (xmalloc, xzalloc, xrealloc, xcalloc, xfree, xstrprintf, xasprintf, xvasprintf, xstrvprintf, xsnprintf): Move to common/common-utils.c. (gdb_buildargv): Change nomem to malloc_failure. * infrun.c (null_ptid, minus_one_ptid, ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid): Move into common/ptid.c. (initialize_infrun): Delete initialization of null_ptid and minus_one_ptid. * linux-nat.c (linux_nat_xfer_osdata): Defer to linux_common_xfer_osdata. * Makefile.in (SFILES): Add common/common-utils.c, common/xml-utils.c, common/ptid.c and common/buffer.c. (HFILES_NO_SRCDIR): Add common/common-utils.h, common/xml-utils.h, common/ptid.h, common/buffer.h and common/linux-osdata.h. (COMMON_OBS): Add xml-utils.o, common-utils.o, buffer.o and ptid.o. (common-utils.o, xml-utils.o, ptid.o, buffer.o, linux-osdata.o): New rules. * common/gdb_assert.h: New. * common/gdb_dirent.h: New. * common/gdb_locale.h: New. * common/buffer.c: New. * common/buffer.h: New. * common/ptid.c: New. * common/ptid.h: New. * common/xml-utils.c: New. * common/xml-utils.h: New. * common/common-utils.c: New. * common/common-utils.h: New. * common/linux-osdata.c: New. * common/linux-osdata.h: New. * config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-osdata.o. * config/arm/linux.mh (NATDEPFILES): Ditto. * config/i386/linux.mh (NATDEPFILES): Ditto. * config/i386/linux64.mh (NATDEPFILES): Ditto. * config/ia64/linux.mh (NATDEPFILES): Ditto. * config/m32r/linux.mh (NATDEPFILES): Ditto. * config/m68k/linux.mh (NATDEPFILES): Ditto. * config/mips/linux.mh (NATDEPFILES): Ditto. * config/pa/linux.mh (NATDEPFILES): Ditto. * config/powerpc/linux.mh (NATDEPFILES): Ditto. * config/powerpc/ppc64-linux.mh (NATDEPFILES): Ditto. * config/s390/s390.mh (NATDEPFILES): Ditto. * config/sparc/linux.mh (NATDEPFILES): Ditto. * config/sparc/linux64.mh (NATDEPFILES): Ditto. * config/xtensa/linux.mh (NATDEPFILES): Ditto. 2011-07-21 Matt Rice * NEWS: Add info macros and info definitions commands. 2011-07-21 Phil Muldoon * NEWS: Document Python prompt substitution hook. 2011-07-18 Matt Rice PR macros/12999 * macrotab.h (macro_callback_fn): Add new arguments to callback. * macrotab.c (foreach_macro): Ditto. (foreach_macro_in_scope): Ditto. * macrocmd.c (print_macro_callback): New function. (info_macro_command): Move some code to print_macro_definition. (print_macro_definition): New function. (print_one_macro): Add new arguments to callback. (info_definitions_command): New function. (info_macros_command): Ditto. (_initialize_macrocmd): Add info macros and info definitions commands. * symtab.c (add_macro_name): Add new arguments to callback. 2011-07-21 Phil Muldoon Tom Tromey * top.c (set_prompt): Rewrite to free previous prompt, free asynch_new_prompt and set both on new prompts. * event-top.c (display_gdb_prompt): Add prompt substitution logic. * python/python.c (before_prompt_hook): New function. 2011-07-20 Matt Rice * bfin-tdep.c (bfin_extract_return_value): Fix swapped arguments to store_unsigned_integer. 2011-07-20 Tom Tromey * dwarf2read.c (process_enumeration_scope): Do not call new_symbol in some declaration-only cases. 2011-07-18 Tom Tromey PR symtab/12984: * dwarf2read.c (dwarf2_section_info_def): New typedef. (struct dwarf2_per_objfile) : Change to a VEC. (struct dwarf2_per_cu_data) : Remove. : New field. (dwarf2_locate_sections): Push .debug_types sections onto VEC. (load_cu): Use appropriate section. (create_signatured_type_table_from_index): Add 'section' argument. (dwarf2_read_index): Only allow a single .debug_types section. (dw2_get_file_names): Use appropriate section. (read_type_comp_unit_head): Add 'section' argument. (create_debug_types_hash_table): Loop over all .debug_types sections. (init_cu_die_reader): Use appropriate section. (process_psymtab_comp_unit, load_partial_comp_unit) (load_full_comp_unit, read_die_and_children, find_partial_die) (lookup_die_type, determine_prefix, follow_die_offset): Update. (lookup_signatured_type_at_offset): Add 'section' argument. (read_signatured_type_at_offset): Add 'sect' argument. (read_signatured_type): Use appropriate section. (set_die_type, get_die_type_at_offset): Update. (dwarf2_per_objfile_free): Free all .debug_types sections, and VEC. (write_psymtabs_to_index): Don't allow index with more than one .debug_types section. 2011-07-19 Jan Kratochvil Fix crash if referenced CU is aged out. * dwarf2loc.c (per_cu_dwarf_call): New variable back_to, use to for xfree of block.data. (indirect_pieced_value): New variable back_to, use to for xfree of baton.data. (dwarf2_compile_expr_to_ax): New variable back_to, use to for xfree of block.data. * dwarf2read.c (dwarf2_find_base_address): New prototype. (load_cu): New function from ... (dw2_do_instantiate_symtab): ... the code here ... (process_full_comp_unit): ... and here. (dwarf2_fetch_die_location_block): Call load_cu first. Call xmemdup on retval.data. 2011-07-19 Jan Kratochvil * dwarf2loc.c (indirect_pieced_value): Use check_typedef for VALUE's type. 2011-07-19 Gary Benson * infrun.c (struct execution_control_state): New member stop_func_filled_in. (clear_stop_func, fill_in_stop_func): New functions. (handle_inferior_event): Call clear_stop_func rather than manipulating the execution control state directly. Call fill_in_stop_func lazily as required rather than directly calling find_pc_partial_function in all cases. 2011-07-18 Tom Tromey * dwarf2read.c (read_subrange_type): Use attr_form_is_block when checking for variable-sized array. 2011-07-18 Jean-Charles Delay * varobj.h (varobj_languages): Add vlang_ada definition to the list of supported languages. * varobj.c: Add top definitions and basic implementation of the following callbacks: ada_number_of_children, ada_name_of_variable, ada_name_of_child, ada_path_expr_of_child, ada_value_of_root, ada_value_of_child, ada_type_of_child, ada_value_of_variable. (languages): Register Ada-specific callbacks. (variable_language): Add the Ada case in the language setter switch. 2011-07-17 Jan Kratochvil * remote-mips.c (pmon_download): Fix ignored return value GCC warning. 2011-07-15 Jan Kratochvil Code cleanup. * dwarf2-frame.c (dwarf2_frame_ctx_funcs): New. (execute_stack_op): Use dwarf2_frame_ctx_funcs * dwarf2expr.c (dwarf_get_base_type): Access get_base_type via funcs. (execute_stack_op): Access read_reg, get_frame_base, read_mem, get_frame_cfa, get_tls_address and dwarf_call via funcs. * dwarf2expr.h (struct dwarf_expr_context): New forward declaration. (struct dwarf_expr_context_funcs): New, move here methods from ... (struct dwarf_expr_context): ... here. New fields funcs. * dwarf2loc.c (dwarf_expr_dwarf_call): Access get_frame_pc via funcs. (dwarf_expr_ctx_funcs): New. (dwarf2_evaluate_loc_desc_full): Use dwarf_expr_ctx_funcs. (needs_frame_dwarf_call): Access get_frame_pc via funcs. (needs_frame_ctx_funcs): New. (dwarf2_loc_desc_needs_frame): Use needs_frame_ctx_funcs. 2011-07-15 Fawzi Mohamed * MAINTAINERS (Write After Approval): Add myself to the list. 2011-07-15 Fawzi Mohamed * dwarf2-frame.c (decode_frame_entry, decode_frame_entry_1): Ensure that CIE pointer of an FDE really points to a CIE . 2011-07-15 Hui Zhu * remote.c (remote_get_trace_status): Add comments. 2011-07-14 Jan Kratochvil Code cleanup - constify struct lval_funcs. * dwarf2loc.c (pieced_value_funcs): Make it const. * infrun.c (siginfo_value_funcs): Likewise. * opencl-lang.c (opencl_value_funcs): Likewise. * valops.c (value_assign, value_ind): Make the funcs variable const. * value.c (struct value): Make location.computed.funcs target const. Rearrange the comments. (allocate_computed_value): Make the funcs parameter target const. (value_computed_funcs): Return the funcs target const. (value_free, value_copy, set_value_component_location): Make the funcs variable const. * value.h (allocate_computed_value): Make the funcs parameter target const. (value_computed_funcs): Return the funcs target const. * windows-tdep.c (tlb_value_funcs): Make it const. 2011-07-14 Hui Zhu * remote.c (remote_get_trace_status): Initialize p. 2011-07-13 Jan Kratochvil Work around kgdb. * remote.c (remote_get_trace_status): New variable ex. Put remote_get_noisy_reply into TRY_CATCH. Call exception_fprintf for it. 2011-07-13 Tom Tromey * dwarf2expr.c (execute_stack_op) : Use value_from_contents for final conversion. 2011-07-13 Jan Kratochvil Code cleanup. * dwarf2loc.c (dwarf_expr_frame_base_1, dwarf2_evaluate_loc_desc_full): Indent prototypes so they do not get into tags. 2011-07-12 Jan Kratochvil Code cleanup making also optimized out values lazy. * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use allocate_optimized_out_value. Twice. (loclist_read_variable) Use allocate_optimized_out_value. Once. * findvar.c (read_var_value): Likewise. * value.c (allocate_optimized_out_value): New function. * value.h (allocate_optimized_out_value): New declaration. 2011-07-12 Jan Kratochvil Fix occasional crash of CTRL-C during DWARF read in. * dwarf2read.c (dwarf2_mark_helper): Return on NULL CU. 2011-07-11 Tom Tromey * regcache.c (struct regcache_descr): Fix typo. * i387-tdep.c (i387_supply_xsave): Fix typo. 2011-07-11 Tom Tromey * dwarf2read.c (handle_DW_AT_stmt_list): New function. (read_file_scope, read_type_unit_scope): Use it. 2011-07-11 Jan Kratochvil * dwarf2expr.c (read_sleb128): Fix signed extension overflowing host `int'. 2011-07-11 Phil Muldoon PR python/12438 * python/python.c: Set gdbpy_should_print_stack default to off. (set_python): Deprecate maint set python print-stack to class_deprecate. (_initialize_python): Deprecate maint set/show python print-stack. Add new prefix command, python. Add new setting, print-backtrace. * NEWS: Document set python print-stack. Document default change. 2011-07-11 Phil Muldoon * python/py-inferior.c (infpy_dealloc): New function. (inferior_to_inferior_object): Return a new object, or a new reference to the existing object. (find_thread_object): Cleanup references to inferior. (delete_thread_object): Ditto. * python/py-infthread.c (create_thread_object): Do not increment inferior reference count. 2011-07-08 Tom Tromey * dwarf2loc.c (locexpr_regname): New function. (locexpr_describe_location_piece): Use it. (disassemble_dwarf_expression): Add per_cu argument. Use locexpr_regname. : New cases. (locexpr_describe_location_1): Add per_cu argument. (locexpr_describe_location): Update. (loclist_describe_location): Update. 2011-07-08 Tom Tromey * dwarf2expr.c (execute_stack_op): Add QUIT. 2011-07-07 Hui Zhu Revert: 2011-07-06 Hui Zhu * remote.c (remote_start_remote): Add TRY_CATCH for remote_get_trace_status. * tracepoint.c (disconnect_tracing): Ditto. 2011-07-07 Andrew Burgess * cli/cli-setshow.c (do_setshow_command): Display var_zinteger variables as signed, not unsigned. 2011-07-06 Joel Brobecker * jit.c (jit_inferior_init): Reformat forward declaration. 2011-07-06 Matt Rice * MAINTAINERS (Write After Approval): Add myself to the list. 2011-07-06 Hui Zhu * remote.c (remote_start_remote): Add TRY_CATCH for remote_get_trace_status. * tracepoint.c (disconnect_tracing): Ditto. 2011-07-05 Tom Tromey * symtab.c (operator_chars): Now static. * linespec.c (operator_chars): Don't declare. 2011-07-05 Thiago Jung Bauermann * ui-out.h (ui_out_field_core_addr): Fix typo in comment. 2011-07-05 Tom Tromey * gnu-v3-abi.c (gnuv3_rtti_type): Check TYPE_CPLUS_REALLY_JAVA. * gdbtypes.h (struct cplus_struct_type) : New field. (TYPE_CPLUS_REALLY_JAVA): New macro. * dwarf2read.c (process_structure_scope): Set TYPE_CPLUS_REALLY_JAVA. 2011-07-05 Thiago Jung Bauermann * ada-lang.c: Fix typos. * amd64-tdep.c: Likewise. * breakpoint.c: Likewise. * cli/cli-decode.c: Likewise. * findcmd.c: Likewise. * inline-frame.c: Likewise. * mi/mi-main.c: Likewise. * minsyms.c: Likewise. * monitor.c: Likewise. * monitor.h: Likewise. * prologue-value.c: Likewise. * reverse.c: Likewise. * s390-tdep.c: Likewise. 2011-07-06 Paul Pluzhnikov * jit.c (jit_inferior_init): Forward declare. (jit_breakpoint_re_set_internal): Call jit_inferior_init. 2011-07-04 Joel Brobecker * osabi.c (generic_elf_osabi_sniffer): Minor comment reformatting. 2011-07-04 Tristan Gingold * ada-tasks.c (KNOWN_TASKS_LIST): New macro. (tcb_fieldno): Add activation_link field. (get_known_tasks_addr): Moved and rewritten. (get_tcb_types_info): Set activation_link field. (read_known_tasks_array): Add parameter. Rewritten. (read_known_tasks_list): New function. (read_known_tasks): New function. (ada_build_task_list): Call read_known_tasks instead of read_known_tasks_array. * ravenscar-thread.c: Add first_task_name constant. (has_ravenscar_runtime): Check for task list too. 2011-07-04 Tristan Gingold * ada-tasks.c: Renames fieldno to actb_fieldno. (ada_get_task_number): Indentation. (get_tcb_types_info): Remove all parameters. Write directly the globals. (ptid_from_atcb_common): Adjust. (read_atcb): Adjust. 2011-07-04 Thiago Jung Bauermann * symtab.c (in_prologue): Remove mention of ppc's refine_prologue_limit. 2011-07-04 Thiago Jung Bauermann * ui-out.c (ui_out_field_core_addr): Mention that the function description is in the header file. * ui-out.h (ui_out_field_core_addr): Document function. 2011-07-04 Thiago Jung Bauermann * ui-out.c (ui_out_get_field_separator): Remove unused function. * ui-out.h (ui_out_get_field_separator): Remove prototype. 2011-07-04 Thiago Jung Bauermann * symtab.c (expand_line_sal): Remove empty line. 2011-07-04 Thomas Schwinge * osabi.c (generic_elf_osabi_sniffer) : Handle in the same way as ELFOSABI_NONE. : Remove cases. 2011-07-04 Thiago Jung Bauermann * breakpoint.c: Fix typos in comments. * linespec.c: Likewise. * symtab.c: Likewise. 2011-07-04 Joel Brobecker * dwarf2-frame.c (dwarf2_build_frame_info): Do not load .eh_frame section in separate object files. 2011-07-04 Jan Kratochvil Fix false GCC warning. * linespec.c (decode_line_1): Initialize values. 2011-07-01 Jan Kratochvil * linespec.c (find_method): Accept the function type automatically only if it was specified with parameter types. 2011-07-01 Jan Kratochvil Stop on first linespec terminator instead of eating what we can. * linespec.c (is_linespec_boundary): New function. (name_end): Remove function. (keep_name_info): New parameter on_boundary, replace the body. (decode_line_1): Provide the parameter to keep_name_info. (decode_compound): Likewise. Drop the trailing java return type handling. Twice. 2011-07-01 Jan Kratochvil Fall back linespec to minimal symbols. * linespec.c (decode_line_1): New variable ex, saved_argptr. Protect decode_compound by TRY_CATCH, fall back on minsyms if it failed. (find_method, symbol_found): Change error to cplusplus_error. 2011-07-01 Jan Kratochvil * symtab.c (symbol_find_demangled_name): Remove DMGL_VERBOSE. 2011-07-01 Jan Kratochvil Tom Tromey * dwarf2read.c (check_physname): New variable. (dwarf2_physname): Prefer DW_AT_linkage_name over dwarf2_compute_name. (show_check_physname): New function. (_initialize_dwarf2_read): Add `check-physname' for check_physname. 2011-07-01 Joel Brobecker * machoread.c (macho_symfile_read): Delete OBE comment. 2011-07-01 Joel Brobecker * machoread.c (struct macho_oso_data): Delete. (current_oso): Delete. (macho_relocate_common_syms): New function, mostly extracted out of (macho_add_oso_symfile): Call macho_relocate_common_syms. Remove code that sets and unset current_oso. (macho_symfile_relocate): Delete handling of common symbols, now moved to macho_relocate_common_syms. 2011-07-01 Joel Brobecker * darwin-nat.c (darwin_ptrace): Add documentation. Set errno to zero before calling ptrace. If ptrace returns -1 and errno is zero, then change then return zero. (darwin_kill_inferior): Issue a warning instead of triggering a failed assertion when the PT_KILL ptrace operations returned nonzero. 2011-07-01 Joel Brobecker * darwin-nat.c (darwin_detach): Call darwin_resume_inferior only when inf->private->no_ptrace. 2011-07-01 Joel Brobecker * ada-lang.c (print_it_exception): Print temporary catchpoints as "Temporary catchpoint". (print_mention_exception): Likewise. 2011-07-01 Tom Tromey * jv-lang.c (java_language_defn): Use java_printchar, java_printstr. (java_get_encoding): New function. (java_emit_char): Use generic_emit_char. (java_printchar): New function. (java_printstr): Likewise. 2011-07-01 Joel Brobecker * ada-typeprint.c (print_record_type): If unable to decode the name of the parent type, use the encoded name. 2011-07-01 Jean-Charles Delay * ada-typeprint.c (ada_print_type): Fix both PAD type and pointer to constrained packed array type output. * ada-valprint.c (ada_val_print_1): Fix pointer to constrained packed array output. 2011-07-01 Jean-Charles Delay * ada-typeprint.c (print_array_type): removed if condition on show being negative for bounds printing. 2011-07-01 Joel Brobecker * ada-lang.c (ada_identical_enum_types_p): New function. (symbols_are_identical_enums): New function. (remove_extra_symbols): Do nothing if NSYMS < 2. Use symbols_are_identical_enums. 2011-07-01 Joel Brobecker * ada-valprint.c (ada_value_print): Handle typedefs. 2011-07-01 Joel Brobecker * ada-lang.c (ada_evaluate_subexp): Add missing word in comment. 2011-07-01 Eric Botcazou * ada-lang.c (thin_descriptor_type): Deal with typedefs. (decode_constrained_packed_array): Likewise. (ada_evaluate_subexp) : Likewise. 2011-07-01 Joel Brobecker * ada-exp.y (convert_char_literal): Handle typedef types. 2011-07-01 Joel Brobecker * ada-lang.c (ada_remove_trailing_digits): Expand documentation. 2011-06-30 Tom Tromey * varobj.c (varobj_create): Call do_cleanups on early exit path. * valops.c (find_overload_match): Call do_cleanups on early exit path. * solib.c (solib_find): Call do_cleanups on early exit path. 2011-06-30 Tom Tromey * symfile-mem.c (symbol_file_add_from_memory): Call do_cleanups. * solib-svr4.c (open_symbol_file_object): Call do_cleanups on all return paths. Defer final do_cleanups until last return. * arm-tdep.c (arm_exidx_new_objfile): Make null cleanup after early return. 2011-06-30 Tom Tromey * Makefile.in (SUBDIR_MI_CFLAGS): Don't add -DMI_OUT=1. 2011-06-30 Andrew Burgess * MAINTAINERS (Write After Approval): Add myself to the list. 2011-06-29 Jan Kratochvil Disable epilogue unwinders on recent GCCs. * amd64-tdep.c (amd64_in_function_epilogue_p): New variable symtab, initialize it, return 0 on EPILOGUE_UNWIND_VALID. * dwarf2read.c (process_full_comp_unit): Initialize EPILOGUE_UNWIND_VALID. * i386-tdep.c (i386_in_function_epilogue_p): New variable symtab, initialize it, return 0 on EPILOGUE_UNWIND_VALID. * symtab.h (struct symtab): New field epilogue_unwind_valid. 2011-06-29 Jan Kratochvil Code cleanup - reformatting. * dwarf2read.c (producer_is_gcc_ge_4_0): Rename to ... (producer_is_gcc_ge_4): ... here, change the return value. (process_full_comp_unit): New variable gcc_4_minor, adjust the value interpretation. 2011-06-29 Jan Kratochvil Fix non-only rename list for Fortran modules import. * cp-namespace.c (cp_scan_for_anonymous_namespaces): Adjust the cp_add_using_directive caller. (cp_add_using_directive): New parameter excludes, describe it. New variables ix and param. Compare if also excludes match. Allocate NEW with variable size, initialize EXCLUDES there. (cp_lookup_symbol_imports): New variable excludep, test current->EXCLUDES with it. * cp-support.h: Include vec.h. (struct using_direct): New field excludes, describe it. (DEF_VEC_P (const_char_ptr)): New. (cp_add_using_directive): New parameter excludes. * defs.h (const_char_ptr): New typedef. * dwarf2read.c (read_import_statement): New variables child_die, excludes and cleanups, read in excludes. (read_namespace): Adjust the cp_add_using_directive caller. 2011-06-29 Jan Kratochvil Code cleanup. * cp-namespace.c (cp_add_using_directive): Turn positive comparison to negative comparisons. 2011-06-29 André Pönitz * mi/mi-main.c (mi_cmd_list_features): Emit breakpoint-notifications. 2011-06-29 Tom Tromey PR fortran/10036: * valprint.h (generic_emit_char, generic_printstr): Declare. * valprint.c (wchar_printable, append_string_as_wide) (print_wchar): Move from c-lang.c. (generic_emit_char): New function; mostly taken from c_emit_char. (generic_printstr): New function; mostly taken from c_printstr. * f-valprint.c (f_val_print) : Handle strings represented as arrays. : Treat as TYPE_CODE_INT; recognize as character type. * f-typeprint.c (f_type_print_base) : Treat identically to TYPE_CODE_INT. * f-lang.c (f_get_encoding): New function. (f_emit_char): Use generic_emit_char. (f_printchar): Replace comment. (f_printstr): Use generic_printstr. * dwarf2read.c (read_base_type) : Handle Fortran "character" types specially. : Make TYPE_CODE_CHAR for Fortran. * c-lang.c (wchar_printable, append_string_as_wide, print_wchar): Move to valprint.c (c_emit_char): Call generic_emit_char. (c_printstr): Call generic_printstr. 2011-06-29 Gary Benson * breakpoint.c (bpstat_what): Removed duplicated case. 2011-06-28 Tom Tromey * python/python-internal.h (PY_SSIZE_T_CLEAN): Define. 2011-06-27 Tom Tromey * valops.c (find_overload_match): Call do_cleanups before early return. * top.c (execute_command): Call do_cleanups before early return. (command_loop): Likewise. * stack.c (backtrace_command): Make a null cleanup early. Don't conditionally call do_cleanups. * python/py-value.c (TRY_CATCH): Move cleanup handling into TRY_CATCH. * python/py-breakpoint.c (gdbpy_breakpoint_has_py_cond): Rearrange so cleanups are always run. * mi/mi-cmd-var.c (mi_cmd_var_delete): Reset old_cleanups. * findcmd.c (parse_find_args): Call do_cleanups on early return path. * dbxread.c (elfstab_build_psymtabs): Make a null cleanup early. Don't conditionally call do_cleanups. * cli/cli-script.c (execute_user_command): Initialize 'old_chain' later. 2011-06-27 Eric Botcazou * MAINTAINERS (Write After Approval): Use default email address. 2011-06-27 Joel Brobecker * MAINTAINERS (Write After Approval): Add Eric Botcazou. 2011-06-27 Eric Botcazou * sparc-tdep.h (struct sparc_frame_cache): Add frame_offset, saved_regs_mask and copied_regs_mask fields. (sparc_record_save_insn): New prototype. * sparc-tdep.c (sparc_alloc_frame_cache): Initialize the new fields. (sparc_record_save_insn): New function. (sparc_analyze_prologue): Add head comment. Recognize store insns of call-saved registers. Use OFFSET consistently. Recognize flat frames and cache their settings. (sparc32_skip_prologue): Handle flat frames. (sparc_frame_cache): Add frame_offset to the base address. (sparc32_frame_cache): Adjust to new frame description. (sparc32_frame_prev_register): Likewise. * sparc64-tdep.c (sparc64_frame_prev_register): Likewise. * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise. * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise. * sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_cache): Force the frame by calling sparc_record_save_insn. * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_cache): Likewise. * sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_cache): Likewise. * sparc64obsd-tdep.c (sparc64obsd_frame_cache): Likewise. 2011-06-27 Tristan Gingold * dwarf2read.c (struct dwarf2_section_info): Replace was_mmapped field by map_addr and map_len. (dwarf2_read_section): Adjust for the new bfd_mmap api. (munmap_section_buffer): Likewise. 2011-06-24 Tom Tromey * varobj.c (update_dynamic_varobj_children): Make 'name' const. * symtab.h (lookup_struct, lookup_union, lookup_enum): Update. * python/python.c (gdbpy_parameter): Make 'arg' const. (execute_gdb_command): Likewise. (gdbpy_decode_line): Likewise. Copy it. (gdbpy_parse_and_eval): Make 'expr_string' const. Copy it. (gdbpy_write): Make 'arg' const. * python/py-type.c (typy_lookup_typename): Make 'type_name' const. (gdbpy_lookup_type): Likewise. * python/py-prettyprint.c (print_children): Make 'name' const. * python/py-param.c (parmpy_init): Make 'name' const. Copy it. * python/py-inferior.c (infpy_write_memory): Make 'buf_len' a Py_ssize_t. * python/py-function.c (fnpy_init): Make 'name' const. * python/py-cmd.c (cmdpy_init): Make 'name' const. Copy it. (gdbpy_string_to_argv): Make 'input' const. * python/py-breakpoint.c (bppy_init): Make 'spec' const. Copy it. * gdbtypes.h (lookup_typename): Update. * gdbtypes.c (lookup_typename): Make 'name' const. (lookup_struct): Likewise. (lookup_union): Likewise. (lookup_enum): Likewise. 2011-06-24 Tom Tromey * Makefile.in (HFILES_NO_SRCDIR): Add "common/" to gdb_thread_db.h. Move all common/ entries to be together. (TAGS): Don't depend on DEPFILES. 2011-06-23 Yao Qi * infrun.c (start_remote): Move call init_wait_for_inferior to ... * remote.c (remote_start_remote): ... here. * monitor.c (monitor_open): ... here. 2011-06-23 Andrew Burgess * gdbtypes.c (append_composite_type_field_aligned): Fix calculation of bit position based on alignment. 2011-06-22 Pedro Alves * breakpoint.c (bpstat_stop_status): Call the check_status breakpoint_ops method. (print_one_breakpoint_location): Also print the condition for Ada exception catchpoints. (allocate_bp_location): New, factored out from allocate_bp_location. (allocate_bp_location): Adjust. Call the owner breakpoint's allocate_location method, if there is one. (free_bp_location): Call the locations's dtor method, if there is one. (init_raw_breakpoint_without_location): New breakpoint_ops parameter. Use it. (set_raw_breakpoint_without_location): Adjust. (init_raw_breakpoint): New breakpoint_ops parameter. Pass it down. (set_raw_breakpoint): Adjust. (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops) (catch_syscall_breakpoint_ops): Install NULL allocate_location, re_set and check_status methods. (init_catchpoint): Don't memset, initialize thread, addr_string and enable_state. Pass the ops down to init_raw_breakpoint. (install_catchpoint): Rename to ... (install_breakpoint): ... this, and make extern. (create_fork_vfork_event_catchpoint): Adjust. (catch_exec_breakpoint_ops): Install NULL allocate_location, re_set and check_status methods. (create_syscall_event_catchpoint): Adjust. (ranged_breakpoint_ops, watchpoint_breakpoint_ops) (masked_watchpoint_breakpoint_ops): Install NULL allocate_location, re_set and check_status methods. (catch_exec_command_1): Adjust. (gnu_v3_exception_catchpoint_ops): Install NULL allocate_location, re_set and check_status methods. (create_ada_exception_breakpoint): Rename to ... (init_ada_exception_breakpoint): ... this. Add a struct breakpoint parameter, and delete the exp_string, cond_string and cond parameters. Use init_raw_breakpoint, and don't install or mention the breakpoint yet. Don't clear breakpoint fields that init_raw_breakpoint already clears. (re_set_breakpoint): Delete, split into ... (breakpoint_re_set_default, prepare_re_set_context): ... these new functions. (breakpoint_re_set_one): Call the breakpoint's breakpoint_ops->re_set implementation, if there's one. Adjust. * breakpoint.h: Forward declare struct bpstats and struct bp_location. (struct bp_location_ops): New type. (struct bp_location): New field `ops'. (struct breakpoint_ops): New `allocate_location', `re_set' and `check_status' fields. Make `breakpoint_hit''s description match reality. (init_bp_location): Declare. (breakpoint_re_set_default): Declare. (create_ada_exception_breakpoint): Rename to ... (init_ada_exception_breakpoint): ... this. Add a struct breakpoint parameter, and delete the exp_string, cond_string and cond parameters. (install_breakpoint): Declare. * ada-lang.c: Include exceptions.h. : Update. (struct ada_catchpoint_location): New type. (ada_catchpoint_location_dtor): New function. (ada_catchpoint_location_ops): New global. (ada_catchpoint): New type. (create_excep_cond_exprs): New function. (dtor_exception, allocate_location_exception, re_set_exception) (should_stop_exception, check_status_exception): New functions. (print_one_exception, print_mention_exception) (print_recreate_exception): Adjust. (dtor_catch_exception, allocate_location_catch_exception) (re_set_catch_exception, check_status_catch_exception): New functions. (catch_exception_breakpoint_ops): Install them. (dtor_catch_exception_unhandled) (allocate_location_catch_exception_unhandled) (re_set_catch_exception_unhandled) (check_status_catch_exception_unhandled): New functions. (catch_exception_unhandled_breakpoint_ops): Install them. (dtor_catch_assert, allocate_location_catch_assert) (re_set_catch_assert, check_status_catch_assert): New functions. (catch_assert_breakpoint_ops): Install them. (ada_exception_catchpoint_p): Delete. (catch_ada_exception_command_split) (ada_exception_catchpoint_cond_string): Rename exp_string parameter to excep_string. Adjust. (ada_parse_catchpoint_condition): Delete. (ada_exception_sal): Rename the exp_string parameter to excep_string. Delete the cond_string and cond parameters. Adjust. (ada_decode_exception_location): Rename the exp_string parameter to excep_string. Delete the cond_string and cond parameters. Adjust. (create_ada_exception_catchpoint): New function. (catch_ada_exception_command, ada_decode_assert_location) (catch_assert_command): Adjust. * ada-lang.h (ada_exception_catchpoint_p): Delete declaration. 2011-06-22 Pedro Alves * ada-lang.c: Include arch-utils.h. (ada_decode_exception_location): Make static. (catch_ada_exception_command): Moved here from breakpoint.c. (ada_decode_assert_location): Make static. (catch_assert_command): Moved here from breakpoint.c. (_initialize_ada_lang): Install the exception and assert catchpoint commands here. * ada-lang.h (ada_decode_exception_location) (ada_decode_assert_location): Delete declarations. * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): Moved to breakpoint.h. (create_ada_exception_breakpoint): Make extern. (catch_ada_exception_command, catch_assert_command): Moved to ada-lang.c. (add_catch_command): Make extern. (_initilize_breakpoint): Don't install the exception and assert catchpoint commands here. * breakpoint.h (CATCH_PERMANENT, CATCH_TEMPORARY): Moved from breakpoint.c (add_catch_command, create_ada_exception_breakpoint): Declare. 2011-06-22 Pedro Alves * breakpoint.c (init_raw_breakpoint_without_location): Don't add the breakpoint to the breakpoint chain here. (set_raw_breakpoint_without_location): Add the breakpoint to the breakpoint chain here. (init_raw_breakpoint): Adjust comments. (set_raw_breakpoint): Add the breakpoint to the breakpoint chain here. (init_catchpoint): Don't set the catchpoint's breakpoint number here. (install_catchpoint): New function. (create_fork_vfork_event_catchpoint) (create_syscall_event_catchpoint, catch_exec_command_1): Adjust to use install_catchpoint. 2011-06-22 Pedro Alves * breakpoint.c (create_catchpoint_without_mention) (create_catchpoint): Delete. 2011-06-22 Pedro Alves * breakpoint.h (struct breakpoint): Delete field `exec_pathname'. * breakpoint.c (init_raw_breakpoint_without_location): Remove reference to exec_pathname. (struct exec_catchpoint): New type. (dtor_catch_exec): New function. (insert_catch_exec, print_it_catch_exec, print_one_catch_exec): Adjust. (catch_exec_breakpoint_ops): Install dtor_catch_syscall. (catch_exec_command_1): Adjust to use init_catchpoint. (delete_breakpoint): Remove reference to exec_pathname. 2011-06-22 Pedro Alves * breakpoint.h (struct breakpoint_ops): New field `dtor'. (struct breakpoint): Delete field `syscalls_to_be_caught'. * breakpoint.c (init_raw_breakpoint_without_location): Remove reference to syscalls_to_be_caught. (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops): Install a NULL `dtor'. (struct syscall_catchpoint): New type. (dtor_catch_syscall): New function. (insert_catch_syscall, remove_catch_syscall) (breakpoint_hit_catch_syscall, print_one_catch_syscall) (print_recreate_catch_syscall): Adjust. (catch_syscall_breakpoint_ops): Install dtor_catch_syscall. (catch_exec_breakpoint_ops): Install a NULL `dtor'. (create_syscall_event_catchpoint): Adjust to use init_catchpoint. (ranged_breakpoint_ops, watchpoint_breakpoint_ops) (masked_watchpoint_breakpoint_ops) (gnu_v3_exception_catchpoint_ops): Install a NULL `dtor'. (delete_breakpoint): Call the `dtor' breakpoint_ops method, if there is one. Remove references to syscalls_to_be_caught. (catching_syscall_number): Adjust. * ada-lang.c (catch_exception_breakpoint_ops) (catch_exception_unhandled_breakpoint_ops) (catch_assert_breakpoint_ops): Install a NULL `dtor'. 2011-06-22 Pedro Alves * breakpoint.h (struct breakpoint): Delete forked_inferior_pid field. * breakpoint.c (init_raw_breakpoint_without_location): Remove reference to forked_inferior_pid. (struct fork_catchpoint): New type. (breakpoint_hit_catch_fork, print_it_catch_fork) (print_one_catch_fork, breakpoint_hit_catch_vfork) (print_it_catch_vfork, print_one_catch_vfork): Adjust. (create_fork_vfork_event_catchpoint): Adjust to use init_catchpoint. 2011-06-22 Pedro Alves * breakpoint.c (add_to_breakpoint_chain) (init_raw_breakpoint_without_location): New functions, factored out from ... (set_raw_breakpoint_without_location): ... this one. (init_raw_breakpoint): New function, factored out from set_raw_breakpoint and adjusted to use init_raw_breakpoint_without_location. (set_raw_breakpoint): Adjust. (init_catchpoint): New function, factored out from create_catchpoint_without_mention and adjusted to use init_raw_breakpoint. (create_catchpoint_without_mention): Adjust. 2011-06-22 Tom Tromey * dwarf2expr.c (execute_stack_op) : Treat type argument of 0 specially. 2011-06-22 Yao Qi * infrun.c (handle_inferior_event): Remove write-only local variable `sw_single_step_trap_p'. 2011-06-20 Tom Tromey * symtab.c (lookup_language_this): End loop if block is NULL. 2011-06-17 Tom Tromey * valops.c (value_of_this): Use lookup_language_this. * symtab.h (lookup_language_this): Declare. * symtab.c (lookup_language_this): New function. (lookup_symbol_aux): Use lookup_language_this. * ax-gdb.c (gen_expr) : Use lookup_language_this. 2011-06-17 Tom Tromey * value.h (value_of_this): Update. (value_of_local): Remove. * valops.c (value_of_this): Rename from value_of_local. Change parameters. * p-exp.y (exp): Update. (variable): Likewise. * eval.c (evaluate_subexp_standard) : Use value_of_this. 2011-06-17 Tom Tromey * valops.c (value_of_local): Complain if NAME is NULL. * std-operator.def (OP_OBJC_SELF): Remove. * parse.c (operator_length_standard) : Remove. * objc-exp.y (name_not_typename): Use OP_THIS. * expprint.c (print_subexp_standard) : Print language's name for "this". : Remove. * eval.c (evaluate_subexp_standard) : Remove. 2011-06-16 Tristan Gingold * python/py-events.h (gdb_py_events): Make it extern. * python/py-evtregistry.c (gdb_py_events): Declare. 2011-06-16 Hui Zhu * remote.c (remote_trace_set_readonly_regions): Add check for remote_protocol_packets[PACKET_qXfer_traceframe_info].support before output warning. 2011-06-15 Ulrich Weigand * arm-linux-tdep.c: Include "auxv.h". (AT_HWCAP): Define. (ARM_LINUX_SIZEOF_VFP): Define. (arm_linux_supply_vfp): New function. (arm_linux_collect_vfp): Likewise. (arm_linux_regset_from_core_section): Handle .reg-arm-vfp sections. (arm_linux_fpa_regset_sections): New variable. (arm_linux_vfp_regset_sections): Likewise. (arm_linux_core_read_description): New function. (arm_linux_init_abi): Install arm_linux_core_read_description and arm_linux_fpa_regset_sections or arm_linux_vfp_regset_sections as appropriate for the architecture. * arm-tdep.h (struct gdbarch_tdep): Add member "vfpregset". (tdesc_arm_with_m): Declare. (tdesc_arm_with_iwmmxt): Likewise. (tdesc_arm_with_vfpv2): Likewise. (tdesc_arm_with_vfpv3): Likewise. (tdesc_arm_with_neon): Likewise. * arm-linux-nat.c: Move features/*.c includes ... * arm-tdep.c: ... here. * arm-linux-nat.c (arm_linux_read_description): Move initializing target description data structures ... * arm-tdep.c (_initialize_arm_tdep): ... here. * arm-linux-nat.c (HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3, HWCAP_VFPv3D16): Move definitions ... * arm-linux-tdep.h: ... here. 2011-06-15 Hui Zhu * remote.c (remote_trace_set_readonly_regions): Add a check for target_buf_size. 2011-06-14 Tom Tromey * coffread.c (coffread_objfile): Rename from current_objfile. * dbxread.c (dbxread_objfile): Rename from current_objfile. * mdebugread.c (mdebugread_objfile): Rename from current_objfile. 2011-06-14 Tom Tromey * jv-lang.c (jv_type_objfile_data_key, dynamics_objfile) (class_symtab): Remove. (jv_dynamics_progspace_key): New global. (jv_per_objfile_free): Reset program space data. Update assert. Don't clear globals. (get_dynamics_objfile): Use and set program space data. (get_java_class_symtab): Use get_dynamics_objfile. (add_class_symbol): Likewise. (java_link_class_type): Likewise. (java_object_type, jv_clear_object_type, set_java_object_type): Remove. (get_java_object_type): Update. Don't cache result. (is_object_type): Don't call set_java_object_type. (_initialize_java_language): Don't set jv_type_objfile_data_key; initialize jv_dynamics_progspace_key. 2011-06-14 Tom Tromey * symtab.h (current_objfile): Don't declare. * objfiles.h (current_objfile): Don't declare. * objfiles.c (current_objfile): Remove. * mdebugread.c (current_objfile): New file-scope global. * dbxread.c (current_objfile): New file-scope global. * coffread.c (current_objfile): New file-scope global. 2011-06-13 Pedro Alves * 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. 2011-06-12 Mark Kettenis * 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. 2011-06-12 Mark Kettenis * i386-tdep.c (i386_match_insn_block): Use length of the proper instruction when walking back through the instruction stream. 2011-06-10 Jan Kratochvil * symtab.c (output_partial_symbol_filename): Exchange the filename and fullname parameters order. 2011-06-10 Jan Kratochvil 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. 2011-06-07 Doug Evans * cc-with-index.sh: Fix typos in comment. Look for ../../gdb, for fullname.exp. 2011-06-07 Jan Kratochvil Pedro Alves * cli/cli-cmds.c (shell_escape): Use waitpid. * rs6000-nat.c (exec_one_dummy_insn): Likewise. 2011-06-07 Tristan Gingold * xcoffread.c (dwarf2_xcoff_names): New variable. (aix_process_linenos): Add a guard. (xcoff_symfile_finish): Free dwarf2. (xcoff_initial_scan): Add dwarf2 support. 2011-06-06 Pedro Alves * 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. 2011-06-03 Joel Brobecker (obvious fix) From Stephen Kitt * breakpoint.c, breakpoint.h, cli/cli-dump.c, dwarf2expr.c, gdbarch.c, gdbarch.sh, remote.c: Various spelling fixes. 2011-06-03 Joel Brobecker * dwarf2expr.c (execute_stack_op) [DW_OP_deref]: Handle the case where ADDR_SIZE is different from TYPE_LENGTH (type). 2011-06-03 Tom Tromey * python/py-inferior.c (python_inferior_exit): Use inferior's exit code fields. * python/py-exitedevent.c (create_exited_event_object): Change type of 'exit_code'. Optionally add exit_code attribute. (emit_exited_event): Change type of 'exit_code'. * python/py-event.h (emit_exited_event): Update. * mi/mi-interp.c (mi_inferior_exit): Print exit code. * infrun.c (handle_inferior_event): Set exit code fields on inferior. * inferior.h (struct inferior) : New fields. * inferior.c (exit_inferior_1): Initialize new fields. 2011-06-03 Tom Tromey * dwarf2expr.c (get_signed_type): New function. (execute_stack_op) : Always perform a signed shift. 2011-06-02 Keith Seitz * objc-lang.c (find_methods): Increment objfile_csym earlier. 2011-06-02 Pedro Alves * top.h (simplified_command_loop): Delete declaration. 2011-06-01 Mike Frysinger * remote-sim.c (gdbsim_open): Add the strlen of " --sysroot=" and gdb_sysroot to the "len" variable. Append both to "arg_buf". 2011-06-01 Yao Qi * objfiles.h (obj_section_addr): Update reference to objfile from `abfd' to `obfd'. (obj_section_endaddr): Likewise. 2011-06-01 Daniel Jacobowitz * MAINTAINERS: Update my email address and affiliation. Also update Ian Lance Taylor's affiliation. Use UTF-8 for ludo@gnu.org. 2010-05-31 Keith Seitz PR c++/12750 * linespec.c (get_search_block): New function. (find_methods): Add FILE_SYMTATB parameter and use it and get_search_block to pass an appropriate block to lookup_symbol_in_namespace. (decode_line_1): Record if *ARGPTR is single-quote enclosed. Check if *ARGPTR starts with a filename first. If it does, call locate_first_half again to locate the next "first half" of the linespec. Pass FILE_SYMTATB to decode_objc and decode_compound. Swallow the trailing single-quote if IS_SQUOTE_ENCLOSED. (locate_first_half): Stop on the first colon seen. (decode_compound): Add FILE_SYMTAB parameter. Pass FILE_SYMTAB to lookup_prefix_sym and find_method. (lookup_prefix_sym): Add FILE_SYMTAB parameter and use get_search_block with lookup_symbol. (find_method): Add FILE_SYMTAB parameter and pass it to find_methods. (decode_objc): Use get_search_block. 2010-05-31 Keith Seitz PR symtab/12704 * cp-namespace.c (ANONYMOUS_NAMESPACE_LEN): Remove. (cp_scan_for_anonymous_namespaces): Use CP_ANONYMOUS_NAMESPACE_STR and CP_ANONYMOUS_NAMESPACE_LEN. (cp_is_anonymous): Likewise. * cp-support.h (CP_ANONYMOUS_NAMESPACE_STR): Define. (CP_ANONYMOUS_NAMESPACE_LEN): Define. * dwarf2read.c (namespace_name): Likewise. (fixup_partial_die): Likewise. * linespec.c (decode_compound): If CP_ANONYMOUS_NAMESPACE_STR is seen in the input, keep it. 2011-05-30 Pedro Alves * target.h (enum inferior_event_type): Delete INF_QUIT_REQ. * inf-loop.h (inferior_event_handler_wrapper): Delete. * inf-loop.c (inferior_event_handler_wrapper): Delete. (inferior_event_handler): Don't handle INF_QUIT_REQ. * remote.c (_initialize_remote): Register async_remote_interrupt_twice directly as sigint_remote_twice_token event. 2011-05-30 Pedro Alves * target.h (enum inferior_event_type): Delete INF_ERROR. * inf-loop.c (inferior_event_handler): Don't handle INF_ERROR. 2011-05-30 Pedro Alves * interps.c (interp_set): Don't cancel continuations. 2011-05-30 Jan Kratochvil * linux-nat.c (linux_lwp_is_zombie): Use xsnprintf. 2011-05-30 Pedro Alves * continuations.h (continuation_ftype): Add `err' parameter. Document parameters. (do_all_continuations, do_all_continuations_thread) (do_all_intermediate_continuations) (do_all_intermediate_continuations_thread) (do_all_inferior_continuations): Add `err' parameter. * continuations.c (do_my_continuations_1, do_my_continuations) (do_all_inferior_continuations, do_all_continuations_ptid) (do_all_continuations_thread_callback) (do_all_continuations_thread, do_all_continuations) (do_all_intermediate_continuations_thread_callback) (do_all_intermediate_continuations_thread) (do_all_intermediate_continuations): Add `err' parameter, and pass it down all the way to the continuations proper. * inf-loop.c (inferior_event_handler): If fetching an inferior event throws an error, don't pop the target, and still call the continuations, but with `err' set. Adjust all other continuation calls. * breakpoint.c (until_break_command_continuation): Add `err' parameter. * infcmd.c (step_1_continuation): Add `err' parameter. Don't issue another step if `err' is set. (struct until_next_continuation_args): New. (until_next_continuation): Add `err' parameter. Adjust. (until_next_command): Adjust. (struct finish_command_continuation_args): Add `thread' field. (finish_command_continuation): Add `err' parameter. Handle it. (finish_forward): Adjust. (attach_command_continuation): Add `err' parameter. Handle it. * infrun.c (infrun_thread_stop_requested_callback): Adjust to cancel the continuations. * interps.c (interp_set): Adjust to cancel the continuations. * thread.c (clear_thread_inferior_resources): Adjust to cancel the continuations rather than discarding. (free_thread): Don't clear thread inferior resources here. (delete_thread_1): Do it here instead. And do it before removing the thread from the threads list. Tag the thread as exited before clearing thread inferior resources. 2011-05-30 Joel Brobecker * infcall.c (call_function_by_hand): Rephrase error message. 2011-05-27 Pedro Alves * defs.h (struct thread_info, struct inferior): Delete forward declarations. * breakpoint.h (struct thread_info): New forward declaration. * observer.sh (struct inferior): New forward declaration. * python/python-internal.h (struct inferior): New forward declaration. 2011-05-27 Pedro Alves * defs.h (struct continuation, continuation_ftype) (continuation_free_arg_ftype, add_continuation) (do_all_continuations, do_all_continuations_thread) (discard_all_continuations, discard_all_continuations_thread) (add_intermediate_continuation, do_all_intermediate_continuations) (do_all_intermediate_continuations_thread) (discard_all_intermediate_continuations) (discard_all_intermediate_continuations_thread) (add_inferior_continuation, do_all_inferior_continuations) (discard_all_inferior_continuations): Move to ... * continuations.h: ... this new file. * breakpoint.c, continuations.c, event-top.c, inf-loop.c, infcmd.c, inferior.c, infrun.c, interps.c: Include continuations.h. 2011-05-27 Jan Kratochvil Doug Evans Fix PR 10970, PR 12702. * linux-nat.c (linux_lwp_is_zombie): New function. (wait_lwp): Initialize status. New variable prev_mask. Block signals. Check for linux_lwp_is_zombie. Use WNOHANG and sigsuspend. 2011-05-27 Pedro Alves * defs.h (continuation_ftype, continuation_free_arg_ftype): New typedefs. (add_continuation, add_intermediate_continuation) (add_inferior_continuation): Use them. * continuations.c (struct continuation): Use them. (make_continuation_ftype): Delete. (make_continuation, add_inferior_continuation, add_continuation) (add_intermediate_continuation): Use continuation_ftype and continuation_free_arg_ftype. Rename parameters to shorter names. 2011-05-27 Pedro Alves * continuations.c (make_continuation): Make it return void. (do_my_continuations): Rename to ... (do_my_continuations_1): ... this. Remove old_chain parameter and adjust. (do_my_continuations): New. (discard_my_continuations): Rename to ... (discard_my_continuations_1): ... this. Remove old_chain parameter and adjust. (discard_my_continuations): New. (add_inferior_continuation): Simplify. (do_all_inferior_continuations): Reimplement on top do_my_continuations. (discard_all_inferior_continuations): Simplify. (add_continuation): Simplify. (do_all_continuations_ptid): Simplify. (discard_all_continuations_thread_callback): Simplify. (add_intermediate_continuation): Simplify. (discard_all_intermediate_continuations_thread_callback): Simplify. 2011-05-27 Pedro Alves * utils.c (struct continuation, add_continuation) (add_inferior_continuation) (do_all_inferior_continuations, discard_all_inferior_continuations) (restore_thread_cleanup, do_all_continuations_ptid) (do_all_continuations_thread_callback) (do_all_continuations_thread, do_all_continuations) (discard_all_continuations_thread_callback) (discard_all_continuations_thread, discard_all_continuations) (add_intermediate_continuation) (do_all_intermediate_continuations_thread_callback) (do_all_intermediate_continuations_thread) (do_all_intermediate_continuations) (discard_all_intermediate_continuations_thread_callback) (discard_all_intermediate_continuations_thread) (discard_all_intermediate_continuations): Move to ... * continuations.c: ... this new file, and adjust to no longer implement continuations on top of cleanups. * Makefile.in (SFILES): Add continuations.c. (COMMON_OBS): Add continuations.o. 2011-05-26 Pedro Alves * inferior.h (enum exec_direction_kind): Delete EXEC_ERROR. * infrun.c (show_exec_direction_func): Don't handle EXEC_ERROR. Internal error on invalid values. * reverse.c: Don't handle EXEC_ERROR. * mi/mi-main.c: Don't handle EXEC_ERROR. 2011-05-26 Pedro Alves * record.c: Include event-loop.h, inf-loop.h. (record_beneath_to_async): New global. (tmp_to_async): New global. (record_async_inferior_event_token): New global. (record_open_1): Don't error out if async is enabled. (record_open): Handle to_async. Create an async event source in the event loop. (record_close): Delete the async event source. (record_resumed): New global. (record_execution_dir): New global. (record_resume, record_core_resume): Set them. Register the target on the event loop. (record_wait): Rename to ... (record_wait_1): ... this. Add more debug output. Handle TARGET_WNOHANG, and the target beneath returning TARGET_WAITKIND_IGNORE. (record_wait): Reimplement on top of record_wait_1. (record_async_mask_value): New global. (record_async, record_async_mask, record_can_async_p) (record_is_async_p, record_execution_direction): New functions. (init_record_ops, init_record_core_ops): Install new methods. * infrun.c (fetch_inferior_event): Temporarily switch the global execution direction to the direction the target was going. (execution_direction): Change type to int. * target.c (default_execution_direction): New function. (update_current_target): Inherit and de_fault to_execution_direction. * target.h (struct target_ops) : New field. (target_execution_direction): New macro. * inferior.h (execution_direction): Change type to int. 2011-05-26 Pedro Alves * infcall.c (call_function_by_hand): Don't allow calling functions in reverse execution mode. 2011-05-26 Pedro Alves * infcmd.c (finish_command): Allow async finish in reverse. 2011-05-26 Yao Qi * gdb_thread_db.h: Delete. Move to ... * common/gdb_thread_db.h: ... here. 2011-05-26 Pedro Alves * infcmd.c (finish_backward): Set a step-resume breakpoint at the function's entry point instead of a manually managed momentary breakpoint, and only ever issue one proceed call. * infrun.c (handle_inferior_event) : If doing a reverse-finish, switch to stepi mode, to do another step. (insert_step_resume_breakpoint_at_sal): Make public. (normal_stop): No need to save function value return registers if going reverse. * inferior.h (insert_step_resume_breakpoint_at_sal): Declare. 2011-05-26 Pedro Alves * breakpoint.h (enum bptype) : New. (enum bpstat_what_main_action): Move BPSTAT_WHAT_STEP_RESUME before BPSTAT_WHAT_STOP_SILENT. Add BPSTAT_WHAT_HP_STEP_RESUME at the end. * breakpoint.c (update_breakpoints_after_exec): Also delete hp step-resume breakpoints. (print_it_typical): Handle bp_hp_step_resume. (bpstat_what): Ditto. (bptype_string): Ditto. (print_one_breakpoint_location): Ditto. (allocate_bp_location): Ditto. (mention): Ditto. (breakpoint_re_set_one): Ditto. * infrun.c (handle_inferior_event): Adjust. Split BPSTAT_WHAT_STEP_RESUME handling in BPSTAT_WHAT_STEP_RESUME and BPSTAT_WHAT_HP_STEP_RESUME. (insert_step_resume_breakpoint_at_sal): Rename to ... (insert_step_resume_breakpoint_at_sal_1): ... this. Add bptype parameter. Handle it. (insert_step_resume_breakpoint_at_sal): Reimplement on top of insert_step_resume_breakpoint_at_sal_1. (insert_step_resume_breakpoint_at_frame): Rename to ... (insert_hp_step_resume_breakpoint_at_frame): ... this. Adjust to set a high-priority step-resume breakpoint. (insert_step_resume_breakpoint_at_frame): Adjust comment. (insert_step_resume_breakpoint_at_caller): Ditto. 2011-05-26 Pedro Alves * breakpoint.c (iterate_over_related_breakpoints): New. (do_map_delete_breakpoint): New. (delete_command): Pass do_map_delete_breakpoint to map_breakpoint_numbers. (do_disable_breakpoint): New. (do_map_disable_breakpoint): Iterate over the breakpoint's related breakpoints. (do_enable_breakpoint): Rename to ... (enable_breakpoint_disp): ... this. (enable_breakpoint): Adjust. (do_enable_breakpoint): New. (enable_once_breakpoint): Delete. (do_map_enable_breakpoint): New. (do_map_enable_once_breakpoint): New. (enable_once_command, enable_delete_command) (delete_trace_command): Iterate over the breakpoint's related breakpoints. 2011-05-26 Pedro Alves * alpha-tdep.c (alpha_cannot_fetch_register): Don't return true for ALPHA_ZERO_REGNUM. (alpha_supply_int_regs): Explicitly supply zero as the value for ALPHA_ZERO_REGNUM in the register cache. * alpha-nat.c (fetch_osf_core_registers): Ditto. 2011-05-26 Yao Qi * gdb/gdb_thread_db.h: Remove HAVE_UINTPTR_T. 2011-05-26 Tristan Gingold * symfile.h (struct dwarf2_section_names): New type. (struct dwarf2_debug_sections): New type. (dwarf2_has_info): Add parameter. * dwarf2read.c (dwarf2_elf_names): New variable. (INFO_SECTION, ABBREV_SECTION, LINE_SECTION, LOC_SECTION) (MACINFO_SECTION, STR_SECTION, RANGES_SECTION, TYPES_SECTION) (FRAME_SECTION, EH_FRAME_SECTION, GDB_INDEX_SECTION): Remove. (dwarf2_has_info): Add names parameter. Pass names to dwarf2_locate_sections. (section_is_p): Rewrite using the names parameter. (dwarf2_locate_sections): Use section names from the names parameter. * coffread.c (coff_symfile_read): Adjust call to dwarf2_has_info. * elfread.c (read_psyms): Ditto. * machoread.c (macho_symfile_read): Ditto. 2011-05-25 Andreas Schwab PR gdb/8677 * event-loop.c (handle_file_event): Don't handle POLLHUP as error. 2011-05-24 Keith Seitz PR breakpoint/12803 * linespec.c (keep_name_info): Add handling for "volatile" keyword. (decode_compound): Unconditionally call keep_name_info. 2011-05-24 Pedro Alves * breakpoint.c (watchpoint_check): If the watchpoint went out of scope, clear its command list. (map_breakpoint_numbers): Don't walk the related breakpoints list of each breakpoint. 2011-05-24 Tom Tromey * MAINTAINERS: Move Jim Blandy to past maintainers. 2011-05-24 Tristan Gingold * symfile.h (enum dwarf2_section_enum): New type. (dwarf2_get_section_info): New prototype. * dwarf2read.c (dwarf2_get_section_info): Replace parameter section_name by sect. Use a switch to select the info. * dwarf2-frame.c (warf2_get_section_info): Remove prototype. (dwarf2_build_frame_info): Adjust calls to dwarf2_get_section_info. 2011-05-24 Pedro Alves * solib-svr4.c (svr4_solib_create_inferior_hook): Skip setting shared library event breakpoint if there's no execution. 2011-05-24 Thiago Jung Bauermann * breakpont.c (remove_hw_watchpoints): Remove unused function. * breakpoint.h remove_hw_watchpoints(): Remove prototype. 2011-05-23 Tom Tromey * c-lang.c (evaluate_subexp_c): Use expect_type if it is not NULL. 2011-05-23 Doug Evans * python/lib/gdb/printing.py (register_pretty_printer): Add missing entry for RuntimeError to doc string. 2011-05-23 Jerome Guitton * sparc-tdep.c (sparc_skip_stack_check): Recognize a new instruction sequence for probing loops. 2011-05-23 Pedro Alves * infrun.c (user_visible_resume_ptid): Fix typos in describing comment. 2011-05-21 Mark Kettenis * sparc-nat.c (sparc_fetch_inferior_registers): Explicitly supply zero as the value for %g0 in the register cache. * sparc-tdep.c (sparc32_supply_gregset): Likewise. * sparc64-tdep.c (sparc64_supply_gregset): Likewise. 2011-05-20 Pedro Alves * infrun.c (proceed): Set previous_inferior_ptid here. (init_wait_for_inferior): Initialize previous_inferior_ptid from inferior_ptid, not null_ptid. (wait_for_inferior): Don't initialize previous_inferior_ptid here. (fetch_inferior_event): Nor here. 2011-05-20 Pedro Alves * inf-loop.c (inferior_event_handler): Only output a message if verbose. 2011-05-20 Luis Machado * MAINTAINERS: Update my e-mail address. 2011-05-20 Pedro Alves * infrun.c (proceed): Switch the inferior event loop to INF_EXEC_COMPLETE if the target refused to resume from a vfork/fork. 2011-05-20 Pedro Alves * infcmd.c: Include "inf-loop.h". (step_once): When stepping into an inline subroutine, pretend the target has run. If the target can async, switch the inferior event loop to INF_EXEC_COMPLETE. * inferior.h (user_visible_resume_ptid): Declare. * infrun.c (user_visible_resume_ptid): New function, factored out from `resume'. (resume): Use it. * mi/mi-main.c (mi_execute_async_cli_command): Remove assertion that the current thread is running. Merge async and sync branches. 2011-05-20 Pedro Alves * infcmd.c (step_1): Simplify synchronous case. 2011-05-20 Pedro Alves * tracepoint.c: Include exceptions.h. (TFILE_PID): Move higher in file. (tfile_open): Delay pushing the tfile target until we're assured the tfile header is present in the file. Wrap reading the initial newline-terminated lines in TRY_CATCH. Pop the target if the initial setup failed. Add the tfile's thread immediately aftwards, before any non-essential setup. Don't skip post_create_inferior if there are no traceframes present in the file. (tfile_close): Remove redundant check for null before xfree call. (tfile_thread_alive): New function. (init_tfile_ops): Register it as to_thread_alive callback. 2011-05-20 Pedro Alves * tracepoint.c (tfile_open): Delete #if 0'd code. 2011-05-20 Jan Kratochvil Fix -readnow for -gdwarf-4 unused type units. * dwarf2read.c (struct signatured_type): Remove the field offset. (create_signatured_type_table_from_index): Remove its initialization. (create_debug_types_hash_table): Likewise. Initialize per_cu.offset instead. Add a complaint call. (process_psymtab_comp_unit): Change assignment to gdb_assert. (process_type_comp_unit, lookup_die_type, dump_die_shallow) (lookup_signatured_type_at_offset, read_signatured_type) (write_one_signatured_type): Update the field for per_cu. 2011-05-19 Tom Tromey * python/py-inferior.c (python_inferior_exit): Use target_gdbarch. (python_on_resume): Likewise. 2011-05-19 Matt Rice * breakpoint.c (bpstat_do_actions_1): Call prevent_dont_repeat. 2011-05-19 Hui Zhu * tracepoint.c (tfile_trace_find): Return directly when num is -1. 2011-05-19 Hui Zhu * xcoffread.c (read_xcoff_symtab): Initialize fcn_aux_saved. 2011-05-18 Tom Tromey * dwarf2read.c (dwarf2_add_field): Constify. * value.c (value_static_field): Constify. * gdbtypes.h (struct main_type) : Now const. * ax-gdb.c (gen_static_field): Constify 2011-05-18 Jan Kratochvil * linux-nat.c (kill_callback): Use SIGKILL first. 2011-05-18 Joel Brobecker * ada-lang.c (print_it_exception): Avoid use of sprintf. 2011-05-18 Tom Tromey * value.c (value_fn_field): Constify. * symtab.c (gdb_mangle_name): Constify. * stabsread.c (update_method_name_from_physname): Make 'physname' argument const. * p-typeprint.c (pascal_type_print_method_args): Make arguments const. Use explicit fputc_filtered loop. (pascal_type_print_base): Constify. * p-lang.h (pascal_type_print_method_args): Update. * linespec.c (add_matching_methods): Constify. (add_constructors): Likewise. * jv-typeprint.c (java_type_print_base): Constify. * gdbtypes.h (struct cplus_struct_type) : Now const. * dwarf2read.c (compute_delayed_physnames): Constify. (dwarf2_add_member_fn): Likewise. * c-typeprint.c (c_type_print_base): Constify. Use cleanups. 2011-05-18 Pedro Alves * infrun.c (resume): Mention which is the current thread, and its current PC in debug output. (prepare_to_proceed): Mention the thread switching in debug output. 2011-05-18 Tom Tromey * linux-thread-db.c (try_thread_db_load_from_pdir_1): Fix absolute path check. Use xmalloc and cleanups. (try_thread_db_load_from_dir): Use xmalloc and cleanups. 2011-05-17 Tom Tromey * cp-valprint.c (cp_print_value_fields): Catch errors from value_static_field. 2011-05-17 Tom Tromey * dwarf2read.c (dwarf2_get_die_type): Call get_die_type_at_offset. * dwarf2expr.c (dwarf_get_base_type): Handle NULL return from get_base_type function. 2011-05-17 Tomas Martinec * infrun.c (handle_inferior_event) : Clear trap_expected. 2011-05-16 Doug Evans * python/py-auto-load.c (source_section_scripts): Mention objfile name in warning. 2011-05-15 Doug Evans * linux-thread-db.c (try_thread_db_load_from_pdir_1): New function. (try_thread_db_load_from_pdir): Call it. If unable to find libthread_db in directory of libpthread, see if we're looking at the separate-debug-info copy. * python/py-autoload.c (print_script): Print "Missing" instead of "No" for missing scripts. (info_auto_load_scripts): Tweak "Loaded" column to fit "Missing". 2011-05-13 Doug Evans * ui-file.c (stdio_file_write_async_safe): Add comment. 2011-05-14 Hui Zhu * ui-file.c (stdio_file_write_async_safe): Add empty check for build. 2011-05-13 Doug Evans Support $pdir and $sdir in libthread-db-search-path. * NEWS: Mention $sdir,$pdir. * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): Add $sdir:$pdir. * linux-thread-db.c (try_thread_db_load_from_pdir): New function. (try_thread_db_load_from_sdir): New function. (try_thread_db_load_from_dir): New function. (thread_db_load_search): Handle $pdir, $sdir. Remove trying of system directories if search of libthread-db-search-path fails, that is now done via $sdir. (has_libpthread): New function. (thread_db_load): Remove search for libthread_db in directory of libpthread, that is now done via $pdir. * NEWS: Mention "info auto-load-scripts". * python/py-auto-load.c (struct auto_load_pspace_info): New member script_not_found_warning_printed. (init_loaded_scripts_info): Renamed from create_loaded_scripts_hash, all callers updated. Initialize script_not_found_warning_printed. (get_auto_load_pspace_data_for_loading): New function. (maybe_add_script): New function. (source_section_scripts): Simplify. Only print one warning regardless of the number of auto-load scripts not found. (clear_section_scripts): Clear script_not_found_warning_printed. (auto_load_objfile_script): Record script in hash table. (count_matching_scripts): New function. (maybe_print_script): Renamed from maybe_print_section_script, all callers updated. Rewrite to use ui_out_*. (info_auto_load_scripts): Renamed from maintenance_print_section_scripts, all callers updated. (gdbpy_initialize_auto_load): "maintenance print section-scripts" renamed as "info auto-load-scripts". 2011-05-13 Tom Tromey * dwarf2expr.c (read_uleb128): Cast intermediate result. (read_sleb128): Likewise. 2011-05-13 Tom Tromey * dwarf2loc.c (disassemble_dwarf_expression): Fix instruction offset display. 2011-05-13 Doug Evans * linux-nat.c (debug_linux_nat_async): Delete. Replace all references to use debug_linux_nat instead. (show_debug_linux_nat_async): Delete. (sigchld_handler): Call ui_file_write_async_safe instead of fprintf_unfiltered. (_initialize_linux_nat): Remove `set debug lin-lwp-async'. * ui-file.c (struct ui_file): New member to_write_async_safe. (null_file_write_async_safe): New function. (ui_file_write_async_safe): New function. (set_ui_file_write_async_safe): New function. (ui_file_new): Initialize to_write_async_safe. (stdio_file_write_async_safe): New function. (struct stdio_file): New member fd. (stdio_file_new): Initialize to_write_async_safe, fd. (stdio_file_read, stdio_file_isatty): New stdio->fd instead of calling fileno. * ui-file.h (ui_file_write_async_safe_ftype): New typedef. (set_ui_file_write_async_safe): Declare. (ui_file_write_async_safe): Declare. 2011-05-13 Tom Tromey * utils.c (do_value_free): New function. (make_cleanup_value_free): Likewise. * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle value freeing correctly. (dwarf2_loc_desc_needs_frame): Call make_cleanup_value_free_to_mark. * dwarf2expr.h (struct dwarf_expr_context) : Remove field. * dwarf2expr.c (free_dwarf_expr_context): Don't call value_free_to_mark. (new_dwarf_expr_context): Don't call value_mark. * dwarf2-frame.c (execute_stack_op): Call make_cleanup_value_free_to_mark. * defs.h (make_cleanup_value_free): Declare. 2011-05-13 Thiago Jung Bauermann * mi/mi-main.c (mi_cmd_execute): Use cleanup from prepare_execute_command. * top.c (prepare_execute_command): Return cleanup. (execute_command): Use cleanup from prepare_execute_command. * top.h (prepare_execute_command): Change prototype to return cleanup. * defs.h (struct value): Add opaque declaration. (make_cleanup_value_free_to_mark): Add prototype. * utils.c (do_value_free_to_mark): New function. (make_cleanup_value_free_to_mark): Likewise. 2011-05-12 Tom Tromey * dwarf2expr.c (execute_stack_op) : Unconditionally cast left-hand-side to unsigned. 2011-05-12 Tom Tromey PR gdb/12617: * value.h (value_from_contents): Declare. * value.c (value_from_contents): New function. * dwarf2read.c (dwarf_stack_op_name): Add new values. (dwarf2_get_die_type): New function. * dwarf2loc.c (dwarf_expr_get_base_type): New function. (allocate_piece_closure): Acquire reference to values. (read_pieced_value): Update for value-based expressions. (write_pieced_value): Likewise. (free_pieced_value_closure): Call value_free as needed. (dwarf2_evaluate_loc_desc_full): Set get_base_type field. Update for value-based expressions. * dwarf2loc.h (dwarf2_get_die_type): Declare. * dwarf2expr.h (struct dwarf_stack_value) : Change type. : New field. (struct dwarf_expr_piece) : Change type. : New field. (struct dwarf_expr_context) : New field. (dwarf_expr_piece, dwarf_expr_fetch): Update. (dwarf_expr_pop, dwarf_expr_push): Remove. (dwarf_expr_push_address): Declare. * dwarf2expr.c (dwarf_arch_cookie): New global. (struct dwarf_gdbarch_types): New. (dwarf_gdbarch_types_init, dwarf_expr_address_type): New functions. (dwarf_expr_push): Change type of 'value' argument. Update. Now static. (dwarf_expr_push_address): New function. (dwarf_expr_pop): Now static. (dwarf_expr_fetch): Change return type. (dwarf_require_integral): New function. (dwarf_expr_fetch): Simplify. (add_piece): Update. (base_types_equal_p, dwarf_get_base_type, get_unsigned_type): New functions. (execute_stack_op) : Remove. Use values for DWARF stack. : New cases. (_initialize_dwarf2expr): New function. (add_piece): Update. (new_dwarf_expr_context): Set new field. (free_dwarf_expr_context): Call value_free_to_mark. * dwarf2-frame.c (no_base_type): New function. (execute_stack_op): Set get_base_type field. Update. 2011-05-12 Tom Tromey * dwarf2read.c (read_common_block): Fix formatting. 2011-05-12 Kwok Cheung Yeung * breakpoint.c (disable_breakpoint): Disable all locations associated with a tracepoint on target if a trace experiment is running. (disable_command): Disable a specific tracepoint location on target if a trace experiment is running. (do_enable_breakpoint): Enable all locations associated with a tracepoint on target if a trace experiment is running. (enable_command) Enable a specific tracepoint location on target if a trace experiment is running. * target.c (update_current_target): Add INHERIT and de_fault clauses for to_supports_enable_disable_tracepoint, to_enable_tracepoint and to_disable_tracepoint. * target.h: Add declaration of struct bp_location. (struct target_ops): Add new functions to_supports_enable_disable_tracepoint, to_enable_tracepoint and to_disable_tracepoint to target operations. (target_supports_enable_disable_tracepoint): New macro. (target_enable_tracepoint): New macro. (target_disable_tracepoint): New macro. * remote.c (struct remote_state): Add new field. (remote_enable_disable_tracepoint_feature): New. (remote_protocol_features): Add new entry. (remote_supports_enable_disable_tracepoint): New. (remote_enable_tracepoint): New. (remote_disable_tracepoint): New. (init_remote_ops): Add remote_enable_tracepoint, remote_disable_tracepoint and remote_supports_enable_disable_tracepoint to remote operations. * tracepoint.c (start_tracing): Allow tracing to start without any tracepoints enabled with just a warning if they can be re-enabled later. * NEWS: Add news item for the new behaviour of the enable and disable GDB commands when applied to tracepoints. Add news items for the new remote packets QTEnable and QTDisable. 2011-05-11 Jan Kratochvil * config.in: Regenerate. * configure: Regenerate. * configure.ac <--with-system-readline> (for readline_echoing_p): Remove the test. * tui/tui-io.c (tui_old_readline_echoing_p): Rename to ... (tui_old_rl_echoing_p): ... here. (tui_setup_io): Rename extern declaration readline_echoing_p to _rl_echoing_p. Adjust assignments for the both renames. 2011-05-11 Thiago Jung Bauermann * symtab.c (lookup_symtab): Run cleanup before returning. 2011-05-11 Tom Tromey * dwarf2read.c (handle_data_member_location): New function. (dwarf2_add_field): Use it. (read_common_block): Likewise. 2011-05-11 Jan Kratochvil Make addrs->SECTINDEX always defined. * symfile.c (relative_addr_info_to_section_offsets): Check for SECTINDEX -1, not for zero ADDR. (addrs_section_compar): Remove checking for invalid SECTINDEX. (addr_info_make_relative): Set SECTINDEX to -1 for unmatched entries. * symfile.h (struct section_addr_info) : Update the comment on its validity. 2011-05-10 Doug Evans * linux-thread-db.c: Whitespace cleanup. (try_thread_db_load_1): Fix comment. * linux-thread-db.c (set_libthread_db_search_path): New function. (_initialize_thread_db): Add setter for libthread-db-search-path. 2011-05-09 Doug Evans * NEWS: Mention --with-iconv-bin. * configure.ac: New option --with-iconv-bin. * configure: Regenerate. * config.in: Regenerate. * defs.h (relocate_gdb_directory): Declare. * main.c (relocate_gdb_directory): Renamed from relocate_directory, removed progname parameter, and exported. All callers updated. * charset.c (find_charset_names): Use --with-iconv-bin if specified. * linux-nat.c (lin_lwp_attach_lwp): For !WIPSTOPPED case, adding missing call to restore_child_signals_mask. 2011-05-09 Pedro Alves * inferior.h (wait_for_inferior): Remove `thread_exec_as_sigtrap' parameter. * infrun.c (proceed, start_remote): Adjust. (wait_for_inferior): Remove `thread_exec_as_sigtrap' parameter, and adjust to not handle it. * solib-irix.c (irix_solib_create_inferior_hook): Adjust. * solib-osf.c (osf_solib_create_inferior_hook): Adjust. * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust. * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust. * windows-nat.c (do_initial_windows_stuff): Adjust. * infcmd.c (attach_command): Adjust. (notice_new_inferior): Adjust. 2011-05-06 Ulrich Weigand * ppc-linux-tdep.c (ppu2spu_prev_register): Handle pseudo registers. (ppu2spu_unwind_register): Mark pseudo registers unavailable. * spu-tdep.c (op_selb): Use correct value. 2011-05-06 Ulrich Weigand * spu-linux-nat.c (spu_symbol_file_add_from_memory): Add NULL "parent" parameter to symbol_file_add_from_bfd call. 2011-05-06 Sergio Durigan Junior Thiago Jung Bauermann Implement support for PowerPC BookE masked watchpoints. * NEWS: Mention masked watchpoint support. Create "Changed commands" section. * breakpoint.h (struct breakpoint_ops) : New method. Initialize to NULL in all existing breakpoint_ops instances. (struct breakpoint) : New field. * breakpoint.c (is_masked_watchpoint): Add prototype. (update_watchpoint): Don't set b->val for masked watchpoints. Call breakpoint's breakpoint_ops.works_in_software_mode if available. (watchpoints_triggered): Handle the case of a hardware masked watchpoint trigger. (watchpoint_check): Likewise. (works_in_software_mode_watchpoint): New function. (insert_masked_watchpoint, remove_masked_watchpoint) (resources_needed_masked_watchpoint) (works_in_software_mode_masked_watchpoint, print_it_masked_watchpoint) (print_one_detail_masked_watchpoint, print_mention_masked_watchpoint) (print_recreate_masked_watchpoint, is_masked_watchpoint): New functions. (masked_watchpoint_breakpoint_ops): New structure. (watch_command_1): Check for the existence of the `mask' parameter. Set b->ops according to the type of hardware watchpoint being created. * ppc-linux-nat.c (ppc_linux_insert_mask_watchpoint) (ppc_linux_remove_mask_watchpoint) (ppc_linux_masked_watch_num_registers): New functions. (_initialize_ppc_linux_nat): Initialize to_insert_mask_watchpoint, to_remove_mask_watchpoint and to_masked_watch_num_registers. * target.c (update_current_target): Mention to_insert_mask_watchpoint, to_remove_mask_watchpoint, and to_masked_watch_num_registers. (target_insert_mask_watchpoint, target_remove_mask_watchpoint) (target_masked_watch_num_registers): New functions. * target.h (struct target_ops) , , : New methods. (target_insert_mask_watchpoint, target_remove_mask_watchpoint) (target_masked_watch_num_registers): Add prototypes. 2011-05-06 Jan Kratochvil PR 12573 * dwarf2read.c (struct dwarf2_cu): New field has_loclist. (producer_is_gcc_ge_4_0): New function. (process_full_comp_unit): Set also symtab->locations_valid. Move the symtab->language code. (var_decode_location): Set cu->has_loclist. * symtab.c (skip_prologue_sal): New variables saved_pc, force_skip and skip. Intialize force_skip from locations_valid. Move the prologue skipping code into two passes. * symtab.h (struct symtab): Make the primary field a bitfield. New field locations_valid. 2011-05-06 Jan Kratochvil * c-exp.y (qualified_name): Call destructor_name_p with $1.type. (classify_inner_name): Call cp_lookup_nested_type with yylval.tsym.type. * cp-namespace.c (cp_lookup_nested_type): New variable saved_parent_type. Call CHECK_TYPEDEF for parent_type. Call type_name_no_tag_or_error with saved_parent_type. * dwarf2read.c (load_partial_dies): Read in any children of DW_TAG_typedef with complaint in such case. * gdbtypes.c (type_name_no_tag_or_error): New function. * gdbtypes.h (type_name_no_tag_or_error): New prototype. * valops.c (destructor_name_p): New comment for parameter type. Remove type const. Make dname and cp const. Call type_name_no_tag_or_error. * value.h (destructor_name_p): Remove type const. 2011-05-06 Jan Kratochvil * symtab.c (compare_symbol_name): New function. (completion_list_add_name, expand_partial_symbol_name): Call it, remove the variable ncmp. (default_make_symbol_completion_list_break_on): Reduce SYM_TEXT_LEN, gdb_assert it. 2011-05-05 Thiago Jung Bauermann Demote to sw watchpoint only in update_watchpoint. * breakpoint.c (update_watchpoint): Change between software and hardware watchpoint for all kinds of watchpoints, not just read/write ones. Determine b->exact value here instead of in watch_command_1. Error out if there are not enough resources for a read or access hardware watchpoint. (watch_command_1): Remove logic of checking whether there are enough resources available, since update_watchpoint will do that work now. Don't set b->exact here. Catch exceptions thrown by update_watchpoint and delete the watchpoint. (can_use_hardware_watchpoint): Remove exact_watchpoints argument. Use target_exact_watchpoints instead. (delete_breakpoint): Notify observers only if deleted watchpoint has a breakpoint number assigned to it. 2011-05-05 Janis Johnson * MAINTAINERS: Add myself as a write-after-approval maintainer. 2011-05-05 Jerome Guitton * i386-tdep.c (i386_in_stack_tramp_p, i386_stack_tramp_frame_sniffer): New functions. (i386_stack_tramp_frame_unwind): New static global. (i386_match_pattern): New function, extracted from i386_match_insn. (i386_match_insn): Use i386_match_pattern. (i386_match_insn_block): New function. (i386_tramp_chain_in_reg_insns) (i386_tramp_chain_on_stack_insns): New static variables. (i386_gdbarch_init): Add i386_stack_tramp_frame_unwind to list of unwinders. 2011-05-04 Joseph Myers * configure.host (xscale*): Don't handle target. * configure.tgt (thumb*-*-* | strongarm*-*-* | xscale-*-*): Don't handle targets. 2011-05-04 Yao Qi * gdb_wait.h: remove WAITTYPE and WCOREDUMP. 2011-05-03 Joel Brobecker Revert: | 2011-03-07 Michael Snyder | * elfread.c (elf_symtab_read): Stop memory leak. 2011-05-03 Pierre Muller * nto-tdep.c (nto_target): Replace deprecated call to cygwin_conv_to_posix_path functions by cygwin_conv_path calls. 2011-05-03 Jan Kratochvil Fix false GCC warning. * breakpoint.c (do_enable_breakpoint): Initialize orig_enable_state. 2011-05-03 Thiago Jung Bauermann * breakpoint.c (update_watchpoint): Move code to change the enable state of breakpoint from here ... (do_enable_breakpoint): ... to here. 2011-04-26 Andrew Gontarek * valprint.c (val_print_array_elements): Fixed poor performance of printing very large arrays with repeat_count_threshold set to unlimited. New comment. 2011-04-29 Tom Tromey * mi/mi-parse.c (mi_parse): Remove incorrect sizeof. (mi_parse): Likewise. * breakpoint.c (break_range_command): Use sizeof char*, not char**. (create_breakpoint): Likewise. (parse_breakpoint_sals): Likewise. 2011-04-29 Pedro Alves * linux-nat.c (linux_child_remove_fork_catchpoint) (linux_child_remove_vfork_catchpoint) (linux_child_remove_exec_catchpoint): New functions. (linux_target_install_ops): Install them. 2011-04-29 Phil Muldoon PR mi/12531 * varobj.c (install_default_visualizer): Do not install a visualizer if the varobj is CPLUS_FAKE_CHILD. (construct_visualizer): Likewise. 2011-04-28 Jan Kratochvil * symtab.c (expand_partial_symbol_name): New variable NCMP. Support case insensitive comparison. 2011-04-28 Ulrich Weigand * infrun.c (proceed): Revert previous change. (resume): Instead, handle the case of signal delivery while stepping off a breakpoint location here, and only if software single-stepping is used. Handle nested signals. 2011-04-28 Yao Qi * arm-tdep.c (copy_unmodified): Rename to ... (arm_copy_unmodified): .. this. New. (copy_preload): Move common part to ... (install_preload): .. this. New. (arm_copy_preload): New. (copy_preload_reg): Move common part to ... (install_preload_reg): ... this. New. (arm_copy_preload_reg): New. (copy_b_bl_blx): Move common part to ... (install_b_bl_blx): .. this. New. (arm_copy_b_bl_blx): New. (copy_bx_blx_reg): Move common part to ... (install_bx_blx_reg): ... this. New. (arm_copy_bx_blx_reg): New. (copy_alu_reg): Move common part to ... (install_alu_reg): ... this. New. (arm_copy_alu_reg): New. (copy_alu_shifted_reg): Move common part to ... (install_alu_shifted_reg): ... this. New. (copy_ldr_str_ldrb_strb): Move common part to ... (install_ldr_str_ldrb_strb): ... this. New. (arm_copy_ldr_str_ldrb_strb): New. (copy_copro_load_store): Move some common part to ... (install_copy_copro_load_store): ... this. New. (arm_copy_copro_load_store): New. (copy_svc): Delete. (arm_copy_svc): Renamed from copy_svc. (copy_undef): Delete. (arm_copy_undef): Renamed from copy_undef. (decode_ext_reg_ld_st): Delete. (arm_decode_ext_reg_ld_st): Renamed from decode_ext_reg_ld_st. (decode_svc_copro): Delete. (arm_decode_svc_copro): Renamed from decode_svc_copro. (copy_copro_load_store, copy_alu_imm): update callers. (copy_extra_ld_st, copy_block_xfer): Likewise. (decode_misc_memhint_neon, decode_unconditional): Likewise. (decode_miscellaneous, decode_dp_misc): Likewise. (decode_ld_st_word_ubyte, decode_media): Likewise. (decode_b_bl_ldmstm, decode_ext_reg_ld_st): Likewise. (decode_svc_copro, decode_misc_memhint_neon): Likewise. (decode_unconditional, decode_miscellaneous): Likewise. (decode_media, decode_b_bl_ldmstm): Likewise. (arm_process_displaced_insn): Likewise.. (decode_misc_memhint_neon): Delete. (arm_decode_misc_memhint_neon): Renamed from decode_misc_memhint_neon. (decode_miscellaneous): Delete. (arm_decode_miscellaneous): Renamed from decode_miscellaneous. (decode_dp_misc): Delete. (arm_decode_dp_misc): Renamed from decode_dp_misc. (decode_ld_st_word_ubyte): Delete. (arm_decode_ld_st_word_ubyte): Renamed from decode_ld_st_word_ubyte. (decode_media): Delete. (arm_decode_media): Renamed from decode_media. (decode_b_bl_ldmstm): Delete. (arm_decode_b_bl_ldmstm): Renamed from decode_b_bl_ldmstm. (decode_ext_reg_ld_st): Delete. (arm_decode_ext_reg_ld_st): Renamed from decode_ext_reg_ld_st. (decode_unconditional): Delete. (arm_decode_unconditional): Renamed from decode_unconditional. 2011-04-27 Jan Kratochvil Case insensitive lookups implementation. * dwarf2read.c: Include ctype.h. (struct mapped_index): New field version. (mapped_index_string_hash): New parameter index_version. New comment for it. Call tolower appropriately. (find_slot_in_mapped_hash): New variable cmp, initialize it, use it. Choose the right index version for mapped_index_string_hash. (dwarf2_read_index): Support also the index version 5. Initialize the new struct mapped_index field version. (hash_strtab_entry): Pass INT_MAX for the new parameter, explain why. (find_slot): Explain the version needs. Pass INT_MAX for the new parameter. (write_psymtabs_to_index): Produce version 5. * minsyms.c (lookup_minimal_symbol): New variable cmp, initialize it, use it. New comment for SYMBOL_MATCHES_SEARCH_NAME. * psymtab.c (lookup_partial_symbol): Find the SYMBOL_MATCHES_SEARCH_NAME start of the found block of matching entries. * symtab.c (lookup_symbol_in_language): Remove the case_sensitive_off NAME lowercasing. (search_symbols): Pass REG_ICASE to regcomp for case_sensitive_off. (completion_list_add_name): New variable ncmp, initialize it, use it. * symtab.h (SYMBOL_HASH_NEXT): Always call tolower. * utils.c (strcmp_iw): Support case_sensitive_off. (strcmp_iw_ordered): Sort in a way compatible with case_sensitive_off. New function comment part. New variables saved_string1, saved_string2 and case_pass. Add a proper second pass. 2011-04-27 Jan Kratochvil Replace re_comp/re_exec by regcomp/regexec. * symtab.c (struct search_symbols_data): New fields preg, preg_p. (search_symbols_name_matches): Use them, use regexec. (search_symbols): New variable retval_chain, adjust the use of old_chain against it. Replace re_comp by regcomp. Use the new struct search_symbols_data fields, use regexec instead of re_exec. 2011-04-27 Jan Kratochvil Format the code for the next patch. * dwarf2read.c (struct mapped_index): Include delimiting newlines. * utils.c (strcmp_iw_ordered): Reformat the code for the next patch. New variables c1 and c2. 2011-04-27 Ulrich Weigand * infrun.c (proceed): Do not single-step into signal delivery when stepping off a breakpoint location. (insert_step_resume_breakpoint_at_frame): Move prototype earlier. (insert_step_resume_breakpoint_at_caller): Likewise. (insert_step_resume_breakpoint_at_sal): Likewise. (insert_longjmp_resume_breakpoint): Likewise. 2011-04-27 Yao Qi * common/linux-ptrace.h: Remove include . 2011-04-27 Joel Brobecker * procfs.c (procfs_pass_signals): Fix advance declaration. 2011-04-27 Ulrich Weigand * target.h (struct target_ops): Remove to_notice_signals; add to_pass_signals. (target_notice_signals): Remove. (target_pass_signals): Add prototype. * target.c (update_current_target): Remove to_notice_signals; mention to_pass_signals. (target_pass_signals): New function. (debug_to_notice_signals): Remove. (setup_target_debug): Do not install debug_to_notice_signals. * infrun.c (signal_pass): New global. (resume): Call target_pass_signals. (handle_inferior_event): Report all signals while stepping over non-steppable watchpoint. Reset trap_expected to ensure breakpoints are re-inserted when stepping over a signal handler. (signal_cache_update): New function. (signal_stop_update): Call it. (signal_print_update): Likewise. (signal_pass_update): Likewise. (handle_command): Call signal_cache_update and target_pass_signals instead of target_notice_signals. (_initialize_infrun): Initialize signal_pass. * linux-nat.c (pass_mask): New global. (linux_nat_pass_signals): New function. (linux_nat_create_inferior): Report all signals initially. (linux_nat_attach): Likewise. (linux_nat_resume): Use pass_mask to decide whether to directly handle an inferior signal. (linux_nat_wait_1): Likewise. (linux_nat_add_target): Install to_pass_signals callback. * nto-procfs.c (notice_signals): Remove. (procfs_resume): Do not call notice_signals. (procfs_notice_signals): Remove. (procfs_pass_signals): New function. (init_procfs_ops): Install to_pass_signals callback instead of to_notice_signals callback. (_initialize_procfs): Report all signals initially. * procfs.c (procfs_notice_signals): Remove. (procfs_pass_signals): New function. (procfs_target): Install to_pass_signals callback instead of to_notice_signals callback. (register_gdb_signals): Remove. (procfs_debug_inferior): Report all signals initially. (procfs_init_inferior): Remove redundant register_gdb_signals call. * remote.c (remote_pass_signals): Add numsigs and pass_signals parameters; use them instead of calling signal_..._state routines. (remote_notice_signals): Remove. (remote_start_remote): Report all signals initially. (remote_resume): Do not call remote_pass_signals. (_initialize_remote): Install to_pass_signals callback instead of to_notice_signals callback. 2011-04-27 Pedro Alves * breakpoint.c (user_settable_breakpoint): Delete. (user_breakpoint_p): Remove check on user_settable_breakpoint. (delete_command): Check user_breakpoint_p instead of looking at the breakpoint's type. (disable_command): Ditto. (enable_command): Ditto. (delete_trace_command): Use user_breakpoint_p instead of looking at the breakpoint number directly. When checking if there are user visible tracepoints, in order to know whether to ask the user for confirmation, check whether the breakpoint is actually a tracepoint. 2011-04-27 Vladimir Prus * python/py-breakpoint.c (gdbpy_breakpoint_created): Fix compilation. 2011-04-27 Vladimir Prus MI breakpoint notifications. * annotate.c (breakpoint_changed): Adjust parameter type. * breakpoint.c (set_breakpoint_condition): Adjust to change in breakpoint_modified type. (breakpoint_set_commands): Likewise. (do_map_commands_command): Likewise. (bpstat_check_breakpoint_conditions): Notify that breakpoint has changed after bumping hit count. (bpstat_stop_status): Likewise. (print_one_breakpoint_location): Don't wrap in tuple here. (print_one_breakpoint): Always print individual locations. For locations, use unnamed tuple. (disable_breakpoints_in_unloaded_shlib): Notify that breakpoint has changed. (create_catchpoint, create_syscall_event_catchpoint): Call breakpoint_created obsever. (mention): Don't call breakpoint_created observer. (create_breakpoint_sal): Call breakpoint_created observer. (create_breakpoint, watch_command_1): Likewise. (create_ada_exception_breakpoint): Likewise. (delete_breakpoint): Call breakpoint_deleted breakpoint. (locations_are_equal): New. (update_breakpoint_locations): If locations were changed, notify. (set_ignore_count, disable_breakpoint, do_enable_breakpoint): Call breakpoint_modified observer. * mi/mi-cmd-break.c (breakpoint_notify): Adjust. (mi_cmd_break_insert): Don't set observers for modify and delete. * mi/mi-interp.c (mi_suppress_breakpoint_notifications): New. (mi_breakpoint_created, mi_breakpoint_deleted) (mi_breakpoint_modified): New. (mi_interpreter_init): Hook the above. * mi/mi-main.c (mi_cmd_execute): Disable breakpoint notifications while -break-* commands are executing. * mi/mi-main.h (mi_suppress_breakpoint_notifications): New. * mi/mi-out.c (struct ui_out_data): New field original_buffer. (mi_redirect): New. (mi_ui_out_impl): Hook in mi_redirect. (mi_field_skip): True to the name, skip the field, don't output a field with an empty value. * python/py-breakpoint.c (gdbpy_breakpoint_created) (gdbpy_breakpoint_deleted): Adjust. * tui/tui-hooks.c (tui_event_create_breakpoint) (tui_event_delete_breakpoint, tui_event_modify_breakpoint): Adjust. 2011-04-26 Aleksandar Ristovski * nto-procfs.c (procfs_insert_hw_watchpoint): Fix prototype. (procfs_remove_hw_watchpoint): Likewise. 2011-04-26 Michael Walle * remote.c (remote_start_remote): Ack packet after sending the interrupt sequence. 2011-04-26 Yao Qi * linux-nat.c: Move common macros to ... Include linux-ptrace.h. * common/linux-ptrace.h: ... here. New. 2011-04-25 Jan Kratochvil * elfread.c (elf_symfile_read): Protect dwarf2_initialize_objfile by !objfile_has_partial_symbols. New comment. * objfiles.c (objfile_has_partial_symbols): Call HAS_SYMBOLS if SYM_READ_PSYMBOLS is not present. Extend the comment. * symfile.h (struct sym_fns): Extend the sym_read_psymbols comment. 2011-04-25 Jan Kratochvil * defs.h (ENUM_BITFIELD): Remove. 2011-04-24 Jan Kratochvil Eli Zaretskii * NEWS: Document the new gdbserver --once option. 2011-04-21 Jie Zhang * MAINTAINERS: Update my email address. 2011-04-21 Pierre Muller * gdb_wchar.h (USE_INTERMEDIATE_ENCODING_FUNCTION): New macro. (INTERMEDIATE_ENCODING): Change value to intermediate_encoding function call if __STDC_ISO_10646__ macro is defined. (intermediate_encoding): New prototype. * charset.c (your_gdb_wchar_t_is_bogus): New extern test variable to generate compile time error for unsupported gdb_wchar_t size. (ENDIAN_SUFFIX): New macro. (intermediate_encoding): New function. 2011-04-20 Jan Kratochvil * ada-lang.c (struct add_partial_datum): Update the comment for expand_partial_symbol_name. (ada_add_partial_symbol_completions): Rename to ... (ada_expand_partial_symbol_name): ... here, change return type, update function comment, call symbol_completion_match instead of symbol_completion_add. (ada_make_symbol_completion_list): Use now expand_partial_symbol_names and ada_expand_partial_symbol_name. * dwarf2read.c (dw2_expand_symtabs_matching): Support NULL FILE_MATCHER. (dw2_map_symbol_names): Remove. (dwarf2_gdb_index_functions): Unlist dw2_map_symbol_names. * psymtab.c (map_symbol_names_psymtab): Remove. (expand_symtabs_matching_via_partial): Support NULL FILE_MATCHER. Support KIND == ALL_DOMAIN. Exchange the NAME_MATCHER and KIND check order. (psym_functions): Unlist map_symbol_names_psymtab. (map_partial_symbol_names): Rename to ... (expand_partial_symbol_names): ... here, change the FUN type, call expand_symtabs_matching with ALL_DOMAIN and NULL FILE_MATCHER now. * psymtab.h (map_partial_symbol_names): Rename to ... (expand_partial_symbol_names): ... here, change the FUN type. * symfile.h (struct quick_symbol_functions): Update the description of expand_symtabs_matching. Remove map_symbol_names. * symtab.c (search_symbols): Add ALL_DOMAIN to the function comment. (struct add_name_data): Update the comment for expand_partial_symbol_name. (add_partial_symbol_name): Rename to ... (expand_partial_symbol_name): ... here. Replace completion_list_add_name call by strncmp. (default_make_symbol_completion_list_break_on): Use now expand_partial_symbol_names and expand_partial_symbol_name. * symtab.h (enum search_domain): New element ALL_DOMAIN. 2011-04-20 Tom Tromey * dwarf2read.c (save_gdb_index_command): Replace format documentation with a pointer to the manual. 2011-04-20 Pedro Alves * regcache.c: Include remote.h. (enum regcache_dump_what) : New enum value. (regcache_dump): Handle regcache_dump_remote. (maintenance_print_remote_registers): New function. (_initialize_regcache): Install "maint print remote-registers" command. * remote.c (map_regcache_remote_table): New function, factored out from ... (init_remote_state): ... here. (remote_register_number_and_offset): New. * remote.h (remote_register_number_and_offset): Declare. 2011-04-20 Pedro Alves * regcache.c (get_thread_arch_regcache): If creating a regcache for null_ptid, assume and allow a NULL address space, instead of asking the target for the ptid's address space. * infrun.c (ptid_is_pid): Remove assertion. 2011-04-19 Tom Tromey * windows-tdep.c (windows_xfer_shared_library): * windows-nat.c (get_module_name, windows_make_so): * v850-tdep.c (v850_handle_pushm): * utils.c (null_cleanup, gdb_realpath): * ui-out.c (get_next_header): * tracepoint.c (clear_traceframe_info): * symtab.c (lookup_symtab): * serial.h (struct serial_ops): * mipsread.c (read_alphacoff_dynamic_symtab): * infcmd.c (print_return_value): * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): * f-exp.y (parse_number): * exceptions.c (catch_exceptions): * dummy-frame.c (dummy_frame_this_id): * defs.h (struct cleanup): * breakpoint.c (disable_breakpoints_in_unloaded_shlib): * arm-tdep.c (arm_push_dummy_call): * amd64-tdep.h (amd64_collect_xsave): * amd64-tdep.c (amd64_collect_xsave): * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): * README (typing): Remove duplicate words. * cli/cli-decode.c (lookup_cmd_composition): Add comma. * infrun.c (siginfo_value_read): Fix typo. * solib-frv.c (frv_fdpic_find_global_pointer): Likewise. * top.c (source_line_number): Add comma. 2011-04-19 Marc Khouzam * thread.c (any_live_thread_of_process): Prioritize threads that are not executing. * gdbthread.h (any_live_thread_of_process): Update comment as per above change. 2011-04-19 Andreas Schwab * xcoffread.c (process_xcoff_symbol): Remove useless cast. (scan_xcoff_symtab): Likewise. 2011-04-19 Pierre Muller * xcoffread.c (process_xcoff_symbol): ARI fix: Avoid assignment inside if clause. 2011-04-19 Pierre Muller Pedro Alves * xstormy16-tdep.c (xstormy16_push_dummy_call): Add local variables to simplify code and avoid == operator at end of line as this is against GNU coding standards. 2011-04-19 Pierre Muller * solib-svr4.c (svr4_keep_data_in_core): Rename local variable lm_name to name_lm to avoid conflict with lm_name function. 2011-04-19 Pierre Muller ARI fixes: Use only lowercase function name for static functions. * nto-tdep.c (LM_ADDR): Rename to... (lm_addr): New function name. (nto_relocate_section_addresses): Adapt to change above. * solib-sunos.c (LM_ADDR): Rename to... (lm_addr): New function name. (LM_NEXT): Rename to... (lm_next): New function name. (sunos_current_sos, sunos_relocate_section_addresses): Adapt to function name changes above. * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Rename to... (lm_addr_from_link_map): New function name. (HAS_LM_DYNAMIC_FROM_LINK_MAP): Rename to... (has_lm_dynamic_from_link_map): New function name. (LM_DYNAMIC_FROM_LINK_MAP): Rename to... (lm_dynamic_from_link_map): New function name. (LM_ADDR_CHECK): Rename to... (lm_addr_check): New function name. (LM_NEXT): Rename to... (lm_next): New function name. (LM_PREV): Rename to... (lm_prev): New function name. (LM_NAME): Rename to... (lm_name): New function name. (IGNORE_FIRST_LINK_MAP_ENTRY): Rename to... (ignore_first_link_map_entry): New function name. (svr4_keep_data_in_core): Adapt to function name changes above. (svr4_current_sos): Likewise. (enable_break): Likewise. (svr4_relocate_section_addresses): Likewise. 2011-04-19 Pierre Muller ARI cleanup. * xtensa-tdep.c (xtensa_register_type): Use xstrprintf instead of sprintf. Simplify code and avoid loosing memory. (xtensa_register_reggroup_p): Extract assignment out of IF clause. (call0_frame_cache): Remove && operator from end of line. 2011-04-17 Jan Kratochvil Fix libraries displacement if they change whether they were prelinked. * solib-svr4.c (LM_ADDR_CHECK): Set L_ADDR even if the DYNAMIC pointer does not match. Comment why. 2011-04-17 Jan Kratochvil * corelow.c: Include wrapper.h. (core_open): Call now gdb_target_find_new_threads. * wrapper.c: Include target.h. (gdb_target_find_new_threads): New. * wrapper.h (gdb_target_find_new_threads): New declaration. 2011-04-17 Jan Kratochvil * linux-thread-db.c (find_new_threads_callback): Exit on zero TI_TID even if !TARGET_HAS_EXECUTION. 2011-04-17 Jan Kratochvil Fix convert_code_addr_to_desc_addr for ppc64 files after eu-strip. * elfread.c (elf_symfile_read): New variable synth_abfd, pass it to bfd_get_synthetic_symtab. * jit.c (jit_register_code): Pass NULL to the new parameter parent. * machoread.c (macho_add_oso_symfile): Pass main_objfile to the new parameter parent, remove the call to add_separate_debug_objfile. * solib.c (solib_read_symbols): Pass NULL to the new parameter parent. * symfile-mem.c (symbol_file_add_from_memory): Likewise. * symfile.c (symbol_file_add_with_addrs_or_offsets): New parameter parent, new comment for it, call add_separate_debug_objfile for it. (symbol_file_add_separate): Pass objfile as the parameter parent, remove the call to add_separate_debug_objfile. (symbol_file_add_from_bfd): New parameter parent, pass it. (symbol_file_add): Pass NULL to the new parameter parent. * symfile.h (symbol_file_add_from_bfd): New parameter parent. 2011-04-17 Jan Kratochvil * elfread.c (elf_symtab_read): Do not ignore .L symbols if they are BSF_SYNTHETIC. 2011-04-17 Jan Kratochvil Fix Python access to inlined frames. * python/py-frame.c (frapy_read_var): Find BLOCK using get_frame_block. * python/py-symbol.c (gdbpy_lookup_symbol): Likewise. 2011-04-15 Tom Tromey * dwarf2read.c (add_index_entry): Use VEC_last, not VEC_length. 2011-04-15 Gary Benson * MAINTAINERS: Add myself to write-after-approval section. 2011-04-14 Mike Frysinger * remote-sim.c (sim_command_completer): New function. (_initialize_remote_sim): Set completer to sim_command_completer. 2011-04-13 Thiago Jung Bauermann * breakpoint.c (print_exception_catchpoint): Rename to ... (print_it_exception_catchpoint): ... this. (gnu_v3_exception_catchpoint_ops): Update with new name for print_it_exception_catchpoint. 2011-04-13 Edjunior Machado * MAINTAINERS: Add myself for write after approval privileges. 2011-04-13 Marek Polacek * MAINTAINERS: Add myself as a write-after-approval maintainer. 2011-04-13 Thiago Jung Bauermann * breakpoint.c (watch_command_1): Remove colon from exp_string. 2011-04-13 Thiago Jung Bauermann * breakpoint.c (save_breakpoints): Verify whether breakpoint_ops.print_recreate is defined before calling it. 2011-04-11 Gary Benson Fix failure with --enable-maintainer-mode. * Makefile.in (aclocal_m4_deps): Updated gnulib dependencies. 2011-04-09 Jan Kratochvil Code cleanup. * symtab.c (search_symbols): Reorder the KIND description in the function comment. Remove the unused 4th element of types, types2, types3 and types4. New gdb_assert on KIND. (symtab_symbol_info): Remove the unused 4th element of classnames. New gdb_assert on KIND. * symtab.h (enum search_domain): New warning in the enum comment. Assign numbers to the elements VARIABLES_DOMAIN, FUNCTIONS_DOMAIN and TYPES_DOMAIN. 2011-04-09 Jan Kratochvil Fix crash of gdb save-index on a STABS file. * dwarf2read.c (write_psymtabs_to_index): Return also on no PSYMTABS_ADDRMAP. 2011-04-09 Jan Kratochvil Fix DW_AT_accessibility compatibility with gcc-4.6+. * dwarf2read.c: Include ctype.h. (producer_is_gxx_lt_4_6, dwarf2_default_access_attribute): New functions. (dwarf2_add_field): Fix new_field->accessibility by calling dwarf2_default_access_attribute. Restructure setting accessibility vs. virtuality. (dwarf2_add_member_fn): New variable accessibility. Fix fnp is_private and is_protected by calling dwarf2_default_access_attribute. 2011-04-08 Kevin Buettner * rx-tdep.c (rx_frame_unwind): Add default_frame_unwind_stop_reason to the initialization. 2011-04-08 Steve Ellcey * Add default_frame_unwind_stop_reason value to libunwind_frame_unwind initalization. 2011-04-07 Pierre Muller Remove support for old Cygwin 1.5 versions. * remote-fileio.c: Remove macros used to emulate new cygwin_conv_path function on old Cygwin version. * windows-nat.c: Remove cygwin version check and always define __USEWIDE for Cygwin compilation. 2011-04-07 Yao Qi * arm-linux-tdep.c (arm_linux_copy_svc): Remove parameters INSN and TO. * arm-tdep.c (cleanup_svc): Handle variable instruction size. (arm_copy_svc): Remove parameters INSN and TO. (decode_svc_copro): Update caller. * arm-tdep.h (struct displaced_step_closure): Remove parameters from function pointer `copy_svc_os'. 2011-04-07 Yao Qi * arm-tdep.c (cleanup_branch): Set a correct return address in LR for ARM and Thumb. 2011-04-06 Jan Kratochvil Code cleanup. * dictionary.c (dict_hash): Use SYMBOL_HASH_NEXT. * dwarf2read.c (mapped_index_string_hash): Refer to SYMBOL_HASH_NEXT in the function comment, a new note on values compatibility. * minsyms.c (msymbol_hash_iw, msymbol_hash): Use SYMBOL_HASH_NEXT. * symtab.h (SYMBOL_HASH_NEXT): New. 2011-04-06 Thiago Jung Bauermann * ppc-linux-nat.c (check_condition): Add len output parameter. Set it based on the memory region referenced in the condition expression. Update all callers. 2011-04-06 Jan Kratochvil Fix crash regression on systems featuring .gdb_index. * objfiles.c (free_objfile): Move the forget_cached_source_info_for_objfile call earlier. Comment it. Extend the comment for objfile_free_data. 2011-04-06 Jan Kratochvil Fix regression of displaying the debug format. * buildsym.c (end_symtab): Set symtab's debugformat and producer from subfile. 2011-04-04 Tom Tromey * cli/cli-interp.c (struct captured_execute_command_args): Remove. (do_captured_execute_command): Remove. (safe_execute_command): Use TRY_CATCH. * cli/cli-script.c (struct wrapped_read_command_file_args): Remove. (wrapped_read_command_file): Remove. (script_from_file): Use TRY_CATCH. * exceptions.c (catch_exception): Remove. * exceptions.h (catch_exception): Remove. (deprecated_throw_reason): Update comment. * mi/mi-main.c (captured_mi_execute_command): Change 'data' argument to 'context'. (mi_execute_command): Use TRY_CATCH. * remote.c (struct start_remote_args): Remove. (remote_start_remote): Update; change arguments. (remote_open_1): Use TRY_CATCH. 2011-04-04 Tom Tromey * tracepoint.c (scope_info): Update. * symtab.c (decode_line_spec): Update. * python/python.c (gdbpy_decode_line): Update. * linespec.h (decode_line_1): Update. * linespec.c (decode_line_1): Remove 'not_found_ptr' argument. (decode_compound, find_method, symtab_from_filename) (decode_variable): Likewise. * cli/cli-cmds.c (edit_command): Update. (list_command): Update. * breakpoint.c (parse_breakpoint_sals): Remove 'not_found_ptr' argument. (create_breakpoint): Update. (until_break_command): Update. (addr_string_to_sals): Update. (decode_line_spec_1): Update. 2011-04-04 Tom Tromey * breakpoint.c (struct captured_parse_breakpoint_args): Remove. (do_captured_parse_breakpoint): Remove. (create_breakpoint): `e' is now volatile. Remove `parse_args'. Use TRY_CATCH directly. 2011-04-04 Tom Tromey * symtab.h (free_symtab): Remove. (forget_cached_source_info_for_objfile): Declare. * symmisc.c (free_symtab): Remove. * source.c (forget_cached_source_info_for_objfile): New function. (forget_cached_source_info): Use it. * objfiles.c (free_objfile): Simplify check before calling clear_current_source_symtab_and_line. Call forget_cached_source_info_for_objfile. 2011-04-04 Tom Tromey * mdebugread.c (psymtab_to_symtab_1): Copy linetable to obstack. (new_symtab): Don't set `free_code' on symtab. (new_linetable): Properly handle size==0. * symtab.h (struct symtab) : Remove. * symmisc.c (free_symtab): Don't free the linetable. Don't call free_func. * jv-lang.c (struct jv_per_objfile_data): New. (jv_per_objfile_free): Free the data. (get_dynamics_objfile): Allocate a jv_per_objfile_data. (get_java_class_symtab): Set the `dict' field on the jv_per_objfile_data. (free_class_block): Remove. * buildsym.c (end_symtab): Don't set `free_code' or `free_func' on the symtab. 2011-04-04 Tom Tromey * symfile.c (reread_symbols): Update. * objfiles.h (struct objfile) : Remove field. * objfiles.c (allocate_objfile): Update. * cp-support.h (cp_check_possible_namespace_symbols): Don't declare. * cp-namespace.c (lookup_symbol_file): Don't call lookup_possible_namespace_symbol. (initialize_namespace_symtab, get_possible_namespace_block) (free_namespace_block, cp_check_possible_namespace_symbols) (check_possible_namespace_symbols_loop) (check_one_possible_namespace_symbol) (lookup_possible_namespace_symbol): Remove. (maintenance_cplus_namespace): Replace with notice. (_initialize_cp_namespace): Deprecate `maint cplus namespace'. 2011-04-04 Tom Tromey * xcoffread.c (read_xcoff_symtab): Make `debugfmt' const. * symtab.h (struct symtab) : Now const. * symmisc.c (free_symtab): Don't free debugformat. * buildsym.h (struct subfile) : Now const. (record_debugformat, record_producer): Document. * buildsym.c (end_symtab): Don't save debugformat and producer names on obstack. (end_symtab): Don't free debugformat and producer fields. (record_debugformat): Don't call xstrdup. (record_producer): Likewise. 2011-04-04 Tom Tromey * source.c (find_source_lines): Remove LSEEK_NOT_LINEAR code. (source_line_charpos, source_charpos_line): Remove. 2011-04-04 Tom Tromey * symtab.h (domain_enum): Split in two... (enum search_domain): New. (search_symbols): Update. * symtab.c (print_symbol_info, symtab_symbol_info): Remove redundant declarations. (search_symbols): Change 'kind' argument to search_domain. Update. (print_symbol_info): Likewise. (symtab_symbol_info): Likewise. * symfile.h (struct quick_symbol_functions) : Change type of 'kind' argument. : Likewise. * psymtab.c (pre_expand_symtabs_matching_psymtabs): Update. (expand_symtabs_matching_via_partial): Update. * dwarf2read.c (dw2_pre_expand_symtabs_matching): Update. (dw2_expand_symtabs_for_function): Update. * block.h: Moved anonymous enum... * defs.h (enum block_enum): ... here. Now named. 2011-04-03 Joel Brobecker GDB 7.3 branch created (branch timestamp: 2011-04-01 01:00 UTC) * version.in: Bump version to 7.3.50.20110403-cvs. 2011-04-03 Joel Brobecker * NEWS: Create a new section for the next release branch. Rename the section of the current branch, now that it has been cut. 2011-04-01 Ulrich Weigand * arm-tdep.c (arm_gdbarch_init): Enfore correct register number for "fpscr" in target description. 2011-04-01 Jan Kratochvil * dwarf2read.c (find_slot_in_mapped_hash): New variable back_to, initialize it. Delay HASH initialization. Strip the part after open parenthesis for languages with qualifiers. Call do_cleanups. 2011-04-01 Tom Tromey * utils.c (report_command_stats): Don't print `-' for negative number. 2011-04-01 Eric Botcazou * ada-lang.c (ada_is_simple_array_type, ada_value_slice_from_ptr) (ada_value_slice, empty_array, to_fixed_array_type): Deal with typedefs. 2011-04-01 Joel Brobecker * breakpoint.h (bpdisp_text): Add declaration. * breakpoint.c (bpdisp_text): Make non-static. * ada-lang.c: #include "mi/mi-common.h". (print_it_exception): Rewrite to improve GDB/MI output. 2011-04-01 Pedro Alves * arm-tdep.h (struct address_space): Add forward declaration. 2011-04-01 Ulrich Weigand * arm-tdep.h (arm_insert_single_step_breakpoint): Add prototype. * arm-tdep.c (arm_override_mode): New global. (arm_pc_is_thumb): Respect arm_override_mode. Remove single-step execution mode heuristics. (thumb_get_next_pc_raw): Remove INSERT_BKTP argument; always insert second single-step breakpoint if needed, using arm_insert_single_step_breakpoint. (arm_get_next_pc_raw): Remove INSERT_BKTP argument. Only handle ARM execution mode, do not call thumb_get_next_pc_raw. (arm_get_next_pc): Encode execution mode in return value. Call either arm_get_next_pc_raw or thumb_get_next_pc_raw. (arm_insert_single_step_breakpoint): New function. (arm_software_single_step): Call it. * arm-linux-tdep.c (arm_linux_sigreturn_return_addr): Add IS_THUMB argument to return execution mode of sigreturn target. (arm_linux_syscall_next_pc): Use it. (arm_linux_copy_svc): Update call. (arm_linux_software_single_step): Call arm_insert_single_step_breakpoint. 2011-03-31 Jan Kratochvil * dwarf2read.c (dwarf2_read_index): Fix .gdb_index version number in the comment. 2011-03-31 Tom Tromey * varobj.c (update_dynamic_varobj_children): Properly handle errors from iterator. 2011-03-31 Jan Kratochvil * dwarf2read.c (dwarf2_name): Initialize DEMANGLED. Avoid demangling struct linkage name twice. 2011-03-31 Tom Tromey * python/py-prettyprint.c (print_stack_unless_memory_error): Add missing ">" to message. 2011-03-31 Tom Tromey * varobj.c (instantiate_pretty_printer): Remove duplicate 'return'. 2011-03-31 Ulrich Weigand * i386-tdep.c (i386_frame_prev_register): Unwind SP from memory if neither saved value nor register available (e.g. signal frame). 2011-03-31 Thiago Jung Bauermann * macroexp.c (expand): Avoid uninitialized variable compiler warning. 2011-03-31 Thiago Jung Bauermann * breakpoint.c (break_range_command): Fix typo in comment. 2011-03-31 Thiago Jung Bauermann Sergio Durigan Junior Implement support for PowerPC BookE ranged breakpoints. * NEWS: Mention support for ranged breakpoints on embedded PowerPC. * breakpoint.h (struct bp_target_info) : New member variable. (struct breakpoint_ops) : Take struct bp_location instead of struct breakpoint as argument, and also add ASPACE and BP_ADDR arguments. Update all callers. (struct breakpoint_ops) : New method. (struct breakpoint) : New member variable. * breakpoint.c (breakpoint_location_address_match): Add function prototype. (insert_bp_location): Set bl->target_info.length. (breakpoint_here_p): Call breakpoint_location_address_match. (moribund_breakpoint_here_p): Likewise. (regular_breakpoint_inserted_here_p): Likewise. (breakpoint_thread_match): Likewise. (bpstat_stop_status): Likewise. (bpstat_check_location): Move call to breakpoint_ops.breakpoint_hit to the top. (print_one_breakpoint_location): Call breakpoint_ops.print_one_detail if available. (breakpoint_address_match_range): New function. (breakpoint_location_address_match): Likewise. (breakpoint_locations_match): Compare the length field of the locations too. (hw_breakpoint_used_count): Count resources used by all locations in a breakpoint, and use breakpoint_ops.resources_needed if available. (breakpoint_hit_ranged_breakpoint): New function. (resources_needed_ranged_breakpoint): Likewise. (print_it_ranged_breakpoint): Likewise. (print_one_ranged_breakpoint): Likewise. (print_one_detail_ranged_breakpoint): Likewise. (print_mention_ranged_breakpoint): Likewise. (print_recreate_ranged_breakpoint): Likewise. (ranged_breakpoint_ops): New structure. (find_breakpoint_range_end): New function. (break_range_command): Likewise. (delete_breakpoint): Free addr_string_range_end. (update_breakpoint_locations): Add SALS_END argument. Update all callers. Calculate breakpoint length if a non-zero SALS_END is given. Call breakpoint_locations_match instead of breakpoint_address_match. (reset_breakpoint): Find SaL of the end of the range if B is a ranged breakpoint. (_initialize_breakpoint): Register break-range command. * defs.h (print_core_address): Add function prototype. * ppc-linux-nat.c (ppc_linux_ranged_break_num_registers): New function. (ppc_linux_insert_hw_breakpoint): Support ranged breakpoints. (ppc_linux_remove_hw_breakpoint): Likewise. (_initialize_ppc_linux_nat): Initialize to_ranged_break_num_registers. * target.c (update_current_target): Add comment about to_ranged_break_num_registers. (target_ranged_break_num_registers): New function. * target.h (struct target_ops) : New method. (target_ranged_break_num_registers): Add function prototype. * ui-out.c (ui_out_field_core_addr): Move address-printing logic to ... * utils.c (print_core_address): ... here. 2011-03-31 Ulrich Weigand * breakpoint.c (addr_string_to_sals): Avoid uninitialized variable compiler warning. 2011-03-30 Thiago Jung Bauermann * breakpoint.c (breakpoint_re_set_one): Factor out breakpoint-resetting code from here ... (re_set_breakpoint): ... to here ... (addr_string_to_sals): ... and here. 2011-03-29 Pierre Muller * Makefile.in (SFILES): Add missing C sources. (HFILES_NO_SRCDIR): Remove gdbserver subdirectory headers. Add missing headers. 2011-03-29 Mike Frysinger * .gitignore: New file. 2011-03-29 Mike Frysinger * NEWS: Mention new cfi device simulation. 2011-03-29 Tom Tromey * dwarf2read.c (fixup_partial_die): Handle linkage name on otherwise anonymous types. (dwarf2_name): Likewise. * valops.c (value_struct_elt_for_reference): Refine artificial type logic. Call error if j==-1. 2011-03-29 Andreas Tobler Fix false GCC warning. * infcall.c (find_function_addr): Initialize funaddr. 2011-03-29 Pierre Muller Fix mingw compilation with --enable-targets=all. * remote-mips.c (gdb_usleep.h): Include header. (mips_enter_debug): Use gdb_usleep instead of sleep. 2011-03-28 Jan Kratochvil Support resolution of STT_GNU_IFUNC via breakpoints. * breakpoint.c (print_it_typical): Support bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return. (bpstat_what): Rename parameter to bs_head, new variable bs, adjust the loop. Support bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return. New comment after the loop. New loop for bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return breakpoints. (bptype_string, print_one_breakpoint_location): Support bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return. (user_settable_breakpoint): Return true also for bp_gnu_ifunc_resolver. (allocate_bp_location): Support bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return. (set_breakpoint_location_function): New parameter explicit_loc, describe it. Call find_pc_partial_function_gnu_ifunc with new variable IS_GNU_IFUNC and adjust the address for STT_GNU_IFUNC if EXPLICIT_LOC is not set. (set_raw_breakpoint): Set EXPLICIT_LOC for set_breakpoint_location_function. (clone_momentary_breakpoint): Use true for EXPLICIT_LOC of set_breakpoint_location_function. (mention): Support bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return. (add_location_to_breakpoint): Set EXPLICIT_LOC for set_breakpoint_location_function. (update_breakpoint_locations): Remove static. (breakpoint_re_set_one): Support bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return. * breakpoint.h (enum bptype): New fields bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return. (update_breakpoint_locations): New declaration. * elfread.c: Include gdbthread.h and regcache.h. (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop): New functions. (elf_gnu_ifunc_fns): Install them. * minsyms.c (stub_gnu_ifunc_resolver_stop) (stub_gnu_ifunc_resolver_return_stop): New functions. (stub_gnu_ifunc_fns): Install them. * symtab.h (struct gnu_ifunc_fns): New fields gnu_ifunc_resolver_stop and gnu_ifunc_resolver_return_stop. (gnu_ifunc_resolver_stop, gnu_ifunc_resolver_return_stop): New. 2011-03-28 Jan Kratochvil STT_GNU_IFUNC reader implementation. * elfread.c: Include gdbtypes.h, value.h and infcall.h. (SYMBOL_GOT_PLT_SUFFIX, elf_rel_plt_read) (elf_objfile_gnu_ifunc_cache_data, struct elf_gnu_ifunc_cache) (elf_gnu_ifunc_cache_hash, elf_gnu_ifunc_cache_eq) (elf_gnu_ifunc_record_cache, elf_gnu_ifunc_resolve_by_cache) (elf_gnu_ifunc_resolve_by_got, elf_gnu_ifunc_resolve_name) (elf_gnu_ifunc_resolve_addr): New. (elf_symfile_read): Call elf_rel_plt_read. (elf_gnu_ifunc_fns): New. (_initialize_elfread): Initialize elf_objfile_gnu_ifunc_cache_data. Install elf_gnu_ifunc_fns. * infcall.c (find_function_return_type): New function. (find_function_addr): Resolve TYPE_GNU_IFUNC functions, if possible. * minsyms.c (stub_gnu_ifunc_resolve_addr) (stub_gnu_ifunc_resolve_name): New functions. (stub_gnu_ifunc_fns, gnu_ifunc_fns_p): New variables. * symtab.h (struct gnu_ifunc_fns, gnu_ifunc_resolve_addr) (gnu_ifunc_resolve_name, gnu_ifunc_fns_p): New. 2011-03-28 Jan Kratochvil Code cleanup for later STT_GNU_IFUNC support. * infcall.c (find_function_addr): Remove variable code, use explicit dereferences for it. Move VALUE_TYPE initialization later. 2011-03-28 Jan Kratochvil GDB find_pc_partial_function support for STT_GNU_IFUNC. * blockframe.c (cache_pc_function_is_gnu_ifunc): New variable. (clear_pc_function_cache): Clear it. (find_pc_partial_function): Rename to ... (find_pc_partial_function_gnu_ifunc): ... this function. New parameter is_gnu_ifunc_p, describe it. Set *IS_GNU_IFUNC_P. (find_pc_partial_function): New wrapper for this function. * symtab.h (find_pc_partial_function_gnu_ifunc): New declaration. 2011-03-28 Jan Kratochvil GDB internal type support for STT_GNU_IFUNC. * elfread.c (record_minimal_symbol): Support mst_text_gnu_ifunc. (elf_symtab_read): Set mst_text_gnu_ifunc for BSF_GNU_INDIRECT_FUNCTION. * eval.c (evaluate_subexp_standard): Support TYPE_GNU_IFUNC. * gdbtypes.c (init_type): Support TYPE_FLAG_GNU_IFUNC, builtin_func_func, nodebug_text_gnu_ifunc_symbol and nodebug_got_plt_symbol. * gdbtypes.h (enum type_flag_value): New entry TYPE_FLAG_GNU_IFUNC. (TYPE_GNU_IFUNC): New. (struct main_type): New field flag_gnu_ifunc. (struct builtin_type): New field builtin_func_func. (struct objfile_type): New fields nodebug_text_gnu_ifunc_symbol and nodebug_got_plt_symbol. * minsyms.c (lookup_minimal_symbol_text): Support mst_text_gnu_ifunc. (in_gnu_ifunc_stub): New. (prim_record_minimal_symbol, find_solib_trampoline_target): Support mst_text_gnu_ifunc. * parse.c (write_exp_msymbol): New variable ifunc_msym. Detect and support mst_text_gnu_ifunc. Support mst_slot_got_plt. * solib-svr4.c (svr4_in_dynsym_resolve_code): Return true also for in_gnu_ifunc_stub. * symmisc.c (dump_msymbols): Support mst_text_gnu_ifunc. * symtab.c (search_symbols): Likewise. * symtab.h (enum minimal_symbol_type): New fields mst_text_gnu_ifunc and mst_slot_got_plt. (in_gnu_ifunc_stub): New declaration. 2011-03-28 Jan Kratochvil Support a ring of related breakpoints. * breakpoint.c (watchpoint_del_at_next_stop): New, move here code from other functions, add gdb_assert. (update_watchpoint, watchpoint_check): Add gdb_assert. Use watchpoint_del_at_next_stop. (bpstat_check_watchpoint): Use watchpoint_del_at_next_stop. (bpstat_stop_status): Handle ring in related_breakpoint. (set_raw_breakpoint_without_location): Initialize ring in related_breakpoint. (delete_breakpoint): Handle ring in related_breakpoint, use watchpoint_del_at_next_stop. (map_breakpoint_numbers): Handle ring in related_breakpoint. 2011-03-28 Tom Tromey PR symtab/12441: * dwarf2read.c (prepare_one_comp_unit): Don't call set_cu_language with `language_minimal'. 2011-03-25 Ulrich Weigand * arm-tdep.c (arm_elf_make_msymbol_special): Use ARM_SYM_BRANCH_TYPE instead of checking for STT_ARM_TFUNC symbol type. 2011-03-25 Tom Tromey * linespec.c (symbol_found): Restore line-based result for non-LOC_LABEL symbols. 2011-03-25 Kai Tietz * tui/tui-source.c (tui_set_source_content): Use filename_cmp instead of strcmp for comparison. (tui_source_is_displayed): Likewise. * tui/tui-winsource.c (tui_update_breakpoint_info): Likewise. 2011-03-24 Mark Wielaard * dwarf2read.c (lookup_signatured_type): Use DW_FORM_ref_sig8 in complaint. (skip_one_die): Use DW_FORM_ref_sig8, not DW_FORM_sig8. (find_partial_die_in_comp_unit): Likewise in comment. (read_attribute_value): Likewise. (lookup_die_type): Likewise. (dwarf_form_name): Likewise. (dump_die_shallow): Likewise. (follow_die_ref_or_sig): Likewise. 2011-03-24 Tom Tromey PR breakpoints/11816: * linespec.c (decode_line_1): Parse `function:label' linespecs. (decode_compound): Update. (find_function_symbol): New function. (decode_dollar): Update. (decode_label): Add 'function_symbol' parameter. Handle function-relative labels. (decode_variable): Update. (symbol_found): Add 'function_symbol' parameter. Use label's PC, not its line. Set `special_display' and canonical name for labels. 2011-03-24 Tom Tromey * linespec.h (struct linespec_result) : New field. * breakpoint.h (struct breakpoint) : New field. * breakpoint.c (print_breakpoint_location): Respect display_canonical. (create_breakpoint_sal): Add 'display_canonical' parameter. (create_breakpoints_sal): Update. (create_breakpoint): Update. 2011-03-24 Tom Tromey * symtab.c (decode_line_spec): Update. * linespec.c (build_canonical_line_spec): Change type of 'canonical'. (decode_line_2, decode_line_1, decode_objc, decode_compound) (find_method, decode_all_digits, decode_dollar, decode_label) (symbol_found): Likewise. (init_linespec_result): New function. * breakpoint.c (struct captured_parse_breakpoint_args) : New field, replaces addr_string_p. (create_breakpoints_sal): Add 'canonical' parameter, replacing 'addr_string'. (parse_breakpoint_sals): Likewise. (do_captured_parse_breakpoint): Update. (create_breakpoint): Use struct linespec_result. (until_break_command): Update. (breakpoint_re_set_one): Update. (decode_line_spec_1): Update. * linespec.h (struct linespec_result): New. (init_linespec_result): Declare. 2011-03-23 Pedro Alves * regcache.c (regcache_raw_read): If the target didn't supply a given raw register, mark it as unavailable. 2011-03-23 Kai Tietz * breakpoint.c (clear_command): Use filename_cmp instead of strcmp for comparison. * buildsym.c (watch_main_source_file_lossage): Likewise. (patch_subfile_names): Use IS_DIR_SEPARATOR instead of checking just for slash. * dbxread.c (read_dbx_symtab): Use lbasename instead of strrchr and filename_cmp instead of strcmp for filenames. (add_old_header_file): Use filename_cmp instead of strcmp for comparison. * exec.c (exec_set_section_address): Likewise. * macrotab.c (macro_lookup_inclusion): Likewise. (macro_lookup_inclusion): Likewise. * elfread.c (_initialize_elfread): Likewise. (elfstab_offset_sections): Likewise. (elfstab_offset_sections): Use lbasename instead of strrchr. * mdebugread.c (parse_partial_symbols): Likewise. (arse_partial_symbols): Use filename_(n)cmp instead of str(n)cmp for comparison. * minsyms.c (lookup_minimal_symbol): Likewise. * psymtab.c (read_psymtabs_with_filename): Likewise. * solib.c (solib_read_symbols): Likewise. (reload_shared_libraries_1): Likewise. * symmisc.c (maintenance_print_symbols): Likewise. * symfile.c (separate_debug_file_exists): Likewise. (reread_symbols): Likewise. (find_separate_debug_file_by_debuglink): Likewise. * remote-fileio.c (remote_fileio_func_rename): Likewise. * source.c (add_path): Likewise. * symtab.c (filename_seen): Likewise. (file_matches): Likewise. (print_symbol_info): Likewise. (maybe_add_partial_symtab_filename): Likewise. (make_source_files_completion_list): Likewise. * xml-syscall.c (init_sysinfo): Likewise. * windows-nat.c (_initialize_check_for_gdb_ini): Use IS_DIR_SEPARATOR for checking for trailing path separator. 2011-03-22 Jan Kratochvil * dwarf2expr.c (execute_stack_op): Handle DW_OP_GNU_entry_value. New label abort_expression. * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle DWARF_VALUE_OPTIMIZED_OUT. 2011-03-22 Jan Kratochvil Code cleanup. * c-typeprint.c (c_type_print_args): Change parameter show_artificial to linkage_name. Invert its value. Update the function comment. (c_type_print_varspec_suffix): Invert it at the caller. * dwarf2read.c (dwarf2_compute_name): Invert it at the caller. 2011-03-22 Pedro Alves * infcmd.c (post_create_inferior): Ignore NOT_AVAILABLE_ERROR errors when reading the `stop_pc'. * printcmd.c (pc_prefix): Use get_frame_pc_if_available instead of get_frame_pc. 2011-03-22 Phil Muldoon * NEWS: Document gdb.Write stream keyword. 2011-03-22 Jan Kratochvil Revert: 2011-03-21 Jan Kratochvil * dwarf2read.c (producer_is_gxx_lt_4_6): New function. (dwarf2_add_field): Fix new_field->accessibility for cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6. 2011-03-22 Phil Muldoon PR python/12183 * python/py-function.c (fnpy_call): Treat GdbErrors differently to other error classes. Do not print stack trace. 2011-03-21 Jan Kratochvil * dwarf2read.c (producer_is_gxx_lt_4_6): New function. (dwarf2_add_field): Fix new_field->accessibility for cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6. 2011-03-21 Ulrich Weigand * arm-tdep.c (arm_analyze_prologue): Do not abort parsing when encountering a load via a non-SP register. 2011-03-21 Ulrich Weigand * tramp-frame.c (tramp_frame_prepend_unwinder): Set stop_reason field in returned unwinder. 2012-03-21 Jan Kratochvil * ada-lang.c (replace_operator_with_call): Copy also GDBARCH. 2012-03-21 Joel Brobecker * ada-lang.c (replace_operator_with_call): Use xzalloc instead of xmalloc. 2012-03-18 Pedro Alves * frame.c (frame_unwind_register): Throw an error if unwinding the register failed. * get_prev_frame_1 (get_prev_frame_1): Ask the unwinder if there's an unwind stop reason. (frame_stop_reason_string): Handle UNWIND_UNAVAILABLE. * frame.h (enum unwind_stop_reason) : New. * inline-frame.c (inline_frame_unwind): Install default_frame_unwind_stop_reason. * frame-unwind.c: Include "exceptions.h". (frame_unwind_find_by_frame): Swallow NOT_AVAILABLE_ERROR errors. (default_frame_unwind_stop_reason): New. * frame-unwind.h (frame_unwind_stop_reason_ftype): New typedef. (default_frame_unwind_stop_reason): Declare. (struct frame_unwind) : New function pointer. * dummy-frame.c: Install default_frame_unwind_stop_reason. * dwarf2-frame.c: Include exceptions.h. (struct dwarf2_frame_cache) : New field. (dwarf2_frame_cache): Swallow NOT_AVAILABLE_ERROR errors when computing the CFA. If such an error was thrown, set unavailable_retaddr. (dwarf2_frame_unwind_stop_reason): New. (dwarf2_frame_this_id): Don't build a frame id if the CFA was unavailable. (dwarf2_frame_unwind): Install dwarf2_frame_unwind_stop_reason. (dwarf2_signal_frame_unwind): Ditto. * amd64-tdep.c: Include "exceptions.h". (struct amd64_frame_cache): New field "base_p". (amd64_init_frame_cache): Clear it. (amd64_frame_cache_1): New, factored out from amd64_frame_cache. Avoid reading registers with functions that throw if the register is not necessary to compute the frame base. (amd64_frame_cache): Reimplement wrapping amd64_frame_cache_1, and swallowing NOT_AVAILABLE_ERROR. (amd64_frame_unwind_stop_reason): New. (amd64_frame_this_id): Don't build a frame id if the frame base was unavailable. (amd64_frame_unwind): Install amd64_frame_unwind_stop_reason. (amd64_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set base_p if the frame base was computable. (amd64_sigtramp_frame_unwind_stop_reason): New. (amd64_sigtramp_frame_this_id): Don't build a frame id if the frame base was unavailable. (amd64_sigtramp_frame_unwind): Install amd64_sigtramp_frame_unwind_stop_reason. (amd64_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set base_p if the frame base was computable. (amd64_epilogue_frame_unwind_stop_reason): New. (amd64_epilogue_frame_this_id): Don't build a frame id if the frame base was unavailable. (amd64_epilogue_frame_unwind): Install amd64_epilogue_frame_unwind_stop_reason. * i386-tdep.c: Include "exceptions.h". (struct i386_frame_cache): New field "base_p". (i386_init_frame_cache): Clear it. (i386_frame_cache_1): New, factored out from amd64_frame_cache. Avoid reading registers with functions that throw if the register is not necessary to compute the frame base. (i386_frame_cache): Reimplement wrapping amd64_frame_cache_1, and swallowing NOT_AVAILABLE_ERROR. (i386_frame_unwind_stop_reason): New. (i386_frame_this_id): Don't build a frame id if the frame base was unavailable. (i386_frame_prev_register): Handle unavailable SP. (i386_frame_unwind): Install i386_frame_unwind_stop_reason. (i386_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set base_p if the frame base was computable. (i386_epilogue_frame_unwind_stop_reason): New. (i386_epilogue_frame_this_id): Don't build a frame id if the frame base was unavailable. (i386_epilogue_frame_unwind): Install i386_epilogue_frame_unwind_stop_reason. (i386_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set base_p if the frame base was computable. (i386_sigtramp_frame_unwind_stop_reason): New. (i386_sigtramp_frame_this_id): Don't build a frame id if the frame base was unavailable. (i386_sigtramp_frame_unwind): Install i386_sigtramp_frame_unwind_stop_reason. * sentinel-frame.c (sentinel_frame_prev_register): Use the value type's size, not the register's. (sentinel_frame_unwind): Install default_frame_unwind_stop_reason. * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind): Install default_frame_unwind_stop_reason. * alpha-tdep.c (alpha_sigtramp_frame_unwind) (alpha_heuristic_frame_unwind): Ditto. * amd64obsd-tdep.c (amd64obsd_trapframe_unwind): Ditto. * arm-tdep.c (arm_prologue_unwind, arm_stub_unwind): Ditto. * avr-tdep.c (avr_frame_unwind): Ditto. * cris-tdep.c (cris_sigtramp_frame_unwind, cris_frame_unwind): Ditto. * frv-linux-tdep.c (frv_linux_sigtramp_frame_unwind): Ditto. * frv-tdep.c (frv_frame_unwind): Ditto. * h8300-tdep.c (h8300_frame_unwind): Ditto. * hppa-hpux-tdep.c (hppa_hpux_sigtramp_frame_unwind): Ditto. * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind): Ditto. * hppa-tdep.c (hppa_frame_unwind, hppa_fallback_frame_unwind) (hppa_stub_frame_unwind): Ditto. * i386obsd-tdep.c (i386obsd_trapframe_unwind): Ditto. * ia64-tdep.c (ia64_frame_unwind, ia64_sigtramp_frame_unwind) (ia64_libunwind_frame_unwind) (ia64_libunwind_sigtramp_frame_unwind): Ditto. * iq2000-tdep.c (iq2000_frame_unwind): Ditto. * lm32-tdep.c (lm32_frame_unwind): Ditto. * m32c-tdep.c (m32c_unwind): Ditto. * m32r-linux-tdep.c (m32r_linux_sigtramp_frame_unwind): Ditto. * m32r-tdep.c (m32r_frame_unwind): Ditto. * m68hc11-tdep.c (m68hc11_frame_unwind): Ditto. * m68k-tdep.c (m68k_frame_unwind): Ditto. * m68klinux-tdep.c (m68k_linux_sigtramp_frame_unwind): Ditto. * m88k-tdep.c (m88k_frame_unwind): Ditto. * mep-tdep.c (mep_frame_unwind): Ditto. * microblaze-tdep.c (microblaze_frame_unwind): Ditto. * mips-tdep.c (mips_insn16_frame_unwind, mips_insn32_frame_unwind) (mips_stub_frame_unwind): Ditto. * mn10300-tdep.c (mn10300_frame_unwind): Ditto. * moxie-tdep.c (moxie_frame_unwind): Ditto. * mt-tdep.c (mt_frame_unwind): Ditto. * ppc-linux-tdep.c (ppu2spu_unwind): Ditto. * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_unwind): Ditto. * rs6000-tdep.c (rs6000_frame_unwind): Ditto. * s390-tdep.c (s390_frame_unwind, s390_stub_frame_unwind) (s390_sigtramp_frame_unwind): Ditto. * score-tdep.c (score_prologue_unwind): Ditto. * sh-tdep.c (sh_frame_unwind): Ditto. * sh64-tdep.c (sh64_frame_unwind): Ditto. * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_unwind): Ditto. * sparc-tdep.c (sparc32_frame_unwind): Ditto. * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_unwind): Ditto. * sparc64-tdep.c (sparc64_frame_unwind): Ditto. * sparc64fbsd-tdep.c (sparc64fbsd_sigtramp_frame_unwind): Ditto. * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_unwind): Ditto. * sparc64obsd-tdep.c (sparc64obsd_frame_unwind) (sparc64obsd_trapframe_unwind): Ditto. * sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_unwind): Ditto. * sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_unwind): Ditto. * spu-tdep.c (spu_frame_unwind, spu2ppu_unwind): Ditto. * v850-tdep.c (v850_frame_unwind): Ditto. * vax-tdep.c (vax_frame_unwind): Ditto. * vaxobsd-tdep.c (vaxobsd_sigtramp_frame_unwind): Ditto. * xstormy16-tdep.c (frame_unwind xstormy16_frame_unwind): Ditto. * xtensa-tdep.c (xtensa_unwind): Ditto. 2011-03-18 Pedro Alves * tui/tui-hooks.c (tui_selected_frame_level_changed_hook): Assume there's always a frame. Use get_frame_pc_if_available instead of get_frame_pc, and if there's no PC available, don't look up a symtab. 2011-03-18 Pedro Alves * stack.c (print_frame_local_vars, print_frame_arg_vars): Handle unavailable PC. 2011-03-18 Pedro Alves * tracepoint.c (set_traceframe_context): Handle unavailable PC gracefully. 2011-03-18 Pedro Alves * frame.h (frame_unwind_caller_pc_if_available): Declare. * frame.c (frame_unwind_caller_pc_if_available): New. * stack.c (frame_info): Handle unavailable PC. 2011-03-18 Pedro Alves * frame.c (frame_unwind_pc): Rename to ... (frame_unwind_pc_if_available): ... this. New `pc' output parameter. Change return type to int. Gracefully handle gdbarch_unwind_pc throwing NOT_AVAILABLE_ERROR. Return 0 if that happened, or 1 otherwise. (frame_unwind_pc): Reimplement on top of frame_unwind_pc_if_available. (get_frame_func): Rename to ... (get_frame_func_if_available): New `pc' output parameter. Change return type to int. Gracefully handle the PC not being available. (get_frame_func): Reimplement on top of get_frame_func_if_available. (select_frame): Handle the PC being unavailable. (get_prev_frame): Handle the PC being unavailable. (get_frame_pc_if_available): New. (get_frame_address_in_block_if_available): New. (find_frame_sal): Handle the frame PC not being available. * frame.h (get_frame_pc_if_available): Declare. (get_frame_address_in_block_if_available): Declare. (get_frame_func_if_available): Declare. * stack.c (print_frame_info): Handle the PC being unavailable. (find_frame_funname): Ditto. (print_frame): Handle the PC being unavailable. (get_frame_language): Ditto. * blockframe.c (get_frame_block): Ditto. * macroscope.c (default_macro_scope): Ditto. * tui/tui-stack.c (tui_show_frame_info): Ditto. 2011-03-18 Pedro Alves * dwarf2loc.c (dwarf2_evaluate_loc_desc): Catch NOT_AVAILABLE_ERROR when evaluating the location expression. 2011-03-18 Pedro Alves * dwarf2loc.c (read_pieced_value): Handle get_frame_register_bytes returning that the register piece is unavailable/optimized out. (write_pieced_value): Handle get_frame_register_bytes returning that the register piece is unavailable/optimized out when doing a read-modify write of a bitfield. * findvar.c (value_from_register): Handle get_frame_register_bytes returning that the register piece is unavailable/optimized out. * frame.c (get_frame_register_bytes): New parameters `optimizedp' and `unavailablep'. Throw error on bad debug info. Use frame_register instead of frame_register_read, to fill in the new arguments. * frame.h (get_frame_register_bytes): New parameters `optimizedp' and `unavailablep'. * valops.c: (value_assign): Adjust, and handle get_frame_register_bytes failing. * spu-tdep.c: Include exceptions.h. (spu_software_single_step): Adjust, and handle get_frame_register_bytes failing. (spu_get_longjmp_target): Ditto. * gdbarch.sh (register_to_value): Change to return int. New parameters `optimizedp' and `unavailablep'. * gdbarch.h, gdbarch.c: Regenerate. * i386-tdep.c (i386_register_to_value): Adjust to new gdbarch_register_to_value interface. * i387-tdep.c (i387_register_to_value): Ditto. * i387-tdep.h (i387_register_to_value): Ditto. * alpha-tdep.c (alpha_register_to_value): Ditto. * ia64-tdep.c (ia64_register_to_value): Ditto. * m68k-tdep.c (m68k_register_to_value): Ditto. * mips-tdep.c (mips_register_to_value): Ditto. * rs6000-tdep.c (rs6000_register_to_value): Ditto. 2011-03-18 Pedro Alves * findvar.c (value_of_register): Mark the value as unavailable, if the register is unavailable. * frame.h (frame_register_unwind): New `unavailablep' parameter. (frame_register): New `unavailablep' parameter. (frame_register_read): Update comment. * frame.c (frame_register_unwind): New `unavailablep' parameter. Set it if the register is unavailable. If the register is unavailable, clear the output buffer. (frame_register): New `unavailablep' parameter. Pass it down. (frame_unwind_register): Adjust. (put_frame_register): Adjust. (frame_register_read): Adjust. Also return false if the register is not available. (frame_register_unwind_location): Adjust. * sentinel-frame.c (sentinel_frame_prev_register): If the register is unavailable, mark the value accordingly. * stack.c (frame_info): Handle unavailable registers. 2011-03-18 Pedro Alves * mi/mi-main.c (register_changed_p): Handle REG_UNAVAILABLE, and simplify, using regcache_cooked_read. 2011-03-18 Pedro Alves * regcache.h (regcache_raw_read, regcache_raw_read_signed) (regcache_raw_read_unsigned, regcache_raw_read_signed) (regcache_raw_read_unsigned, regcache_raw_read_part) (regcache_cooked_read, regcache_cooked_read_signed) (regcache_cooked_read_unsigned, regcache_cooked_read_part) (regcache_cooked_read_ftype): Change return to enum register_status. * regcache.c: Include exceptions.h (regcache_save): Adjust to handle REG_UNAVAILABLE registers. (do_cooked_read): Change return to enum register_status. Always forward to regcache_cooked_read. (regcache_raw_read): Change return to enum register_status. If the register is not REG_VALID, memset the buffer. Return the register's status. (regcache_raw_read_signed): Handle non-REG_VALID registers and return the register's status. (regcache_raw_read_unsigned): Ditto. (regcache_cooked_read): Change return to enum register_status. Assert that with read-only regcaches, the register's status must be known. If the regcache is read-only, and the register is not REG_VALID, memset the buffer. Return the register's status. (regcache_cooked_read_signed): Change return to enum register_status. Handle non-REG_VALID registers and return the register's status. (regcache_cooked_read_unsigned): Change return to enum register_status. Handle non-REG_VALID registers and return the register's status. (regcache_xfer_part, regcache_raw_read_part) (regcache_cooked_read_part): Change return to enum register_status. Return the register's status. (regcache_read_pc): Throw NOT_AVAILABLE_ERROR if the register is unavailable. (regcache_dump): Handle unavailable cooked registers. * frame.c (do_frame_register_read): Adjust interface to match regcache_cooked_read_ftype. * gdbarch.sh (pseudo_register_read): Change return to enum register_status. * gdbarch.h, gdbarch.c: Regenerate. * i386-tdep.h (i386_pseudo_register_read): Change return to enum register_status. * i386-tdep.c (i386_pseudo_register_read): Change return to enum register_status. If reading a raw register indicates the raw register is not valid, return the raw register's status, otherwise, return REG_VALID. * amd64-tdep.c (amd64_pseudo_register_read): Change return to enum register_status. Handle non-REG_VALID raw registers and return the register's status. * arm-tdep.c (arm_neon_quad_read) (arm_pseudo_read): Change return to enum register_status. Handle non-REG_VALID raw registers and return the register's status. * avr-tdep.c (avr_pseudo_register_read): Ditto. * frv-tdep.c (frv_pseudo_register_read): Ditto. * h8300-tdep.c (h8300_pseudo_register_read): Ditto. * hppa-tdep.c (hppa_pseudo_register_read): Ditto. * m32c-tdep.c (m32c_move_reg_t): Change return to enum register_status. (m32c_raw_read, m32c_raw_write, m32c_banked_read) (m32c_banked_write, m32c_sb_read, m32c_sb_write, m32c_part_read) (m32c_part_write, m32c_cat_read, m32c_cat_write) (m32c_r3r2r1r0_read, m32c_r3r2r1r0_write) (m32c_pseudo_register_read): Change return to enum register_status. Adjust. * m68hc11-tdep.c (m68hc11_pseudo_register_read): Change return to enum register_status. Return the register's status. * mep-tdep.c (mep_pseudo_cr32_read): Change return to enum register_status. Return the register's status. (mep_pseudo_cr64_read, mep_pseudo_register_read): Ditto. * mips-tdep.c (mips_pseudo_register_read): Ditto. * mt-tdep.c (mt_pseudo_register_read): Ditto. * rs6000-tdep.c (move_ev_register_func): New typedef. (e500_move_ev_register): Use it. Change return to enum register_status. Return the register's status. (do_regcache_raw_read): New function. (do_regcache_raw_write): New function. (e500_pseudo_register_read): Change return to enum register_status. Return the register's status. Use do_regcache_raw_read. (e500_pseudo_register_write): Adjust. Use do_regcache_raw_write. (dfp_pseudo_register_read): Change return to enum register_status. Return the register's status. (vsx_pseudo_register_read): Ditto. (efpr_pseudo_register_read): Ditto. (rs6000_pseudo_register_read): Ditto. * s390-tdep.c (s390_pseudo_register_read): Change return to enum register_status. Return the register's status. * sh64-tdep.c (pseudo_register_read_portions): New function. (sh64_pseudo_register_read): Change return to enum register_status. Use pseudo_register_read_portions. Return the register's status. * ia64-tdep.c (ia64_pseudo_register_read): Change return to enum register_status. Return the register's status. * sh-tdep.c (pseudo_register_read_portions): New function. (sh_pseudo_register_read): Change return to enum register_status. Use pseudo_register_read_portions. Return the register's status. * sparc-tdep.c (sparc32_pseudo_register_read): Change return to enum register_status. Return the register's status. * sparc64-tdep.c (sparc64_pseudo_register_read): Ditto. * spu-tdep.c (spu_pseudo_register_read_spu) (spu_pseudo_register_read): Ditto. * xtensa-tdep.c (xtensa_register_read_masked) (xtensa_pseudo_register_read): Ditto. * bfin-tdep.c (bfin_pseudo_register_read): Ditto. 2011-03-18 Pierre Muller * python/py-value.c (valpy_getitem): Fix formatting of error function call. 2011-03-18 Pierre Muller ARI fixes: Add missing internationalization markups throughout C source files. * darwin-nat-info.c: Ditto. * record.c: Ditto. * remote.c: Ditto. * mi/mi-main.c: Ditto. 2011-03-18 Pierre Muller ARI fixes: Add missing internationalization markups throughout yacc files. * c-exp.y: Ditto. * cp-name-parser.y: Ditto. * f-exp.y: Ditto. * m2-exp.y: Ditto. * objc-exp.y: Ditto. * p-exp.y: Ditto. 2011-03-18 Pierre Muller ARI fixes: Messages should have no trailing new lines. * darwin-nat.c (mach_check_error): Remove trailing new line from warning function call message. * record.c (bfdcore_read): Idem for error call. 2011-03-18 Pierre Muller * common/signals.c (target_signal_from_host): Add _ markup to error function call message. (target_signal_to_host): Add _ markup and remove trailing new line from warning call message. (target_signal_from_command): Add _ markup to error function call message. 2011-03-18 Phil Muldoon PR python/12149 * python/python.c (gdbpy_write): Accept a stream argument and operate to the appropriate stream. (gdbpy_flush): Likewise. (_initialize_python): Add stream constants. (finish_python_initialization): Add GdbOutputErrorFile class. 2011-03-18 Kwok Cheung Yeung * MAINTAINERS: Add myself as a write-after-approval maintainer. 2011-03-18 Kwok Cheung Yeung * amd64-tdep.c (amd64_relocate_instruction): Fix ordering of arguments to store_signed_integer. Add debug message when relocating CALL instructions. Fix formatting of debug message. * i386-tdep.c (i386_relocate_instruction): Ditto. 2011-03-17 Joel Brobecker * target.h (struct target_ops): Remove to_lookup_symbol field. (target_lookup_symbol): Delete macro. * target.c (nosymbol, debug_to_lookup_symbol): Delete. (update_current_target, setup_target_debug): Remove handling of to_lookup_symbol target_ops field. * ada-tasks.c (get_known_tasks_addr): Remove use of target_lookup_symbol. * coffread.c (coff_symtab_read): Likewise. * dbxread.c (read_dbx_symtab): Ditto. 2011-03-17 Joel Brobecker PR gdb/12116: * configure.ac: Add getthrds declaration check. * configure, config.in: Regenerate. * aix-thread.c (getthrds): Declare only if not already declared in procinfo.h. More declaration out of get_signaled_thread to global scope. 2011-03-17 Phil Muldoon * python/py-symtab.c: Populate symtab_object_methods, sal_object_methods. (stpy_is_valid): New function. (salpy_is_valid): Ditto. * python/py-symbol.c: Declare symbol_object_methods. Populate. (sympy_is_valid): New function. * python/py-objfile.c: Declare objfile_object_methods. Populate. (objfpy_is_valid): New function. * python/py-inferior.c: Populate inferior_object_methods. (infpy_is_valid): New function. * python/py-infthread.c: Populate thread_object_methods. (thpy_is_valid): New function. * python/py-block.c: Declare block_object_methods. Populate. Declare block_iterator_object_methods. Populate. (blpy_is_valid): New function. (blpy_iter_is_valid): Ditto. 2011-03-16 Keith Seitz * linespec.c (find_methods): Canonicalize NAME before looking up the symbol. (name_end): New function. (keep_name_info): New function. (decode_line_1): Use keep_name_info. (decode_compound): Likewise. * cli/cli-utils.h (remove_trailing_whitespace): New function. * cli/cli-utils.c (remove_trailing_whitespace): Likewise. PR c++/12273 * linespec.c (locate_first_half): Keep overload information, too. (decode_compound): Use a string to represent break characters to escape the loop. If P points to a break character, do not increment it. For C++ and Java, keep overload information and relevant keywords. If we cannot find a symbol, search the minimal symbols. PR c++/11734 * linespec.c (decode_compound): Rename SAVED_ARG to THE_REAL_SAVED_ARG. Make a copy of THE_REAL_SAVED_ARG in SAVED_ARG and strip single-quotes. Pass a valid block to lookup_symbol. (lookup_prefix_sym): Likewise. (find_method): Construct search name based on SYM_CLASS instead of SAVED_ARG. * psymtab.c (lookup_partial_symbol): Add language parameter. (lookup_symbol_aux_psymtabs): Likewise. Don't assume that the psymtab we found was the right one. Search for the desired symbol in the symtab to be certain. (psymtab_search_name): New function. (lookup_partial_symbol): Use psymtab_search_name. Add language parameter. (read_symtabs_for_function): Add language parameter and pass to lookup_partial_symbol. (find_symbol_file_from_partial): Likewise. 2011-03-16 Paul Pluzhnikov PR gdb/12528 * dwarf2read.c (noop_record_line): New function. (dwarf_decode_lines): Ignore line tables for GCd functions. 2011-03-16 Pierre Muller Fix ARI warnings about new lines at the end of messages, which are unneeded as there is a new line added at the end of the message automatically. * darwin-nat.c (darwin_stop_inferior): Ditto. * dec-thread.c (dec_thread_get_ada_task_ptid): Ditto. * dfp.c (decimal_to_number): Ditto. * exec.c (print_section_info): Ditto. * i386-darwin-nat.c (darwin_set_sstep): Ditto. * osdata.c (get_osdata): Ditto. * record.c (bfdcore_write): Ditto. * remote-mips.c (mips_readchar): Ditto. * remote.c (read_ptid): Ditto. * ser-mingw.c (ser_windows_raw): Ditto. * tracepoint.c (add_local_symbols): Ditto. * windows-nat.c (fake_create_process): Ditto. 2011-03-16 Tom Tromey * tracepoint.c (stop_tracing): Don't declare. * event-top.c (after_char_processing_hook): Add `(void)'. 2011-03-16 Phil Muldoon * NEWS: Add Parameter sub-classing description. 2011-03-16 Kai Tietz * MAINTAINERS: Update my e-mail address. 2011-03-15 Andreas Tobler * MAINTAINERS: Add myself for write after approval privileges. 2011-03-15 Michael Snyder * frame.c (find_frame_sal): Assert sym is not null. * dbxread.c (process_one_symbol): Assert 'name' is not null. * objc-lang.c (selectors_info): Check strchr for null result. * stabsread.c (define_symbol): Guard against bad stabstring input. 2011-03-15 Pierre Muller Remove trailing spaces and tabulations from pascal language support sources. p-exp.y: Ditto. p-lang.c: Ditto. p-lang.h: Ditto. p-valprint.c: Ditto. 2011-03-15 Jan Kratochvil * dwarf2read.c (dwarf2_get_pc_bounds): Require HIGH strictly higher than LOW. Comment it. (read_partial_die): Call complaint for inappropriate zero LOWPC or HIGHPC not strictly higher than LOWPC. 2011-03-15 Pierre Muller Fix formatting of function declarations returning a pointer in previous commit. * varobj.c (varobj_add_child): Ditto. * hppa-tdep.h (hppa_init_objfile_priv_data): Ditto. * inferior.h (get_displaced_step_closure_by_addr): Ditto. 2011-03-15 Ulrich Weigand * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Add support for the "generic" vector ABI used with GCC 4.3 and later. (ppc64_sysv_abi_return_value): Likewise. 2011-03-15 Ulrich Weigand * infcall.c (call_function_by_hand): Function return value is always a non_lval, even when using struct_return. 2011-03-15 Pedro Alves * printcmd.c (ALL_DISPLAYS_SAFE): New. (map_display_numbers): New. (do_delete_display): New. (undisplay_command): Use map_display_numbers. (do_enable_disable_display): New. (enable_disable_display_command): New function. (enable_display): Delete. (enable_display_command): New. (disable_display_command): Reimplement. (_initialize_printcmd): Adjust "enable display" command to use `enable_display_command' as callback. 2011-03-14 Phil Muldoon * NEWS: Add Python breakpoint 'stop' operation. 2011-03-14 Phil Muldoon * NEWS: Delete duplicate entry. Fix typo. 2011-03-14 Pierre Muller Fix ARI warning about function names in first column. Put prototype declaration on same line as return type. * objc-exp.y: Ditto. * p-exp.y: Ditto. * python/py-stopevent.h: Ditto. For long function names, split parameters to allow function name on same line as return type. * solib-pa64.c: Ditto. * varobj.c: Ditto. * varobj.h: Ditto. For long function declaration, use single line. * hppa-tdep.h: Ditto. * inferior.h: Ditto. 2011-03-14 Phil Muldoon * python/python.h: Declare gdbpy_should_stop and gdbpy_breakpoint_has_py_cond. * python/python.c: Add python.h to includes. Remove python.h from HAVE_PYTHON definition (gdbpy_should_stop): New dummy function. (gdbpy_breakpoint_has_py_cond): New dummy function. * python/py-breakpoint.c (bppy_init): Rewrite to allow sub-classing capabilities. (gdbpy_should_stop): New function. (gdbpy_breakpoint_has_py_cond): New function. (local_setattro): New function. * breakpoint.c (condition_command): Add check for Python 'stop' operation. (bpstat_check_breakpoint_conditions): Execute Python 'stop' operation function as part of stop/continue tests. 2011-03-14 Tom Tromey PR gdb/12576: * dwarf2loc.c (dwarf_expr_dwarf_call): Remove 'return'. (needs_frame_dwarf_call): Likewise. 2011-03-14 Pierre Muller Fix ARI warning about functions without parameters that do not use (void). * breakpoint.c (all_tracepoints): Replace () by (void). * f-exp.y (match_string_literal): Ditto. (yylex): Ditto. * m2-exp.y (yylex): Ditto. * mep-tdep.c (current_me_module): Ditto. (current_options): Ditto. (current_cop_data_bus_width): Ditto. (current_cr_names): Ditto. (current_cr_is_float): Ditto. (current_ccr_names): Ditto. * objc-exp.y (yylex): Ditto. * p-exp.y (yylex): Ditto. * remote.c (send_interrupt_sequence): Ditto. * tracepoint.c (current_trace_status): Ditto. * python/py-evts.c (gdbpy_initialize_py_events): Ditto. * python/py-prettyprint.c (push_dummy_python_frame): Ditto. 2011-03-11 Michael Snyder * cli/cli-decode.h (CMD_LIST_AMBIGUOUS): Define. * cli/cli-decode.c (lookup_cmd_1): Use CMD_LIST_AMBIGUOUS. (lookup_cmd): Test for CMD_LIST_AMBIGUOUS. * completer.c (complete_line_internal): Use CMD_LIST_AMBIGUOUS. * top.c (set_verbose): Use CMD_LIST_AMBIGUOUS. * event-loop-c (delete_async_signal_handler): Assert prev_ptr. (delete_async_event_handler): Ditto. * python/py-breakpoint.c (bppy_set_condition): Stop memory leak. * python/py-breakpoint.c (bppy_get_commands): Fix memory leak. * top.c (set_verbose): Assert showcmd was found. 2011-03-11 Maxim Grigoriev * xtensa-tdep.c (warning_once): Correct style issues. 2011-03-11 Yao Qi * arm-tdep.c (copy_ldr_str_ldrb_strb): Remove redundant statements. 2011-03-11 Andreas Schwab * common/aclocal.m4: Remove. 2011-03-10 Maxim Grigoriev * xtensa-tdep.c (windowing_enabled): Remove inline attribute. (xtensa_write_register, xtensa_read_register): Likewise. (xtensa_hextochar): Removed. (xtensa_init_reggroups): Replace xtensa_hextochar () by explicit code. 2011-03-10 Maxim Grigoriev * xtensa-tdep.c (xtensa_c0reg_t): Update comments. (xtensa_call0_frame_cache_t): Update comments. New fields added. (xtensa_alloc_frame_cache): Add initialization for new fields. (xtensa_frame_cache): Change the way how call0_frame_cache () is called. (warning_once): New function. (xtensa_insn_kind): New item c0opc_and. (call0_classify_opcode): Add the case for AND instruction. (call0_track_op): Change arguments. New local variable litbase. Add the case to handle c0opc_and. Update algorithms for c0opc_mov, c0opc_l32r, c0opc_s32i to take into account dynamic stack adjustments in the prologue. Add cases for c0opc_l32e, c0opc_s32e, c0opc_rfwo, c0opc_rfwu. (call0_analyze_prologue): Update the comments. Change arguments. Add the variety of updates to handle extended prologues, which now can conduct dynamic stack adjustments. (call0_frame_cache): Likewise. (xtensa_skip_prologue): Update call0_analyze_prologue () function call. (xtensa_gdbarch_init): Initialize xtensa_session_once_reported. 2011-03-10 Michael Snyder * tracepoint.c (cmd_qtv): Discard unused value 'packet'. (cmd_qtframe): Ditto. (cmd_qtbuffer): Ditto. (cmd_bigqtbuffer): Ditto. 2011-03-10 Tom Tromey * tracepoint.c (trace_actions_command): Update. * thread.c (thread_apply_command): Update. * reverse.c (delete_bookmark_command): Update. (bookmarks_info): Update. * printcmd.c (undisplay_command): Update. * memattr.c (mem_enable_command): Update. (mem_disable_command): Update. (mem_delete_command): Update. * inferior.c (detach_inferior_command): Update. (kill_inferior_command): Update. (remove_inferior_command): Update. * cli/cli-utils.h (struct get_number_or_range_state): New. (init_number_or_range): Declare. (get_number_or_range): Update. * cli/cli-utils.c (init_number_or_range): New function. (get_number_or_range): Change 'pp' parameter to 'state'. Remove static variables. (number_is_in_list): Update. * breakpoint.h (get_tracepoint_by_number): Update. * breakpoint.c (map_breakpoint_numbers): Update for change to get_number_or_range. (find_location_by_number): Use get_number, not get_number_or_range. (trace_pass_set_count): New function. (trace_pass_command): Update for change to get_number_or_range. Rework loop logic. (get_tracepoint_by_number): Remove 'multi_p' parameter; add 'state' parameter. 2011-03-10 Phil Muldoon * python/py-param.c (add_setshow_generic): Add set/show callback parameters. Register Python object context. (get_show_value): New function. (get_set_value): New function. (call_doc_function): New function. (get_doc_string): Move behind get_show_value/get_set_value. 2011-03-10 Andreas Tobler * fbsd-nat.c (fbsd_make_corefile_notes): Constify local `fname'. 2011-03-09 Maxim Grigoriev * xtensa-tdep.c (xtensa_read_register): Add comment. (xtensa_write_register): Likewise. (xtensa_hextochar): Add comment and update to match coding conventions. (xtensa_frame_cache, xtensa_return_value): Follow coding conventions. (execute_l32e, execute_s32e, execute_code): Update comments. (xtensa_exception_handler_t): Update to match coding conventions. (xtensa_insn_kind): Likewise. 2011-03-09 Michael Snyder * mi-cmd-disas.c (mi_cmd_disassemble): Fix memory leak. 2011-03-09 Pedro Alves * nto-tdep.c (nto_find_and_open_solib): Constify local `base'. 2011-03-09 Tom Tromey * thread.c (restore_selected_frame): Handle frame_level == -1. (make_cleanup_restore_current_thread): Use get_selected_frame_if_set. * frame.h (get_selected_frame_if_set): Declare. * frame.c (get_selected_frame_if_set): New function. 2011-03-09 Pedro Alves * cli/cli-cmds.c (shell_escape): Use lbasename. * coffread.c (coff_start_symtab): Constify parameter. (complete_symtab): Constify `name' parameter. (coff_symtab_read): Constify `filestring' local. (coff_getfilename): Constify return and `result' local. Use lbasename. * fbsd-nat.c (fbsd_make_corefile_notes): Use lbasename. * linux-fork.c (info_checkpoints_command): Use lbasename. * linux-nat.c (linux_nat_make_corefile_notes): Use lbasename. * minsyms.c (lookup_minimal_symbol): Use lbasename. * nto-tdep.c (nto_find_and_open_solib): Use lbasename. * procfs.c (procfs_make_note_section): Use lbasename. * tui/tui-io.c (printable_part): Constity return and parameter. Use lbasename. (print_filename): Constify parameters, and local `s'. (tui_rl_display_match_list): Constify local `temp'. 2011-03-09 Jan Kratochvil Revert: 2011-03-08 Jan Kratochvil Fix DWARF-3+ DW_AT_accessibility default assumption. * dwarf2read.c (dwarf2_add_field): Fix new_field->accessibility for cu->header.version >= 3. 2011-03-09 Yao Qi * common/Makefile.in: Remove. * common/configure: Remove. * common/configure.ac: Remove. 2011-03-09 Yao Qi Revert: 2011-02-11 Yao Qi * common/Makefile.in: Add copyright header. 2011-02-11 Yao Qi * Makefile.in: Remove signals.o from COMMON_OBS. Link libcommon.a. * configure.ac: Add common to sub dir. * configure: Regenerate. 2011-03-08 Maxim Grigoriev * xtensa-tdep.c (call0_ret): New function. (xtensa_skip_prologue): Speed up analysis. 2011-03-08 Maxim Grigoriev * xtensa-tdep.c (xtensa_register_reggroup_p): Count in all registers while executing MI command -data-list-changed-registers. 2011-03-08 Maxim Grigoriev * xtensa-tdep.c (xtensa_read_register): New function. (xtensa_write_register): New function. (xtensa_find_register_by_name): New function. (xtensa_windowed_frame_cache): Update comments in type description. (xtensa_frame_cache): Likewise. (xtensa_window_interrupt_insn): New function. (xtensa_frame_cache): Add analysis for Xtensa Window Exception frames. (xtensa_insn_kind): Add new instructions. (rwx_special_register): New function. (call0_classify_opcode): Add new instructions to the analysis. (a0_saved, a7_saved, a11_saved): New variables. (a0_was_saved, a7_was_saved, a11_was_saved): New variables. (execute_l32e): New function. (execute_s32e): New function. (xtensa_exception_handler_t): New type. (execute_code): New function. (xtensa_window_interrupt_frame_cache): New function to conduct frame analysis for Xtensa Window Exception handlers. 2011-03-08 Maxim Grigoriev * xtensa-tdep.c (TX_PS): New. (windowing_enabled): Update to count for Call0 ABI. (xtensa_hextochar): New. (xtensa_init_reggroups): Make algorithm generic. (xtensa_frame_cache): Use TX_PS on Tiny Xtensa. 2011-03-08 Maxim Grigoriev * xtensa-tdep.h (XTENSA_MAX_COPROCESSOR): Update. 2011-03-08 Michael Snyder * i386-tdep.c (i386_follow_jump): Check return value of target_read_memory. (i386_analyze_struct_return): Ditto. (i386_skip_probe): Ditto. (i386_match_insn): Ditto. (i386_skip_noop): Ditto. (i386_analyze_frame_setup): Ditto. (i386_analyze_register_saves): Ditto. (i386_skip_prologue): Ditto. (i386_skip_main_prologue): Ditto. * target.c (read_whatever_is_readable): Fix memory leak. * i386-tdep.c (i386_process_record): Document fall through. 2011-03-08 Jan Kratochvil Fix DWARF-3+ DW_AT_accessibility default assumption. * dwarf2read.c (dwarf2_add_field): Fix new_field->accessibility for cu->header.version >= 3. 2011-03-08 Pedro Alves * remote.c (remote_check_symbols): Skip if the target has no execution. 2011-03-08 Joel Brobecker * target.c (read_whatever_is_readable): Reformat comment, with a minor typo fix. Minor reformatting of the code. 2011-03-08 Yao Qi * arm-tdep.c: Remove prototype declaration displaced_in_arm_mode. (displaced_read_reg): Add `dsc' parameter, remove `from' parameter. Use cached result instead of calling displaced_in_arm_mode again. (branch_write_pc, alu_write_pc, load_write_pc): Add `dsc' parameter. (displaced_write_reg, copy_preload, copy_preload_reg): Callers update. (cleanup_copro_load_store, copy_copro_load_store): Likewise. (cleanup_branch, copy_bx_blx_reg, copy_alu_imm): Likewise. (cleanup_alu_reg, copy_alu_reg, cleanup_alu_shifted_reg): Likewise. (copy_alu_shifted_reg, cleanup_load, cleanup_store): Likewise. (copy_extra_ld_st, copy_ldr_str_ldrb_strb): Likewise. (cleanup_block_load_all, cleanup_block_store_pc): Likewise. (cleanup_block_load_pc, copy_block_xfer): Likewise. * arm-linux-tdep.c (arm_linux_copy_svc): Callers update. (arm_catch_kernel_helper_return): Likewise. * gdb/arm-tdep.h : Update function declarations. 2011-03-07 Michael Snyder * dwarf2loc.c (indirect_pieced_value): Assert 'piece' not null. * ser-unix.c (hardwire_get_tty_state): Stop memory leak. * mi/mi-cmd-env.c (_initialize_mi_cmd_env): Free environment. * elfread.c (elf_symtab_read): Stop memory leak. * main.c (captured_main): Fix memory leak. 2011-03-07 Andreas Schwab * ada-lang.c (compare_names): Call is_name_suffix with string1 instead of string2. 2011-03-07 Tom Tromey * xcoffread.c (xcoff_sym_fns): Update. * symfile.h (struct sym_fns) : New field. (enum symfile_add_flags) : New constant. * symfile.c (syms_from_objfile): Handle SYMFILE_NO_READ. (symbol_file_add_with_addrs_or_offsets): Likewise. (reread_symbols): Handle OBJF_PSYMTABS_READ. * somread.c (som_sym_fns): Update. * psymtab.h (require_partial_symbols): Declare. * psymtab.c (require_partial_symbols): New function. (ALL_OBJFILE_PSYMTABS_REQUIRED): New macro. (ALL_OBJFILE_PSYMTABS): Undef. (ALL_PSYMTABS): Move from psympriv.h. (lookup_partial_symtab, find_pc_sect_psymtab) (lookup_symbol_aux_psymtabs, relocate_psymtabs) (find_last_source_symtab_from_partial) (forget_cached_source_info_partial) (print_psymtab_stats_for_objfile, read_symtabs_for_function) (expand_partial_symbol_tables, read_psymtabs_with_filename) (map_symbol_names_psymtab, map_symbol_filenames_psymtab) (find_symbol_file_from_partial, map_matching_symbols_psymtab) (expand_symtabs_matching_via_partial, maintenance_info_psymtabs): Use ALL_OBJFILE_PSYMTABS_REQUIRED. * psympriv.h (ALL_PSYMTABS): Move to psymtab.c. * objfiles.h (OBJF_PSYMTABS_READ): New macro. * objfiles.c (objfile_has_partial_symbols): Handle lazily-read psymtabs. * mipsread.c (ecoff_sym_fns): Update. * machoread.c (macho_sym_fns): Update. * elfread.c (elf_symfile_read): Set up for lazy psymtab reading. (read_psyms): New function. (elf_sym_fns, elf_sym_fns_gdb_index): Update. (elf_sym_fns_lazy_psyms): New global. * dwarf2read.c (dwarf2_initialize_objfile): Don't call dwarf2_build_psymtabs. * dbxread.c (aout_sym_fns): Update. * coffread.c (coff_sym_fns): Update. 2011-03-07 Tom Tromey * infrun.c (print_exited_reason): Include inferior id and pid in message. 2011-03-07 Tom Tromey * target.h (struct target_ops) : Add ptid_t parameter. (target_has_execution_1): Update. (target_has_execution_current): Declare. (target_has_execution): Call target_has_execution_current. (default_child_has_execution): Update. * target.c (default_child_has_execution): Add 'the_ptid' parameter. (target_has_execution_1): Likewise. (target_has_execution_current): New function. (add_target): Update. (init_dummy_target): Update. * remote-m32r-sdi.c (m32r_has_execution): New function. (init_m32r_ops): Use it. * record.c (record_core_has_execution): Now static. Add 'the_ptid' parameter. * inferior.c (have_live_inferiors): Don't save current thread. Use target_has_execution_1. 2011-03-07 Yao Qi * Makefile.in (aclocal_m4_deps): Remove gnulib/m4/memcmp.m4. 2011-03-07 Joel Brobecker * elfread.c (elf_symtab_read): Minor reformatting. 2011-03-07 Joel Brobecker * objc-lang.c (selectors_info): Minor reformatting. 2011-03-07 Joel Brobecker * ada-lang.c (compare_names): Add FALLTHROUGH comment. 2011-03-07 Joel Brobecker Michael Snyder * ada-valprint.c (ada_val_print_array): Move the declaration of "byte_order" and "elttype" inside the block where these variables are actually used. Remove some special handling for the case where "elttype" and "eltlen" are null. Replace by a comment and a couple of assertion checks. 2011-03-05 Michael Snyder * source.c (add_path): Replace semicolon at end of block. * dwarf2expr.c (execute_stack_op): Ditto. 2011-03-05 Mike Frysinger * bfin-tdep.c: Include sim-regno.h and gdb/sim-bfin.h. * configure.tgt (bfin-*-*linux*): Define gdb_sim. (bfin-*-*): Likewise. 2011-03-05 Michael Snyder * dwarf2expr.c (execute_stack_op): Delete superfluous semicolon. * mdebugread.c (parse_symbol): Ditto. * parse.c (parse_exp_in_context): Ditto. * source.c (add_path): Ditto. * utils.c (gnu_debuglink_crc32): Ditto. * varobj.c (variable_language): Ditto. * linux-tdep.c (linux_get_siginfo_type): Stop memory leak. 2011-03-04 Michael Snyder * linux-fork.c (inferior_call_waitptid): Fix copy/paste error. * symfile.c (simple_overlay_update): Check for null return value from lookup_minimal_symbol. * xml-syscall.c (syscall_start_syscall): Assert name is non null. 2011-03-04 Thiago Jung Bauermann * eval.c (parse_and_eval_address_1): Remove function. * linespec.c (decode_indirect): Call parse_to_comma_and_eval instead of parse_and_eval_address_1. * value.h (parse_and_eval_address_1): Remove prototype. 2011-03-04 Michael Snyder * remote.c (putpkt_binary): Document that case stmt falls through. 2011-03-04 Thiago Jung Bauermann * breakpointc (print_it_typical): Move NULL check from here... (print_bp_stop_message): ... to here. 2011-03-04 Michael Snyder * breakpoint.c (enable_command): Use break instead of continue, and fill in a missing break. (disable_command): Ditto. 2011-03-04 Ulrich Weigand * inflow.c (terminal_init_inferior_with_pgrp): Copy ttystate. (terminal_save_ours): Remove misleading comment. (inflow_inferior_data_cleanup): Free ttystate. (inflow_inferior_exit): Likewise. (copy_terminal_info): Copy ttystate. * serial.c (serial_copy_tty_state): New function. * serial.h (serial_copy_tty_state): Add prototype. (struct serial_ops): Add copy_tty_state callback. * ser-base.c (ser_base_copy_tty_state): New function. * ser-base.h (ser_base_copy_tty_state): Add prototype. * ser-go32.c (dos_copy_tty_state): New function. (dos_ops): Install copy_tty_state callback. * ser-mingw.c (_initialize_ser_windows): Likewise. * ser-pipe.c (_initialize_ser_pipe): Likewise. * ser-unix.c (hardwire_copy_tty_state): New function. (_initialize_ser_hardwire): Install it. 2011-03-04 Michael Snyder * breakpoint.c (create_breakpoint): Add missing break statement. Reverting this patch: * infcall.c (call_function_by_hand): Add break statements for lint. Reverting this patch: * cli/cli-script.c (script_from_file): Add break for lint. 2011-03-04 Michael Snyder * solib.c (reload_shared_libraries_1): Close memory leak. 2011-03-03 Tom Tromey PR gdb/12538: * dwarf2read.c (process_psymtab_comp_unit): Handle case where DW_STRING is NULL. 2011-03-03 Michael Snyder * remote-fileio.c (remote_fileio_func_fstat): Initialize all fields of struct 'st' to zero. * tui/tui-winsource.c (tui_update_source_window_as_is): Initialize sal.pspace before calling set_current_source_symtab_and_line. 2011-03-03 Yao Qi * Makefile.in (configure-common): Remove. Let Makefile in dir common to rebuild itself. (common/Makefile): Likewise. 2011-03-03 Joel Brobecker * utils.c (parse_escape): Add i18n markup in error message. 2011-03-03 Yao Qi * gdb/arm-tdep.c (shifted_reg_val): Replace magic number 15 with ARM_PC_REGNUM. (thumb_get_next_pc_raw, arm_get_next_pc_raw): Likewise. (displaced_write_reg, displaced_read_reg): Likewise. (copy_ldr_str_ldrb_strb, cleanup_block_load_all): Likewise. (cleanup_block_load_pc, copy_block_xfer): Likewise. (cleanup_branch): Replace magic number 14 and 15 with ARM_LR_REGNUM and ARM_PC_REGNUM respectively. 2011-03-02 Michael Snyder * maint.c (maintenance_do_deprecate): No need to check for NULL. * cli/cli-script.c (script_from_file): Add break for lint. * mdebugread.c (parse_partial_symbols): Fix indent. * target-descriptions.c (tdesc_gdb_type): No need to call xstrdup, callee saves a copy. * printcmd.c (print_scalar_formatted): Use strncpy for safety. * infcall.c (call_function_by_hand): Add break statements for lint. * utils.c (parse_escape): Escape the escape char. * python/py-inferior.c (build_inferior_list): Error out if PyList_Append fails. (gdbpy_inferiors): Error out if build_inferior_list fails. * linux-nat.c (linux_nat_xfer_partial): Preserve errno around a function call. * record.c (record_restore): Move printf to before error return. 2011-03-02 Yao Qi * arm-tdep.h (struct displaced_step_closure): Add two new fields is_thumb and insn_size. * arm-tdep.c (displaced_read_reg): Adjust correct pipeline offset on both ARM and Thumb mode. (arm_process_displaced_insn): Set is_thumb and insn_size. (arm_displaced_init_closure): Handle both 16-bit and 32-bit. (arm_displaced_step_fixup): Likewise. 2011-03-01 Michael Snyder * cli/cli-dump.c (dump_bfd_file): Check error return and warn. * jv-lang.c (evaluate_subexp_java): Conditional can't be true. * dwarf2read.c (dwarf2_compute_name): NAME cannot be null here. * cli/cli-dump.c (restore_binary_file): Validate ftell return value. * ada-lang.c (ada_make_symbol_completion_list): Replace malloc with xmalloc. * ada-lang.c (aggregate_assign_others): Rename inner scope variable which shadows function parameter. * tracepoint.c (create_tsv_from_upload): Superfluous call to xstrdup. Callee already calls xstrdup. * linespec.c (decode_line_1): Remove unnecessary null check. * tracepoint.c (scope_info): Fix mem leak, remove underused variable. * python/py-prettyprint.c (apply_val_pretty_printer): Remove superfluous null check. * std-regs.c (value_of_builtin_frame_pc_reg): Frame can't be null. (value_of_builtin_frame_fp_reg): Ditto. * event-top.c (display_gdb_prompt): Remove superfluous null check. * python/py-prettyprint.c (apply_val_pretty_printer): VAL may be null. * linespec.c (decode_line_1): Check for null before dereference. * reverse.c (record_restore): Move null-check to before pointer dereference. * python/py-utils.c (gdbpy_obj_to_string): Delete unused variable. * objc-lang.c (selectors_info): Add explanitory comment. (classes_info): Ditto. 2011-03-01 Ulrich Weigand * arm-linux-tdep.c (ARM_LDR_PC_SP_4): Add define. (arm_linux_restart_syscall_init): Handle both on-stack and in-kernel versions of the trampoline. Handle Thumb vs. ARM addresses. (arm_kernel_linux_restart_syscall_tramp_frame): New global. (arm_linux_init_abi): Install it. * arm-tdep.c (arm_psr_thumb_bit): Make global. * arm-tdep.c (arm_psr_thumb_bit): Add prototype. 2011-02-28 Michael Snyder * ui-out.c (ui_out_field_core_addr): Make local char buffer a little bigger, to avoid possibility of an overflow. * breakpoint.c (breakpoint_adjustment_warning): Make local char buffers a little bigger, to avoid possibility of an overflow. * coffread.c (coff_getfilename): Add check to avoid overflow. * objc-lang.c (selectors_info): Add a small safety margin to avoid overflow. (classes_info): Error out on too long REGEXP. * infrun.c (handle_inferior_event): Remove unused function call. * fork-child.c (fork_inferior): Remove ifdef'd code and unused variable. * linux-thread-db.c (attach_thread): Discard unused value. * linux-nat.c (linux_handle_extended_wait): Delete unused variable. * remote.c (remote_get_noisy_reply): Discard unused value. (remote_vcont_resume): Ditto. (remote_stop_ns): Ditto. * linespec.c (decode_objc): Delete unused variable. * tui/tui-regs.c (tui_register_format): Delete unused variable. * dwarf2read.c (add_partial_symbol): Discard unused values. (read_base_type): Delete unused variable. * dbxread.c (read_dbx_symtab): Discard unused value. * eval.c (evaluate_subexp_standard): Delete unused variable, and discard unused values. * infcmd.c (_initialize_infcmd): Discard unused values. * stabsread.c (rs6000_builtin_type): Missing break statement. * dbxread.c (process_one_symbol): Discard unused value. * coffread.c (coff_end_symtab): Delete unused variable. * dwarf2read.c (dw2_get_file_names): Discard unused value. (dwarf2_add_typedef): Delete unused variable. (read_namespace): Ditto. (dwarf_decode_macros): Ditto. * m2-lang.c (evaluate_subexp_modula2): Discard unused variable. * opencl-lang.c (evaluate_subexp_opencl): Discard unused value. * p-valprint.c (pascal_val_print): Discard unused value. * utils.c (nquery): Call va_end before return; (yquery): Ditto. (query): Ditto. * proc-service.c (ps_plog): Call va_end before return. 2011-02-28 Tom Tromey * python/python.c (gdbpy_value_cst): New global. (_initialize_python): Initialize it. * python/python-internal.h (gdbpy_value_cst): Declare. * python/py-value.c (convert_value_from_python): Use gdbpy_value_cst. 2011-02-28 Michael Snyder * python/py-cmd.c (cmdpy_init): Fix memory leak. * breakpoint.c (catch_syscall_completer): Free malloced list. * jv-lang.c (java_primitive_type_from_name): Add missing break. * opencl-lang.c (lval_func_check_validity): Rename inner variables. (lval_func_check_synthetic_pointer): Ditto. (lval_func_free_closure): Fix use-after-free. 2011-02-28 Tom Tromey * psymtab.c (expand_partial_symbol_tables): Use ALL_OBJFILE_PSYMTABS. 2011-02-28 Jan Kratochvil * objc-lang.c (selectors_info): Error on too long REGEXP. 2011-02-28 Michael Snyder * python/py-param.c (set_parameter_value): Add missing break statement. * linux-record.c (record_linux_system_call): Add missing break statement. 2011-02-28 Ulrich Weigand * breakpoint.c (print_one_breakpoint_location): Remove unused argument PRINT_ADDRESS_BITS. Update callers. (print_one_breakpoint): Likewise. 2011-02-28 Ulrich Weigand * breakpoint.c (wrap_indent_at_field): New function. (print_breakpoint_location): Use it instead of WRAP_INDENT argument. Allocate ui_stream locally instead of using STB argument. (print_one_breakpoint_location): Update call. * ui-out.c (ui_out_query_field): New function. * ui-out.h (ui_out_query_field): Add prototype. 2011-02-28 Joel Brobecker From Michael Snyder * ada-exp.y (write_object_renaming): Add FALLTHROUGH comment. 2011-02-27 Michael Snyder * objc-lang.c (selectors_info): Prevent string overrun. * tui/tui-stack.c (tui_get_function_from_frame): Fix off by one error in strncpy. * symtab.c (rbreak_command): Move variable 'file_name' to outer scope. * d-valprint.c (dynamic_array_type): Avoid shadowing a function param with a local variable of the same name. 2011-02-27 Michael Snyder * value.c (value_from_history_ref): New function. * value.h (value_from_history_ref): Export. * cli/cli-utils.c (get_number_trailer): Use value_from_history_ref to parse value history references. * cli/cli-utils.h (get_number_trailer): Update comment. 2011-02-27 Michael Snyder * inferior.c (detach_inferior_command): Use get_number_or_range. (kill_inferior_command): Ditto. (remove_inferior_command): Ditto. (initialize_inferiors): Make command names plural. Update help strings. 2011-02-27 Michael Snyder * darwin-nat-info.c: Fix comment typo. * dwarf2expr.h: Ditto. * fbsd-nat.c: Ditto. * fbsd-nat.h: Ditto. * frame-unwind.h: Ditto. * frame.h: Ditto. * hppa-hpux-tdep.c: Ditto. * i386-linux-nat.c: Ditto. * linux-nat.c: Ditto. * nbsd-nat.c: Ditto. * nbsd-nat.h: Ditto. * ppc-linux-tdep.c: Ditto. * serial.c: Ditto. * ui-file.h: Ditto. * tui/tui-winsource.c: Ditto. 2011-02-26 Michael Snyder * breakpoint.c (reattach_breakpoints): Avoid resource leak (ui_file). * maint.c (maintenance_do_deprecate): Plug a memory leak. * dwarf2loc.c (insert_bits): Avoid shadowing a function param with a local variable of the same name. * i387-tdep.c (i387_supply_fxsave): Avoid shadowing a function param with a local variable of the same name. (i387_supply_xsave): Ditto. * linux-low.c (linux_nat_xfer_osdata): Rename local variable so that it does not shadow a function parameter. * i386-nat.c (i386_length_and_rw_bits): Document that case statement is meant to fall through. * expprint.c (dump_subexp_body_standard): Document that case statement is meant to fall through. * amd64-linux-tdep.c (amd64_linux_syscall_record): Delete dead if statement. Condition can't be false. 2011-02-25 Michael Snyder * arm-tdep.c: Fix typos in comments. * bsd-uthread.c: Ditto. * completer.c: Ditto. * corelow.c: Ditto. * cp-namespace.c: Ditto. * cp-support.c: Ditto. * cris-tdep.c: Ditto. * dbxread.c: Ditto. * dwarf2read.c: Ditto. * frame.h: Ditto. * gdbtypes.h: Ditto. * inferior.h: Ditto. * mdebugread.c: Ditto. * mips-tdep.c: Ditto. * ppc-linux-nat.c: Ditto. * ppc-linux-tdep.c: Ditto. * printcmd.c: Ditto. * sol-thread.c: Ditto. * solib-frv.c: Ditto. * solist.h: Ditto. * sparc64-tdep.c: Ditto. * spu-tdep.c: Ditto. * stabsread.c: Ditto. * symfile.c: Ditto. * valops.c: Ditto. * varobj.c: Ditto. * vax-nat.c: Ditto. * python/py-block.c: Ditto. * python/py-symbol.c: Ditto. * python/py-symtab.c: Ditto. * python/py-value.c: Ditto. * tui/tui-win.c: Ditto. 2011-02-25 Michael Snyder * inferior.c (print_inferior): Accept a string instead of an int for requested_inferiors, and use get_number_or_range to parse it. (info_inferiors_command): Pass args string to print_inferior. (initialize_inferiors): Change help string for info inferiors. * inferior.h (print_inferior): Export prototype change. 2011-02-25 Tom Tromey * common/ax.def (invalid2): Set to 0x31. 2011-02-25 Jan Kratochvil * dwarf2loc.c (disassemble_dwarf_expression) : Use L and plongest. (disassemble_dwarf_expression) : Drop variable offset, use L and plongest. (disassemble_dwarf_expression) : Use L and plongest. 2011-02-24 Michael Snyder * Makefile.in (clean): Make clean should remove generated files observer.h and observer.inc. 2011-02-24 Joel Brobecker Revert the following patch (not approved yet): 2011-02-21 Hui Zhu * Makefile.in (HFILES_NO_SRCDIR): Add printcmd.h. * ax-gdb.c (gen_printf_expr_callback): New function. * ax-gdb.h (gen_printf_expr_callback): Forward declare. * ax-general.c (ax_memcpy): New function. (ax_print): Handle "printf". (ax_reqs): Ditto. * ax.h (ax_memcpy): Forward declare. * common/ax.def (invalid2): Removed. (printf): New entry. * printcmd.c (printcmd.h): New include. (string_printf): New function. (ui_printf): Removed. (printf_command): Remove static. Call string_printf. (eval_command): Call string_printf. * printcmd.h: New file. * tracepoint.c (validate_actionline, encode_actions_1): handle printf_command. 2011-02-23 Tom Tromey * ax-general.c (ax_pick): Add missing newline. 2011-02-23 Michael Snyder * breakpoint.c (breakpoint_1): Change first argument from an int to a char pointer, so that the function now accepts a list of breakpoints rather than just one. Use new function 'number_is_in_list' to implement. (breakpoints_info): Pass char * instead of int to breakpoint_1. (watchpoints_info): Ditto. (tracepoints_info): Ditto. (maintenance_info_breakpoints): Ditto. (_initialize_breakpoint): Update help strings to reflect the fact that these functions can now take more than one argument. * cli/cli-utils.c (number_is_in_list): New function. * cli/cli-utils.h (number_is_in_list): Export. 2011-02-23 Michael Snyder * memattr.c (mem_enable_command): Use get_number_or_range. (mem_disable_command): Ditto. (mem_delete_command): Ditto. (_initialize_mem): Tweak usage message to reflect multiple arguments. 2011-02-22 Doug Evans Add gdb.lookup_global_symbol python function. * NEWS: Add entry. * python/py-symbol.c (gdbpy_lookup_global_symbol): New function. * python/python-internal.h (gdbpy_lookup_global_symbol): Declare it. * python/python.c (GdbMethods): Add entry for lookup_global_symbol. 2011-02-22 Tom Tromey * language.c (language_class_name_from_physname): Rename 'curr_language' argument to 'lang'; use in body. 2011-02-22 Michael Snyder * cli/cli-utils.c (number_is_in_list): Check for zero return. 2011-02-22 Pedro Alves * frame-unwind.h: Fix comment to mention the this frame, not the next. 2011-02-22 Tom Tromey * symfile.c (auto_solib_limit): Remove. * symfile.h (auto_solib_limit): Remove. 2011-02-22 Joel Brobecker * Makefile.in (INSTALLED_LIBS): Delete. Update comment. 2011-02-21 Michael Snyder * gdbthread.h (print_thread_info): Change prototype. * thread.c (print_thread_info): Accept char* instead of int for requested_threads argument. Use new function number_is_in_list to determine which threads to list. (info_threads_command): Pass char* to print_thread_info. * cli/cli-utils.c (number_is_in_list): New function. * cli/cli-utils.h (number_is_in_list): Export. * mi/mi-main.c (mi_cmd_thread_info): Pass char* to print_thread_info. (print_one_inferior): Ditto. (mi_cmd_list_thread_groups): Ditto. 2011-02-21 Jan Kratochvil * common/Makefile.in (CFLAGS): New. (COMPILE): Add $(CFLAGS). 2011-02-21 Tom Tromey * breakpoint.c (catch_syscall_command_1): Fix typo. 2011-02-21 Tom Tromey * reverse.c: Include cli-utils.h. * printcmd.c: Include cli-utils.h. (string_printf): Use skip_spaces. * cli/cli-utils.h: New file. * cli/cli-utils.c: New file. * cli/cli-dump.h (skip_spaces): Move to cli-utils.h. * cli/cli-dump.c (skip_spaces): Move to cli-utils.c. * breakpoint.h (get_number, get_number_or_range): Move to cli-utils.h. * breakpoint.c: Include cli-utils.h. (get_number_trailer, get_number, get_number_or_range) (ep_skip_leading_whitespace): Move to cli-utils.c. (create_breakpoint_sal, find_condition_and_thread) (decode_static_tracepoint_spec, watch_command_1) (watch_maybe_just_location, ep_parse_optional_if_clause) (catch_fork_command_1, catch_exec_command_1) (catch_syscall_command_1): Use skip_spaces, skip_to_space. * Makefile.in (SUBDIR_CLI_OBS): Add cli-utils.o. (SUBDIR_CLI_SRCS): Add cli-utils.c. (HFILES_NO_SRCDIR): Add cli-utils.h. (cli-utils.o): New target. 2011-02-18 Pierre Muller * remote.c (remote_close): Reset INFERIOR_PTID to NULL_PTID before calling discard_all_inferiors. 2011-02-21 Ulrich Weigand * opencl-lang.c (STRUCT_OCL_TYPE): Remove. (struct builtin_opencl_type): Remove. (builtin_opencl_type): Change return type to "struct type **". (lookup_opencl_vector_type): Update caller. (opencl_language_arch_info): Copy primitive type vector from gdbarch. (build_opencl_types): Install plain array of "struct type *" instead of "struct builtin_opencl_type". 2011-02-21 Matthew Gretton-Dann Ulrich Weigand * arm-linux-nat.c: Include "observer.h" and "gdbthread.h". (PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define. (struct arm_linux_hwbp_cap): New type. (arm_linux_get_hwbp_cap): New function. (arm_linux_get_hw_breakpoint_count): Likewise. (arm_linux_get_hw_watchpoint_count): Likewise. (arm_linux_can_use_hw_breakpoint): Likewise. (arm_hwbp_type): New type. (arm_hwbp_control_t): Likewise. (struct arm_linux_hw_breakpoint): Likewise. (struct arm_linux_thread_points): Likewise. (arm_threads): New global variable. (arm_linux_find_breakpoints_by_tid): New function. (arm_hwbp_control_initialize): Likewise. (arm_hwbp_control_is_enabled): Likewise. (arm_hwbp_control_disable): Likewise. (arm_linux_hw_breakpoint_initialize): Likewise. (arm_linux_get_hwbp_type): Likewise. (arm_linux_hw_watchpoint_initialize): Likewise. (arm_linux_hw_breakpoint_equal): Likewise. (arm_linux_insert_hw_breakpoint1): Likewise. (arm_linux_remove_hw_breakpoint1): Likewise. (arm_linux_insert_hw_breakpoint): Likewise. (arm_linux_remove_hw_breakpoint): Likewise. (arm_linux_region_ok_for_hw_watchpoint): Likewise. (arm_linux_insert_watchpoint): Likewise. (arm_linux_remove_watchpoint): Likewise. (arm_linux_stopped_data_address): Likewise. (arm_linux_stopped_by_watchpoint): Likewise. (arm_linux_watchpoint_addr_within_range): Likewise. (arm_linux_new_thread): Likewise. (arm_linux_thread_exit): Likewise. (_initialize_arm_linux_nat): Install hardware breakpoint/watchpoint related target callbacks. Register arm_linux_new_thread and arm_linux_thread_exit. * arm-tdep.h (arm_pc_is_thumb): Add prototype. * arm-tdep.c (arm_pc_is_thumb): Make global. (arm_gdbarch_init): Call set_gdbarch_have_nonsteppable_watchpoint. 2011-02-21 Ulrich Weigand * breakpoint.c (update_watchpoint): Do not attempt to recreate per-frame locations while within a function epilogue. 2011-02-21 Pierre Muller * ser-mingw.c (ser_windows_close): Reformat comment to better conform to GNU coding standards. 2011-02-21 Pierre Muller Allow use of mingw native on Windows 95 OS. * ser-mingw.c (CancelIo): New macro for dynamically loaded DLL entry. (ser_windows_close): Only call CancelIo if function exists. (_initialize_ser_windows): Use LoadLirary/GetProcAddress to check for existence of CancelIo function in kernel32 DLL. 2011-02-21 Hui Zhu * Makefile.in (HFILES_NO_SRCDIR): Add printcmd.h. * ax-gdb.c (gen_printf_expr_callback): New function. * ax-gdb.h (gen_printf_expr_callback): Forward declare. * ax-general.c (ax_memcpy): New function. (ax_print): Handle "printf". (ax_reqs): Ditto. * ax.h (ax_memcpy): Forward declare. * common/ax.def (invalid2): Removed. (printf): New entry. * printcmd.c (printcmd.h): New include. (string_printf): New function. (ui_printf): Removed. (printf_command): Remove static. Call string_printf. (eval_command): Call string_printf. * printcmd.h: New file. * tracepoint.c (validate_actionline, encode_actions_1): handle printf_command. 2011-02-19 Michael Snyder * reverse.c (delete_one_bookmark): Argument is now bookmark id rather than pointer to bookmark struct. (delete_bookmark_command): Use get_number_or_range. (goto_bookmark_command): Parse with get_number instead of strtoul. (bookmark_1): New function. Print info for one bookmark. (bookmarks_info): Use get_number_or_range and bookmark_1. 2011-02-18 Michael Snyder * thread.c (info_threads_command): Re-implement using get_number_or_range. (thread_apply_command): Ditto. 2011-02-18 Tom Tromey * common/ax.def: New file. * ax.h (enum agent_op): Use ax.def. * ax-general.c (aop_map): Use ax.def. 2011-02-18 Tom Tromey * ax-general.c (aop_map): Add pick and rot. * dwarf2loc.c (compile_dwarf_to_ax) : Reimplement. : Implement. * ax.h (enum agent_op) : New constants. (ax_pick): Declare. * ax-general.c (ax_pick): New function. 2011-02-18 Tom Tromey * Makefile.in (HFILES_NO_SRCDIR): Don't mention ada-operator.inc. 2011-02-18 Jan Kratochvil Tom Tromey * cp-support.c (make_symbol_overload_list_namespace): Do not call make_symbol_overload_list_block with NULL BLOCK. * valarith.c (unop_user_defined_p): Resolve also TYPE_CODE_TYPEDEF. 2011-02-18 Pedro Alves * breakpoint.c (get_number_trailer): No longer accept a NULL PP. * breakpoint.h (get_number_or_range): Declare. * printcmd.c (ALL_DISPLAYS): Declare. (delete_display): Reimplement taking a display pointer. (undisplay_command): Accept a range of displays to delete, using get_number_or_range. 2011-02-18 Pierre Muller * c-valprint.c (c_val_print): Add embedded_offset to address for arrays of unspecified length. * p-valprint.c (pascal_val_print): Likewise. 2011-02-18 Yao Qi * gdb/arm-tdep.c (arm_displaced_step_copy_insn): Move code to ... (arm_process_displaced_insn): .. here. Remove parameter INSN. (thumb_process_displaced_insn): New. * gdb/arm-linux-tdep.c (arm_linux_displaced_step_copy_insn): Update call to arm_process_displaced_insn. * gdb/arm-tdep.h : Update declaration of arm_process_displaced_insn. 2011-02-17 Tom Tromey * dwarf2loc.h (dwarf2_compile_expr_to_ax): Declare. * dwarf2loc.c (dwarf2_compile_expr_to_ax): Rename from compile_dwarf_to_ax. No longer static. Call dwarf2_compile_cfa_to_ax. (locexpr_tracepoint_var_ref): Update. (loclist_tracepoint_var_ref): Update. * dwarf2-frame.h (dwarf2_compile_cfa_to_ax): Declare. * dwarf2-frame.c (execute_cfa_program): Remove 'this_frame' argument; add 'gdbarch' and 'pc'. (dwarf2_compile_cfa_to_ax): New function. (dwarf2_frame_cache): Update. 2011-02-17 Joel Brobecker * ada-lang.c (ada_type_of_array): Fix the size of the array in the case of an unconstrained packed array. 2011-02-17 Yao Qi * common/Makefile.in: Add more targets for make. 2011-02-16 Tom Tromey * dwarf2loc.c (unimplemented): Fix typo. 2011-02-16 Tom Tromey * dwarf2loc.c (unimplemented): Handle unnamed opcodes. (compile_dwarf_to_ax) : Use unimplemented. : Update. (disassemble_dwarf_expression): Update. * dwarf2read.c (dwarf_stack_op_name): Remove 'def' argument. (decode_locdesc): Update. * dwarf2expr.h (dwarf_stack_op_name): Update. 2011-02-16 Tom Tromey * ax.h (struct aop_map) : Now const. 2011-02-16 Tom Tromey * ax-gdb.c.c (gen_expr) : Handle value kinds other than axs_rvalue. 2011-02-16 Yao Qi * infrun.c (get_displaced_step_closure_by_addr): New. * inferior.h: Declare it. * arm-tdep.c: (arm_pc_is_thumb): Call get_displaced_step_closure_by_addr. Adjust MEMADDR if it returns non-NULL. 2011-02-16 Pedro Alves Jan Kratochvil gdb/ * tracepoint.c (memrange_sortmerge): Fix list A's end calculation. 2011-02-16 Pedro Alves Jan Kratochvil * value.c (value_contents_copy_raw): Extend describing comment. Assert that the destination contents we're overwriting are wholly available. (value_contents_copy): Extend describing comment. 2011-02-16 Pedro Alves Jan Kratochvil * value.c (value_available_contents_eq): Remove redundant local variables. Fix available contents comparision. * value.h (value_available_contents_eq): Extend describing comment. 2011-02-16 Yao Qi * thread.c (info_threads_command): Add missing i18n markup and remove trailing newline. 2011-02-15 Paul Pluzhnikov * breakpoint.c (longjmp_names): New variable. (struct breakpoint_objfile_data): New type. (breakpoint_objfile_key): New variable. (msym_not_found): New variable. (msym_not_found_p): New predicate. (get_breakpoint_objfile_data): New function. (create_overlay_event_breakpoint): Check per-objfile cache for symbols first. (create_longjmp_master_breakpoint): Likewise. (create_std_terminate_master_breakpoint): Likewise. (create_exception_master_breakpoint): Likewise. (_initialize_breakpoint): Register per-objfile data key. 2011-02-15 Paul Pluzhnikov * breakpoint.c ((create_overlay_event_breakpoint): Const-propagate parameter value. (create_longjmp_master_breakpoint): Loop over longjmp names. (create_std_terminate_master_breakpoint): Const-propagate parameter value. (update_breakpoints_after_exec): Adjust. (breakpoint_re_set): Adjust. 2011-02-15 Michael Snyder * thread.c (info_threads_command): Process arg as thread id, or list of thread ids. (thread_find_command): New command. (_initialize_thread): Document argument for info threads. Document 'thread find' command. * NEWS: Document new command "thread find". 2011-02-15 Jan Kratochvil * Makefile.in (ACLOCAL_AMFLAGS): Add `-I ../config'. * aclocal.m4: Regenerated with aclocal-1.11.1. * common/configure: Regenerate with autoconf-2.64. 2011-02-15 Ken Werner * opencl-lang.c (build_opencl_types): Set the size of the built-in bool data type to a size of one byte. 2011-02-15 Pedro Alves Jan Kratochvil * target.c (memory_xfer_live_readonly_partial): Document where to look for interface description. 2011-02-15 Yao Qi PR tdep/12352 * arm-tdep.c (copy_ldr_str_ldrb_strb): Replace PC with SP in order to store PC value on stack instead of text section. 2011-02-15 Thiago Jung Bauermann * rs6000-tdep.c (IS_EFP_PSEUDOREG): Use correct constant for the EFP register set size. (efpr_pseudo_register_read): Use regcache_raw_read_part to read data from the VMX register. (efpr_pseudo_register_write): Use regcache_raw_write_part to read and write data from/to the VMX register. 2011-02-14 Michael Snyder * command.h (enum command_class): New class 'no_set_class', for "show" commands without a corresponding "set" command. * value.c (_initialize_values): Use 'no_set_class' for "show values". * copying.c (_initialize_copying): Ditto for "show copying" and "show warranty". * cli/cli-cmds.c (init_cli_cmds): Ditto for "show commands" and "show version". * cli/cli-setshow.c (cmd_show_list): Skip "show" commands for which there is no corresponding "set" command (eg. "show copying"). 2011-02-14 Pedro Alves Jan Kratochvil * exec.c (section_table_available_memory): Change `len' parameter type to ULONGEST. * exec.h (section_table_available_memory): Ditto. * value.h (read_value_memory): Rename the `offset' parameter to `embedded_offset'. 2011-02-14 Pedro Alves Jan Kratochvil * memrange.c (compare_mem_ranges): Mention sort order in describing comment. (normalize_mem_ranges): Add comment. Fix ra->length calculation. * tracepoint.c (traceframe_available_memory): Extend comment to mention what happens to RESULT when the target does not support the query. 2011-02-14 Pedro Alves Jan Kratochvil * value.c (mark_value_bytes_unavailable): Fix indexing the `bef' range. 2011-02-14 Pedro Alves * value.c (value_bits_valid, value_bits_synthetic_pointer): No longer handle NULL values. 2011-02-14 Pedro Alves * exceptions.h (NOT_AVAILABLE_ERROR): New error. * value.c: Include "exceptions.h". (require_available): Throw NOT_AVAILABLE_ERROR instead of a generic error. * cp-abi.c: Include gdb_assert.h. (baseclass_offset): Add `embedded_offset' and `val' parameters. Assert the method is implemented. Wrap NOT_AVAILABLE_ERROR errors. * cp-abi.h (baseclass_offset): Add `embedded_offset' and `val' parameters. No longer returns -1 on error. (struct cp_abi_ops) : Add `embedded_offset' and `val' parameters. * cp-valprint.c: Include exceptions.h. (cp_print_value): Handle NOT_AVAILABLE_ERROR errors when fetching the baseclass_offset. Handle unavailable base classes. Use val_print_invalid_address. * p-valprint.c: Include exceptions.h. (pascal_object_print_value): Handle NOT_AVAILABLE_ERROR errors when fetching the baseclass_offset. No longer expect baseclass_offset returning -1. Handle unavailable base classes. Use val_print_invalid_address. * valops.c (dynamic_cast_check_1): Rename `contents' parameter to `valaddr' parameter, and change its type to gdb_byte pointer. Add `embedded_offset' and `val' parameters. Adjust. (dynamic_cast_check_2): Rename `contents' parameter to `valaddr' parameter, and change its type to gdb_byte pointer. Add `embedded_offset' and `val' parameters. Adjust. No longer expect baseclass_offset returning -1. (value_dynamic_cast): Use value_contents_for_printing rather than value_contents. Adjust. (search_struct_field): No longer expect baseclass_offset returning -1. (search_struct_method): If reading memory from the target is necessary, wrap it in a new value to pass to baseclass_offset. No longer expect baseclass_offset returning -1. (find_method_list): No longer expect baseclass_offset returning -1. Use value_contents_for_printing rather than value_contents. * valprint.c (val_print_invalid_address): New function. * valprint.h (val_print_invalid_address): Declare. * gdbtypes.c (is_unique_ancestor_worker): New `embedded_offset' and `val' parameters. No longer expect baseclass_offset returning -1. Adjust. * gnu-v2-abi.c: Include "exceptions.h". (gnuv2_baseclass_offset): Add `embedded_offset' and `val' parameters. Handle unavailable memory. Recurse through gnuv2_baseclass_offset directly, rather than through baseclass_offset. No longer returns -1 on not found, instead throw an error. * gnu-v3-abi.c (gnuv3_baseclass_offset): Add `embedded_offset' and `val' parameters. Adjust. 2011-02-14 Pedro Alves * tracepoint.c (memrange_sortmerge): Don't merge ranges that are almost but not quite adjacent. 2011-02-14 Pedro Alves * value.h (value_entirely_available): Declare. * value.c (value_entirely_available): New function. * c-valprint.c (c_value_print): Don't try fetching the pointer's real type if the pointer is unavailable. 2011-02-14 Pedro Alves * valops.c (value_repeat): Use read_value_memory instead of read_memory. 2011-02-14 Pedro Alves * value.h (value_contents_copy, value_contents_copy_raw): Declare. * value.c (value_contents_copy_raw, value_contents_copy): New functions. (value_primitive_field): Use value_contents_copy_raw instead of memcpy. * valops.c (value_fetch_lazy): Use value_contents_copy instead of memcpy. (value_array, value_slice): Ditto. * valarith.c (value_subscripted_rvalue): Use value_contents_copy_raw instead of memcpy. 2011-02-14 Pedro Alves references. * valops.c (get_value_at): Use value_from_contents_and_address, avoiding read_memory. 2011-02-14 Pedro Alves * c-valprint.c (c_val_print): Print a string with unavailable contents as an array. 2011-02-14 Pedro Alves * value.h (unpack_bits_as_long): Delete declaration. (unpack_value_bits_as_long): Declare. (unpack_value_field_as_long): Declare. (value_field_bitfield): Declare. * value.c (unpack_bits_as_long): Rename to... (unpack_value_bits_as_long_1): ... this. Add embedded_offset and value parameters. Return the extracted result in a new output parameter. If the value contents are unavailable, return false, otherwise return true. (unpack_value_bits_as_long): New. (unpack_field_as_long): Rename to... (unpack_value_field_as_long_1): ... this. Add embedded_offset and Add embedded_offset and value parameters. Return the extracted result in a new output parameter. If the value contents are unavailable, return false, otherwise return true. (unpack_value_field_as_long): New. (unpack_field_as_long_1): New. (unpack_field_as_long): Reimplement as wrapper around unpack_value_field_as_long_1. (value_field_bitfield): New function. * valops.c (value_fetch_lazy): When fetching a bitfield, use unpack_value_bits_as_long. Mark the value as unavailable, if it is unavailable. * jv-valprint.c (java_print_value_fields): Use value_field_bitfield. * p-valprint.c (pascal_object_print_value_fields): Use value_field_bitfield. * cp-valprint.c (cp_print_value_fields): Use value_field_bitfield. 2011-02-14 Pedro Alves * value.c (get_internalvar_integer): Also return the int value of TYPE_CODE_INT INTERNALVAR_VALUE values. (set_internalvar): Don't special case TYPE_CODE_INT. 2011-02-14 Pedro Alves * value.c (struct internalvar) : Remove INTERNALVAR_POINTER. : Delete. (value_of_internalvar): Remove INTERNALVAR_POINTER handling. (set_internalvar): Remove special TYPE_CODE_PTR handling. (preserve_one_internalvar): Remove INTERNALVAR_POINTER handling. 2011-02-14 Pedro Alves * value.h (value_available_contents_eq): Declare. * value.c (find_first_range_overlap): New function. (value_available_contents_eq): New function. * valprint.c (val_print_array_elements): Use value_available_contents_eq. * ada-valprint.c (val_print_packed_array_elements): Use value_available_contents_eq. * jv-valprint.c (java_value_print): Use value_available_contents_eq. 2011-02-14 Pedro Alves * target.c (target_read_live_memory): New function. (memory_xfer_live_readonly_partial): New. (memory_xfer_partial): If reading from a traceframe, fallback to reading unavailable read-only memory from read-only regions of live target memory. * tracepoint.c (disconnect_tracing): Adjust. (set_current_traceframe): New, factored out from set_traceframe_number. (set_traceframe_number): Reimplement to only change the traceframe number on the GDB side. (do_restore_current_traceframe_cleanup): Adjust. (make_cleanup_restore_traceframe_number): New. (cur_traceframe_number): New global. (tfile_open): Set cur_traceframe_number to no traceframe. (set_tfile_traceframe): New function. (tfile_trace_find): If looking up a traceframe using any method other than by number, make sure the current tfile traceframe matches gdb's current traceframe. Update the current tfile traceframe if the lookup succeeded. (tfile_fetch_registers, tfile_xfer_partial) (tfile_get_trace_state_variable_value): Make sure the remote traceframe matches gdb's current traceframe. * remote.c (remote_traceframe_number): New global. (remote_open_1): Set it to -1. (set_remote_traceframe): New function. (remote_fetch_registers, remote_store_registers) (remote_xfer_memory, remote_xfer_partial) (remote_get_trace_state_variable_value): Make sure the remote traceframe matches gdb's current traceframe. (remote_trace_find): If looking up a traceframe using any method other than by number, make sure the current remote traceframe matches gdb's current traceframe. Update the current remote traceframe if the lookup succeeded. * infrun.c (fetch_inferior_event): Adjust. * tracepoint.h (set_current_traceframe): Declare. (get_traceframe_number, set_traceframe_number): Add describing comments. 2011-02-14 Pedro Alves Mark pieces of values as unavailable if the corresponding memory is unavailable. * valops.c: Include tracepoint.h. (value_fetch_lazy): Use read_value_memory. (read_value_memory): New. * value.h (read_value_memory): Declare. * dwarf2loc.c (read_pieced_value): Use read_value_memory. * exec.c (section_table_available_memory): New function. * exec.h (section_table_available_memory): Declare. 2011-02-14 Pedro Alves * Makefile.in (SFILES): Add memrange.c. (HFILES_NO_SRCDIR): Add memrange.h. (COMMON_OBS): Add memrange.o. * memrange.c: New file. * memrange.h: New file. * tracepoint.c: Include memrange.h. (struct mem_range): Delete. (mem_range_s): Delete. (traceframe_available_memory): New function. * tracepoint.h (traceframe_available_memory): Declare. 2011-02-14 Pedro Alves * target.h (struct traceframe_info): Forward declare. (enum target_object): Add TARGET_OBJECT_TRACEFRAME_INFO. (struct target_ops) : New field. (target_traceframe_info): New. * target.c (update_current_target): Inherit and default to_traceframe_info. * remote.c (PACKET_qXfer_traceframe_info): New. (remote_protocol_features): Register qXfer:traceframe-info:read. (remote_xfer_partial): Handle TARGET_OBJECT_TRACEFRAME_INFO. (remote_traceframe_info): New. (init_remote_ops): Install it. (_initialize_remote): Install "set/show remote traceframe-info" commands. * tracepoint.h (parse_traceframe_info): Declare. * tracepoint.c (struct mem_range): New. (mem_range_s): New typedef. (struct traceframe_info): New. (traceframe_info): New global. (free_traceframe_info): New function. (clear_traceframe_info): New function. (start_tracing, tfind_1, set_traceframe_number): Clear traceframe info. (build_traceframe_info): New function. (tfile_traceframe_info): New function. (init_tfile_ops): Install tfile_traceframe_info. (traceframe_info_start_memory, free_result): New functions. (memory_attributes, traceframe_info_elements): New globals. (parse_traceframe_info, get_traceframe_info): New functions. * features/traceframe-info.dtd: New file. * Makefile.in (XMLFILES): Add traceframe-info.dtd. 2011-02-14 Pedro Alves Base support for value contents. * value.h (value_bytes_available): Declare. (mark_value_bytes_unavailable): Declare. * value.c (struct range): New struct. (range_s): New typedef. (ranges_overlap): New function. (range_lessthan): New function. (ranges_contain_p): New function. (struct value) : New field. (value_bytes_available): New function. (mark_value_bytes_unavailable): New function. (require_not_optimized_out): Constify parameter. (require_available): New function. (value_contents_all, value_contents): Require all bytes be available. (value_free): Free `unavailable'. (value_copy): Copy `unavailable'. * valprint.h (val_print_unavailable): Declare. * valprint.c (valprint_check_validity): Rename `offset' parameter to `embedded_offset'. If printing a scalar, check whether the value chunk is available. (val_print_unavailable): New. (val_print_scalar_formatted): Check whether the value is available. * python/py-prettyprint.c (apply_val_pretty_printer): Refuse pretty-printing unavailable values. 2011-02-13 Jan Kratochvil Fix const/volatile qualifiers of C++ types, PR c++/12328. * c-typeprint.c (c_type_print_args): Update the function comment. New variable param_type, initialize it. Remove const/volatile qualifiers for language_cplus and !show_artificial. Use param_type. 2011-02-13 Jan Kratochvil * symtab.c (find_pc_sect_line): New variable objfile, initialize it from S. Iterate S using ALL_OBJFILE_SYMTABS. Verify BV for each S. * symtab.h (struct symtab) : Comment extension. 2011-02-12 Yao Qi * Makefile.in (CLEANDIRS): Remove duplicated common dir. 2011-02-11 Yao Qi * common/Makefile.in: Add copyright header. 2011-02-11 Pedro Alves * infrun.c (proceed): Move switching out and in of tfind mode from here ... (fetch_inferior_event): ... to here. 2011-02-11 Yao Qi * Makefile.in: Remove signals.o from COMMON_OBS. Link libcommon.a. * configure.ac: Add common to sub dir. * configure: Regenerate. 2011-02-11 Yao Qi Build libcommon.a. * common/Makefile.in: New. * common/configure.ac: New. * common/aclocal.m4: New. * common/configure: Generate. 2011-02-10 Pedro Alves * vec.h (VEC_block_remove): Place VEC_ASSERT_INFO on the right side of the parenthesis. Merge from GCC: 2010-07-13 Jakub Jelinek * vec.h (VEC_block_remove): Fix comment. 2011-02-08 Michael Snyder * linux-nat.c (linux_nat_filter_event): Fix typo in comment. 2011-02-08 Jan Kratochvil * i386-tdep.c (i386_process_record): Rename l suffixes to d suffixes in comments for pcmpgtd, pcmpeqd, psubd, paddd, pcmpgtd, pcmpeqd, psubd and paddd. 2011-02-08 Jan Kratochvil PR 12361. * i386-tdep.c (i386_process_record) <0x660f3807>: Fix the comment to phsubsw. (i386_process_record) : Fix the opcode to 0xf20ff0. (i386_process_record) <0x0f3807>: Fix the comment to phsubsw. 2011-02-08 Ulrich Weigand * dwarf2read.c (read_subroutine_type): Set special calling convention flag for functions compiled by IBM XL C for OpenCL. * ppc-sysv-tdep.c: Include "dwarf2.h" (ppc_sysv_abi_push_dummy_call): Implement IBM OpenCL vector types calling convention. (do_ppc_sysv_return_value): Add FUNC_TYPE argument. Implement IBM OpenCL vector types calling convention. (ppc_sysv_abi_return_value): Pass through FUNC_TYPE. (ppc_sysv_abi_broken_return_value): Likewise. (ppc64_sysv_abi_push_dummy_call): Implement IBM OpenCL vector types calling convention. (ppc64_sysv_abi_return_value): Likewise. * spu-tdep.c: Include "dwarf2.h" (spu_return_value): Implement IBM OpenCL vector types calling convention. 2011-02-08 Ulrich Weigand * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Implement correct ABI for AltiVec vector arguments. 2011-02-07 Pedro Alves * valprint.c (val_print): Extend comment. * ada-valprint.c (ada_valprint): Rewrite comment deferring interface explanation to val_print. (ada_val_print_array): Adjust comment to current interface. (print_field_values): Adjust comment to current interface. * c-valprint.c (c_val_print): Rewrite comment deferring interface explanation to val_print. * f-valprint.c (f_val_print): Ditto. * jv-valprint.c (java_val_print): Ditto. * m2-valprint.c (m2_val_print): Ditto. * p-valprint.c (pascal_val_print): Ditto. 2011-02-07 Thiago Jung Bauermann * breakpoint.c (parse_breakpoint_sals): Fix description. 2011-02-04 Sami Wagiaalla Oguz Kayral * python/py-inferior.c (python_on_normal_stop): New function. (python_on_resume): New function. (python_inferior_exit): New function. (gdbpy_initialize_inferior): Add normal_stop, target_resumed, and inferior_exit observers. * python/py-evtregistry.c: New file. * python/py-threadevent.c : New file. * python/py-event.c: New file. * python/py-evts.c: New file. * python/py-continueevent.c: New file. * python/py-bpevent.c: New file. * python/py-signalevent.c: New file. * python/py-exetiedevent.c: New file. * python/py-breakpoint.c (gdbpy_breakpoint_from_bpstats): New function. Move struct breakpoint_object from here... * python/python-internal.h: ... to here. * python/py-event.h: New file. * python/py-events.h: New file. * Makefile.in (SUBDIR_PYTHON_OBS): Add py-breakpointstopevent.o, py-continueevent.o, py-event.o, py-eventregistry.o, py-events.o, py-exitedevent.o, py-signalstopevent.o, and py-stopevent.o. (SUBDIR_PYTHON_SRCS): Add py-breakpointstopevent.c, py-continueevent.c, py-event.c, py-eventregistry.c, py-events.c, py-exitedevent.c, py-signalstopevent.c, and py-stopevent.c. Add build rules for all the above. 2011-02-04 Tom Tromey * dwarf2read.c (dwarf2_section_empty_p): New function. (dwarf2_read_section): Use dwarf2_section_empty_p. (dwarf2_section_size): New function. (dwarf2_get_section_info): Unconditionally read section. (dwarf2_read_index): Use dwarf2_section_empty_p. (partial_read_comp_unit_head): Use dwarf2_section_size. (dwarf2_symbol_mark_computed): Likewise. 2011-02-04 David Daney * NEWS: Add item for "catch syscall" on mips*-linux* targets. 2011-02-04 David Daney * mips-linux-tdep.c: Include xml-syscall.h. (mips_linux_get_syscall_number): New function. (mips_linux_init_abi): Add calls to mips_linux_get_syscall_number() and set_xml_syscall_file_name(). * data-directory/Makefile.in (SYSCALLS_FILES): Add mips-o32-linux.xml, mips-n32-linux.xml and mips-n64-linux.xml * syscalls/mips-n32-linux.xml: New file. * syscalls/mips-n64-linux.xml: New file. * syscalls/mips-o32-linux.xml: New file. 2011-02-04 Ulrich Weigand * dwarf2read.c (dwarf2_ranges_read): Skip empty range entries. Complain about inverted range entries. (dwarf2_record_block_ranges): Likewise. 2011-02-04 Thiago Jung Bauermann Fix some typos. * breakpoint.c (update_watchpoint): Fix name of the update_global_location_list function. (print_one_breakpoint): Fix typo. (_initialize_breakpoint): Remove extra space in hbreak help string. * breakpoint.h (struct bp_location) : Fix field description. 2011-02-04 Pedro Alves * regcache.c (registers_changed_ptid): Don't explictly always clear `current_regcache'. Only clear current_thread_ptid and current_thread_arch when PTID matches. Only reinit the frame cache if PTID matches the current inferior_ptid. Move alloca(0) call to ... (registers_changed): ... here. 2011-02-03 Ulrich Weigand * arm-tdep.c (arm_skip_stack_protector): Accept any symbol that starts with __stack_chk_guard as stack guard symbol. 2011-02-03 Andrew Burgess * disasm.c (compare_lines): Handle the end of sequence markers within the line table to better support disassembling over compilation unit boundaries. 2011-02-02 Ulrich Weigand * arm-tdep.c (skip_prologue_function): Add GDBARCH and IS_THUMB arguments. Skip in-prologue calls to glibc __aeabi_read_tp implementation even if no symbols are available. (thumb_analyze_prologue): Update call to skip_prologue_function. (arm_analyze_prologue): Likewise. 2011-02-02 Ulrich Weigand * arm-tdep.c: Include "observer.h". (arm_prologue_this_id): Use frame PC if get_frame_func returns 0. (arm_exidx_data_key): New static variable. (struct arm_exidx_entry, arm_exidx_entry_s): New data types. (struct arm_exidx_data): Likewise. (arm_exidx_data_free): New function. (arm_compare_exidx_entries): Likewise. (arm_obj_section_from_vma): Likewise. (arm_exidx_new_objfile): Likewise. (arm_find_exidx_entry): Likewise. (arm_exidx_fill_cache): Likewise. (arm_exidx_unwind_sniffer): Likewise. (arm_exidx_unwind): New global variable. (arm_gdbarch_init): Append unwinder arm_exidx_unwind. (_initialize_arm_tdep): Attach arm_exidx_new_objfile to new_objfile observer. Register arm_exidx_data_key as objfile data. 2011-02-02 Ulrich Weigand * arm-tdep.c (arm_analyze_load_stack_chk_guard): Avoid build break due to accessing uninitialized variable. Fix indentation. 2011-02-02 Pedro Alves * c-valprint.c (c_value_print): When doing virtual base pointer adjustment, create a new value with adjusted contents rather than changing the contents of the value being printed (and getting it wrong). 2011-02-02 Pedro Alves * xml-support.c (xml_find_attribute): New. (xinclude_start_include): Use it. * xml-support.h (xml_find_attribute): Declare. * memory-map.c (memory_map_start_memory) (memory_map_start_property): Use xml_find_attribute. * osdata.c (osdata_start_osdata, osdata_start_column): Use xml_find_attribute. * remote.c (start_thread): Use xml_find_attribute. * solib-target.c (library_list_start_segment) (library_list_start_section, library_list_start_library) (library_list_start_list): Use xml_find_attribute. * xml-tdesc.c (tdesc_start_target, tdesc_start_feature) (tdesc_start_union, tdesc_start_struct, tdesc_start_flags) (tdesc_start_field): Use xml_find_attribute. 2011-02-02 Ulrich Weigand * opencl-lang.c (STRINGIFY): Rename to OCL_STRING. (BUILD_OCL_VTYPES): Update. 2011-02-02 Joel Brobecker * configure.ac: Work around non-GNU sed limitation when computing python version number. * configure: Regenerate. 2011-02-01 Jan Kratochvil Fix debug printing of TYPE_INSTANCE. * expprint.c (print_subexp_standard) : New. (dump_subexp_body_standard) : New. 2011-02-01 Jan Kratochvil Fix debug printing of BINOP_IN, OP_OBJC_MSGCALL, OP_F77_UNDETERMINED_ARGLIST, OP_COMPLEX, OP_OBJC_SELECTOR, OP_NAME, OP_OBJC_NSSTRING, OP_F90_RANGE and OP_DECFLOAT. * ada-operator.inc: Rename the file to ... * ada-operator.def: ... here, wrap all the entries by macro OP. * expprint.c (op_name_standard): Remove all the entries. Include "std-operator.def" instead. * expression.h (enum exp_opcode): Include "std-operator.def" and "ada-operator.def". Move all the entries ... * std-operator.def: ... here, wrap all the entries by macro OP. 2011-01-31 Paul Pluzhnikov * breakpoint.h (remove_jit_event_breakpoints): New prototype. * breakpoint.c (remove_jit_event_breakpoints): New function. * jit.c (jit_descriptor_addr): Delete. (registering_code): Delete. (clear_int): Delete. (jit_inferior_data): New variable. (struct jit_inferior_data): New type. (get_jit_inferior_data): New function. (jit_inferior_data_cleanup): New function. (jit_read_descriptor): Adjust. (jit_register_code): Adjust. (jit_breakpoint_re_set_internal): New function; move code here ... (jit_inferior_init): ... from here. (jit_breakpoint_re_set): Adjust. (jit_reset_inferior_data_and_breakpoints): New function. (jit_inferior_created_observer): Adjust. (jit_inferior_exit_hook): Adjust. (jit_executable_changed_observer): New function. (jit_event_handler): Adjust. (_initialize_jit): Adjust. 2011-01-31 Michael Snyder * m32r-tdep.c (m32r_gdbarch_init): Replace accidentally deleted line. 2011-01-31 Tom Tromey PR python/12216: * python/python.c (execute_gdb_command): Call prevent_dont_repeat. * top.c (suppress_dont_repeat): New global. (dont_repeat): Use it. (prevent_dont_repeat): New function. * command.h (prevent_dont_repeat): Declare. 2011-01-31 Tom Tromey * infcmd.c (finish_backward): Use breakpoint_set_silent. * python/py-breakpoint.c (bppy_set_silent): Use breakpoint_set_silent. (bppy_set_thread): Use breakpoint_set_thread. (bppy_set_task): Use breakpoint_set_task. * breakpoint.h (breakpoint_set_silent, breakpoint_set_thread) (breakpoint_set_task): Declare. (make_breakpoint_silent): Remove. * breakpoint.c (breakpoint_set_silent): New function. (breakpoint_set_thread): Likewise. (breakpoint_set_task): Likewise. (make_breakpoint_silent): Remove. 2011-01-31 Tom Tromey * breakpoint.h (user_breakpoint_p): Declare. * breakpoint.c (user_breakpoint_p): New function. (breakpoint_1): Use it. (save_breakpoints): Likewise. 2011-01-31 Joel Brobecker * configure.ac: Add handling of Python distribution on Windows. * python-config.py: If the LIBS, SYSLIBS, LIBPL and/or LINKFORSHARED sysconfig variables are not defined, then do not use them. On Windows, if LIBPL is not defined, then use prefix + '/libs' instead. On Windows, return all paths using forward-slashes rather than backslashes. 2011-01-31 Joel Brobecker * configure.ac: Remove fallback behavior for building against Python. Remove tweaking of Python include path. Add PYTHON_CPPFLAGS and PYTHON_LIBS substitution. (AC_TRY_LIBPYTHON): Adjust program used in linking test. If link is successful, set PYTHON_CPPFLAGS and PYTHON_LIBS. Always restore CPPFLAGS and LIBS after linking test. * configure: Regenerated. * Makefile.in (INTERNAL_CPPFLAGS): Add @PYTHON_CPPFLAGS@. (INSTALLED_LIBS, CLIBS): Add @PYTHON_LIBS@. * python/python-internal.h: Adjust includes of Python .h files. 2011-01-31 Joel Brobecker * tracepoint.c (traceframe_walk_blocks): Add missing i18n markup in error message. 2011-01-31 Joel Brobecker * inflow.c (gdb_has_a_terminal): Fix typo in interactive_mode value test. 2011-01-31 Yao Qi * arm-linux-nat.c: Update calls to regcache_register_status instead of regcache_valid_p. * aix-thread.c: Likewise. * i386gnu-nat.c: Likewise. 2011-01-29 Jan Kratochvil Fix crash. * valops.c (compare_parameters): Verify TYPE_NFIELDS before touching TYPE_FIELD_ARTIFICIAL. 2011-01-28 Richard Earnshaw * MAINTAINERS: Move myself from Responsible Maintainers to Authorized Committers. 2011-01-28 Pedro Alves * tracepoint.c (tfile_xfer_partial): If there's no traceframe selected, don't try iterating over the traceframe's blocks. (tfile_has_stack): If there's no traceframe selected, then there's no stack. (tfile_has_registers): If there's no traceframe selected, then there's no registers. 2011-01-28 Pedro Alves * target.c (memory_xfer_partial): No need to restore shadows if we haven't read anything. 2011-01-28 Pedro Alves * mips-tdep.c (mips_print_register): Use get_frame_register_value and val_print_scalar_formatted. 2011-01-27 Pedro Alves * tracepoint.c (tfile_read): New. (tfile_open): Use it. (tfile_get_traceframe_address): Use it. (tfile_trace_find): Use it. (walk_blocks_callback_func): New typedef. (match_blocktype): New function. (traceframe_walk_blocks): New function. (traceframe_find_block_type): New function. (tfile_fetch_registers, tfile_xfer_partial) (tfile_get_trace_state_variable_value): Use traceframe_find_block_type and tfile_read. 2011-01-26 Kevin Buettner * remote-mips.c: Add internationalization mark ups. Remove trailing \n from already marked up strings. 2011-01-26 Tom Tromey * python/py-prettyprint.c (print_string_repr): Clear 'addressprint' option when calling val_print_string. (print_children): Handle Val_pretty_default. Clear 'addressprint' option when calling val_print_string. 2011-01-26 Tom Tromey * python/python.c (gdbpy_solib_name): Use gdb_py_longest and GDB_PY_LL_ARG. * python/python-internal.h (GDB_PY_LL_ARG, GDB_PY_LLU_ARG): New macros. (gdb_py_longest, gdb_py_ulongest): New typedefs. (gdb_py_long_from_longest, gdb_py_long_from_ulongest) (gdb_py_long_as_ulongest): New defines. (gdb_py_object_from_longest, gdb_py_object_from_ulongest) (gdb_py_int_as_long): Declare. * python/py-value.c (valpy_lazy_string): Use gdb_py_longest, GDB_PY_LL_ARG, gdb_py_object_from_longest. (valpy_long): Add comment. * python/py-utils.c (get_addr_from_python): Use gdb_py_long_as_ulongest. Handle overflow properly. (gdb_py_object_from_longest): New function. (gdb_py_object_from_ulongest): Likewise. (gdb_py_int_as_long): Likewise. * python/py-type.c (typy_array): Use gdb_py_int_as_long. * python/py-symtab.c (salpy_get_pc): Use gdb_py_long_from_ulongest. (salpy_get_line): Use PyInt_FromLong. * python/py-param.c (set_parameter_value): Use gdb_py_int_as_long. * python/py-lazy-string.c (stpy_get_address): Use gdb_py_long_from_ulongest. * python/py-frame.c (frapy_pc): Use gdb_py_long_from_ulongest. * python/py-cmd.c (cmdpy_completer): Use gdb_py_int_as_long. * python/py-breakpoint.c (bppy_set_thread): Use gdb_py_int_as_long. (bppy_set_task): Likewise. (bppy_set_ignore_count): Likewise. (bppy_set_hit_count): Likewise. * python/py-block.c (blpy_get_start): Use gdb_py_object_from_ulongest. (blpy_get_end): Likewise. (gdbpy_block_for_pc): Use gdb_py_ulongest and GDB_PY_LLU_ARG. 2011-01-25 Mathieu Lacage PR/symtab 11766: * gdb/objfiles.h (struct objfile) : New field. * gdb/solib.c (solib_read_symbols): Check for addr_low in equality test for objfile, initialize addr_low if needed. 2011-01-25 Pedro Alves * tui/tui-regs.c (tui_register_format): Remove dead code. 2011-01-25 Pedro Alves * printcmd.c (print_formatted): Use val_print_scalar_formatted instead of print_scalar_formatted. (print_scalar_formatted): Don't handle 's' format strings here, and add an assertion that we never see such format here. * valprint.h (val_print_scalar_formatted): Declare. * valprint.c (val_print_scalar_formatted): New. * c-valprint.c (c_val_print): Use val_print_scalar_formatted instead of print_scalar_formatted. * jv-valprint.c (java_val_print): Ditto. * p-valprint.c (pascal_val_print): Ditto. * ada-valprint.c (ada_val_print_1): Ditto. * f-valprint.c (f_val_print): Ditto. * infcmd.c (registers_info): Ditto. * m2-valprint.c (m2_val_print): Ditto. 2011-01-25 Pedro Alves * m2-valprint.c (print_unbounded_array): Pass value_contents_for_printing rather than value_contents, to m2_print_array_contents. Also pass in the value. 2011-01-25 Jan Kratochvil * dwarf2read.c (dwarf2_read_index, write_psymtabs_to_index) (save_gdb_index_command): Switch to .gdb_index version 4. 2011-01-25 Pedro Alves * mi/mi-main.c (get_register): Use get_frame_register_value rather than frame_register, and always pass a valid value to val_print. 2011-01-25 Pedro Alves Centralize printing "". * valprint.h (val_print_optimized_out): Declare. * cp-valprint.c (cp_print_value_fields): Use val_print_optimized_out. * jv-valprint.c (java_print_value_fields): Ditto. * p-valprint.c (pascal_object_print_value_fields): Ditto. * printcmd.c (print_formatted): Ditto. * valprint.c (valprint_check_validity): Ditto. (value_check_printable): Ditto. (val_print_optimized_out): New. 2011-01-25 Pedro Alves * infcmd.c (default_print_registers_info): Allocate values so to never pass a NULL value to val_print. 2011-01-25 Pedro Alves * cp-valprint.c (cp_print_value): Treat the 'skip' local as boolean. Make sure to always pass a value that matches the contents buffer to callees. Preserve `address' for following iterations. * value.c (value_contents_for_printing_const): New. (value_address): Constify value argument. * value.h (value_contents_for_printing_const): Declare. (value_address): Constify value argument. 2011-01-25 Pedro Alves * regcache.c (struct regcache_descr): Rename sizeof_raw_register_valid_p field to sizeof_raw_register_status, and sizeof_cooked_register_valid_p to sizeof_cooked_register_status. (init_regcache_descr): Adjust. (struct regcache): Rename register_valid_p field to register_status. (regcache_xmalloc_1, regcache_xfree, regcache_save) (do_cooked_read): Adjust. (regcache_valid_p): Rename to ... (regcache_register_status): ... this. Adjust. (regcache_invalidate): Adjust. (regcache_raw_read, regcache_cooked_read, regcache_raw_write): Adjust. (regcache_raw_supply): Adjust. If buf i NULL, mark the register as unavailable, not valid. (regcache_dump): Adjust. * regcache.h (enum register_status): New. (regcache_register_status): Declare. (regcache_invalidate): Delete declaration. * corelow.c (get_core_registers): Adjust. * tracepoint.c (tfile_fetch_registers): Adjust. * trad-frame.c (REG_VALUE): Rename to ... (TF_REG_VALUE): ... this. (REG_UNKNOWN): Rename to ... (TF_REG_UNKNOWN): ... this. (trad_frame_set_value, trad_frame_set_unknown): Adjust. * mi/mi-main.c (register_changed_p): Adjust. 2011-01-25 Pedro Alves * regcache.c (struct regcache_descr): Remove outdated comment. (init_regcache_descr): Remove sizeof_raw_register_valid_p overallocate hack. (regcache_xmalloc): Rename to ... (regcache_xmalloc_1): ... this. Add `readonly_p' parameter. Allocate the regcache type accordingly. (regcache_xmalloc): New as wrapper around regcache_xmalloc_1. (regcache_xfree): Asser the source is also readonly. Copy sizeof cooked registers, not raw. (regcache_dup_no_passthrough): Delete. (get_thread_arch_regcache): Use regcache_xmalloc_1. * h8300-tdep.c (h8300_push_dummy_call): Tweak comment to not mention obsolete write_register_bytes. * regcache.h (regcache_dup_no_passthrough): Delete declaration. 2011-01-25 Pedro Alves Stop remote_read_bytes from handling partial reads itself. * remote-fileio.c: Include target.h. (remote_fileio_write_bytes): Delete. (remote_fileio_func_open, remote_fileio_func_write) (remote_fileio_func_rename, remote_fileio_func_unlink): Use target_read_memory. (remote_fileio_func_stat): Use target_read_memory and target_write_memory. (remote_fileio_func_gettimeofday): Use target_write_memory. (remote_fileio_func_system): Use target_read_memory. * remote.c (remote_write_bytes): Make it static. (remote_read_bytes): Don't handle partial reads here. * remote.h (remote_read_bytes): Delete declaration. 2011-01-25 Pedro Alves Simplify XML parsing a bit. * xml-support.h (gdb_xml_parse_quick): Declare. * xml-support.c (gdb_xml_create_parser_and_cleanup_1): Renamed from gdb_xml_create_parser_and_cleanup, and added `old_chain' parameter. (gdb_xml_create_parser_and_cleanup): Reimplement on top of gdb_xml_create_parser_and_cleanup_1. (gdb_xml_parse_quick): New. * memory-map.c (parse_memory_map): Use gdb_xml_parse_quick. * osdata.c (osdata_parse): Ditto. * remote.c (remote_threads_info): Ditto. * solib-target.c (solib_target_parse_libraries): Ditto. * xml-syscall.c (syscall_parse_xml): Ditto. * xml-tdesc.c (tdesc_parse_xml): Ditto. 2011-01-24 Kevin Buettner * configure.tgt (mips*-*-elf): New; just like mips*-*-*, but with remote-mips.o added to gdb_target_obs. * Makefile.in (ALL_TARGET_OBS): Add remote-mips.o. 2011-01-24 Pedro Alves * ada-valprint.c (val_print_packed_array_elements): Pass the correct struct value to val_print. (ada_val_print_1): Ditto. 2011-01-24 Pedro Alves Don't lose embedded_offset in printing routines throughout. * valprint.h (val_print_array_elements): Change prototype. * valprint.c (val_print_array_elements): Add `embedded_offset' parameter, and adjust to pass it down to val_print, while passing `valaddr' or `address' unmodified. Take embedded_offset into account when checking repetitions. * c-valprint.c (c_val_print): Pass embedded_offset to val_print_array_elements instead of adjusting `valaddr' and `address'. * m2-valprint.c (m2_print_array_contents, m2_val_print): Pass embedded_offset to val_print_array_elements instead of adjusting `valaddr'. * p-lang.h (pascal_object_print_value_fields): Adjust prototype. * p-valprint.c (pascal_val_print): Pass embedded_offset to val_print_array_elements and pascal_object_print_value_fields instead of adjusting `valaddr'. (pascal_object_print_value_fields): Add `offset' parameter, and adjust to use it. (pascal_object_print_value): Add `offset' parameter, and adjust to use it. (pascal_object_print_static_field): Use value_contents_for_printing/value_embedded_offset, rather than value_contents. * ada-valprint.c (val_print_packed_array_elements): Add `offset' parameter, and adjust to use it. Use value_contents_for_printing/value_embedded_offset, rather than value_contents. (ada_val_print): Rename `valaddr0' parameter to `valaddr'. (ada_val_print_array): Add `offset' parameter, and adjust to use it. (ada_val_print_1): Rename `valaddr0' parameter to `valaddr', and `embedded_offset' to `offset'. Don't re-adjust `valaddr'. Instead work with offsets. Use value_contents_for_printing/value_embedded_offset, rather than value_contents. Change `defer_val_int' local type to CORE_ADDR, and use value_from_pointer to extract a target pointer, rather than value_from_longest. (print_variant_part): Add `offset' parameter. Replace `outer_valaddr' parameter by a new `outer_offset' parameter. Don't re-adjust `valaddr'. Instead pass down adjusted offsets. (ada_value_print): Use value_contents_for_printing/value_embedded_offset, rather than value_contents. (print_record): Add `offset' parameter, and adjust to pass it down. (print_field_values): Add `offset' parameter. Replace `outer_valaddr' parameter by a new `outer_offset' parameter. Don't re-adjust `valaddr'. Instead pass down adjusted offsets. Use value_contents_for_printing/value_embedded_offset, rather than value_contents. * d-valprint.c (dynamic_array_type): Use value_contents_for_printing/value_embedded_offset, rather than value_contents. * jv-valprint.c (java_print_value_fields): Add `offset' parameter. Don't re-adjust `valaddr'. Instead pass down adjusted offsets. (java_print_value_fields): Take `offset' into account. Don't re-adjust `valaddr'. Instead pass down adjusted offsets. (java_val_print): Take `embedded_offset' into account. Pass it to java_print_value_fields. * f-valprint.c (f77_print_array_1): Add `embedded_offset' parameter. Don't re-adjust `valaddr' or `address'. Instead pass down adjusted offsets. (f77_print_array): Add `embedded_offset' parameter. Pass it down. (f_val_print): Take `embedded_offset' into account. 2011-01-21 Joel Brobecker * inflow.c: Include "gdbcmd.h". (interactive_mode): New static global, moved here from top.c. (show_interactive_mode): New function, moved here from top.c. use gdb_has_a_terminal instead of input_from_terminal_p to determine the current mode. (gdb_has_a_terminal): Add handling of the "iteractive-mode" setting. (_initialize_inflow): Add the "set/show interactive-mode" commands. Moved here from top.c, after having adjusted slightly the help text. * top.c (interactive_mode, show_interactive_mode): Delete, moved to inflow.c. (input_from_terminal_p): Remove handling of "interactive-mode" setting, moved to infow.c. (init_main): Remove creation of the "set/show interactive-mode" commands, moved to inflow.c. 2011-01-19 Joel Brobecker * NEWS: Add entry for native ia64-hpux support. 2011-01-19 Tom Tromey PR mi/8618: * thread.c (free_thread): Free 'name'. (print_thread_info): Emit thread name. Change CLI output. (thread_name_command): New function. (do_captured_thread_select): Emit newline. (_initialize_thread): Register 'thread name' command. * target.h (struct target_ops) : New field. (target_thread_name): New macro. * target.c (update_current_target): Handle to_thread_name. * python/py-infthread.c (thpy_get_name): New function. (thpy_set_name): Likewise. (thread_object_getset): Add "name". * linux-nat.c (linux_nat_thread_name): New function. (linux_nat_add_target): Set to_thread_name. * gdbthread.h (struct thread_info) : New field. 2011-01-18 Joel Brobecker * ada-valprint.c (ada_print_scalar): Remove unsigned char downcast. (ada_val_print_1): Likewise. 2011-01-18 Joel Brobecker * rs6000-tdep.c (rs6000_skip_prologue): Make sure that the prologue upper limit address is not greater than the function end address when the upper limit could not be computed using the debugging info. 2011-01-17 Tom Tromey * cli/cli-cmds.c (apropos_command): Free the compiled regex. Use get_regcomp_error. * utils.c: Include gdb_regex.h. (do_regfree_cleanup): New function. (make_regfree_cleanup): Likewise. (get_regcomp_error): Likewise. * gdb_regex.h (make_regfree_cleanup, get_regcomp_error): Declare. 2011-01-17 Tom Tromey * cli/cli-cmds.c (apropos_command): Fix formatting. Don't call re_compile_fastmap. 2011-01-17 Pierre Muller * p-exp.y (intvar): New static variable, used to set CURRENT_TYPE for internal variables. (last_was_structop): New static variable. (COMPLETE): New token. (field_exp): New rule to group all '.' suffix handling. Add mark_struct_expression calls when approriate to be able to correctly find fields for completion. (yylex): Adapt to handle field completion and set INTVAR when required. 2011-01-14 Yao Qi * arm-tdep.c (arm_register_reggroup_p): FPS register is in save_reggroup, restore_reggroup and all_reggroup. 2011-01-14 Joel Brobecker * ada-valprint. (ada_printchar): Use the correct type length in call to ada_emit_char. * c-valprint.c (c_val_print): Remove cast in call to LA_PRINT_CHAR. 2011-01-14 Pierre Muller * solib-som.h (hpux_major_release): Declare variable here. * solib-som.c: Remove header. (DEFAULT_HPUX_MAJOR_RELEASE): New macro. (hpux_major_release): Make global, change default value to DEFAULT_HPUX_MAJOR_RELEASE. (get_hpux_major_release): Simply return HPUX_MAJOR_RELEASE. * hppa-hpux-nat.c: Add include. Add "solib-som.h" header. (set_hpux_major_release): New function. (_initialize_hppa_hpux_nat): Call set_hpux_major_release. 2011-01-14 Mike Frysinger * configure.tgt (*-*-uclinux*): Match more Linux os targets 2011-01-14 Joel Brobecker * ia64-hpux-nat.c (ia64_hpux_fetch_register): Remove trailing new-line at end of warning message. (ia64_hpux_store_register): Remove trailing new-line at end of error message. * ia64-hpux-tdep.c: Rephrase comment. * solib-ia64-hpux.c (struct dld_info): Change type of field dld_flags from "long long" to ULONGEST. 2011-01-14 Pedro Alves * target.h (deprecated_child_ops): Delete declaration. * target.c (deprecated_child_ops): Delete definition. 2011-01-14 Pedro Alves * Makefile.in (hpux-thread.o): Delete rule. * configure.ac: Don't check for HPUX DCE threads support. * configure, config.in: Regenerate. * hppa-hpux-nat.c (child_suppress_run): Delete. (hppa_hpux_child_can_run): Delete. (_initialize_hppa_hpux_nat): Don't override to_can_run. * hpux-thread.c: Delete. 2011-01-13 Joel Brobecker * hpux-thread.c (hpux_pid_to_str): Delete. 2011-01-13 Joel Brobecker * ada-valprint.c (ada_emit_char): Remove strange code. Check that c is <= UCHAR_MAX before passing it to isascii. (char_at): Do not assume that TYPE_LEN is either 1 or 2. 2011-01-13 Joel Brobecker * top.c (input_from_terminal_p): Restrict the use of interactive_mode to the case where instream is stdin. 2011-01-13 Joel Brobecker * ia64-tdep.h (struct regcache): Forward declare. (struct ia64_infcall_ops): New struct type. (struct gdbarch_tdep): New fields "find_global_pointer_from_solib" and "infcall_ops". * ia64-tdep.c (ia64_find_global_pointer_from_dynamic_section): Renames ia64_find_global_pointer. (ia64_find_global_pointer, ia64_allocate_new_rse_frame) (ia64_store_argument_in_slot, ia64_set_function_addr: New function. (ia64_push_dummy_call): Adjust to use the new tdep ia64_infocall_ops methods. (ia64_infcall_ops): New static global constant. (ia64_gdbarch_init): Set tdep->infcall_ops. * ia64-hpux-nat.c (ia64_hpux_xfer_solib_got): New function. (ia64_hpux_xfer_partial): Add TARGET_OBJECT_HPUX_SOLIB_GOT handing. * ia64-hpux-tdep.c: Include "regcache.h", "gdbcore.h" and "inferior.h". (ia64_hpux_dummy_code): New static global constant. (ia64_hpux_push_dummy_code, ia64_hpux_allocate_new_rse_frame) (ia64_hpux_store_argument_in_slot, ia64_hpux_set_function_addr) (ia64_hpux_dummy_id, ia64_hpux_find_global_pointer_from_solib): New function. (ia64_hpux_infcall_ops): New static global constant. (ia64_hpux_init_abi): Install gdbarch and tdep methods needed for inferior function calls to work properly on ia64-hpux. 2011-01-13 Joel Brobecker * target.h (enum target_object): Add TARGET_OBJECT_HPUX_UREGS. * ia64-tdep.h (struct frame_info): forward declaration. (struct gdbarch_tdep): Add field size_of_register_frame. * ia64-tdep.c (ia64_access_reg): Use tdep->size_of_register_frame to determine the size of the register frame. (ia64_size_of_register_frame): New function. (ia64_gdbarch_init): Set tdep->size_of_register_frame. * ia64-hpux-tdep.c: Include "target.h" and "frame.h". (IA64_HPUX_UREG_REASON): New macro. (ia64_hpux_stopped_in_syscall, ia64_hpux_size_of_register_frame): New functions. (ia64_hpux_init_abi): Set tdep->size_of_register_frame. * ia64-hpux-nat.c (ia64_hpux_xfer_uregs): New function. (ia64_hpux_xfer_partial): Add handling of TARGET_OBJECT_HPUX_UREGS objects. 2011-01-13 Joel Brobecker Add support for ia64-hpux. * config/ia64/hpux.mh, ia64-hpux-nat.c, ia64-hpux-tdep.c, ia64-hpux-tdep.h, solib-ia64-hpux.c, solib-ia64-hpux.h: New files. * configure.host: Add handling for ia64-hpux hosts. Add associated floatformats. * configure.tgt: Add handling for ia64-hpux targets. * Makefile.in (ALL_64_TARGET_OBS): Add ia64-hpux-tdep.o. (HFILES_NO_SRCDIR): Add ia64-hpux-tdep.h. (ALLDEPFILES): Add ia64-hpux-nat.c ia64-hpux-tdep.c. 2011-01-13 Joel Brobecker [ttrace] Compute thread list immediately after attach. * inf_ttrace_attach (inf_ttrace_create_threads_after_attach): New subprogram. (inf_ttrace_attach): Use it. 2011-01-13 Joel Brobecker * libunwind-frame.c (libunwind_frame_cache): Do not return NULL if we could not determine the frame's function address. Instead, use the frame's PC, and then continue. 2011-01-13 Joel Brobecker * libunwind-frame.c (__LITTLE_ENDIAN, __BIG_ENDIAN): Define if not already defined. 2011-01-13 Joel Brobecker * ia64-tdep.c (ia64_struct_type_p): New function. (ia64_extract_return_value): Handle integral values that are less than 8 bytes long. (ia64_push_dummy_call): Likewise. 2011-01-13 Joel Brobecker * ia64-tdep.c (floatformat_ia64_ext_little): Renames floatformat_ia64_ext. (floatformat_ia64_ext_big): New static const. (floatformats_ia64_ext): Set first entry to &floatformat_ia64_ext_big. 2011-01-12 Tom Tromey * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Fix error messages. * mi/mi-main.c (mi_cmd_thread_select): Fix error messages. (mi_cmd_thread_list_ids): Likewise. (mi_cmd_data_list_changed_registers): Likewise. (mi_cmd_data_list_register_values): Likewise. (mi_cmd_data_write_register_values): Likewise. (mi_cmd_data_evaluate_expression): Likewise. (mi_cmd_data_read_memory): Likewise. (mi_cmd_data_read_memory_bytes): Likewise. (mi_cmd_data_write_memory): Likewise. (mi_cmd_enable_timings): Likewise. * mi/mi-interp.c (mi_cmd_interpreter_exec): Fix error messages. * mi/mi-cmd-var.c (mi_cmd_var_create): Fix error messages. (mi_cmd_var_delete): Likewise. (mi_cmd_var_set_format): Likewise. (mi_cmd_var_show_format): Likewise. (mi_cmd_var_info_num_children): Likewise. (mi_cmd_var_list_children): Likewise. (mi_cmd_var_info_type): Likewise. (mi_cmd_var_info_expression): Likewise. (mi_cmd_var_show_attributes): Likewise. (mi_cmd_var_assign): Likewise. (mi_cmd_var_update): Likewise. (mi_cmd_enable_pretty_printing): Likewise. (mi_cmd_var_set_update_range): Likewise. * mi/mi-cmd-target.c (mi_cmd_target_file_get): Fix error messages. (mi_cmd_target_file_put): Likewise. (mi_cmd_target_file_delete): Likewise. * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames): Fix error messages. (mi_cmd_stack_info_depth): Likewise. (mi_cmd_stack_list_locals): Likewise. (mi_cmd_stack_list_args): Likewise. (mi_cmd_stack_select_frame): Likewise. (mi_cmd_stack_select_frame): Likewise. (mi_cmd_stack_info_frame): Likewise. * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Fix error messages. (mi_cmd_file_list_exec_source_files): Likewise. * mi/mi-cmd-env.c (mi_cmd_env_pwd): Fix error messages. (mi_cmd_env_cd): Likewise. (mi_cmd_env_path): Likewise. (mi_cmd_env_dir): Likewise. (mi_cmd_inferior_tty_show): Likewise. * mi/mi-cmd-disas.c (mi_cmd_disassemble): Fix error messages. * mi/mi-cmd-break.c (mi_cmd_break_insert): Fix error messages. (mi_cmd_break_watch): Likewise. 2011-01-12 Thiago Jung Bauermann * ppc-linux-nat.c (booke_cmp_hw_point): Fix whitespace. (ppc_linux_insert_hw_breakpoint): Likewise. (ppc_linux_remove_hw_breakpoint): Likewise. (ppc_linux_insert_watchpoint): Likewise. 2011-01-12 Andrew Burgess Jan Kratochvil PR fortran/11104 and DWARF unbound arrays detection. * dwarf2read.c (read_subrange_type): Set zero length on unspecified upper bound. Set TYPE_HIGH_BOUND_UNDEFINED if not language_ada on unspecified upper bound. * eval.c (evaluate_subexp_standard) : Remove variables array_size_array, tmp_type and offset_item. New variable array. Remove call to f77_get_upperbound. New variables array_type and index. Call value_subscripted_rvalue for each dimenasion. Remove the final call to deprecated_set_value_type. 2011-01-12 Jan Kratochvil Make value allocations more lazy. * ada-lang.c (coerce_unspec_val_to_type): Use allocate_value_lazy instead of allocate_value and set_value_lazy when possible. * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use allocate_value_lazy instead of allocate_value and set_value_lazy. * findvar.c (value_of_register_lazy): Likewise. (read_var_value): Remove V preallocation, call just check_typedef in advance. Move allocate_value to LOC_CONST, LOC_LABEL, LOC_CONST_BYTES. Use allocate_value_lazy in LOC_STATIC, LOC_ARG, LOC_REF_ARG, LOC_LOCAL, LOC_BLOCK. Set ADDR instead of set_value_address and break in LOC_BLOCK. Use allocate_value_lazy and remove lval_memory set in LOC_REGPARM_ADDR. Use allocate_value_lazy in LOC_UNRESOLVED and LOC_OPTIMIZED_OUT. Add setting lval_memory at the end, remove set_value_lazy there. * valarith.c (value_subscripted_rvalue): Use allocate_value_lazy instead of allocate_value and set_value_lazy when possible. * valops.c (value_fetch_lazy): Do nop for value_optimized_out VAL. * value.c (allocate_computed_value): Use allocate_value_lazy instead of allocate_value and set_value_lazy. (value_from_contents_and_address): Use allocate_value_lazy instead of allocate_value and set_value_lazy when possible. 2011-01-12 Andrew Burgess * disasm.c (dump_insns): Support dumping opcodes for MI. * mi/mi-cmd-disas.c (mi_cmd_disassemble): Allow mode to control dumping of instruction opcodes. 2011-01-09 Robert Millan (tiny patch) * configure.tgt: Detect GNU/kFreeBSD and set `gdb_osabi' appropiately. 2011-01-11 Tom Tromey * thread.c (do_captured_thread_select): Emit newline before printing frame. 2011-01-11 Michael Snyder * s390-tdep.c: Comment cleanup, mostly periods and spaces. * score-tdep.c: Ditto. * score-tdep.h: Ditto. * ser-base.c: Ditto. * ser-go32.c: Ditto. * serial.c: Ditto. * serial.h: Ditto. * ser-mingw.c: Ditto. * ser-pipe.c: Ditto. * ser-tcp.c: Ditto. * ser-unix.c: Ditto. * sh64-tdep.c: Ditto. * shnbsd-nat.c: Ditto. * sh-tdep.c: Ditto. * sh-tdep.h: Ditto. * solib.c: Ditto. * solib-darwin.c: Ditto. * solib-frv.c: Ditto. * solib.h: Ditto. * solib-irix.c: Ditto. * solib-osf.c: Ditto. * solib-pa64.c: Ditto. * solib-som.c: Ditto. * solib-spu.c: Ditto. * solib-sunos.c: Ditto. * solib-svr4.c: Ditto. * solist.h: Ditto. * sol-thread.c: Ditto. * somread.c: Ditto. * source.c: Ditto. * source.h: Ditto. * sparc64-linux-tdep.c: Ditto. * sparc64-tdep.c: Ditto. * sparc-linux-nat.c: Ditto. * sparc-linux-tdep.c: Ditto. * sparc-sol2-nat.c: Ditto. * sparc-sol2-tdep.c: Ditto. * sparc-tdep.c: Ditto. * sparc-tdep.h: Ditto. * spu-tdep.c: Ditto. * stabsread.c: Ditto. * stabsread.h: Ditto. * stack.c: Ditto. * symfile.c: Ditto. * symfile.h: Ditto. * symmisc.c: Ditto. * symtab.c: Ditto. * symtab.h: Ditto. * target.c: Ditto. * target-descriptions.c: Ditto. * target-descriptions.h: Ditto. * target.h: Ditto. * target-memory.c: Ditto. * terminal.h: Ditto. * thread.c: Ditto. * top.c: Ditto. * tracepoint.c: Ditto. * tracepoint.h: Ditto. * trad-frame.h: Ditto. * typeprint.c: Ditto. 2011-01-11 Michael Snyder * ui-file.c: Comment cleanup, mostly periods and spaces. * ui-file.h: Ditto. * ui-out.c: Ditto. * ui-out.h: Ditto. * utils.c: Ditto. * v850-tdep.c: Ditto. * valarith.c: Ditto. * valops.c: Ditto. * valprint.c: Ditto. * valprint.h: Ditto. * value.c: Ditto. * value.h: Ditto. * varobj.c: Ditto. * varobj.h: Ditto. * vax-tdep.c: Ditto. * vec.c: Ditto. * vec.h: Ditto. * version.h: Ditto. * windows-nat.c: Ditto. * windows-tdep.c: Ditto. * xcoffread.c: Ditto. * xcoffsolib.c: Ditto. * xml-support.c: Ditto. * xstormy16-tdep.c: Ditto. * xtensa-tdep.c: Ditto. * xtensa-tdep.h: Ditto. 2011-01-11 Thiago Jung Bauermann * breakpoint.c (resources_needed_watchpoint): Fix indentation. * gdbtypes.c (is_scalar_type_recursive): Fix formatting. 2011-01-11 Sergio Durigan Junior Thiago Jung Bauermann Implement support for PowerPC BookE ranged watchpoints. * breakpoint.h (struct breakpoint_ops) : New method. Initialize to NULL in all existing breakpoint_ops instances. (struct breakpoint) : New field. (target_exact_watchpoints): Declare external global. * breakpoint.c (target_exact_watchpoints): New global flag. (update_watchpoint): Set b->type to bp_hardware_watchpoint and b->enable_state to bp_enabled before calling hw_watchpoint_used_count. (hw_watchpoint_used_count): Iterate over all bp_locations in a watchpoint. Call breakpoint's breakpoint_ops.resources_needed if available. (insert_watchpoint, remove_watchpoint): Use fixed length of 1 byte if the watchpoint is exact. (resources_needed_watchpoint): New function. (watchpoint_breakpoint_ops): Add resources_needed_watchpoint. (watch_command_1): Set b->exact if the user asked for an exact watchpoint and one can be set. (can_use_hardware_watchpoint): Add exact_watchpoints argument. Pass fixed length of 1 to target_region_ok_for_hw_watchpoint if the user asks for an exact watchpoint and one can be set. Return number of needed debug registers to watch the expression. * gdbtypes.c (is_scalar_type): New function, based on valprint.c:scalar_type_p. (is_scalar_type_recursive): New function. * gdbtypes.h (is_scalar_type_recursive): Declare. * ppc-linux-nat.c (ppc_linux_region_ok_for_hw_watchpoint): Always handle regions when ranged watchpoints are available. (create_watchpoint_request): New function. (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint): Use create_watchpoint_request. * rs6000-tdep.c (show_powerpc_exact_watchpoints): New function. (_initialize_rs6000_tdep): Add `exact-watchpoints' boolean to the `set powerpc' and `show powerpc' commands. * target.h (struct target_ops) : Mention documentation comment in the target macro. (target_region_ok_for_hw_watchpoint): Document return value. 2011-01-11 Thiago Jung Bauermann * breakpoint.c (update_watchpoint): Decide on using a software or hardware watchpoint after the bp_locations are created. 2010-01-11 Thiago Jung Bauermann Convert hardware watchpoints to use breakpoint_ops. * breakpoint.h (breakpoint_ops) : Rename to... : ... this. Return int instead of void. Accept pointer to struct bp_location instead of pointer to struct breakpoint. Adapt all implementations. (breakpoint_ops) : Rename to... : ... this. Accept pointer to struct bp_location instead of pointer to struct breakpoint. Adapt all implementations. * breakpoint.c (insert_catchpoint): Delete function. (insert_bp_location): Call the watchpoint or catchpoint's breakpoint_ops.insert method. (remove_breakpoint_1): Call the watchpoint or catchpoint's breakpoint_ops.remove method. (insert_watchpoint, remove_watchpoint): New functions. (watchpoint_breakpoint_ops): New structure. (watch_command_1): Initialize the OPS field. * inf-child.c (inf_child_insert_fork_catchpoint) (inf_child_remove_fork_catchpoint, inf_child_insert_vfork_catchpoint) (inf_child_remove_vfork_catchpoint, inf_child_insert_exec_catchpoint) (inf_child_remove_exec_catchpoint, inf_child_set_syscall_catchpoint): Delete functions. (inf_child_target): Remove initialization of to_insert_fork_catchpoint, to_remove_fork_catchpoint, to_insert_vfork_catchpoint, to_remove_vfork_catchpoint, to_insert_exec_catchpoint, to_remove_exec_catchpoint and to_set_syscall_catchpoint. * target.c (update_current_target): Change default implementation of to_insert_fork_catchpoint, to_remove_fork_catchpoint, to_insert_vfork_catchpoint, to_remove_vfork_catchpoint, to_insert_exec_catchpoint, to_remove_exec_catchpoint and to_set_syscall_catchpoint to return_one. (debug_to_insert_fork_catchpoint, debug_to_insert_vfork_catchpoint) (debug_to_insert_exec_catchpoint): Report return value. * target.h (to_insert_fork_catchpoint, to_insert_vfork_catchpoint) (to_insert_exec_catchpoint): Change declaration to return int instead of void. 2011-01-11 Michael Snyder * arm-tdep.c: Internationalization. * c-lang.c: Ditto. * charset.c: Ditto. * fork-child.c: Ditto. * nto-procfs.c: Ditto. * ppc-sysv-tdep.c: Ditto. * procfs.c: Ditto. * remote-mips.c: Ditto. * remote.c: Ditto. * rs6000-nat.c: Ditto. * rs6000-tdep.c: Ditto. * target.c: Ditto. * valops.c: Ditto. * value.c: Ditto. * xml-support.c: Ditto. * mi/mi-cmd-break.c: Ditto. * mi/mi-cmd-var.c: Ditto. * mi/mi-interp.c: Ditto. * mi/mi-main.c: Ditto. 2011-01-11 Andrew Burgess * remote-sim.c (gdbsim_store_register): Update API to sim_store_register to check more error conditions. 2011-01-10 Michael Snyder * nto-procfs.c: Comment cleanup, mostly periods and spaces. * nto-tdep.c: Ditto. * nto-tdep.h: Ditto. * objc-exp.y: Ditto. * objc-lang.c: Ditto. * objfiles.c: Ditto. * objfiles.h: Ditto. * observer.c: Ditto. * opencl-lang.c: Ditto. * osabi.c: Ditto. * parse.c: Ditto. * parser-defs.h: Ditto. * p-exp.y: Ditto. * p-lang.c: Ditto. * posix-hdep.c: Ditto. * ppcbug-rom.c: Ditto. * ppc-linux-nat.c: Ditto. * ppc-linux-tdep.c: Ditto. * ppc-linux-tdep.h: Ditto. * ppcnbsd-tdep.c: Ditto. * ppcobsd-tdep.c: Ditto. * ppcobsd-tdep.h: Ditto. * ppc-sysv-tdep.c: Ditto. * ppc-tdep.h: Ditto. * printcmd.c: Ditto. * proc-abi.c: Ditto. * proc-flags.c: Ditto. * procfs.c: Ditto. * proc-utils.h: Ditto. * progspace.h: Ditto. * prologue-value.c: Ditto. * prologue-value.h: Ditto. * psympriv.h: Ditto. * psymtab.c: Ditto. * p-typeprint.c: Ditto. * p-valprint.c: Ditto. * ravenscar-sparc-thread.c: Ditto. * ravenscar-thread.c: Ditto. * ravenscar-thread.h: Ditto. * record.c: Ditto. * regcache.c: Ditto. * regcache.h: Ditto. * remote.c: Ditto. * remote-fileio.c: Ditto. * remote-fileio.h: Ditto. * remote.h: Ditto. * remote-m32r-sdi.c: Ditto. * remote-mips.c: Ditto. * remote-sim.c: Ditto. * rs6000-aix-tdep.c: Ditto. * rs6000-nat.c: Ditto. * rs6000-tdep.c: Ditto. 2011-01-10 Michael Snyder * charset.c (validate): Internationalization. * coffread.c (read_one_sym): Ditto. * dwarf2read.c (dwarf2_attach_fields_to_type): Ditto. * h8300-tdep.c (H8300_extract_return_value): Ditto. * inflow.c (new_tty): Ditto. * iq2000-tdep.c (iq2000_breakpoint_from_pc): Ditto. * m32c-tdep.c (m32c_return_value): Ditto. * mep-tdep.c (mep_store_return_value): Ditto. * score-tdep.c (score7_fetch_insn): Ditto. * ser-mingw.c (pipe_windows_open): Ditto. * sh64-tdep.c (sh64_extract_return_value): Ditto. * spu-tdep.c (spu_register_type): Ditto. * tracepoint.c (trace_find_command): Ditto. * valarith.c (value_pos): Ditto. 2011-01-10 Joel Brobecker * ada-valprint.c (printstr): Minor comment reformatting. 2011-01-08 Michael Snyder * m32r-rom.c (m32r_upload_command): Fix up ARI warnings for _ markup. 2011-01-08 Michael Snyder * h8300-tdep.c: Comment cleanup, mostly periods and spaces. * hppa-hpux-tdep.c: Ditto. * hppa-linux-nat.c: Ditto. * hppa-linux-tdep.c: Ditto. * hppanbsd-tdep.c: Ditto. * hppa-tdep.c: Ditto. * hppa-tdep.h: Ditto. * hpux-thread.c: Ditto. * i386-cygwin-tdep.c: Ditto. * i386-darwin-nat.c: Ditto. * i386gnu-nat.c: Ditto. * i386-linux-nat.c: Ditto. * i386-linux-tdep.c: Ditto. * i386-nat.c: Ditto. * i386-nat.h: Ditto. * i386nbsd-tdep.c: Ditto. * i386-sol2-nat.c: Ditto. * i386-stub.c: Ditto. * i386-tdep.c: Ditto. * i386-tdep.h: Ditto. * i387-tdep.c: Ditto. * ia64-linux-nat.c: Ditto. * ia64-linux-tdep.c: Ditto. * ia64-tdep.c: Ditto. * infcall.c: Ditto. * infcall.h: Ditto. * infcmd.c: Ditto. * inferior.c: Ditto. * inferior.h: Ditto. * infloop.c: Ditto. * inflow.c: Ditto. * infrun.c: Ditto. * interps.c: Ditto. * interps.h: Ditto. * iq2000-tdep.c: Ditto. * irix5-nat.c: Ditto. * jit.c: Ditto. * jit.h: Ditto. * jv-exp.y: Ditto. * jv-lang.c: Ditto. * jv-lang.h: Ditto. * jv-typeprint.c: Ditto. * jv-valprint.c: Ditto. * language.c: Ditto. * language.h: Ditto. * linespec.c: Ditto. * linux-fork.c: Ditto. * linux-nat.c: Ditto. * linux-thread-db.c: Ditto. * lm32-tdep.c: Ditto. 2011-01-08 Michael Snyder * m2-exp.y: Comment cleanup, mostly periods and spaces. * m2-lang.c: Ditto. * m2-typeprint.c: Ditto. * m2-valprint.c: Ditto. * m32c-tdep.c: Ditto. * m32r-linux-nat.c: Ditto. * m32r-rom.c: Ditto. * m32r-tdep.c: Ditto. * m32r-tdep.h: Ditto. * m68hc11-tdep.c: Ditto. * m58klinux-nat.c: Ditto. * m68k-tdep.c: Ditto. * m88k-tdep.c: Ditto. * m88k-tdep.h: Ditto. * machoread.c: Ditto. * macrocmd.c: Ditto. * macroexp.c: Ditto. * macrotab.c: Ditto. * main.c: Ditto. * maint.c: Ditto. * mdebugread.c: Ditto. * mdebugread.h: Ditto. * memattr.c: Ditto. * memattr.h: Ditto. * memory-map.h: Ditto. * mep-tdep.c: Ditto. * microblaze-rom.c: Ditto. * microblaze-tdep.c: Ditto. * minsyms.c: Ditto. * mips-irix-tdep.c: Ditto. * mips-linux-nat.c: Ditto. * mips-linux-tdep.c: Ditto. * mips-linux-tdep.h: Ditto. * mipsnbsd-nat.c: Ditto. * mipsnbsd-tdep.c: Ditto. * mipsread.c: Ditto. * mips-tdep.c: Ditto. * mips-tdep.h: Ditto. * mn10300-linux-tdep.c: Ditto. * mn10300-tdep.c: Ditto. * mn10300-tdep.h: Ditto. * monitor.c: Ditto. * monitor.h: Ditto. * moxie-tdep.c: Ditto. * moxie-tdep.h: Ditto. * mt-tdep.c: Ditto. 2011-01-08 Mike Frysinger * bfin-tdep.h (BFIN_A0_DOT_W_REGNUM): Fix typo in name. 2011-01-08 Robert Millan * fbsd-nat.c (fbsd_find_memory_regions): Fix typo. 2011-01-07 Michael Snyder * charset.c (_initialize_charset): Fix typo in string. 2011-01-07 Michael Snyder * mi/mi-cmd-disas.c (mi_cmd_disassemble): Mark up error message for i18n. * tui/tui-layout.c (tui_set_layout_for_display_command): Split line so that operator goes to beginning of line. * tui/tui-winsource.c (tui_horizontal_source_scroll): Move assignment out of if statement. 2011-01-07 Michael Snyder * ada-lang.c: Comment cleanup, mostly periods and spaces. * ada-lang.h: Ditto. * ada-tasks.c: Ditto. * ada-valprint.c: Ditto. * aix-threads.c: Ditto. * alpha-linux-nat.c: Ditto. * alpha-linux-tdep.c: Ditto. * alpha-mdebug-tdep.c: Ditto. * alpha-nat.c: Ditto. * alpha-osf1-tdep.c: Ditto. * alpha-tdep.c: Ditto. * alphabsd-nat.c: Ditto. * alphabsd-tdep.c: Ditto. * amd64-darwin-tdep.c: Ditto. * amd64-linux-nat.c: Ditto. * amd64-linux-tdep.c: Ditto. * amd64-sol2-tdep.c: Ditto. * amd64-tdep.c: Ditto. * amd64-fbsd-tdep.c: Ditto. * amd64-nbsd-tdep.c: Ditto. * amd64-obsd-tdep.c: Ditto. * amd64-linux-nat.c: Ditto. * amd64-linux-tdep.c: Ditto. * arm-tdep.c: Ditto. * arm-tdep.h: Ditto. * armnbsd-nat.c: Ditto. * avr-tdep.c: Ditto. * bfin-tdep.c: Ditto. * bsd-kvm.c: Ditto. * c-typeprintc: Ditto. * c-valprint.c: Ditto. * coff-pe-read.h: Ditto. * coffreead.c: Ditto. * cris-tdep.c: Ditto. * d-lang.c: Ditto. * darwin-nat-info.c: Ditto. * darwin-nat.c: Ditto. * dbug-rom.c: Ditto. * dbxread.c: Ditto. * dcache.c: Ditto. * dcache.h: Ditto. * dec-thread.c: Ditto. * defs.h: Ditto. * demangle.c: Ditto. * dicos-tdep.c: Ditto. * dictionary.c: Ditto. * dictionary.h: Ditto. * dink32-rom.c: Ditto. * disasm.c: Ditto. * doublest.c: Ditto. * dsrec.c: Ditto. * dummy-frame.c: Ditto. * dwarf2-frame.c: Ditto. * dwarf2expr.c: Ditto. * dwarf2loc.c: Ditto. * dwarf2read.c: Ditto. * elfread.c: Ditto. * environ.c: Ditto. * eval.c: Ditto. * event-top.h: Ditto. * exceptions.c: Ditto. * exceptions.h: Ditto. * exec.c: Ditto. * expprint.c: Ditto. * expression.h: Ditto. * f-exp.y: Ditto. * f-lang.c: Ditto. * f-lang.h: Ditto. * f-typeprint.c: Ditto. * f-valprint.c: Ditto. * fbsd-nat.c: Ditto. * findvar.c: Ditto. * fork-child.c: Ditto. * frame.c: Ditto. * frame.h: Ditto. * frv-linux-tdep.c: Ditto. * frv-tdep.c: Ditto. * gcore.c: Ditto. * gdb-stabs.h: Ditto. * gdb_assert.h: Ditto. * gdb_string.h: Ditto. * gdb_thread_db.h: Ditto. * gdb_wait.h: Ditto. * gdbarch.sh: Ditto. * gdbcore.h: Ditto. * gdbthread.h: Ditto. * gdbtypes.c: Ditto. * gdbtypes.h: Ditto. * gnu-nat.c: Ditto. * gnu-nat.h: Ditto. * gnu-v2-abi.c: Ditto. * gnu-v3-abi.c: Ditto. * go32-nat.c: Ditto. * gdbarch.c: Regenerate. * gdbarch.h: Regenerate. 2011-01-07 Michael Snyder * ax-gdb.c: Adjust some long output strings. * breakpoint.c: Ditto. * charset.c: Ditto. * cp-abi.c: Ditto. * infcall.c: Ditto. * infrun.c: Ditto. * linux-nat.c: Ditto. * solib-pa64.c: Ditto. * solib-som.c: Ditto. 2011-01-06 Tom Tromey PR python/12367: * NEWS: Add item. * python/python.c (GdbMethods): Add "newest_frame" method. * python/python-internal.h (gdbpy_newest_frame): Declare. * python/py-frame.c (gdbpy_newest_frame): New function. 2010-01-06 Paul Pluzhnikov * jit.h (struct jit_code_entry): use ULONGEST for symfile_size. * jit.c (jit_debug): New variable. (show_jit_debug): New function. (struct target_buffer): Use ULONGEST. (bfd_open_from_target_memory): Likewise. (jit_register_code, jit_inferior_init): Add debug output. (_initialize_jit): Register "debug jit" command. 2011-01-06 Tom Tromey * frame.h (enum frame_type) : Fix comment. * python/py-frame.c (gdbpy_initialize_frames): Add INLINE_FRAME and ARCH_FRAME. 2011-01-06 Tom Tromey * python/py-frame.c (frapy_block): Use get_frame_block. 2011-01-06 Joel Brobecker Do not stop on SIGPRIO signals by default * infrun.c (_initialize_infrun): Unset signal_stop and signal_print for TARGET_SIGNAL_PRIO. 2011-01-06 Joel Brobecker * ada-tasks.c: Fix style violation in comment. 2011-01-06 Joel Brobecker * linespec.c (decode_compound, find_method): Remove trailing \n at end of error string. * solib-irix.c (irix_current_sos): Likewise. * varobj.c (uninstall_variable): Likewise. 2011-01-06 Joel Brobecker * copyright.py: New script. * copyright.sh (byhand): Add *.ads, *.adb, *.gpr and *.inc. Launch emacs without exec'ing. Call copyright.py afterwards. 2011-01-05 Michael Snyder * addrmap.c: Shorten lines of >= 80 columns. * arch-utils.c: Ditto. * arch-utils.h: Ditto. * ax-gdb.c: Ditto. * ax-general.c: Ditto. * bcache.c: Ditto. * blockframe.c: Ditto. * breakpoint.c: Ditto. * buildsym.c: Ditto. * c-lang.c: Ditto. * c-typeprint.c: Ditto. * charset.c: Ditto. * coffread.c: Ditto. * command.h: Ditto. * corelow.c: Ditto. * cp-abi.c: Ditto. * cp-namespace.c: Ditto. * cp-support.c: Ditto. * dbug-rom.c: Ditto. * dbxread.c: Ditto. * defs.h: Ditto. * dfp.c: Ditto. * dfp.h: Ditto. * dictionary.c: Ditto. * disasm.c: Ditto. * doublest.c: Ditto. * dwarf2-frame.c: Ditto. * dwarf2expr.c: Ditto. * dwarf2loc.c: Ditto. * dwarf2read.c: Ditto. * elfread.c: Ditto. * eval.c: Ditto. * event-loop.c: Ditto. * event-loop.h: Ditto. * exceptions.h: Ditto. * exec.c: Ditto. * expprint.c: Ditto. * expression.h: Ditto. * f-lang.c: Ditto. * f-valprint.c: Ditto. * findcmd.c: Ditto. * frame-base.c: Ditto. * frame-unwind.c: Ditto. * frame-unwind.h: Ditto. * frame.c: Ditto. * frame.h: Ditto. * gcore.c: Ditto. * gdb-stabs.h: Ditto. * gdb_assert.h: Ditto. * gdb_dirent.h: Ditto. * gdb_obstack.h: Ditto. * gdbcore.h: Ditto. * gdbtypes.c: Ditto. * gdbtypes.h: Ditto. * inf-ttrace.c: Ditto. * infcall.c: Ditto. * infcmd.c: Ditto. * inflow.c: Ditto. * infrun.c: Ditto. * inline-frame.h: Ditto. * language.c: Ditto. * language.h: Ditto. * libunwind-frame.c: Ditto. * libunwind-frame.h: Ditto. * linespec.c: Ditto. * linux-nat.c: Ditto. * linux-nat.h: Ditto. * linux-thread-db.c: Ditto. * machoread.c: Ditto. * macroexp.c: Ditto. * macrotab.c: Ditto. * main.c: Ditto. * maint.c: Ditto. * mdebugread.c: Ditto. * memattr.c: Ditto. * minsyms.c: Ditto. * monitor.c: Ditto. * monitor.h: Ditto. * objfiles.c: Ditto. * objfiles.h: Ditto. * osabi.c: Ditto. * p-typeprint.c: Ditto. * p-valprint.c: Ditto. * parse.c: Ditto. * printcmd.c: Ditto. * proc-events.c: Ditto. * procfs.c: Ditto. * progspace.c: Ditto. * progspace.h: Ditto. * psympriv.h: Ditto. * psymtab.c: Ditto. * record.c: Ditto. * regcache.c: Ditto. * regcache.h: Ditto. * remote-fileio.c: Ditto. * remote.c: Ditto. * ser-mingw.c: Ditto. * ser-tcp.c: Ditto. * ser-unix.c: Ditto. * serial.c: Ditto. * serial.h: Ditto. * solib-frv.c: Ditto. * solib-irix.c: Ditto. * solib-osf.c: Ditto. * solib-pa64.c: Ditto. * solib-som.c: Ditto. * solib-sunos.c: Ditto. * solib-svr4.c: Ditto. * solib-target.c: Ditto. * solib.c: Ditto. * somread.c: Ditto. * source.c: Ditto. * stabsread.c: Ditto. * stabsread.c: Ditto. * stack.c: Ditto. * stack.h: Ditto. * symfile-mem.c: Ditto. * symfile.c: Ditto. * symfile.h: Ditto. * symmisc.c: Ditto. * symtab.c: Ditto. * symtab.h: Ditto. * target-descriptions.c: Ditto. * target-memory.c: Ditto. * target.c: Ditto. * target.h: Ditto. * terminal.h: Ditto. * thread.c: Ditto. * top.c: Ditto. * tracepoint.c: Ditto. * tracepoint.h: Ditto. * ui-file.c: Ditto. * ui-file.h: Ditto. * ui-out.h: Ditto. * user-regs.c: Ditto. * user-regs.h: Ditto. * utils.c: Ditto. * valarith.c: Ditto. * valops.c: Ditto. * valprint.c: Ditto. * valprint.h: Ditto. * value.c: Ditto. * varobj.c: Ditto. * varobj.h: Ditto. * vec.h: Ditto. * xcoffread.c: Ditto. * xcoffsolib.c: Ditto. * xcoffsolib.h: Ditto. * xml-syscall.c: Ditto. * xml-tdesc.c: Ditto. 2011-01-05 Michael Snyder * cli/cli-cmds.c: Shorten lines of >= 80 columns. * cli/cli-decode.c: Ditto. * cli/cli-dump.c: Ditto. * cli/cli-logging.c: Ditto. * cli/cli-script.c: Ditto. * cli/cli-setshow.c: Ditto. * common/signals.c: Ditto. * mi/mi-cmd-break.c: Ditto. * mi/mi-cmd-disas.c: Ditto. * mi/mi-cmd-stack.c: Ditto. * mi/mi-cmd-var.c: Ditto. * mi/mi-cmds.c: Ditto. * mi/mi-common.h: Ditto. * mi/mi-console.c: Ditto. * mi/mi-interp.c: Ditto. * mi/mi-main.c: Ditto. * osf-share/cma_attr.c: Ditto. * osf-share/cma_deb_core.h: Ditto. * osf-share/cma_debug_client.h: Ditto. * osf-share/cma_handle.h: Ditto. * osf-share/cma_mutex.h: Ditto. * osf-share/cma_stack_int.h: Ditto. * osf-share/cma_tcb_defs.h: Ditto. * python/py-auto-load.c: Ditto. * python/py-breakpoint.c: Ditto. * python/py-cmd.c: Ditto. * python/py-frame.c: Ditto. * python/py-objfile.c: Ditto. * python/py-param.c: Ditto. * python/py-progspace.c: Ditto. * python/py-symbol.c: Ditto. * python/py-value.c: Ditto. * python/python-internal.h: Ditto. * python/python.c: Ditto. * tui/tui-data.c: Ditto. * tui/tui-disasm.c: Ditto. * tui/tui-hooks.c: Ditto. * tui/tui-io.c: Ditto. * tui/tui-layout.c: Ditto. * tui/tui-regs.c: Ditto. * tui/tui-source.c: Ditto. * tui/tui-stack.c: Ditto. * tui/tui-win.c: Ditto. * tui/tui-windata.c: Ditto. * tui/tui-winsource.c: Ditto. 2011-01-05 Joel Brobecker * configure.ac, gdb.1: Copyright year update. 2011-01-03 Jan Kratochvil * frame.c (get_prev_frame_1) : New variables this_pc_in_block, morestack_msym and morestack_name. Check for "__morestack" minimal symbol there. 2011-01-03 Joel Brobecker * symfile.c (find_sym_fns): Add call to dont_repeat. 2011-01-01 Joel Brobecker Copyright year update in most files (performed by copyright.sh). 2011-01-01 Joel Brobecker * top.c (print_gdb_version): Update copyright year in version output. For older changes see ChangeLog-2010. Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never coding: utf-8 End: