diff options
author | Joel Brobecker <brobecker@gnat.com> | 2010-01-01 06:53:34 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2010-01-01 06:53:34 +0000 |
commit | e1e4d4a4d8d6ff65f5d20f9f70838804d6b71841 (patch) | |
tree | 428286270559dda5948f8167e3fd116c8b7f860a /gdb/ChangeLog-2009 | |
parent | b9ee22330a920efacc6d8fabe366a77cdfd414e1 (diff) | |
download | gdb-e1e4d4a4d8d6ff65f5d20f9f70838804d6b71841.zip gdb-e1e4d4a4d8d6ff65f5d20f9f70838804d6b71841.tar.gz gdb-e1e4d4a4d8d6ff65f5d20f9f70838804d6b71841.tar.bz2 |
ChangeLog rotation for 2010.
Diffstat (limited to 'gdb/ChangeLog-2009')
-rw-r--r-- | gdb/ChangeLog-2009 | 13580 |
1 files changed, 13580 insertions, 0 deletions
diff --git a/gdb/ChangeLog-2009 b/gdb/ChangeLog-2009 new file mode 100644 index 0000000..753fbb0 --- /dev/null +++ b/gdb/ChangeLog-2009 @@ -0,0 +1,13580 @@ +2009-12-31 Stan Shebs <stan@codesourcery.com> + + Add new tracepoint action teval. + * tracepoint.c (teval_pseudocommand): New function. + (validate_actionline): Add teval action case. + (encode_actions): Ditto. + (_initialize_tracepoint): Define teval pseudocommand. + * NEWS: Mention teval. + + * tracepoint.c (trace_find_command): Error out if trace running. + (trace_find_pc_command): Ditto. + (trace_find_tracepoint_command): Ditto. + (trace_find_line_command): Ditto. + (trace_find_range_command): Ditto. + (trace_find_outside_command): Ditto. + +2009-12-31 Joel Brobecker <brobecker@adacore.com> + + Internal error while loading core on alpha-tru64. + * corelow.c (core_open): Delete unused local variables. + Use inferior_appeared instead of add_inferior_silent. + +2009-12-30 Stan Shebs <stan@codesourcery.com> + + * tracepoint.c (trace_status_command): Add some status output. + +2009-12-30 Jan Kratochvil <jan.kratochvil@redhat.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + + * breakpoint.c (update_watchpoint): Change b->type to + bp_watchpoint before calling hw_watchpoint_used_count. + +2009-12-30 Joel Brobecker <brobecker@adacore.com> + + Fix build failure in inf-ptrace.c. + * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo. + +2009-12-30 Joel Brobecker <brobecker@adacore.com> + + * breakpoint.c (watchpoint_check): Expand the function description. + +2009-12-30 Thiago Jung Bauermann <bauerman@br.ibm.com> + + * valarith.c (value_equal_contents): New function. + * value.h (value_equal_contents): Declare. + * breakpoint.c (watchpoint_check): Use value_equal_contents + instead of value_equal. + +2009-12-30 Stan Shebs <stan@codesourcery.com> + + Add default-collect variable. + * tracepoint.c (default_collect): New global. + (encode_actions): Use it. + (download_tracepoint): Test it, for otherwise + action-less tracepoints. + (_initialize_tracepoint): Add set/show. + * NEWS: Mention default-collect. + +2009-12-29 Stan Shebs <stan@codesourcery.com> + + * language.c (pointer_type): Un-comment out. + * ax-gdb.c: Include language.h, use pointer_type throughout + instead of testing TYPE_CODE_PTR. + (gen_fetch): Include TYPE_CODE_REF. + (gen_cast): Ditto. + + * ax-gdb.c (gen_expr): Handle logical and, logical or, and + conditional expressions. + +2009-12-28 Stan Shebs <stan@codesourcery.com> + + Add trace state variables. + * ax.h (enum agent_op): Add getv, setv, and tracev. + (ax_tsv): Declare. + * ax-gdb.c: Include tracepoint.h. + (gen_expr): Handle BINOP_ASSIGN, BINOP_ASSIGN_MODIFY, and + OP_INTERNALVAR. + (gen_expr_binop_rest): New function, split from gen_expr. + * ax-general.c (ax_tsv): New function. + (aop_map): Add new bytecodes. + * tracepoint.h (struct trace_state_variable): New struct. + (tsv_s): New typedef. + (find_trace_state_variable): Declare. + * tracepoint.c (tvariables): New global. + (next_tsv_number): New global. + (create_trace_state_variable): New function. + (find_trace_state_variable): New function. + (delete_trace_state_variable): New function. + (trace_variable_command): New function. + (delete_trace_variable_command): New function. + (tvariables_info): New function. + (trace_start_command): Download tsvs with initial values. + (_initialize_tracepoint): Add new commands. + * NEWS: Mention the addition of trace state variables. + +2009-12-28 Daniel Jacobowitz <dan@codesourcery.com> + + * NEWS: Document "info variables" change. + * dwarf2read.c (new_symbol): Add file-scope external unresolved + symbols to global_symbols. + * symtab.c (search_symbols): Skip LOC_UNRESOLVED symbols. + +2009-12-28 Daniel Jacobowitz <dan@codesourcery.com> + + * defs.h (print_address_symbolic, build_address_symbolic): Update + prototypes. + * printcmd.c (print_address_symbolic): Take a gdbarch argument. + Pass it to build_address_symbolic. All callers updated. + (build_address_symbolic): Take a gdbarch argument. Use + gdbarch_addr_bits_remove for functions. All callers updated. + +2009-12-28 Pedro Alves <pedro@codesourcery.com> + + * ax-gdb.c (gen_expr) <OP_THIS>: Lookup `this' in the context of + the tracepoint, not of the selected frame and language. + +2009-12-23 Stan Shebs <stan@codesourcery.com> + + * ax-gdb.c (gen_expr): Handle OP_THIS. + + * ax-gdb.h (gen_trace_for_var): Declare. + * ax-gdb.c (gen_trace_for_var): New function. + * dwarf2loc.c (dwarf_expr_frame_base_1): New function, split from... + (dwarf_expr_frame_base): ...here. + (dwarf2_tracepoint_var_ref): Add computed location case. + * tracepoint.c (collect_symbol): Add scope arg and LOC_COMPUTED + case. + (add_local_symbols): Update call to collect_symbol. + (encode_actions): Ditto. + +2009-12-23 Dmitry Gorbachev <d.g.gorbachev@gmail.com> + + PR gdb/11110 + * tracepoint.h (deprecated_trace_find_hook) + (deprecated_trace_start_stop_hook): Declare extern. + * tracepoint.c (deprecated_trace_find_hook) + (deprecated_trace_start_stop_hook): Define. + +2009-12-23 Jan Kratochvil <jan.kratochvil@redhat.com> + + * breakpoint.c (bpstat_stop_status): Iterate using ALL_BREAKPOINTS and + the B->LOC list. Remove gdb_assert on B. Change bp_hardware_watchpoint + continue to break. Remove variable update_locations. Remove HIT_COUNT + increment protection by an ENABLE_STATE check. Inline the delayed + update_global_location_list call. + +2009-12-23 Jan Kratochvil <jan.kratochvil@redhat.com> + + * breakpoint.c (bpstat_stop_status): Check BL->SHLIB_DISABLED. + (print_breakpoint_location): New comment. Check LOC->SHLIB_DISABLED. + Check LOC validity before printing it. Use LOC instead of B->LOC. + Swap the if conditionals order. + +2009-12-23 Tom Tromey <tromey@redhat.com> + + * Makefile.in (SFILES): Add exceptions.c. + +2009-12-22 Joel Brobecker <brobecker@adacore.com> + + GDB 7.0.1 released. + +2009-12-22 Hui Zhu <teawater@gmail.com> + + * record.c (record_message): Change argument. + (record_message_wrapper): New function. + (do_record_message): Change it name to + "record_message_wrapper_safe". + Let it call "record_message_wrapper". + (record_resume_error): Deleted. + (record_resume): Call "record_message". + (record_wait): Deleted record_resume_error. + Call "record_message_wrapper_safe". + Set status when do_record_message need stop the inferior. + +2009-12-21 Doug Evans <dje@google.com> + + * linux-nat.c (kill_lwp): Minor cleanup, move definition of + tkill_failed into ifdef HAVE_TKILL_SYSCALL. Move setting of errno + there too. Delete unnecessary resetting of errno after syscall. + Minor comment changes to match gdbserver/linux-low.c:kill_lwp. + +2009-12-21 Alan Modra <amodra@gmail.com> + + * MAINTAINERS: Update my email address. + +2009-12-21 Vladimir Prus <vladimir@codesourcery.com> + + * mi/mi-main.c (mi_cmd_gdb_exit): Flush raw_stdout. + +2009-12-21 Vladimir Prus <vladimir@codesourcery.com> + + PR gdb/10884 + + * value.c (value_primitive_field): Call check_typedef + on the type. + +2009-12-21 Joel Brobecker <brobecker@adacore.com> + + * COPYING: Update to GPL version 3. + +2009-12-20 Michael Snyder <msnyder@vmware.com> + + * amd64-tdep.c (amd64_epilogue_frame_cache): Fix buf size. + +2009-12-20 Joel Brobecker <brobecker@adacore.com> + + * darwin-nat-info.c, solib-spu.c, spu-multiarch.c, + regformats/regdat.sh, features/Makefile: Update copyright header. + +2009-12-19 Maciej W. Rozycki <macro@codesourcery.com> + + * arm-linux-tdep.c (ARM_OABI_SYSCALL_RESTART_SYSCALL): New macro. + (ARM_LDR_PC_SP_12): Likewise. + (arm_linux_restart_syscall_init): New function. + (arm_linux_restart_syscall_tramp_frame): New variable. + (arm_linux_init_abi): Install the + arm_linux_restart_syscall_tramp_frame unwinder. + +2009-12-18 Doug Evans <dje@google.com> + + * gdb_proc_service.h (psaddr_t): Fix type. + * linux-thread-db.c (thread_db_info.td_thr_tls_get_addr_p): Fix + signature to match glibc. + (thread_db_get_thread_local_address): Use psaddr_t for type of + address to match parameter of td_thr_tls_get_addr_p. + Cast through psaddr_t instead of (void*) to match parameter of + td_thr_tls_get_addr_p. + +2009-12-17 Stan Shebs <stan@codesourcery.com> + + * breakpoint.c (bpstat_check_location): Check for tracepoints. + +2009-12-16 Michael Snyder <msnyder@vmware.com> + + * i386-tdep.c (i386_process_record): Reformat comments. + +2009-12-15 Gaius Mulley <gaius@glam.ac.uk> + + * dwarf2read.c (read_subroutine_type): Add the subroutine + type to the die immediately to allow a parameter type to be + the same subroutine type. + +2009-12-15 Tristan Gingold <gingold@adacore.com> + + * machoread.c (macho_symfile_read): Set section size of dsym bfd + from main bfd. + +2009-12-15 Tristan Gingold <gingold@adacore.com> + + * machoread.c (macho_check_dsym): Read uuid directly from load command + instead of from a fake section. + +2009-12-15 Tristan Gingold <gingold@adacore.com> + + * machoread.c (macho_symtab_read): Add comments. Always set + first_offset. + +2009-12-14 Tristan Gingold <gingold@adacore.com> + + * symfile.h (find_separate_debug_file_by_buildid): Remove prototype. + (bfd_open_maybe_remote): New prototype. + * symfile.c (bfd_open_maybe_remote): New function. + (separate_debug_file_exists, reread_symbols): Use it. + (struct build_id, build_id_bfd_get, build_id_verify) + (build_id_to_debug_filename) + (find_separate_debug_file_by_buildid): Move these ... + * elfread.c (struct build_id) + (build_id_bfd_get, build_id_verify, build_id_to_debug_filename) + (find_separate_debug_file_by_buildid): ... here. + +2009-12-13 Paul N. Hilfinger <hilfinger@adacore.com> + + * dwarf2read.c (struct attribute): Increase sizes of unsnd and snd + fields to allow larger integer sizes. + (read_subrange_type): Increase size of bound values. + Add logic to determine signedness based on base-type size, signedness. + (read_attribute_value): Change format for bad byte size in message. + (read_8_bytes): Increase size of result type. + (dump_die_shallow): Change format for value. + (dwarf2_get_attr_constant_value): Increase size of return type. + Correct comment. + * gdbtypes.c (create_range_type): Change API to increase size of + bounds. struct field -> union field. + Always take signedness from base type. + (check_typedef): Use new API for TYPE_LOW_BOUND, TYPE_HIGH_BOUND. + (recursive_dump_type, copy_type_recursive): Adjust to new + representation of range types. + * gdbtypes.h (fields_or_bounds): New union containing struct field and + new struct range_bounds, used for range types. + (TYPE_RANGE_DATA): New macro to access range_bounds member. + (TYPE_LOW_BOUND, TYPE_HIGH_BOUND): Represent with new TYPE_RANGE_DATA. + (TYPE_LOW_BOUND_UNDEFINED, TYPE_HIGH_BOUND_UNDEFINED): New macros, + taking over the job of TYPE_FIELD_ARTIFICIAL for range bounds. + (SET_TYPE_LOW_BOUND, SET_TYPE_HIGH_BOUND, SET_TYPE_LOW_BOUND_DEFINED) + (SET_TYPE_HIGH_BOUND_DEFINED): New macros. + (TYPE_FIELDS, TYPE_BASECLASS, TYPE_BASECLASS_NAME, TYPE_FIELD) + (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED) + (TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED, TYPE_ARRAY_UPPER_BOUND_VALUE) + (TYPE_ARRAY_LOWER_BOUND_VALUE): Adjust to new representation. + (create_range_type): Adjust API. + * ada-lang.c (ada_modulus): Use new extended bound values. + (discrete_type_low_bound): Rename to... + (ada_discrete_type_low_bound): ... and make external. + (discrete_type_high_bound): Rename to... + (ada_discrete_type_high_bound): ... and make external. + (ada_value_slice_from_ptr, ada_array_bound_from_type) + (ada_evaluate_subexp, to_fixed_range_type): + Use ada_discrete_type_low_bound, ada_discrete_type_high_bound. + * ada-typeprint.c (print_range): Use ada_discrete_type_low_bound, + ada_discrete_type_high_bound. Don't look at field count, which + is no longer meaningful. Print bounds whenever argument is a range + or enumeration. + * ada-lang.h (ada_discrete_type_low_bound,ada_discrete_type_high_bound): + Declare. + * varobj.c (c_describe_child): Adjust to render larger values. + * mdebugread.c (parse_type): Use proper abstractions for range types: + TYPE_RANGE_DATA, SET_TYPE_LOW_BOUND_DEFINED, + SET_TYPE_HIGH_BOUND_DEFINED. + * p-typeprint.c (pascal_type_print_varspec_prefix): Use larger format + for bounds. + +2009-12-11 Michael Snyder <msnyder@vmware.com> + + * main.c (captured_main): Indentation. + +2009-12-10 Michael Snyder <msnyder@vmware.com> + + * i386-tdep.c (i386_record_lea_modrm_addr): Indent goto label. + (i386_process_record): Indent goto label. Use prefix opcode + constants from include/opcode/i386.h in switch statement. + +2009-12-10 Chris Moller <cmoller@redhat.com> + + PR gdb/9399 + * valops.c (value_cast_structs): Added test to return NULL if no + casting needed. + +2009-12-10 Oza Pawandeep <paawan1982@yahoo.com> + + * i386-tdep.c: Support for floating point recording. + Records and Replay the i386 floating point registers, + of i387 FPU. + (i386_record_floats): New function. + (i386_process_record): Implement FP insns. + +2009-12-03 Tristan Gingold <gingold@adacore.com> + + * machoread.c (macho_symfile_read): Use symbol_file_add_separate + to add dsym files. + +2009-12-09 Tristan Gingold <gingold@adacore.com> + + * symfile.h (symbol_file_add_separate): New prototype. + (find_separate_debug_file_by_buildid): Ditto. + (find_separate_debug_file_by_debuglink): Ditto. + * symfile.c (reread_separate_symbols): Remove. + (find_separate_debug_file): Split into ... + (find_separate_debug_file_by_buildid): ... this and ... + (find_separate_debug_file_by_debuglink): ... this. + (symbol_file_add_with_addrs_or_offsets): Do not save orig_addrs. + Remove separate debug file handling. + (symbol_file_add_separate): New function. + (reread_symbols): Do not considere separate debug files, but free + them while handling their parent. Reindent. + * coffread.c (coff_symfile_read): Handle separate object file. + * elfread.c (elf_symfile_read): Ditto. + +2009-12-09 Joel Brobecker <brobecker@adacore.com> + + * acinclude.m4: Update comment. + +2009-12-09 Joel Brobecker <brobecker@adacore.com> + + * acinclude.m4: Link against in-tree libiconv by adding + libiconv.a to the LIBS instead of using -liconv. + * configure: Regenerate. + +2009-12-08 Phil Muldoon <pmuldoon@redhat.com> + + PR python/10804 + + * python/py-type.c (typy_range): New Function. + +2009-12-07 Doug Evans <dje@google.com> + + * charset.c: Include environ.h. + (ignore_line_p): New function. + (find_charset_names): Handle older versions of iconv that print + human-readable output even if stdout is not a tty. + +2009-12-07 Kevin Buettner <kevinb@redhat.com> + + * configure.tgt: Add rx-*-elf target. + * rx-tdep.c: New target. + * NEWS: Announce Renesas RX support. + +2009-12-07 Tristan Gingold <gingold@adacore.com> + + * symfile.h (struct sym_fns): Adjust comment on sym_read. + * symfile.c (syms_from_objfile): Pass all symfile flags to sym_read. + * dbxread.c (dbx_symfile_read): Rename mainline to symfile_flags, + adjust header comment. + * elfread.c (elf_symfile_read): Ditto. + * somread.c (som_symfile_read): Ditto. + * xcoffread.c (xcoff_initial_scan): Ditto. + * coffread.c (coff_symfile_read): Rename mainline to symfile_flags. + * machoread.c (macho_symfile_read): Ditto. + * mipsread.c (mipscoff_symfile_read): Ditto. + +2009-12-07 Tristan Gingold <gingold@adacore.com> + + * dbxread.c (dbx_symfile_read): No need to test mainline to call + init_psymbol_list. + * xcoffread.c (xcoff_initial_scan): Ditto; + * coffread.c (coff_symfile_read): Remove call to init_psymbol_list. + * elfread.c (elf_symfile_read): Ditto. + * machoread.c (macho_symfile_read): Ditto. + +2009-12-04 Daniel Jacobowitz <dan@codesourcery.com> + + * valops.c (value_struct_elt_for_reference): Do not rely on + field order. + +2009-12-03 Richard Ward <richard.j.ward1@googlemail.com> + + * python/py-type.c (convert_field): New attribute "is_base_class". + +2009-12-03 Tom Tromey <tromey@redhat.com> + + * python/python.c (gdbpy_parse_and_eval): New function. + (GdbMethods): Add "parse_and_eval". + +2009-12-03 Jan Kratochvil <jan.kratochvil@redhat.com> + + * linux-thread-db.c (find_new_threads_once): Change errp and err types + to td_err_e. + (thread_db_find_new_threads_2): Change err type to td_err_e. + +2009-12-03 Paul Pluzhnikov <ppluzhnikov@google.com> + + PR gdb/11022 + + * breakpoint.c (invalidate_bp_value_on_memory_change): + New function. + (_initialize_breakpoint): Add it as memory change observer. + +2009-12-03 Tristan Gingold <gingold@adacore.com> + + * machoread.c (macho_sym_fns): Set sym_segment routine. + +2009-12-02 Paul Pluzhnikov <ppluzhnikov@google.com> + + * ada-lang.c (ada_value_assign): Use observer_notify_memory_changed. + * valops.c (value_assign): Likewise. + * defs.h (deprecated_memory_changed_hook): Remove. + * top.c (deprecated_memory_changed_hook): Likewise. + * interps.c (clear_interpreter_hooks): Adjust. + +2009-12-02 Tristan Gingold <gingold@adacore.com> + + * symfile.h (dwarf2_build_psymtabs): Remove mainline parameter in + prototype. + * dwarf2read.c (dwarf2_build_psymtabs): Remove mainline paramter in + definition, simplify code assuming it is always 0. + * coffread.c (coff_symfile_read): Adjust call. + * elfread.c (elf_symfile_read): Ditto. + * machoread.c (macho_symfile_read): Explicitely calls + init_psymbol_list if mainline is set. + +2009-12-02 Tristan Gingold <gingold@adacore.com> + + * dwarf2read.c (dwarf2_build_psymtabs_easy): Remove mainline parameter. + (dwarf2_build_psymtabs_hard): Ditto. + (dwarf2_build_psymtabs): Ajust calls. + * stabsread.h (elfstab_build_psymtabs): Remove mainline parameter on + the prototype. + (coffstab_build_psymtabs): Ditto. + (stabsect_build_psymtabs): Ditto. + * dbxread.c (coffstab_build_psymtabs): Remove mainline parameter on + the definition. + (elfstab_build_psymtabs): Ditto. + (stabsect_build_psymtabs): Ditto. + * coffread.c (coff_symfile_read): Adjust call. + * elfread.c (elf_symfile_read): Ditto. + * somread.c (som_symfile_read): Ditto. + +2009-12-02 Tristan Gingold <gingold@adacore.com> + + * charset.c (_initialize_charset): Set a default value to + auto_host_charset_name if empty. + +2009-12-01 Joseph Myers <joseph@codesourcery.com> + + * gcore.c: Include solib.h. + (gcore_create_callback): Call solib_keep_data_in_core when + considering not saving memory in core file. + * solib-svr4.c (svr4_keep_data_in_core): New. + (_initialize_svr4_solib): Initialize + svr4_so_ops.keep_data_in_core. + * solib.c (solib_keep_data_in_core): New. + * solib.h (solib_keep_data_in_core): Declare. + * solist.h (struct target_so_ops): Add keep_data_in_core. + +2009-11-30 Joseph Myers <joseph@codesourcery.com> + + * configure: Regenerate. + +2009-11-28 Vladimir Prus <vladimir@codesourcery.com> + + * target.c (target_terminal_inferior): Use target_can_async_p, not + target_is_async_p. + +2009-11-27 Ulrich Weigand <uweigand@de.ibm.com> + + * s390-nat.c (s390_can_use_hw_breakpoint): Only support breakpoints + of type bp_hardware_watchpoint. + +2009-11-27 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c: Apply some corrections to the previous comment addition. + +2009-11-26 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c: Update the comment explaining how to evaluate + Ada expressions. + +2009-11-24 Daniel Jacobowitz <dan@codesourcery.com> + + PR gdb/8704 + + * breakpoint.c (find_condition_and_thread): Correct task error message. + * c-exp.y (yylex): Stop before "thread N", "task N", or abbreviations + of those. + +2009-11-24 Joel Brobecker <brobecker@adacore.com> + + * acinclude.m4: Include ../config/zlib.m4. + * configure.ac: Use AM_ZLIB to check for zlib support. + * configure: Regenerate. + +2009-11-24 Joel Brobecker <brobecker@adacore.com> + + * breakpoint.c (expand_line_sal_maybe): Adjust adjust the SAL + past the function prologue in the case where we were given only + one SAL. + +2009-11-24 Pedro Alves <pedro@codesourcery.com> + + * record.c (init_record_ops, init_record_core_ops): Actually + install record_stopped_data_address. + +2009-11-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * dwarf2read.c [HAVE_MMAP] (MAP_FAILED): Define if missing. + +2009-11-23 Tom Tromey <tromey@redhat.com> + + * dwarf2read.c (find_partial_die): Don't reassign to 'back_to'. + +2009-11-23 Michael Snyder <msnyder@vmware.com> + + * NEWS: Mention hw watchpoint fix for process record. + +2009-11-23 Paul Pluzhnikov <ppluzhnikov@google.com> + + * cli/cli-cmds.c (disassemble_command): Split on comma. + (init_cli_cmds): Update help. + * NEWS: Mention incompatible change to 'disassemble'. + +2009-11-22 Pedro Alves <pedro@codesourcery.com> + + Make hardware breakpoints work for process repord. + + * record.c (record_wait): Only adjust PC on software breakpoints + hits. + +2009-11-22 Pedro Alves <pedro@codesourcery.com> + Michael Snyder <msnyder@vmware.com> + + Make hardware watchpoints work for process record. + + * breakpoint.c (hardware_watchpoint_inserted_in_range): New. + * breakpoint.h (hardware_watchpoint_inserted_in_range): Declare. + * record.c (record_beneath_to_stopped_by_watchpoint) + (record_beneath_to_stopped_data_address, record_hw_watchpoint): + New globals. + (record_exec_insn): Check for watchpoint hits. + (tmp_to_stopped_by_watchpoint, tmp_to_stopped_data_address): New + globals. + (record_open): Set tmp_to_stopped_by_watchpoint, + tmp_to_stopped_data_address, + record_beneath_to_stopped_by_watchpoint and + record_beneath_to_stopped_data_address. + (record_wait): Report watchpoint hits to the core. Update and + extend comments. + (record_stopped_by_watchpoint): New. + (record_stopped_data_address): New. + (init_record_ops): Install them. + (init_record_core_ops): Ditto. + +2009-11-21 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (update_watchpoint): Skip creating locations and + reading the selected frame if there's no execution. + (bpstat_stop_status): Use is_hardware_watchpoint. If not + stopping, update watchpoints and the global location list, instead + of removing and inserting all breakpoints. + (breakpoint_address_is_meaningful): Hardware watchpoints also have + a meaningful target address. + (watchpoint_locations_match): New. + (breakpoint_locations_match): New. + (watch_command_1): Create the watchpoint breakpoint without any + location initially. Use update_watchpoint to create the + watchpoint locations. + (update_global_location_list): Use breakpoint_locations_match, so + watchpoint locations are handled too. Also detect duplicate + watchpoint locations. + +2009-11-21 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.h (struct breakpoint) <watchpoint_thread>: New field. + * breakpoint.c (watchpoint_in_thread_scope): New. + (update_watchpoint): Skip if the local watchpoint's thread doesn't + match the current thread, or if the current thread is running. + (watchpoint_check): Ditto. + (watch_command_1): Set the watchpoint's watchpoint_thread field. + +2009-11-20 Jan Kratochvil <jan.kratochvil@redhat.com> + + * breakpoint.c (bp_location_compare): Change parameter a to ap and b to + bp. New variables a and b. + (bp_location_compare_for_qsort): Remove. + (update_global_location_list): Use now bp_location_compare. + +2009-11-20 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix repeated rwatch output. + * amd64-linux-nat.c (amd64_linux_dr_set, amd64_linux_dr_set_control) + (amd64_linux_dr_set_addr, amd64_linux_dr_reset_addr) + (amd64_linux_dr_get_status): New comments. + (amd64_linux_dr_unset_status): New function. + (_initialize_amd64_linux_nat): Install it. + * i386-linux-nat.c (i386_linux_dr_get, i386_linux_dr_set) + (i386_linux_dr_set_control, i386_linux_dr_set_addr) + (i386_linux_dr_reset_addr, i386_linux_dr_get_status): New comments. + (i386_linux_dr_unset_status): New function. + (_initialize_i386_linux_nat): Install it. + * i386-nat.c (I386_DR_WATCH_MASK): New macro. + (I386_DR_WATCH_HIT): Use I386_DR_WATCH_MASK. + (i386_insert_aligned_watchpoint): Call i386_dr_low.unset_status. + * i386-nat.h (struct i386_dr_low_type): Extend comments for + set_control, set_addr, reset_addr and get_status. New unset_status. + * breakpoint.c (update_watchpoint): Extend the comment. + +2009-11-20 Jan Kratochvil <jan.kratochvil@redhat.com> + Pedro Alves <pedro@codesourcery.com> + + Fix reordered watchpoints triggered in other threads during all-stop. + + * linux-nat.c (resume_callback, linux_nat_resume): Clear + stopped_by_watchpoint. + (save_sigtrap, linux_nat_stopped_by_watchpoint) + (linux_nat_stopped_data_address): New. + (stop_wait_callback, linux_nat_filter_event): Call save_sigtrap. + (linux_nat_add_target): Install linux_nat_stopped_by_watchpoint + and linux_nat_stopped_data_address. + * linux-nat.h (struct lwp_info): New fields stopped_by_watchpoint, + stopped_data_address_p and stopped_data_address. + +2009-11-20 Michael Snyder <msnyder@vmware.com> + + * target.h (struct target_ops): New methods to_get_bookmark + and to_goto_bookmark. + (target_get_bookmark): New macro. + (target_goto_bookmark): New macro. + * target.c (dummy_get_bookmark): New function, default implementation. + (dummy_goto_bookmark): New function, default implementation. + (update_current_target): Inherit new methods. + * record.c (record_get_bookmark): New function. + (record_goto_bookmark): New function. + (init_record_ops): Set to_get_bookmark and to_goto_bookmark methods. + * reverse.c (struct bookmark): New type. + (save_bookmark_command): New function (command). + (delete_bookmark_command): New function (command). + (goto_bookmark_command): New function (command). + (bookmarks_info): New function (command). + (_initialize_reverse): Add new bookmark commands. + * command.h (enum command_class): Add class_bookmark. + * NEWS: Mention bookmark commands. + +2009-11-20 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (update_global_location_list): Fix duplicate + locations detection. + +2009-11-20 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (handle_inferior_event): Hardware hatchpoint traps are + never random signals. + * breakpoint.c (update_global_location_list): Always delete + immediately delete hardware watchpoint locations and other + locations whose target address isn't meaningful. Update comment + explaining the hazard of moribund locations. + +2009-11-19 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (discrete_type_p): TYPE_CODE_BOOL is also a discrete type. + +2009-11-19 Joel Brobecker <brobecker@adacore.com> + + * completer.c (complete_line_internal): Make sure the command + completer is not NULL before calling it. + +2009-11-19 Jerome Guitton <guitton@adacore.com> + + * ada-lang.c (packed_array_type): Rename to... + (constrained_packed_array_type): ...and update comment. + (decode_packed_array, decode_constrained_packed_array): Ditto. + (decode_packed_array_type, decode_constrained_packed_array_type): + Ditto. + (ada_is_constrained_packed_array_type): New function. + (ada_is_unconstrained_packed_array_type): New function. + (decode_packed_array_bitsize): New function, extracted from + decode_packed_array_type. + (ada_type_of_array): Add support for unconstrained packed arrays. + (ada_coerce_to_simple_array_ptr, ada_coerce_to_simple_array) + (ada_array_bound_from_type, ada_array_bound, ada_array_length) + (ada_prefer_type, to_fixed_array_type, ada_evaluate_subexp): Resync. + * ada-lang.h (ada_is_packed_array_type, + ada_is_constrained_packed_array_type): Renaming. + * ada-valprint.c (ada_val_print_1): Resync. + * ada-typeprint.c (print_array_type, ada_print_type): Resync. + +2009-11-19 Joel Brobecker <brobecker@adacore.com> + + Wrong function used to perform address addition/subtraction. + * ada-lang.c (ada_type_match): Stop making TYPE_CODE_VOID + a wildcard matching any type. For types that we don't already + handle specifically, make sure that both types have the same code. + +2009-11-19 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_decode): Add handling of "TB" suffixes for + task bodies. + +2009-11-19 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_remove_Xbn_suffix): New function. + (find_old_style_renaming_symbol): Add handling for function suffixes + present in the name of various procedures. + Do not overwrite the function symbol's name. + +2009-11-19 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (breakpoint_address_bits): Visit all locations' + gdbarchs, not the breakpoint's gdbarch. + +2009-11-18 Vladimir Prus <vladimir@codesourcery.com> + + * cli/cli-script.c (process_next_line): Recognize 'end' + even when the line has leading space and we're not parsing + commands. + +2009-11-18 Tom Tromey <tromey@redhat.com> + + * symtab.c (symbol_set_names): Correctly set 'name' on symbol when + lookup name differs. + +2009-11-18 Tristan Gingold <gingold@adacore.com> + + * machoread.c (macho_oso_symfile): Fix typo. Add comments. + +2009-11-17 Jan Kratochvil <jan.kratochvil@redhat.com> + + * dbxread.c (set_namestring): Remove cast to unsigned. Check N_STRX + overflow. + +2009-11-17 Nathan Sidwell <nathan@codesourcery.com> + + * features/m68k-core.xml: New file. + +2009-11-17 Nathan Sidwell <nathan@codesourcery.com> + + * regformats/reg-cf.dat: New file. + +2009-11-17 Daniel Jacobowitz <dan@codesourcery.com> + + * m68k-tdep.c (m68k_register_name): Check fpregs_present. + (m68k_gdbarch_init): Remove a duplicate of set_gdbarch_fp0_regnum. + +2009-11-17 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix wrong debug output with `set debug infrun 1'. + * gdb/infrun.c (handle_inferior_event <debug_infrun>): New variable + old_chain. Temporarily switch INFERIOR_PTID. + * target.h (target_stopped_by_watchpoint): Extend the comment. + (target_stopped_data_address): New comment. + +2009-11-16 Tom Tromey <tromey@redhat.com> + + * xcoffread.c (scan_xcoff_symtab): Update. + * symfile.h (add_psymbol_to_list): Update prototype. + * symfile.c (add_psymbol_to_bcache): Add copy_name argument. + (add_psymbol_to_list): Likewise. + * stabsread.c (define_symbol): Update. + * mdebugread.c (parse_partial_symbols): Update. + (handle_psymbol_enumerators): Update. + (new_symbol): Update. + * dbxread.c (read_dbx_symtab): Update. + * coffread.c (process_coff_symbol): Update. + * symtab.h (prim_record_minimal_symbol_full): Declare. + (SYMBOL_SET_NAMES): Add copy_name argument. + * symtab.c (struct demangled_name_entry): New struct. + (hash_demangled_name_entry): New function. + (eq_demangled_name_entry): Likewise. + (create_demangled_names_hash): Use new functions. + (symbol_set_names): Use struct demangled_name_entry. Add + copy_name argument. + * minsyms.c (prim_record_minimal_symbol_full): New function. + (prim_record_minimal_symbol_and_info): Use it. + * elfread.c (record_minimal_symbol): Add name_len and copy_name + arguments. Call prim_record_minimal_symbol_full. + (elf_symtab_read): Add copy_names argument. + (elf_symfile_read): Update calls to elf_symtab_read. + * dwarf2read.c (add_partial_symbol): Don't copy symbol names. + (load_partial_dies): Likewise. + (new_symbol): Likewise. + * cp-namespace.c (check_one_possible_namespace_symbol): Don't save + name on the obstack. Update call to SYMBOL_SET_NAMES. + +2009-11-15 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (handle_inferior_event): When handling a fork or vfork + event, check if the bpstat causes a stop, instead of if it + explains the signal. + * breakpoint.c (bpstat_causes_stop): New. + * breakpoint.h (bpstat_causes_stop): Declare. + +2009-11-15 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (should_be_inserted): Don't insert breakpoints if + the pspace doesn't allow breakpoints. + (insert_breakpoint_locations): Remove waiting_for_vfork_done + special case. Expect watchpoints that shouldn't be inserted, to + not be inserted. + * progspace.h (struct program_space) <breakpoints_not_allowed>: + New field. + * infrun.c (handle_inferior_event): Clear it. + * linux-nat.c (linux_child_follow_fork): Set it. + +2009-11-13 Doug Evans <dje@google.com> + + * dcache.c (dcache_hit, dcache_read_line): Tweak comments. + (dcache_peek_byte, dcache_init, dcache_xfer_memory): Ditto. + * target.c (memory_xfer_partial): Tweak comments. + (target_xfer_partial, target_write_memory): Add comment. + (target_read_partial): Remove note from 2003-10-21. + (target_read, target_write): Add comments. + +2009-11-13 Daniel Jacobowitz <dan@codesourcery.com> + + * inline-frame.c (find_inline_frame_state): Check for changed PC + here... + (inline_frame_sniffer): ... not here. + +2009-11-13 Daniel Jacobowitz <dan@codesourcery.com> + + * ui-file.c (stdio_file_read): Call gdb_select before read. + +2009-11-13 Maciej W. Rozycki <macro@codesourcery.com> + + * mips-tdep.c (mips_insn16_frame_this_id): Mark the outermost + frame. + (mips_insn32_frame_this_id): Likewise. + +2009-11-13 Maciej W. Rozycki <macro@codesourcery.com> + + * elfread.c (elf_symtab_read): Only mark a minimal symbol as + special if it actually exists. Merge the checks for this + conditions. + +2009-11-13 Kazu Hirata <kazu@codesourcery.com> + Maxim Kuvyrkov <maxim@codesourcery.com> + + * remote-fileio.c (remote_fileio_request): Send Ctrl-C if it is + pending. + * remote-fileio.h: Update the prototype for remote_fileio_request. + * remote.c (struct remote_state): Add ctrlc_pending_p. + (remote_open_1): Clear ctrlc_pending_p. + (remote_stop_as): Set ctrlc_pending_p to 1. + (remote_wait_as): Pass ctrlc_pending_p to remote_fileio_request. + +2009-11-13 Daniel Jacobowitz <dan@codesourcery.com> + + * arm-tdep.c (arm_skip_stub): Recognize RealView veneer functions. + +2009-11-13 Maciej W. Rozycki <macro@codesourcery.com> + + * breakpoint.c (update_watchpoint): Only fiddle with frames for + local watchpoints. + +2009-11-13 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (handle_inferior_event): Set stop_print_frame on + TARGET_WAITKIND_LOADED events, if stopping on solib-events. + +2009-11-13 Doug Evans <dje@google.com> + + * dcache.c (dcache_block): Replace member newer with next,prev. + (dcache_struct): Delete member newest. + (block_func): New typedef. + (append_block, remove_block, for_each_block): New functions. + (invalidate_block, free_block): New functions. + (dcache_invalidate): Update + (dcache_invalidate_line, dcache_alloc): Update to use new list + accessors. + (dcache_free): Ditto. Fix memory leak. + +2009-11-13 Paul Pluzhnikov <ppluzhnikov@google.com> + + * python/py-prettyprint.c (print_string_repr): Suppress + address printing + +2009-11-13 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_push_dummy_call): Fix endianness issue and avoid + overlap between returned structure and return address/parameters. + +2009-11-12 Daniel Jacobowitz <dan@codesourcery.com> + + * remote-fileio.c (remote_fileio_func_read): Limit console + reads to 16K. + +2009-11-12 Daniel Jacobowitz <dan@codesourcery.com> + Paul Brook <paul@codesourcery.com> + + * c-typeprint.c (c_type_print_base): Skip artificial fields. + Use get_vptr_fieldno to skip the vtable pointer. + * dwarf2read.c (dwarf2_add_field): Set FIELD_ARTIFICIAL on artificial + fields. + (dwarf2_add_member_fn): Complain about virtual member functions + without DW_AT_vtable_elem_location and force TYPE_CPLUS_DYNAMIC. + * gdbtypes.c (get_vptr_fieldno): Update comment. + * gdbtypes.h (struct cplus_struct_type): Add is_dynamic. + (TYPE_CPLUS_DYNAMIC): New macro. + * gnu-v3-abi.c (gnuv3_dynamic_class): New. + (gnuv3_get_vtable): Rewrite to use gnuv3_dynamic_class. Move higher. + (gnuv3_rtti_type, gnuv3_get_virtual_fn, gnuv3_baseclass_offset): Use + gnuv3_get_vtable. + * varobj.c (cplus_class_num_children, cplus_describe_child): Skip + artificial fields. Use get_vptr_fieldno to skip the vtable pointer. + +2009-11-12 Paul Brook <paul@codesourcery.com> + Daniel Jacobowitz <dan@codesourcery.com> + + * dwarf2read.c (dwarf2_add_member_fn): Calculate virtual function + offset for classes without DW_AT_containing_type. + +2009-11-12 Paul Brook <paul@codesourcery.com> + Daniel Jacobowitz <dan@codesourcery.com> + + * dwarf2read.c (struct field_info): Add baseclasses. + (dwarf2_add_field): Add base classes to a separate list. + (dwarf2_attach_fields_to_type): Merge base classes and fields. + +2009-11-12 Daniel Jacobowitz <dan@codesourcery.com> + + * dwarf2read.c (process_psymtab_comp_unit): Initialize per_cu backlink + at the same time as the forward link. + (load_partial_comp_unit): Initialize per_cu links before calling + init_cu_die_reader. + +2009-11-11 Paul Pluzhnikov <ppluzhnikov@google.com> + + PR gdb/10838 + * linux-thread-db.c (thread_db_info): New member. + (disable_thread_event_reporting): Call td_ta_clear_event. + +2009-11-11 Keith Seitz <keiths@redhat.com> + + * linespec.c (lookup_prefix_sym): Lookup the symbol + in both STRUCT_DOMAIN and VAR_DOMAIN. + +2009-11-11 Michael Snyder <msnyder@vmware.com> + + * darwin-nat-info.c: Update copyright. + * dbxread.c: Ditto. + * gdbarch.sh: Ditto. + * gdbarch.c: Ditto. + * gdbarch.h: Ditto. + * inline-frame.c: Ditto. + * inline-frame.h: Ditto. + * s390-nat.c: Ditto. + +2009-11-11 Michael Snyder <msnyder@vmware.com> + + * findvar.c (top level): Fix and add comments. + +2009-11-10 Keith Seitz <keiths@redhat.com> + + * c-exp.y (operator_stoken): New function. + (OPERATOR): New token. + (NEW): New token. + (DELETE): New token. + (operator): New rule. + (name): Add operator. + (ident_tokens): Add "new", "delete", and "operator". + * gdbtypes.c (rank_one_type): Don't complain about + void pointer conversion badness if both types are + void pointers. + +2009-11-11 Jan Kratochvil <jan.kratochvil@redhat.com> + + * symfile.c (separate_debug_file_exists): Change parameter parent_name + to parent_objfile. New variables parent_stat and abfd_stat. Call + strcmp and then bfd_stat functions to verify if NAME matches. + (find_separate_debug_file): Update the passed parameter at caller. + +2009-11-11 Jan Kratochvil <jan.kratochvil@redhat.com> + + * objfiles.c (objfile_relocate): Update also the field psymtabs_addrmap. + +2009-11-11 Jan Kratochvil <jan.kratochvil@redhat.com> + + * configure.ac: Call ACX_LARGEFILE. + * aclocal.m4: Call m4_include for ../config/largefile.m4 and + ../config/plugins.m4. + * configure: Regenerate. + * config.in: Regenerate. + +2009-11-10 Keith Seitz <keiths@redhat.com> + + * c-exp.y: Add new rule for resolving method overloads. + * eval.c (make_params): New function. + (free_param_types): New function. + (evaluate_subexp_standard): Pass expect_type to value_aggregate_elt. + Handle case TYPE_INSTANCE. + (evaluate_subexp_for_address): Pass expect_type to value_aggregate_elt. + * expression.h (enum exp_opcode): Add TYPE_INSTANCE. + (compare_parameters): Add declaration. + * parse.c (operator_length_standard): Add TYPE_INSTANCE. + * valops.c (value_aggregate_elt): Add new expect_type parameter. + Pass expect_type to value_struct_elt_for_reference. + (value_struct_elt_for_reference): Add expect_type parameter and use + compare_parameters. + Check for overload matches with and without artificial parameters. + Skip artificial methods. + (compare_parameters): New function. + * value.h (value_aggregate_elt): Add new expect_type parameter. + +2009-11-10 Joseph Myers <joseph@codesourcery.com> + + * solib-svr4.c (enable_break): Call + gdbarch_convert_from_func_ptr_addr on results of looking up + fallback symbol names. + +2009-11-10 Daniel Gutson <dgutson@codesourcery.com> + + * procfs.c (procfs_do_thread_registers): Added a call to fetch + register values before saving them in the core file + through the gcore command. + (procfs_corefile_thread_callback): Removed the backup of + inferior_ptid before calling procfs_do_thread_registers since + the function already saves and restores it before returning. + +2009-11-10 Michael Snyder <msnyder@vmware.com> + + * dcache.c (dcache_invalidate_line): Remove block from used list + when adding it to freed list. + +2009-11-10 Michael Snyder <msnyder@vmware.com> + + * dcache.c: Fix typo, shorten long lines in comment. + +2009-11-10 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c: Add AVR_PSEUDO_PC_REGNUM and AVR_NUM_PSEUDO_REGS. + (struct gdbarch_tdep): Add void_type, func_void_type and pc_type + fields. + (avr_register_name): Add "pc" name, renames "PC" to "PC2". + (avr_register_type): Handle AVR_PSEUDO_PC_REGNUM. + (avr_write_pc): Fix indentation. + (avr_pseudo_register_read): New function. + (avr_pseudo_register_write): New function. + (avr_frame_prev_register): Handle AVR_PSEUDO_PC_REGNUM. + (avr_gdbarch_init): Create types for pc. Register pseudo regs. + +2009-11-10 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_integer_to_address): New function. + (avr_gdbarch_init): Set integer_to_address. + +2009-11-10 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_skip_prologue): First try to skip prologue + using skip_prologue_using_sal. + +2009-11-10 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_extract_return_value): Remove. + (avr_return_value): Mostly rewritten. Fix handling for structures. + (avr_push_dummy_call): Handle struct_return. + +2009-11-10 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_scan_prologue): Decode instructions used for + small stack allocation. + Adjust code for prologue that don't write SP. + +2009-11-10 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_make_saddr): Return 0 for NULL. + +2009-11-10 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_dwarf_reg_to_regnum): New function. + (avr_gdbarch_init): Call set_gdbarch_dwarf2_reg_to_regnum. + +2009-11-09 Sebastien Granjoux <seb.sfo@free.fr> + + PR mi/9583: + * symtab.c (find_line_symtab, append_exact_match_to_sals) + (expand_line_sal): Use full filename when setting breakpoints if + available + +2009-11-09 Cary Coutant <ccoutant@google.com> + + * dwarf2read.c (read_import_statement): Don't clobber original cu. + +2009-11-09 Tom Tromey <tromey@redhat.com> + + * python/python.c (execute_gdb_command): Copy the argument text. + +2009-11-06 Vladimir Prus <vladimir@codesourcery.com> + + * m68k-tdep.c (m68k_convert_register_p): Correct + messup. + +2009-11-06 Vladimir Prus <vladimir@codesourcery.com> + + * m68k-tdep.c (m68k_convert_register_p): Compare with + the actual type of fp registers, not one of the possible + values. + +2009-11-06 Vladimir Prus <vladimir@codesourcery.com> + + Prevent program output from mix with "^running". + + gdb/ + * mi/mi-interp.c (mi_on_resume): Output token + and "^running" together, so that nothing else gets + in between. + +2009-11-05 Daniel Jacobowitz <dan@codesourcery.com> + + * dwarf2read.c (struct dwarf2_cu): Remove ranges_offset and + has_ranges_offset. + (struct partial_die_info): Remove language, has_stmt_list, dirname, + and line_offset. + (dwarf2_build_include_psymtabs): Take a die_info. Handle a missing + line table. + (dwarf2_get_pc_bounds): Take PST argument. Pass it + to dwarf2_ranges_read. Update all callers. + (init_cu_die_reader): Move earlier. + (dwarf2_find_base_address): New function. + (process_psymtab_comp_unit): Rewrite to use a full DIE for the + compilation unit. Use dwarf2_get_pc_bounds and + dwarf2_find_base_address. + (load_comp_unit): Rewrite to use a full DIE for the compilation unit. + (process_full_comp_unit): Use dwarf2_find_base_address. + (read_partial_die): Remove support for attributes only used + in the compilation unit DIE. + * symfile.c (allocate_psymtab): Make FILENAME const. + (start_psymtab_common): Likewise. + * symfile.h (allocate_psymtab, start_psymtab_common): Update + prototypes. + +2009-11-05 Tom Tromey <tromey@redhat.com> + + * symmisc.c (print_symbol_bcache_statistics): Print filename cache + statistics. + (print_objfile_statistics): Likewise. + * symfile.c (reread_symbols): Initialize filename_cache. + (allocate_symtab): Cache the file name. + (allocate_psymtab): Likewise. + * solib-sunos.c (allocate_rt_common_objfile): Initialize + filename_cache. + * objfiles.h (struct objfile) <filename_cache>: New field. + * objfiles.c (allocate_objfile): Initialize filename_cache. + (free_objfile): Free filename_cache. + +2009-11-05 Tom Tromey <tromey@redhat.com> + + * symfile.c (add_psymbol_to_bcache): Make 'psymbol' static again. + Zero the 'value' field. + +2009-11-05 Doug Evans <dje@google.com> + + * amd64-tdep.c (amd64_init_frame_cache): Enhance comment describing + saved_regs. + +2009-11-05 Daniel Jacobowitz <dan@codesourcery.com> + + * top.c (execute_command): Select a frame before checking the current + language. Only output a message if verbose. + +2009-11-05 Tom Tromey <tromey@redhat.com> + + * symtab.h (SYMBOL_SET_LINKAGE_NAME): Update comment. + * symfile.c (allocate_symtab): Don't use obsavestring on a + constant string. + * stabsread.c (define_symbol): Don't use obsavestring on a + constant string. + * mdebugread.c (parse_type): Don't use obsavestring on a constant + string. + (new_symtab): Likewise. + * elfread.c (elf_symtab_read): Don't use obsavestring on a + constant string. + +2009-11-04 Tom Tromey <tromey@redhat.com> + + * symfile.c (add_psymbol_to_bcache): Don't copy name. Make + 'psymbol' non-static. + +2009-11-03 Paul Pluzhnikov <ppluzhnikov@google.com> + + * linux-thread-db.c (disable_thread_event_reporting): Adjust. + +2009-11-03 Joel Brobecker <brobecker@adacore.com> + + * MAINTAINERS (Responsible Maintainers): Add Tristan Gingold as + maintainer of the avr target. + +2009-11-02 Daniel Jacobowitz <dan@codesourcery.com> + + * elfread.c (elf_symfile_segments): Do not warn about + uninitialized sections outside of load segments. + +2009-11-02 Jan Kratochvil <jan.kratochvil@redhat.com> + + * symfile.c (build_id_to_debug_filename): New variable debugdir. Move + variables size, s and data into a new inner block. Change xmalloc for + alloca, use direct BUILDID->SIZE there now. Loop for the + DEBUG_FILE_DIRECTORY components. + (find_separate_debug_file): New variable debugdir and debugdir_end. + Loop for the DEBUG_FILE_DIRECTORY components. + (_initialize_symfile): For "debug-file-directory" use plural and note + one can use multiple components now. + +2009-11-02 Jan Kratochvil <jan.kratochvil@redhat.com> + + * symfile.c (find_separate_debug_file): Initialize dir, debugfile and + canon_name to NULL. Change alloca to xmalloc, newly call xfree for it. + New label cleanup_return_debugfile, jump to it from the failure paths. + +2009-11-02 Andrew Cagney <cagney@gnu.org> + + * symfile.c (separate_debug_file_exists): When the CRCs mismatch + print a warning. + (find_separate_debug_file): Pass in the objfile's name. + +2009-11-02 Jan Kratochvil <jan.kratochvil@redhat.com> + + Remove INVALID_ENTRY_POINT. + * frame.c (inside_entry_func): New variable entry_point. Return 0 if + the entry point is not known. + * solib-irix.c (enable_break): Likewise. + * objfiles.c (init_entry_point_info): Stop using INVALID_ENTRY_POINT. + Initialize EI.ENTRY_POINT_P. + (entry_point_address): Rename to ... + (entry_point_address_query): ... a new function. Use EI.ENTRY_POINT_P. + (entry_point_address): New function. + (objfile_relocate): Use EI.ENTRY_POINT_P. + * objfiles.h (struct entry_info): Simplify entry_point comment. New + field entry_point_p. + (INVALID_ENTRY_POINT): Remove. + (entry_point_address_query): New prototype. + * solib-frv.c (enable_break): Check for NULL SYMFILE_OBJFILE and its + EI.ENTRY_POINT_P. Return 0 if ".interp" is not found. + +2009-11-01 Michael Snyder <msnyder@vmware.com> + + * NEWS (New Commands): Mention record save/restore. + +2009-10-31 Michael Snyder <msnyder@vmware.com> + + * breakpoint.c (bpstat_stop_status): Fix broken comment. + +2009-10-31 Pedro Alves <pedro@codesourcery.com> + + * record.c (record_restore, cmd_record_save): Debug output goes to + gdb_stdlog. + +2009-10-31 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com> + + * breakpoint.c (catch_syscall_split_args): Remove unecessary warning + displayed when the user provided a syscall name and there is no + XML support. + * xml-syscall.c: Renamed `_sysinfo' to `sysinfo'. + (set_xml_syscall_file_name): Remove syscall_warn_user. + (xml_init_syscalls_info): Remove warning. + (init_sysinfo): Update warnings. + +2009-10-30 Vladimir Prus <vladimir@codesourcery.com> + + Fix breakpoint commands in MI. + + * mi/mi-main.c (mi_execute_command): Run bpstat_do_actions. + * mi/mi-cmd-break.c (mi_cmd_break_commands): Pass 1 to + read_command_line_1 to actually parse composite commands. + +2009-10-29 Sandra Loosemore <sandra@codesourcery.com> + + PR gdb/10783 + + * target.c (simple_search_memory): Correct read_addr initialization + in loop for searching subsequent chunks. + +2009-10-28 Daniel Jacobowitz <dan@codesourcery.com> + + Reported by Antti Hatala <ahatala@nvidia.com>. + + * arm-tdep.c (thumb_get_next_pc): Limit check to IT instructions + correctly. + +2009-10-28 Pedro Alves <pedro@codesourcery.com> + + * dwarf2-frame.c (dwarf2_build_frame_info): Discard --gc-section + leftover FDEs. + +2009-10-28 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (keep_going): Wrap with resume_cleanups. + +2009-10-27 Paul Pluzhnikov <ppluzhnikov@google.com> + + * MAINTAINERS: Add self to "modify-after-approval" maintainers. + +2009-10-27 Paul Pluzhnikov <ppluzhnikov@google.com> + + PR gdb/10757 + * linux-thread-db.c (attach_thread): Return success/failure + indicator. + (thread_db_find_new_threads_silently): Retry until no new threads. + (struct callback_data): New. + (find_new_threads_callback): Count new threads, stop iteration + on error. + (find_new_threads_once): New function. + (thread_db_find_new_threads_2): Rename from + thread_db_find_new_threads_1 and adjust. + (thread_db_find_new_threads_1): New function. + +2009-10-26 Michael Eager <eager@eagercon.com> + + * MAINTAINERS: Add self to "modify-after-approval" maintainers. + +2009-10-26 Michael Snyder <msnyder@vmware.com> + Hui Zhu <teawater@gmail.com> + + * Makefile.in (SFILES): Add gcore.c. + (COMMON_OBS): Add gcore.o. + * config/alpha/alpha-linux.mh (NATDEPFILES): Delete gcore.o. + * config/alpha/fbsd.mh (NATDEPFILES): Ditto. + * config/arm/linux.mh (NATDEPFILES): Ditto. + * config/i386/fbsd.mh (NATDEPFILES): Ditto. + * config/i386/fbsd64.mh (NATDEPFILES): Ditto. + * config/i386/i386sol2.mh (NATDEPFILES): Ditto. + * config/i386/linux.mh (NATDEPFILES): Ditto. + * config/i386/linux64.mh (NATDEPFILES): Ditto. + * config/i386/sol2-64.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/fbsd.mh (NATDEPFILES): Ditto. + * config/sparc/linux.mh (NATDEPFILES): Ditto. + * config/sparc/linux64.mh (NATDEPFILES): Ditto. + * config/sparc/sol2.mh (NATDEPFILES): Ditto. + * config/xtensa/linux.mh (NATDEPFILES): Ditto. + * target.c (dummy_find_memory_regions): Change output. + (dummy_make_corefile_notes): Ditto. + +2009-10-26 Tristan Gingold <gingold@adacore.com> + + * charset.c (_initialize_charset): Set a default value to + auto_host_charset_name if empty. + +2009-10-26 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (avr_push_dummy_call): Handle avr6 architecture. + Fix the returned value. Fix style. + +2009-10-26 Joel Brobecker <brobecker@adacore.com> + + * MAINTAINERS (Responsible Maintainers): Add info about the microblaze + targets. Add Michael Eager as the maintainer for this target. + +2009-10-25 Jan Kratochvil <jan.kratochvil@redhat.com> + + Performance optimize large bp_location count. + * breakpoint.c (ALL_BP_LOCATIONS_SAFE): Remove. + (ALL_BP_LOCATIONS): New parameter BP_TMP. Use now bp_location and + bp_location_count. + (bp_location_chain): Remove variable. + (bp_location, bp_location_count) + (bp_location_placed_address_before_address_max) + (bp_location_shadow_len_after_address_max): New variables. + (moribund_locations, update_watchpoint): Update the bp_location + variable name. + (breakpoint_restore_shadows): Extend the comment. Move the variable + b to local blocks. Move the variables bp_addr, bp_size and bptoffset + to a local block. New variables bc_l, bc_r and bc. New binary search + for the left range boundary. New break on reaching the right range + boundary. Move shadow existence conditionals to ... + (bp_location_has_shadow): ... a new function. + (insert_breakpoint_locations): Replace the temp variable by bp_tmp. + Use now ALL_BP_LOCATIONS instead of ALL_BP_LOCATIONS_SAFE. + (remove_breakpoints, remove_hw_watchpoints, reattach_breakpoints) + (detach_breakpoints): New variable bp_tmp. Update the ALL_BP_LOCATIONS + calling convention. + (update_breakpoints_after_exec): New variable bplocp_tmp. Update the + ALL_BP_LOCATIONS calling convention. + (breakpoint_here_p, software_breakpoint_inserted_here_p) + (breakpoint_thread_match): New variable bptp_tmp. Drop the const + attribute of bpt. Update the ALL_BP_LOCATIONS calling convention. + (regular_breakpoint_inserted_here_p): Likewise. Update the bp_location + variable name. + (mark_breakpoints_out, breakpoint_init_inferior): New variable + bptp_tmp. Update the ALL_BP_LOCATIONS calling convention. + (bpstat_stop_status): New variables blp_tmp and update_locations. Drop + the const attribute of bl. Update the ALL_BP_LOCATIONS calling + convention. Protect HIT_COUNT increment by an ENABLE_STATE check. + Delay the update_global_location_list call using update_locations. + (set_default_breakpoint): Drop the check_duplicates name from comment. + (disable_breakpoints_in_shlibs, disable_breakpoints_in_unloaded_shlib): + New variable locp_tmp. Update the ALL_BP_LOCATIONS calling convention. + (bp_location_compare, bp_location_compare_for_qsort) + (bp_location_target_extensions_update): New functions. + (check_duplicates, check_duplicates_for): Remove, moving their code ... + (update_global_location_list): ... into this existing function. Remove + variables next, loc2, old_locations, ret and ix. New variables locp, + loc_first, old_location, old_locp and old_location_count. Stop using + global_next, create now the array bp_location, sort it by + bp_location_compare_for_qsort and call + bp_location_target_extensions_update. Change quadratic iteration by + loc2 into an in-sync scanning by locp and loc2p. Rename former loc + usage as old_loc. + (do_vec_free): Remove. + (breakpoint_program_space_exit): Update the ALL_BP_LOCATIONS calling + convention. + (remove_breakpoints_pid): New variable b_tmp. Update the + ALL_BP_LOCATIONS calling convention. + * breakpoint.h (struct bp_location <global_next>): Remove. + +2009-10-25 Jan Kratochvil <jan.kratochvil@redhat.com> + + * mep-tdep.c: Update include for the new location cgen/bitset.h. + +2009-10-23 Tom Tromey <tromey@redhat.com> + + * blockframe.c (_initialize_blockframe): Remove declaration. + +2009-10-23 Doug Evans <dje@google.com> + + * record.c (record_core_xfer_partial): Pass correct offset to + record_beneath_to_xfer_partial. + +2009-10-23 Michael Snyder <msnyder@vmware.com> + + * record.c (top level): Don't include byteswap.h. + (netorder64): Use store_unsigned_integer instead of bswap_64. + (netorder32): Use store_unsigned_integer instead of bswap_32. + (netorder16): Use store_unsigned_integer instead of bswap_16. + +2009-10-23 Michael Snyder <msnyder@vmware.com> + + * record.c (netorder64): Use BFD_ENDIAN_LITTLE not LITTLE_ENDIAN. + (netorder32): Ditto. + (netorder16): Ditto. + +2009-10-23 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objfiles.c (allocate_objfile): Use xzalloc. + +2009-10-23 Hui Zhu <teawater@gmail.com> + + * record.c (record_restore): Use phex_nz. + +2009-10-23 Tristan Gingold <gingold@adacore.com> + + * frame.c (frame_unwind_pc): Fix typo: remove duplicate 0x. + +2009-10-23 Tristan Gingold <gingold@adacore.com> + + * objfiles.c (allocate_objfile): Remove useless test. Move + declaration of last_one to the block that uses it. + +2009-10-22 Paul Pluzhnikov <ppluzhnikov@google.com> + + * record.c (record_restore, cmd_record_save): Fix warnings. + +2009-10-22 Paul Pluzhnikov <ppluzhnikov@google.com> + + * disasm.h (DISASSEMBLY_OMIT_FNAME) New define. + (gdb_disassembly): Correct parameter name. + * disasm.c (dump_insns): Adjust. + (gdb_disassembly): Fix indentation. + * cli/cli-cmds.c (disassemble_command): Adjust. + +2009-10-22 Michael Snyder <msnyder@vmware.com> + + * infrun.c (keep_going): If insert_breakpoints fails, + print the reason. + +2009-10-22 Paul Pluzhnikov <ppluzhnikov@google.com> + + PR gdb/10819 + * dwarf2-frame.c (find_cie): Don't call bsearch on empty cie_table. + * objfiles.c (find_pc_section): Likewise. + (update_section_map): Don't allocate empty table. + +2009-10-22 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * record.c (RECORD_FILE_MAGIC): New constant. + (record_arch_list_cleanups): Renamed from record_message_cleanups. + (bfdcore_read): New function. + (netorder64): New function. + (netorder32): New function. + (netorder16): New function. + (record_restore): New function. Restore a saved record log. + (bfdcore_write): New function. + (cmd_record_restore): New function. + (cmd_record_save): New function. Save a record log to a file. + (_initialize_record): Set up commands for save and restore. + +2009-10-22 Michael Snyder <msnyder@vmware.com> + + * gcore.h: New file. + * gcore.c (create_gcore_bfd): New function. + (write_gcore_file): New function. + (call_target_sbrk): New function. Abstracted from gcore_command. + (gcore_command): Call call_target_sbrk. + +2009-10-22 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * record.c (record_core_ops): New ops target vector. + (record_core_open_1): New function. Open core target. + (record_open_1): New function. Open normal process record. + (record_open): Call one of the above. + (record_close): Allow for both core and normal targets. + (record_core_resume): New function. + (record_core_kill): New function. + (record_core_fetch_registers): New function. + (record_core_prepare_to_store): New function. + (record_core_store_registers): New function. + (record_core_xfer_partial): New function. + (record_core_insert_breakpoint): New function. + (record_core_remove_breakpoint): New function. + (record_core_has_execution): New function. + (init_record_core_ops): New function. + (_initialize_record): Call init_record_core_ops, add_target. + +2009-10-22 Tristan Gingold <gingold@adacore.com> + + * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Use + amd64_supply_fxsave for amd64. Fix the offset. + (i386_darwin_store_inferior_registers): Use amd64_collect_fxsave + for amd64. + +2009-10-21 Maxim Grigoriev <maxim2405@gmail.com> + + * xtensa-tdep.c (XTENSA_ISA_BADPC): New. + (xtensa_scan_prologue): Replace read_memory with target_read_memory. + (call0_analyze_prologue): Use XTENSA_ISA_BADPC instead of "0". + (call0_frame_cache): Check error conditions on call0_analyze_prologue. + +2009-10-21 Paul Pluzhnikov <ppluzhnikov@google.com> + + * defs.h (pc_prefix): New prototype. + * disasm.c (dump_insns): Mark current instruction. + * printcmd.c (do_examine): Likewise. + (pc_prefix): New function. + * stack.c (print_frame_info): Disassemble entire current line. + +2009-10-21 Michael Snyder <msnyder@vmware.com> + + Elaborate "info record". + * record.c (struct record_end_entry): New field 'insn_num'. + (record_insn_count): New variable. + (record_open): Initialize record_insn_count. + (info_record_command): Display contents of record log as + lowest, current, and highest instruction counts. + (show_record_insn_number): Delete. + (_initialize_record): Remove add_cmd show_record_insn_number. + +2009-10-21 Andrew Stubbs <ams@codesourcery.com> + Joel Brobecker <brobecker@adacore.com> + + * Makefile.in (HFILES_NO_SRCDIR): Remove shnbsd-tdep.h + * configure.tgt (sh*-*-linux*): Add corelow.o to gdb_target_obs. + * sh-linux-tdep.c: Include sh-tdep.h. + (REGSx16): New macro. + (gregs_table, fpregs_table): New variables. + (sh_linux_init_abi): Set core_gregmap and fpregmap. + * sh-tdep.c: Include regset.h. + (sh_corefile_supply_regset): New function. + (sh_corefile_collect_regset): New function. + (sh_corefile_gregset, sh_corefile_fpregset): New variables. + (sh_regset_from_core_section): New function. + (sh_gdbarch_init): Set up tdep value. + Call set_gdbarch_regset_from_core_section. + * sh-tdep.h (PC_REGNUM): New enum value. + (struct sh_corefile_regs): New type. + (sh_corefile_gregset): Export variable. + (sh_corefile_supply_regset): New prototype. + (sh_corefile_collect_regset): New prototype. + * shnbsd-tdep.c: Remove include of regcache.h, gdb_assert.h and + shnbsd-tdep.h. + (regmap): Use new definition using struct sh_corefile_regs. + (shnbsd_supply_gregset, shnbsd_collect_gregset): Delete. + (shnbsd_gregset): Delete. + (shnbsd_regset_from_core_section): Delete. + (shnbsd_supply_reg, shnbsd_fill_reg): Use new regset interface. + (shnbsd_init_abi): Set core_gregmap. + (shnbsd_supply_reg): Delete. + (shnbsd_fill_reg): Delete. + (SHNBSD_SIZEOF_GREGS): Move ... + * shnbsd-nat.c (SHNBSD_SIZEOF_GREGS): ... to here. + Remove include of shnbsd-tdep.h. + (shnbsd_fetch_inferior_registers): Replace shnbsd_supply_reg call + with sh_corefile_supply_regset. + (shnbsd_store_inferior_registers): Replace shnbsd_fill_reg call with + sh_corefile_collect_regset. + * shnbsd-tdep.h: Delete file. + +2009-10-21 Pierre Muller <muller@ics.u-strasbg.fr> + + * rs6000-nat.c (exec_one_dummy_insn): Add missing new ASPACE parameter + to depreacted_insert_raw_breakpoint function call. + * procfs.c (insert_dbx_link_bpt_in_file): Likewise. + +2009-10-20 Michael Snyder <msnyder@vmware.com> + + * record.c: Add some top-level comments for general explanation. + +2009-10-20 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * record.c (record_exec_insn): New function. Emulate one + instruction, forward or backward. Abstracted from record_wait. + (record_wait) Call record_exec_insn. + +2009-10-20 Michael Snyder <msnyder@msnyder-server.eng.vmware.com> + + * infrun.c (handle_inferior_event): Add pspace field to sal + for reverse execution cases. + +2009-10-20 Ken Werner <ken@linux.vnet.ibm.com> + + * go32-nat.c (go32_create_inferior): Use inferior_appeared, not + inferior_appeared_silent. + * remote-sim.c (gdbsim_create_inferior): Ditto. + +2009-10-20 Pedro Alves <pedro@codesourcery.com> + + * darwin-nat.c (cancel_breakpoint): Pass the regcache's address + space to breakpoint_inserted_here_p. + +2009-10-20 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (linux_nat_thread_address_space): New. + (linux_nat_add_target): Install it. + * progspace.c (address_space_num): New. + * progspace.h (address_space_num): Declare. + * target.c (target_thread_address_space): Really query the target. + * target.h (struct target_ops) <to_thread_address_space>: New + field. + +2009-10-19 Joel Brobecker <brobecker@adacore.com> + + * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Add comment. + +2009-10-19 Pedro Alves <pedro@codesourcery.com> + Stan Shebs <stan@codesourcery.com> + + Add base multi-executable/process support to GDB. + + * Makefile.in (SFILES): Add progspace.c. + (COMMON_OBS): Add progspace.o. + * progspace.h: New. + * progspace.c: New. + + * breakpoint.h (struct bp_target_info) <placed_address_space>: New + field. + (struct bp_location) <pspace>: New field. + (struct breakpoint) <pspace>: New field. + (bpstat_stop_status, breakpoint_here_p) + (moribund_breakpoint_here_p, breakpoint_inserted_here_p) + (regular_breakpoint_inserted_here_p) + (software_breakpoint_inserted_here_p, breakpoint_thread_match) + (set_default_breakpoint): Adjust prototypes. + (remove_breakpoints_pid, breakpoint_program_space_exit): Declare. + (insert_single_step_breakpoint, deprecated_insert_raw_breakpoint): + Adjust prototypes. + * breakpoint.c (executing_startup): Delete. + (default_breakpoint_sspace): New. + (breakpoint_restore_shadows): Skip if the address space doesn't + match. + (update_watchpoint): Record the frame's program space in the + breakpoint location. + (insert_bp_location): Record the address space in target_info. + Adjust to pass the symbol space to solib_name_from_address. + (breakpoint_program_space_exit): New. + (insert_breakpoint_locations): Switch the symbol space and thread + when inserting breakpoints. Don't insert breakpoints in a vfork + parent waiting for vfork done if we're not attached to the vfork + child. + (remove_breakpoints_pid): New. + (reattach_breakpoints): Switch to a thread of PID. Ignore + breakpoints of other symbol spaces. + (create_internal_breakpoint): Store the symbol space in the sal. + (create_longjmp_master_breakpoint): Iterate over all symbol + spaces. + (update_breakpoints_after_exec): Ignore breakpoints for other + symbol spaces. + (remove_breakpoint): Rename to ... + (remove_breakpoint_1): ... this. Pass the breakpoints symbol + space to solib_name_from_address. + (remove_breakpoint): New. + (mark_breakpoints_out): Ignore breakpoints from other symbol + spaces. + (breakpoint_init_inferior): Ditto. + (breakpoint_here_p): Add an address space argument and adjust to + use breakpoint_address_match. + (moribund_breakpoint_here_p): Ditto. + (regular_breakpoint_inserted_here_p): Ditto. + (breakpoint_inserted_here_p): Ditto. + (software_breakpoint_inserted_here_p): Ditto. + (breakpoint_thread_match): Ditto. + (bpstat_check_location): Ditto. + (bpstat_stop_status): Ditto. + (print_breakpoint_location): If there's a location to print, + switch the current symbol space. + (print_one_breakpoint_location): Add `allflag' argument. + (print_one_breakpoint): Ditto. Adjust. + (do_captured_breakpoint_query): Adjust. + (breakpoint_1): Adjust. + (breakpoint_has_pc): Also match the symbol space. + (describe_other_breakpoints): Add a symbol space argument and + adjust. + (set_default_breakpoint): Add a symbol space argument. Set + default_breakpoint_sspace. + (breakpoint_address_match): New. + (check_duplicates_for): Add an address space argument, and adjust. + (set_raw_breakpoint): Record the symbol space in the location and + in the breakpoint. + (set_longjmp_breakpoint): Skip longjmp master breakpoints from + other symbol spaces. + (remove_thread_event_breakpoints, remove_solib_event_breakpoints) + (disable_breakpoints_in_shlibs): Skip breakpoints from other + symbol spaces. + (disable_breakpoints_in_unloaded_shlib): Match symbol spaces. + (create_catchpoint): Set the symbol space in the sal. + (disable_breakpoints_before_startup): Skip breakpoints from other + symbol spaces. Set executing_startup in the current symbol space. + (enable_breakpoints_after_startup): Clear executing_startup in the + current symbol space. Skip breakpoints from other symbol spaces. + (clone_momentary_breakpoint): Also copy the symbol space. + (add_location_to_breakpoint): Set the location's symbol space. + (bp_loc_is_permanent): Switch thread and symbol space. + (create_breakpoint): Adjust. + (expand_line_sal_maybe): Expand comment to mention symbol spaces. + Switch thread and symbol space when reading memory. + (parse_breakpoint_sals): Set the symbol space in the sal. + (break_command_really): Ditto. + (skip_prologue_sal): Switch and space. + (resolve_sal_pc): Ditto. + (watch_command_1): Record the symbol space in the sal. + (create_ada_exception_breakpoint): Adjust. + (clear_command): Adjust. Match symbol spaces. + (update_global_location_list): Use breakpoint_address_match. + (breakpoint_re_set_one): Switch thread and space. + (breakpoint_re_set): Save symbol space. + (breakpoint_re_set_thread): Also reset the symbol space. + (deprecated_insert_raw_breakpoint): Add an address space argument. + Adjust. + (insert_single_step_breakpoint): Ditto. + (single_step_breakpoint_inserted_here_p): Ditto. + (clear_syscall_counts): New. + (_initialize_breakpoint): Install it as inferior_exit observer. + + * exec.h: Include "progspace.h". + (exec_bfd, exec_bfd_mtime): New defines. + (exec_close): Declare. + * exec.c: Include "gdbthread.h" and "progspace.h". + (exec_bfd, exec_bfd_mtime, current_target_sections_1): Delete. + (using_exec_ops): New. + (exec_close_1): Rename to exec_close, and make public. + (exec_close): Rename to exec_close_1, and adjust all callers. Add + description. Remove target sections and close executables from + all program spaces. + (exec_file_attach): Add comment. + (add_target_sections): Check on `using_exec_ops' to check if the + target should be pushed. + (remove_target_sections): Only unpush the target if there are no + more target sections in any symbol space. + * gdbcore.h: Include "exec.h". + (exec_bfd, exec_bfd_mtime): Remove declarations. + + * frame.h (get_frame_program_space, get_frame_address_space) + (frame_unwind_program_space): Declare. + * frame.c (struct frame_info) <pspace, aspace>: New fields. + (create_sentinel_frame): Add program space argument. Set the + pspace and aspace fields of the frame object. + (get_current_frame, create_new_frame): Adjust. + (get_frame_program_space): New. + (frame_unwind_program_space): New. + (get_frame_address_space): New. + * stack.c (print_frame_info): Adjust. + (print_frame): Use the frame's program space. + + * gdbthread.h (any_live_thread_of_process): Declare. + * thread.c (any_live_thread_of_process): New. + (switch_to_thread): Switch the program space as well. + (restore_selected_frame): Don't warn if trying to restore frame + level 0. + + * inferior.h: Include "progspace.h". + (detach_fork): Declare. + (struct inferior) <removable, aspace, pspace> + <vfork_parent, vfork_child, pending_detach> + <waiting_for_vfork_done>: New fields. + <terminal_info>: Remove field. + <data, num_data>: New fields. + (register_inferior_data, register_inferior_data_with_cleanup) + (clear_inferior_data, set_inferior_data, inferior_data): Declare. + (exit_inferior, exit_inferior_silent, exit_inferior_num_silent) + (inferior_appeared): Declare. + (find_inferior_pid): Typo. + (find_inferior_id, find_inferior_for_program_space): Declare. + (set_current_inferior, save_current_inferior, prune_inferiors) + (number_of_inferiors): Declare. + (inferior_list): Declare. + * inferior.c: Include "gdbcore.h" and "symfile.h". + (inferior_list): Make public. + (delete_inferior_1): Always delete thread silently. + (find_inferior_id): Make public. + (current_inferior_): New. + (current_inferior): Use it. + (set_current_inferior): New. + (restore_inferior): New. + (save_current_inferior): New. + (free_inferior): Free the per-inferior data. + (add_inferior_silent): Allocate per-inferior data. + Call inferior_appeared. + (delete_threads_of_inferior): New. + (delete_inferior_1): Adjust interface to take an inferior pointer. + (delete_inferior): Adjust. + (delete_inferior_silent): Adjust. + (exit_inferior_1): New. + (exit_inferior): New. + (exit_inferior_silent): New. + (exit_inferior_num_silent): New. + (detach_inferior): Adjust. + (inferior_appeared): New. + (discard_all_inferiors): Adjust. + (find_inferior_id): Make public. Assert pid is not zero. + (find_inferior_for_program_space): New. + (have_inferiors): Check if we have any inferior with pid not zero. + (have_live_inferiors): Go over all pushed targets looking for + process_stratum. + (prune_inferiors): New. + (number_of_inferiors): New. + (print_inferior): Add executable column. Print vfork parent/child + relationships. + (inferior_command): Adjust to cope with not running inferiors. + (remove_inferior_command): New. + (add_inferior_command): New. + (clone_inferior_command): New. + (struct inferior_data): New. + (struct inferior_data_registration): New. + (struct inferior_data_registry): New. + (inferior_data_registry): New. + (register_inferior_data_with_cleanup): New. + (register_inferior_data): New. + (inferior_alloc_data): New. + (inferior_free_data): New. + (clear_inferior_data): New. + (set_inferior_data): New. + (inferior_data): New. + (initialize_inferiors): New. + (_initialize_inferiors): Register "add-inferior", + "remove-inferior" and "clone-inferior" commands. + + * objfiles.h: Include "progspace.h". + (struct objfile) <pspace>: New field. + (symfile_objfile, object_files): Don't declare. + (ALL_PSPACE_OBJFILES): New. + (ALL_PSPACE_OBJFILES_SAFE): New. + (ALL_OBJFILES, ALL_OBJFILES_SAFE): Adjust. + (ALL_PSPACE_SYMTABS): New. + (ALL_PRIMARY_SYMTABS): Adjust. + (ALL_PSPACE_PRIMARY_SYMTABS): New. + (ALL_PSYMTABS): Adjust. + (ALL_PSPACE_PSYMTABS): New. + * objfiles.c (object_files, symfile_objfile): Delete. + (struct objfile_sspace_info): New. + (objfiles_pspace_data): New. + (objfiles_pspace_data_cleanup): New. + (get_objfile_pspace_data): New. + (objfiles_changed_p): Delete. + (allocate_objfile): Set the objfile's program space. Adjust to + reference objfiles_changed_p in pspace data. + (free_objfile): Adjust to reference objfiles_changed_p in pspace + data. + (objfile_relocate): Ditto. + (update_section_map): Add pspace argument. Adjust to iterate over + objfiles in the passed in pspace. + (find_pc_section): Delete sections and num_sections statics. + Adjust to refer to program space's objfiles_changed_p. Adjust to + refer to sections and num_sections store in the objfile's pspace + data. + (objfiles_changed): Adjust to reference objfiles_changed_p in + pspace data. + (_initialize_objfiles): New. + * linespec.c (decode_all_digits, decode_dollar): Set the sal's + program space. + * source.c (current_source_pspace): New. + (get_current_source_symtab_and_line): Set the sal's program space. + (set_current_source_symtab_and_line): Set current_source_pspace. + (select_source_symtab): Ditto. Use ALL_OBJFILES. + (forget_cached_source_info): Iterate over all program spaces. + * symfile.c (clear_symtab_users): Adjust. + * symmisc.c (print_symbol_bcache_statistics): Iterate over all + program spaces. + (print_objfile_statistics): Ditto. + (maintenance_print_msymbols): Ditto. + (maintenance_print_objfiles): Ditto. + (maintenance_info_symtabs): Ditto. + (maintenance_info_psymtabs): Ditto. + * symtab.h (SYMTAB_PSPACE): New. + (struct symtab_and_line) <pspace>: New field. + * symtab.c (init_sal): Clear the sal's program space. + (find_pc_sect_symtab): Set the sal's program space. Switch thread + and space. + (append_expanded_sal): Add program space argument. Iterate over + all program spaces. + (expand_line_sal): Iterate over all program spaces. Switch + program space. + + * target.h (enum target_waitkind) <TARGET_WAITKIND_VFORK_DONE>: New. + (struct target_ops) <to_thread_address_space>: New field. + (target_thread_address_space): Define. + * target.c (target_detach): Only remove breakpoints from the + inferior we're detaching. + (target_thread_address_space): New. + + * defs.h (initialize_progspace): Declare. + * top.c (gdb_init): Call it. + + * solist.h (struct so_list) <sspace>: New field. + * solib.h (struct program_space): Forward declare. + (solib_name_from_address): Adjust prototype. + * solib.c (so_list_head): Replace with a macro referencing the + program space. + (update_solib_list): Set the so's program space. + (solib_name_from_address): Add a program space argument and adjust. + + * solib-svr4.c (struct svr4_info) <pid>: Delete field. + <interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low> + <interp_plt_sect_high>: New fields. + (svr4_info_p, svr4_info): Delete. + (solib_svr4_sspace_data): New. + (get_svr4_info): Rewrite. + (svr4_sspace_data_cleanup): New. + (open_symbol_file_object): Adjust. + (svr4_default_sos): Adjust. + (svr4_fetch_objfile_link_map): Adjust. + (interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low) + (interp_plt_sect_high): Delete. + (svr4_in_dynsym_resolve_code): Adjust. + (enable_break): Adjust. + (svr4_clear_solib): Revert bit that removed the svr4_info here, + and reinstate clearing debug_base, debug_loader_offset_p, + debug_loader_offset and debug_loader_name. + (_initialize_svr4_solib): Register solib_svr4_pspace_data. Don't + install an inferior_exit observer anymore. + + * printcmd.c (struct display) <pspace>: New field. + (display_command): Set the display's sspace. + (do_one_display): Match the display's sspace. + (display_uses_solib_p): Ditto. + + * linux-fork.c (detach_fork): Moved to infrun.c. + (_initialize_linux_fork): Moved "detach-on-fork" command to + infrun.c. + * infrun.c (detach_fork): Moved from linux-fork.c. + (proceed_after_vfork_done): New. + (handle_vfork_child_exec_or_exit): New. + (follow_exec_mode_replace, follow_exec_mode_keep) + (follow_exec_mode_names, follow_exec_mode_string) + (show_follow_exec_mode_string): New. + (follow_exec): New. Reinstate the mark_breakpoints_out call. + Remove shared libraries before attaching new executable. If user + wants to keep the inferior, keep it. + (displaced_step_fixup): Adjust to pass an address space to the + breakpoints module. + (resume): Ditto. + (clear_proceed_status): In all-stop mode, always clear the proceed + status of all threads. + (prepare_to_proceed): Adjust to pass an address space to the + breakpoints module. + (proceed): Ditto. + (adjust_pc_after_break): Ditto. + (handle_inferior_event): When handling a process exit, switch the + program space to the inferior's that had exited. Call + handle_vfork_child_exec_or_exit. Adjust to pass an address space + to the breakpoints module. In non-stop mode, when following a + fork and detach-fork is off, also resume the other branch. Handle + TARGET_WAITKIND_VFORK_DONE. Set the program space in sals. + (normal_stop): Prune inferiors. + (_initialize_infrun): Install the new "follow-exec-mode" command. + "detach-on-fork" moved here. + + * regcache.h (get_regcache_aspace): Declare. + * regcache.c (struct regcache) <aspace>: New field. + (regcache_xmalloc): Clear the aspace. + (get_regcache_aspace): New. + (regcache_cpy): Copy the aspace field. + (regcache_cpy_no_passthrough): Ditto. + (get_thread_regcache): Fetch the thread's address space from the + target, and store it in the regcache. + + * infcall.c (call_function_by_hand): Set the sal's pspace. + + * arch-utils.c (default_has_shared_address_space): New. + * arch-utils.h (default_has_shared_address_space): Declare. + + * gdbarch.sh (has_shared_address_space): New. + * gdbarch.h, gdbarch.c: Regenerate. + + * linux-tdep.c: Include auxv.h, target.h, elf/common.h. + (linux_has_shared_address_space): New. + (_initialize_linux_tdep): Declare. + + * arm-tdep.c (arm_software_single_step): Pass the frame's address + space to insert_single_step_breakpoint. + * arm-linux-tdep.c (arm_linux_software_single_step): Pass the + frame's pspace to breakpoint functions. + * cris-tdep.c (crisv32_single_step_through_delay): Ditto. + (cris_software_single_step): Ditto. + * mips-tdep.c (deal_with_atomic_sequence): Add frame argument. + Pass the frame's pspace to breakpoint functions. + (mips_software_single_step): Adjust. + (mips_single_step_through_delay): Adjust. + * rs6000-aix-tdep.c (rs6000_software_single_step): Adjust. + * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Adjust. + * solib-irix.c (enable_break): Adjust to pass the current frame's + address space to breakpoint functions. + * sparc-tdep.c (sparc_software_single_step): Ditto. + * spu-tdep.c (spu_software_single_step): Ditto. + * alpha-tdep.c (alpha_software_single_step): Ditto. + * record.c (record_wait): Adjust to pass an address space to the + breakpoints module. + + * fork-child.c (fork_inferior): Set the new inferior's program and + address spaces. + * inf-ptrace.c (inf_ptrace_follow_fork): Copy the parent's program + and address spaces. + (inf_ptrace_attach): Set the inferior's program and address spaces. + * linux-nat.c: Include "solib.h". + (linux_child_follow_fork): Manage parent and child's program and + address spaces. Clone the parent's program space if necessary. + Don't wait for the vfork to be done here. Refuse to resume if + following the vfork parent while leaving the child stopped. + (resume_callback): Don't resume a vfork parent. + (linux_nat_resume): Also check for pending events in the + lp->waitstatus field. + (linux_handle_extended_wait): Report TARGET_WAITKIND_VFORK_DONE + events to the core. + (stop_wait_callback): Don't wait for SIGSTOP on vfork parents. + (cancel_breakpoint): Adjust. + * linux-thread-db.c (thread_db_wait): Don't remove thread event + breakpoints here. + (thread_db_mourn_inferior): Don't mark breakpoints out here. + Remove thread event breakpoints after mourning. + * corelow.c: Include progspace.h. + (core_open): Set the inferior's program and address spaces. + * remote.c (remote_add_inferior): Set the new inferior's program + and address spaces. + (remote_start_remote): Update address spaces. + (extended_remote_create_inferior_1): Don't init the thread list if + we already debugging other inferiors. + * darwin-nat.c (darwin_attach): Set the new inferior's program and + address spaces. + * gnu-nat.c (gnu_attach): Ditto. + * go32-nat.c (go32_create_inferior): Ditto. + * inf-ttrace.c (inf_ttrace_follow_fork, inf_ttrace_attach): Ditto. + * monitor.c (monitor_open): Ditto. + * nto-procfs.c (procfs_attach, procfs_create_inferior): Ditto. + * procfs.c (do_attach): Ditto. + * windows-nat.c (do_initial_windows_stuff): Ditto. + + * inflow.c (inferior_process_group) + (terminal_init_inferior_with_pgrp, terminal_inferior, + (terminal_ours_1, inflow_inferior_exit, copy_terminal_info) + (child_terminal_info, new_tty_postfork, set_sigint_trap): Adjust + to use per-inferior data instead of inferior->terminal_info. + (inflow_inferior_data): New. + (inflow_new_inferior): Delete. + (inflow_inferior_data_cleanup): New. + (get_inflow_inferior_data): New. + + * mi/mi-interp.c (mi_new_inferior): Rename to... + (mi_inferior_appeared): ... this. + (mi_interpreter_init): Adjust. + + * tui/tui-disasm.c: Include "progspace.h". + (tui_set_disassem_content): Pass an address space to + breakpoint_here_p. + + * NEWS: Mention multi-program debugging support. Mention new + commands "add-inferior", "clone-inferior", "remove-inferior", + "maint info program-spaces", and new option "set + follow-exec-mode". + +2009-10-19 Don Lee <don.lee@sunplusct.com> + + * score-tdep.c: Delete dead codes. + +2009-10-15 Michael Snyder <msnyder@vmware.com> + + * record.c (struct record_reg_entry): Replace ptr with union + of ptr and buf. + (struct record_mem_entry): Ditto. + (record_reg_alloc): Don't alloc ptr if reg will fit into buf. + (record_mem_alloc): Ditto. + (record_reg_release): Don't free ptr if reg was stored in buf. + (record_mem_release): Ditto. + (record_get_loc): New function. Return a pointer to where the + value (mem or reg) is to be stored. + (record_arch_list_add_reg): Call record_get_loc instead of using ptr. + (record_arch_list_add_mem): Ditto. + (record_wait): Ditto. + +2009-10-16 Michael Eager <eager@eagercon.com> + + * microblaze-linux-tdep.c: + microblaze_linux_memory_remove_breakpoint(): Add gdbarch to param, + replace frame_pc_unwind with get_frame_address_in_block. + * microblaze-tdep.c: Remove MICROBLAZE_REGISTER_SIZE. + * microblaze-tdep.h: Add MICROBLAZE_REGISTER_SIZE. + +2008-10-15 Steven G. Kargl <kargl@gcc.gnu.org> (tiny patch) + + * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Conditionally compile in + support for pcb->pcb_{fs,ds,es,gs} on FreeBSD older than 8.0. + +2009-10-15 Michael Eager <eager@eagercon.com> + + * config/djgpp/fnchange.lst: Add translations for cpu-microblaze.c, + elf32-microblaze.c, microblaze-rom.c, microblaze-linux-tdep.c, + microblaze-tdep.h, microblaze-tdep.c, microblaze-opc.h, + microblaze-opcm.h, microblaze-dis.c, microblaze-dis.h, sim/microblaze, + microblaze.h, and microblaze.isa. + * configure.tgt: Add targets microblaze*-linux-*, microblaze*-xilinx-*. + * Makefile.in: Build microblaze-tdep.o, microblaze-linux-tdep.o. + HFILES_NO_SRCDIR: Add microblaze-tdep.h. + * microblaze-linux-tdep.c: New. + * microblaze-tdep.c: New. + * microblaze-tdep.h: New. + * NEWS: Announce Xilinx MicroBlaze support. + +2009-10-15 Paul Pluzhnikov <ppluzhnikov@google.com> + + PR gdb/10757 + * linux-nat.c (linux_nat_post_attach_wait): Adjust assert. + (lin_lwp_attach_lwp, linux_nat_attach): Handle disappearing LWP. + +2009-10-15 Michael Snyder <msnyder@vmware.com> + + * record.c (record_insn_max_num): Make unsigned. + (_initialize_record): Use uinteger instead of zinteger for + set command, so that it will report "unlimited" for zero. + +2009-10-15 Michael Snyder <msnyder@vmware.com> + + * record.c (record_reg_alloc): New function. + (record_reg_release): New function. + (record_mem_alloc): New function. + (record_mem_release): New function. + (record_end_alloc): New function. + (record_end_release): New function. + (record_entry_release): New function. + (record_list_release): Simplify, call record_entry_release. + (record_list_release_next): Rename to record_list_release_following. + Simplify and call record_entry_release. + (record_list_release_first): Simplify, comment, and use + record_entry_release. + (record_arch_list_add_reg): Simplify, call record_reg_alloc. + (record_arch_list_add_mem): Simplify, call record_mem_alloc. + (record_arch_list_add_end): Simplify, call record_end_alloc. + +2009-10-14 Michael Snyder <msnyder@vmware.com> + + * record.c (record_list_release_first): Do not decrement + record_insn_num. + (set_insn_num_max): Remove printf. + Decrement record_insn_num in the loop. + +2009-10-14 Cary Coutant <ccoutant@google.com> + + * dwarf2read.c (read_import_statement): Call follow_die_ref_or_sig. + +2009-10-14 Keith Seitz <keiths@redhat.com> + + * dwarf2read.c (dwarf2_const_value): Fix order of arguments to + store_unsigned_integer. + +2009-10-14 Pedro Alves <pedro@codesourcery.com> + + * configure.ac (build_warnings): Add -Wunused-value. + * configure: Regenerate. + +2009-10-14 Tristan Gingold <gingold@adacore.com> + + * solib-darwin.c: Remove trailing whitespaces. + (darwin_dyld_version_ok): Fix typo. + +2009-10-14 Andrew Stubbs <ams@codesourcery.com> + + * sh-tdep.c (sh_gdbarch_init): Add show_regs settings for + bfd_mach_sh3_nommu, bfd_mach_sh2a_nofpu_or_sh3_nommu, + bfd_mach_sh2a_or_sh3e, bfd_mach_sh2a_or_sh4, bfd_mach_sh4_nommu_nofpu, + and bfd_mach_sh2a_nofpu_or_sh4_nommu_nofpu. + Move bfd_mach_sh2a_or_sh4 to use the same configuration as + bfd_mach_sh4. + +2009-10-13 Daniel Jacobowitz <dan@codesourcery.com> + + * arm-tdep.c (arm_push_dummy_call): Set the low bit of LR for + a Thumb entry point. + (thumb_get_next_pc): Handle Thumb-2 and ARM v6 instructions. Refuse + to single step into IT blocks. + +2009-10-13 Pedro Alves <pedro@codesourcery.com> + + * infcall.c (call_function_by_hand): Formatting. + +2009-10-13 Tristan Gingold <gingold@adacore.com> + + * solib-darwin.c: Add an empty line after comment for functions. + (struct gdb_dyld_all_image_infos): Improve comment. + (DYLD_VERSION): Removed and replaced by ... + (DYLD_VERSION_MAX, DYLD_VERSION_MIN): ... New macros. + (darwin_dyld_version_ok): New function. + (darwin_load_image_infos): Call darwin_dyld_version_ok. + (darwin_current_sos): Ditto. + (darwin_solib_create_inferior_hook): Ditto. + +2009-10-13 Tristan Gingold <gingold@adacore.com> + + * machoread.c: Add an empty line after comment for functions. + (oso_el_compare_name): New function. + (macho_add_oso_symfile): New function. + (macho_oso_symfile): Use macho_add_oso_symfile. Sort the oso + and optimize accesses to libraries. + +2009-10-13 Tristan Gingold <gingold@adacore.com> + + * objfiles.c (objfile_has_symbols): New function. + * objfiles.h (objfile_has_symbols): Add prototype. + * symfile.c (symbol_file_add_with_addrs_or_offsets): Call + objfile_has_symbols. + (reread_symbols): Ditto. + +2009-10-12 Jiang Jilin <freephp@gmail.com> + + * i386-tdep.c (i386_process_record): Add xgetbv/xsetbv + instructions support. + +2009-10-11 Pedro Alves <pedro@codesourcery.com> + + * procfs.c (procfs_make_note_section): Go back to only outputing + an NT_PSTATUS note when UNIXWARE is defined. + +2009-10-11 Daniel Jacobowitz <dan@codesourcery.com> + + * features/xinclude.dtd: Correct EMPTY typo. + +2009-10-10 Michael Snyder <msnyder@vmware.com> + + * i386-tdep.c (i386_process_record): Or-equals, not not-equals. + +2009-10-10 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-cmd-stack.c (list_args_or_locals): Use internal_error. + Put "break" statements on their own line. + +2009-10-09 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (linux_nat_wait_1): Bail out, if TARGET_WNOHANG and + we found no event while waiting for a specific LWP. + * infrun.c (handle_inferior_event): Handle TARGET_WAITKIND_IGNORE + before anything else. + +2009-10-09 Pedro Alves <pedro@codesourcery.com> + + * procfs.c (procfs_make_note_section): Always output a NT_PSTATUS + note when NEW_PROC_API is defined. + +2009-10-09 Pedro Alves <pedro@codesourcery.com> + + * corelow.c (core_has_fake_pid): New. + (core_close): Clear it. + (add_to_thread_list): Fake a pid if one is not found on a Solaris + core. Add the inferior here. Always add the thread, don't use + thread_change_ptid. + (core_open): Don't add the main thread or the inferior here unless + we find that the core had no .reg/NN sections. + (get_core_register_section): Handle Solaris cores with fake pids. + + * corelow.c (add_to_thread_list): Fix typo. + +2009-10-08 Paul Pluzhnikov <ppluzhnikov@google.com> + + PR gdb/10457 + * elfread.c (elf_symtab_read): Don't use alloca in a loop. + +2009-10-07 Jan Kratochvil <jan.kratochvil@redhat.com> + + * i386-nat.c (i386_stopped_by_hwbp): Remove. + +2009-10-07 Joel Brobecker <brobecker@adacore.com> + + * NEWS: Update following the GDB 7.0 release. + +2009-10-07 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: OP eol rule. + * doublest.c (floatformat_from_length): Avoid operator at end of line. + * dwarf2-frame.c (dwarf2_build_frame_info): Idem. + * dwarf2read.c (read_array_order, dwarf_decode_macros): Idem. + * eval.c (evaluate_subexp_standard): Idem. + * event-loop.c (create_timer, handle_timer_event): Idem. + * expprint.c (print_subexp_standard): Idem. + * f-exp.y (variable): Idem. + * f-typeprint.c (f_print_type): Idem. + +2009-10-06 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: OP eol rule. + * blockframe.c (find_pc_partial_function): Avoid operator at end of + line. + * buildsym.c (find_symbol_in_list): Idem. + (start_subfile, patch_subfile_names): Idem. + * c-exp.y (variable, yylex): Idem. + * c-typeprint.c (c_print_type, c_type_print_base): Idem. + * c-valprint.c (c_val_print): Idem. + * coffread.c (patch_opaque_types, process_coff_symbol): Idem. + * corelow.c (core_open): Idem. + * cris-tdep.c (move_reg_to_mem_movem_op): Idem. + * cli/cli-decode.c (help_cmd_list, find_command_name_length): Idem. + +2009-10-06 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: OP eol rule. + * ada-exp.y (block_lookup): Avoid operator at end of line. + * aix-thread.c (pd_enable): Idem. + * alpha-tdep.c (alpha_next_pc): Idem. + * arm-tdep.c (arm_skip_prologue, arm_scan_prologue): Idem. + (condition_true, coff_sym_is_thumb): Idem. + +2009-10-06 Joel Brobecker <brobecker@adacore.com> + + GDB 7.0 released. + +2009-10-06 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: "%p" rule. + * target.c (debug_to_thread_architecture): Replace %p by %s using + host_address_to_string function. + +2009-10-06 Tristan Gingold <gingold@adacore.com> + + * darwin-nat.c: Add __TEXT __info_plist content. + (darwin_attach_pid): Update error message. + +2009-10-06 Joel Brobecker <brobecker@adacore.com> + + * MAINTAINERS: Add Tristan Gingold as Maintainer of the Darwin port. + +2009-10-06 Joel Brobecker <brobecker@adacore.com> + + * MAINTAINERS: Add Jan Kratochvil as Maintainer of the ia64 target. + +2009-10-05 Pedro Alves <pedro@codesourcery.com> + + Revert: + 2009-10-04 Pedro Alves <pedro@codesourcery.com> + * gdbinit.in: Set data-directory to @srcdir@. + +2009-10-04 Pedro Alves <pedro@codesourcery.com> + + * NEWS: Mention non-stop mode. + +2009-10-04 Pedro Alves <pedro@codesourcery.com> + + * gdbinit.in: Set data-directory to @srcdir@. + +2009-10-02 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (TRAP_IS_SYSCALL, TRAP_REMOVE_SYSCALL_FLAG): Delete. + (SYSCALL_SIGTRAP): New. + (status_to_str): Adjust. + (get_pending_status): Pending events in lp->waitstatus don't map + to any signal. Simplify. + (linux_handle_syscall_trap): New. + (linux_handle_extended_wait): When handling PTRACE_EVENT_CLONE + events, use linux_ops->to_resume instead of direct ptrace with + PTRACE_CONT. Remove all TRAP_IS_SYSCALL handling. + (wait_lwp): Handle syscall traps with linux_handle_syscall_trap, + and clear the sysgood bit. + (status_callback): Make it clearer and add comments. + (cancel_breakpoints_callback): Ignore if LP has waitstatus set. + (linux_nat_filter_event): Handle syscall traps with + linux_handle_syscall_trap, and clear the sysgood bit. Move the + check for storing siginfo to after handling extended statuses and + syscall traps. Store status in the lwp object. + (linux_wait_1): Don't swap the pending status out of the lwp + object until after deciding we found an lwp with an interesting + event. Requeue a new pending signal if we find one while getting + rid or a pending SIGSTOP we sent ourselves. Don't clear the + sysgood bit here. + + * infrun.c (deal_with_syscall_event): Rename to ... + (handle_syscall_event): ... this. Always context switch and set + stop_pc, even if not catching the syscall. If not catching the + syscall, always resume with keep_going. + (handle_inferior_event): Adjust. + +2009-10-02 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix compatibility of --with-system-readline and readline-6.0+. + * configure.ac <--with-system-readline> (for readline_echoing_p): New + test. + * config.in: Regenerate. + * configure: Regenerate. + +2009-10-01 Joel Brobecker <brobecker@adacore.com> + + * MAINTAINERS: Move Don Lee to the correct section (Write After + Approval). + +2009-10-01 Phil Muldoon <pmuldoon@redhat.com> + + * infcall.c (call_function_by_hand): Add a new cleanup branch for + std::terminate breakpoints. + +2009-09-29 Jan Kratochvil <jan.kratochvil@redhat.com> + + * ia64-tdep.c (ia64_convert_from_func_ptr_addr): New variable buf. + Check first the descriptor memory is readable. + +2009-09-29 Tom Tromey <tromey@redhat.com> + + * python/py-value.c (valpy_string): NULL-terminate 'keywords'. + +2009-09-29 Ulrich Weigand <uweigand@de.ibm.com> + + * s390-tdep.c (s390_displaced_step_fixup): Use type ULONGEST + instead of CORE_ADDR for "amode". + +2009-09-29 Joel Brobecker <brobecker@adacore.com> + + * ia64-tdep.c: Update the comments on how we insert/remove + breakpoints for L-X instructions. + (ia64_memory_insert_breakpoint, ia64_memory_remove_breakpoint): + Update the comments inside these functions. + +2009-09-28 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbarch.sh (displaced_step_hw_singlestep): New callback. + * gdbarch.c, gdbarch.h: Regenerate. + * arch-utils.c (default_displaced_step_hw_singlestep): New function. + * arch-utils.h (default_displaced_step_hw_singlestep): Add prototype. + + * ppc-linux-tdep.c (ppc_displaced_step_hw_singlestep): New function. + (rs6000_gdbarch_init): Install it. + + * infrun.c (displaced_step_fixup): Use new callback to determine + whether to "step" or "continue" displaced copy. + (resume): Likewise. Do not call maybe_software_singlestep + for displaced stepping. + (maybe_software_singlestep): Do not handle displaced stepping. + +2009-09-28 Ulrich Weigand <uweigand@de.ibm.com> + + * eval.c (evaluate_subexp_standard) [OP_OBJC_MSGCALL]: Support + platforms that use function descriptors. Prefer to use function + pointer types instead of function types. + * linespec.c (decode_objc): Support function descriptors. Fully + initialize SAL result. + * objc-lang.c (find_methods): Support function descriptors. + Do not require function symbol to point to text section. + + * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): When calling + via a function pointer, use the descriptor it points to. + +2009-09-28 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix ia64 breakpoints in the L-X slot. + * ia64-tdep.c (ia64_memory_insert_breakpoint): Extend the comment. + New variable shadow_slotnum, use it appropriately instead of slotnum. + Move shadow_len initialization before SLOTNUM adjustment, cover now the + whole remaining bundle. Error now on breakpoints requested for the + slot 2 of L-X bundles. Better sanity check the requested slot 1 of L-X + bundles. + (ia64_memory_remove_breakpoint): New variable shadow_slotnum, use it + appropriately instead of slotnum. Warn now on breakpoints requested + for the slot 2 of L-X bundles. Better sanity check the requested slot + 1 of L-X bundles. Update the assertio check of PLACED_SIZE. + (ia64_breakpoint_from_pc): New variable shadow_slotnum, use it + appropriately instead of slotnum. Move *lenptr initialization before + SLOTNUM adjustment, cover now the whole remaining bundle. Error now + on breakpoints requested for the slot 2 of L-X bundles. Better sanity + check the requested slot 1 of L-X bundles. Simplify the returned + expression. + +2009-09-28 Joel Brobecker <brobecker@adacore.com> + + * ia64-tdep.c (ia64_memory_insert_breakpoint): Check the slotnum + and the type of instruction before deciding which slot to save + in the breakpoint shadown contents. + +2009-09-28 Doug Evans <dje@google.com> + + * linux-nat.c (status_to_str): Handle TRAP_IS_SYSCALL. + (TRAP_REMOVE_SYSCALL_FLAG): New macro. + (linux_nat_wait_1): Mask off is-syscall bit in wait status for + TRAP_IS_SYSCALL before passing value to caller. + +2009-09-28 Ulrich Weigand <uweigand@de.ibm.com> + + * valops.c (value_assign): Respect parent offset when + assigning to a bitfield. + +2009-09-28 Hui Zhu <teawater@gmail.com> + + * i386-tdep.c (i386_process_record): Remove "0x" that + don't need. + +2009-09-27 Ulrich Weigand <uweigand@de.ibm.com> + + * s390-tdep.c (op_bctr, op_bctgr, op_bct, op1_bctg, op2_bctg, + op_bxh, op1_bxhg, op2_bxhg, op_bxle, op1_bxleg, op2_bxleg, + op1_brct, op2_brct, op1_brctg, op2_brctg, op_brxh, op1_brxhg, + op2_brxhg, op_brxle, op1_brxlg, op2_brxlg): New enum values. + (is_rsi, is_rie): New insn format decoder routines. + (s390_displaced_step_fixup): New function. + (s390_gdbarch_init): Install displaced stepping routines. + +2009-09-27 Ulrich Weigand <uweigand@de.ibm.com> + + * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): + Add linux-tdep.o to gdb_target_obs. + (s390*-*-*): Likewise. + +2009-09-27 Don Lee <don.lee@sunplusct.com> + + * score-tdep.c: Comment out some simulator dependent codes. + * score-tdep.h: Delete some simulator dependent macro definitions. + +2009-09-27 Hui Zhu <teawater@gmail.com> + + * record.c (record_open): Change "query" to "error". + (cmd_record_stop): Change "query" to "printf_unfiltered". + +2009-09-26 Pierre Muller <muller@ics.u-strasbg.fr> + + * i386-nat.c (i386_stopped_data_address): Also check that + hitted watch register is not vacant. + +2009-09-25 Tom Tromey <tromey@redhat.com> + + PR python/10664: + * language.h (struct language_defn) <la_get_string>: Add + 'char_type' argument. + (LA_GET_STRING): Likewise. + (default_get_string, c_get_string): Update. + * language.c (default_get_string): Add 'char_type' argument. + * c-valprint.c (c_textual_element_type): Rename from + textual_element_type. No longer static. Update callers. + * c-lang.h (c_textual_element_type): Declare. + * c-lang.c (c_get_string): Add 'char_type' argument. + +2009-09-25 Tom Tromey <tromey@redhat.com> + + * charset.c (iconv_open): Use UTF-16 and UTF-32, not UCS-2 and + UCS-4. + (iconv): Rename 'ucs_flag'. + (GDB_DEFAULT_TARGET_WIDE_CHARSET): Use UTF-32. + * c-lang.c (charset_for_string_type): Use UTF-16 and UTF-32, not + UCS-2 and UCS-4. + (convert_ucn): Use UTF-32. + +2009-09-25 Nick Roberts <nickrob@snap.net.nz> + + * mi/gdb-mi.el: Remove file. + +2009-09-23 Joel Brobecker <brobecker@adacore.com> + + * record.c (record_open, record_store_registers, record_xfer_partial): + Replace calls to nquery by calls to query. + +2009-09-23 John Wright <john.wright@hp.com> + + PR gdb/10684: + * event-top.c (command_line_handler): Terminate linebuffer before + xstrdup. + +2009-09-22 Joel Brobecker <brobecker@adacore.com> + + * solib.c (solib_bfd_open): Relax a bit the compatibility check. + +2009-09-22 Daniel Jacobowitz <dan@codesourcery.com> + + * source.c (forget_cached_source_info): Clear last_source_visited. + (init_last_source_visited): Delete. + (directory_command): Do not clear last_source_visited. Call + forget_cached_source_info only if required. + (unset_substitute_path_command, set_substitute_path_command): Call + forget_cached_source_info. + * mi/mi-cmd-env.c (mi_cmd_env_dir): Do not call + init_last_source_visited. + * defs.h (init_last_source_visited): Delete declaration. + +2009-09-22 Tom Tromey <tromey@redhat.com> + + PR gdb/10583: + * python/py-value.c (valpy_int): Use PyLong_FromLongLong. + (valpy_long): Likewise. + +2009-09-22 Tom Tromey <tromey@redhat.com> + + PR python/10680: + * eval.c (evaluate_subexp_standard) <do_call_it>: Handle internal + functions in EVAL_AVOID_SIDE_EFFECTS case. + +2009-09-22 Jie Zhang <jie.zhang@analog.com> + + * MAINTAINERS: Add myself under Write After Approval. + +2009-09-22 Pierre Muller <muller@ics.u-strasbg.fr> + + * windows-nat.c (ctrl_c_handler): Also handle CTRL_BREAK_EVENT. + +2009-09-18 Keith Seitz <keiths@redhat.com> + + * cp-support.h (cp_validate_operator): Declare new function. + * cp-support.c (cp_validate_operator): New function. + * linespec.c (decode_compound): For C++ check for a valid operator. + +2009-09-21 Keith Seitz <keiths@redhat.com> + + * c-exp.y (qualified_name): Call CHECK_TYPEDEF before deciding + that a type is not an aggregate type. + +2009-09-21 Jason Orendorff <jason.orendorff@gmail.com> + + PR python/10666: + * python/py-function.c (fnpy_init): Use xstrdup. + +2009-09-21 Jie Zhang <jie.zhang@analog.com> + + * doc/gdb.texinfo: Escape "{" and "}". + +2009-09-21 Phil Muldoon <pmuldoon@redhat.com> + + PR python/10633 + + * c-lang.c (c_printstr): Do not loop past options->print_max when + iterating with wchar_iterate. + +2009-09-21 Phil Muldoon <pmuldoon@redhat.com> + + * python/py-value.c (valpy_getitem): Test value before allowing + subscript operation. + +2009-09-21 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * amd64-linux-tdep.c (amd64_all_but_ip_registers_record): New + function. + (amd64_linux_syscall_record): Call + amd64_all_but_ip_registers_record if syscall is + sys_rt_sigreturn. + (AMD64_LINUX_redzone, AMD64_LINUX_xstate, + AMD64_LINUX_frame_size): New macros. + (amd64_linux_record_signal): New function. + (amd64_linux_init_abi): Call set_gdbarch_process_record_signal. + +2009-09-21 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * i386-linux-tdep.c (i386_all_but_ip_registers_record): New + function. + (i386_linux_intx80_sysenter_record): Call + i386_all_but_ip_registers_record if syscall is sys_sigreturn + or sys_rt_sigreturn. + (I386_LINUX_xstate, I386_LINUX_frame_size): New macros. + (i386_linux_record_signal): New function. + (i386_linux_init_abi): Call set_gdbarch_process_record_signal. + +2009-09-21 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * record.c (record_end_entry): New struct. + (record_type): Add end. + (record_arch_list_add_end): Set rec->u.end.sigval to + TARGET_SIGNAL_0. + (record_message_args): New struct. + (record_message): Call gdbarch_process_record_signal. + (do_record_message): Add argument "signal". + (record_resume): Ditto. + (record_wait): Ditto. Check record_list->u.end.sigval + in replay mode. + +2009-09-21 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * gdbarch.sh (process_record_signal): New interface. + +2009-09-19 Matt Rice <ratmice@gmail.com> (tiny change) + + Checked in by Joel Brobecker <brobecker@gnat.com> + * varobj.c (varobj_update): Initialize children_changed. + +2009-09-19 Vladimir Prus <vladimir@codesourcery.com> + + * mi/mi-cmd-stack.c (list_args_or_locals): Workaround + gcc warning. + +2009-09-19 Vladimir Prus <vladimir@codesourcery.com> + + * mi/mi-cmds.h (mi_cmd_stack_list_variables): Declare. + * mi/mi-cmds.c (mi_cmds): Register -stack-list-variables. + * mi/mi-cmd-stack.c (enum what_to_list): New. + (list_args_or_locals): Accept what_to_list parameter. + Use 'variables' as output name of all are requested. + (mi_cmd_stack_list_variables): New. + (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Adjust. + +2009-09-19 Eli Zaretskii <eliz@gnu.org> + + * config/djgpp/fnchange.lst: Add missing edits. + +2009-09-18 Maxim Grigoriev <maxim2405@gmail.com> + + * xtensa-tdep.c (call0_analyze_prologue): Replace INT_MAX by UNIT_MAX. + +2009-09-18 Jan Kratochvil <jan.kratochvil@redhat.com> + + * objfiles.c (free_objfile): Clear SYMFILE_OBJFILE if it is OBJFILE. + * rs6000-nat.c (vmap_ldinfo): Only assertion check SYMFILE_OBJFILE now. + * symfile.c (syms_from_objfile, symbol_file_clear): Likewise. + +2009-09-18 Ulrich Weigand <uweigand@de.ibm.com> + + * rs6000-tdep.c (rs6000_builtin_type_vec128): Add v2_double + union member. + +2009-09-17 Joel Brobecker <brobecker@adacore.com> + + Fix a build failure on pa-hpux: + * gdb_ptrace.h (PT_SYSCALL): Define here if not already defined. + * inf-ttrace.c (inf_ttrace_wait): Fix compilation failure + introduced after field syscall_id inside struct target_waitstatus + has been renamed into syscall_number. + +2009-09-16 H.J. Lu <hongjiu.lu@intel.com> + + PR gdb/10649 + * Makefile.in (GDB_DATADIR_PATH): Renamed to ... + (GDB_DATADIR): This. + (xml-syscall-install): Updated. + +2009-09-16 Joel Brobecker <brobecker@adacore.com> + + GDB 7.0 branch created (branch timestamp: 2009-09-16 19:00 UTC) + * version.in: Bump version to 7.0.50.20090916-cvs. + +2009-09-15 Tom Tromey <tromey@redhat.com> + + * varobj.h (varobj_update_result_t) <new>: New field. + (varobj_get_child_range, varobj_set_child_range): Declare. + (varobj_list_children): Update. + (varobj_enable_pretty_printing, varobj_has_more) + (varobj_pretty_printed_p): Declare. + * varobj.c (pretty_printing): New global. + (varobj_enable_pretty_printing): New function. + (struct varobj_root) <from, to, constructor, child_iter, + saved_item>: New fields. + (varobj_create): Don't call install_default_visualizer. + (instantiate_pretty_printer): Don't use value_copy. + (varobj_has_more): New function. + (restrict_range): New function. + (install_dynamic_child): Likewise. + (dynamic_varobj_has_child_method): Likewise. + (update_dynamic_varobj_children): Remove 'new_and_unchanged' + argument; add 'new', 'unchanged', 'from', and 'to' arguments. + Rewrite. + (varobj_get_num_children): Call update_dynamic_varobj_children. + (varobj_list_children): Add 'from' and 'to' arguments. Ignore + result of update_dynamic_varobj_children. Don't call + install_default_visualizer. Restrict result range. + (varobj_add_child): Don't call install_default_visualizer. + (varobj_pretty_printed_p): New function. + (install_visualizer): Rewrite. Move earlier in file. + (install_default_visualizer): Likewise. + (construct_visualizer): New function. + (install_new_value_visualizer): Likewise. + (install_new_value): Don't call release_value. Special case + pretty-printed objects. Use value_incref. Rearrange "changed" + logic. + (varobj_get_child_range): New function. + (varobj_set_child_range): Likewise. + (varobj_set_visualizer): Rewrite. + (varobj_update): Rewrite pretty-printing logic. + (new_variable): Initialize new fields. + (free_variable): Destroy new fields. + (value_of_root): Copy 'from' and 'to'. + (my_value_of_variable): Handle pretty-printers. + (value_get_print_value): Rework pretty-printing logic. + (cplus_describe_child): Don't use release_value. + * mi/mi-cmds.h (mi_cmd_enable_pretty_printing) + (mi_cmd_var_set_update_range): Declare. + * mi/mi-cmds.c (mi_cmds): Add enable-pretty-printing and + var-set-update-range. + * mi/mi-cmd-var.c (print_varobj): Update. Emit "dynamic" + attribute. + (mi_cmd_var_create): Emit "has_more" attribute. + (mi_cmd_var_set_format): Plug memory leak. + (mi_print_value_p): Replace 'type' argument with 'var'. Handle + pretty-printed varobjs. + (mi_cmd_var_list_children): Accept 'from' and 'to' arguments. + Emit "has_more" attribute. + (mi_cmd_var_evaluate_expression): Plug memory leak. + (mi_cmd_var_assign): Likewise. + (varobj_update_one): Likewise. Emit "dynamic", "has_more", and + "new_children" attributes. + (mi_cmd_enable_pretty_printing): New function. + (mi_cmd_var_set_update_range): Likewise. + +2009-09-15 Doug Evans <dje@google.com> + + * dwarf2expr.h (dwarf_value_location): Add more comments describing + enum values. + (struct dwarf_stack_value): New struct. + (struct dwarf_expr_context): Change type of `stack' from CORE_ADDR* + to struct dwarf_stack_value*. + (struct dwarf_expr_piece): Move `v.value' into its own struct, v.expr, + all uses updated. Add v.expr.in_stack_memory. + (dwarf_expr_push): Update declaration. + (dwarf_expr_fetch_in_stack_memory): Declare. + * dwarf2expr.c (dwarf_expr_grow_stack): Update calculation of + size of stack value. + (dwarf_expr_push): New arg in_stack_memory, all callers updated. + (dwarf_expr_fetch_in_stack_memory): New function. + (add_piece): Set in_stack_memory for non-literal values. + (execute_stack_op): Allow ops to specify whether the value is on the + program's stack. + (execute_stack_op, case DW_OP_fbreg): Mark value as in stack memory. + (execute_stack_op, case DW_OP_call_frame_cfa): Ditto. + (execute_stack_op, case DW_OP_dup): Copy in_stack_memory flag. + (execute_stack_op, cases DW_OP_pick, DW_OP_over): Ditto. + (execute_stack_op, cases DW_OP_swap, DW_OP_rot): Update type of + dwarf stack value. + * dwarf2loc.c (read_pieced_value): Call read_stack for values known + to be on the program's stack. + (dwarf2_evaluate_loc_desc, case DWARF_VALUE_MEMORY): Call + set_value_stack only for objects known to be in stack memory. + * dwarf2-frame.c (execute_stack_op): New arg initial_in_stack_memory, + all callers updated. + + * target.c (memory_xfer_partial): Pass correct length to dcache_update. + +2009-09-15 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix gcc-4.5 HEAD warnings for enum ada_operator. + * Makefile.in (HFILES_NO_SRCDIR): Add ada-operator.inc. + * ada-lang.h (enum ada_operator): Move it to ... + * ada-operator.inc: ... a new file. + * expression.h (enum exp_opcode): Include ada-operator.inc. + New element OP_UNUSED_LAST. Update comment for OP_EXTENDED0. + + Fix gcc-4.5 HEAD warnings for GDB_FORM_cached_string. + * dwarf2read.c (GDB_FORM_cached_string) + (dwarf_form_name <GDB_FORM_cached_string>): Remove. + (struct attribute <dwarf_form>): Reduce the bit width. + (struct attribute <string_is_canonical>, DW_STRING_IS_CANONICAL): New. + (read_attribute_value <DW_FORM_string>) + (read_attribute_value <DW_FORM_strp>): Initialize + DW_STRING_IS_CANONICAL. + (dwarf2_name, dump_die_shallow <DW_FORM_string>) + (dump_die_shallow <DW_FORM_strp>): Update the code using former + GDB_FORM_cached_string. + +2009-09-14 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com> + + * amd64-linux-tdep.c: Include xml-syscall.h header, define the XML + syscall name for the architecture. + (amd64_linux_get_syscall_number): New function. + (amd64_linux_init_abi): Register the correct functions for syscall + catchpoint; set the correct syscall file name. + * breakpoint.c: New include: xml-syscall.h. + (set_raw_breakpoint_without_location): Setting the parameters + for the catch syscall feature. + (insert_catch_syscall): New. + (remove_catch_syscall): New. + (breakpoint_hit_catch_syscall): New. + (print_it_catch_syscall): New. + (print_one_catch_syscall): New. + (print_mention_catch_syscall): New. + (catch_syscall_breakpoint_ops): New. + (syscall_catchpoint_p): New. + (create_catchpoint_without_mention): New. + (create_catchpoint): Modified in order to use + create_catchpoint_without_mention. + (create_syscall_event_catchpoint): New. + (clean_up_filters): New. + (catch_syscall_split_args): New. + (catch_syscall_command_1): New. + (delete_breakpoint): Add cleanup for catch syscall. + (is_syscall_catchpoint_enabled): New. + (catch_syscall_enabled): New. + (catching_syscall_number): New. + (catch_syscall_completer): New completer function. + (add_catch_command): Add the completer function for catchpoints. + * breakpoint.h (syscalls_to_be_caught): New vector. + (catch_syscall_enabled): New. + (catching_syscall_number): New. + * gdbarch.c: Regenerated. + * gdbarch.h: Regenerated. + * gdbarch.sh: Add syscall catchpoint functions and structures. + (get_syscall_number): New. + (UNKNOWN_SYSCALL): New definition. + * i386-linux-nat.c (i386_linux_resume): Select the proper request + to be made for ptrace() considering if we are catching syscalls + or not. + * i386-linux-tdep.c: Include xml-syscall.h header, define the XML + syscall name for the architecture. + (i386_linux_get_syscall_number): New. + (i386_linux_init_abi): Register the correct functions for syscall + catchpoint; set the correct syscall file name. + * inf-child.c (inf_child_set_syscall_catchpoint): New. + (inf_child_target): Assign default values to target_ops. + * inf-ptrace.c (inf_ptrace_resume): Select the proper request + to be made for ptrace() considering if we are catching syscalls + or not. + * inferior.h (struct inferior): Included new variables + any_syscall_count, syscalls_counts and total_syscalls_count, + used to keep track of requested syscall catchpoints. + * infrun.c (resume): Add syscall catchpoint. + (deal_with_syscall_event): New. + (handle_inferior_event): Add syscall entry/return events. + (inferior_has_called_syscall): New. + * linux-nat.c: Define some helpful variables to track wether we have + support for the needed ptrace option. + (linux_test_for_tracesysgood): New. + (linux_supports_tracesysgood): New. + (linux_enable_tracesysgood): New. + (linux_enable_event_reporting): Save the current used ptrace + options. + (linux_child_post_attach): Calling linux_enable_tracesysgood. + (linux_child_post_startup_inferior): Likewise. + (linux_child_set_syscall_catchpoint): New function. + (linux_handle_extended_wait): Handle the case which the inferior stops + because it has called or returned from a syscall. + (linux_target_install_ops): Install the necessary functions to handle + syscall catchpoints. + * linux-nat.h (struct lwp_info): Include syscall_state into the + structure, which indicates if we are in a syscall entry or return. + * ppc-linux-tdep.c: Include xml-syscall.h header, define the XML + syscall filename for the arch. + (ppc_linux_get_syscall_number): New. + (ppc_linux_init_abi): Register the correct functions for syscall + catchpoint; setting the correct name for the XML syscall file. + * target.c (update_current_target): Update/copy functions related to + syscall catchpoint. + (target_waitstatus_to_string): Add syscall catchpoint entry/return + events. + * target.h (struct target_waitstatus): Add syscall number. + (struct syscall): New struct to hold information about syscalls + in the system. + (struct target_ops): Add ops for syscall catchpoint. + (inferior_has_called_syscall): New. + (target_set_syscall_catchpoint): New. + * xml-support.c (xml_fetch_content_from_file): New function, + transferred from xml-tdesc.c. + * xml-support.h (xml_fetch_content_from_file): New. + * xml-tdesc.c (fetch_xml_from_file): Function removed; + transferred to xml-support.c. + (file_read_description_xml): Updated to use the new + xml_fetch_content_from_file function. + * syscalls/gdb-syscalls.dtd: New definition file for syscall's XML + support. + * syscalls/amd64-linux.xml: New file containing information about + syscalls for GNU/Linux systems that use amd64 architecture. + * syscalls/i386-linux.xml: New file containing information about + syscalls for GNU/Linux systems that use i386 architecture. + * syscalls/ppc-linux.xml: New file containing information about + syscalls for GNU/Linux systems that use PPC architecture. + * syscalls/ppc64-linux.xml: New file containing information about + syscalls for GNU/Linux systems that use PPC64 architecture. + * xml-syscall.c: New file containing functions for manipulating + syscall's XML files. + * xml-syscall.h: New file, exporting the functions above mentioned. + * Makefile.in: Support for relocatable GDB datadir and XML + syscall. + * NEWS: Added information about the catch syscall feature. + +2009-09-14 Doug Evans <dje@google.com> + + * target.c (memory_xfer_partial): Only update dcache after we know + the write succeeded. + +2009-09-14 Paul Pluzhnikov <ppluzhnikov@google.com> + + *minsyms.c (lookup_minimal_symbol_by_pc_section_1): Assert non-NULL + section. + (lookup_minimal_symbol_by_pc_section): Check for NULL section. + (lookup_minimal_symbol_by_pc): Adjust. + +2009-09-14 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objfiles.c (qsort_cmp): Remove asserts. + (insert_section_p, filter_debuginfo_sections): New function. + (filter_overlapping_sections): Likewise. + (update_section_map): Adjust. + +2009-09-13 Daniel Jacobowitz <dan@codesourcery.com> + + * frame.c (get_frame_id): Default to outer_frame_id if the this_id + method does not supply an ID. Assert that the result is not + null_frame_id. + (outer_frame_id): New. + (frame_id_p): Accept outer_frame_id. + (frame_id_eq): Allow outer_frame_id to be equal to itself. + (frame_find_by_id): Revert previous local workarounds. + (get_prev_frame_1): Adjust end-of-stack check to test outer_frame_id. + * frame.h (null_frame_id, frame_id_p): Update comments. + (outer_frame_id): Declare. + * infrun.c (handle_inferior_event): Do not treat all steps from the + outermost frame as subroutine calls. + + * libunwind-frame.c (libunwind_frame_this_id): Do not clear THIS_ID. + * hppa-tdep.c (hppa_stub_frame_this_id): Likewise. + * ia64-tdep.c (ia64_frame_this_id): Likewise. + (ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id): + Use outer_frame_id instead of null_frame_id. + * amd64obsd-tdep.c (amd64obsd_trapframe_cache): Use outer_frame_id. + * i386obsd-tdep.c (i386obsd_trapframe_cache): Likewise. + * inline-frame.c (inline_frame_this_id): Refuse outer_frame_id. + * thread.c (restore_selected_frame): Update comment and remove + frame_id_p check. + +2009-09-11 Doug Evans <dje@google.com> + + * dwarf2expr.c (execute_stack_op, case DW_OP_piece): Delete unused + local addr_or_regnum. + + * objfiles.c (struct objfile_data): Delete member cleanup and replace + with save, free. + (register_objfile_data_with_cleanup): Delete arg cleanup and replace + with save, free. All callers updated. + (clear_objfile_data): Replace cleanup loop with separate save and + free loops. + * objfiles.h (register_objfile_data_with_cleanup): Update. + * arm-tdep.c (arm_objfile_data_free): Renamed from + arm_objfile_data_cleanup, all callers updated. + * dwarf2read.c (dwarf2_per_objfile_free): Renamed from + dwarf2_per_objfile_cleanup, all callers updated. + * python/py-objfile.c (py_free_objfile): Renamed from clean_up_objfile, + all callers updated. + * python/py-type.c (save_objfile_types): Renamed from + clean_up_objfile_types, all callers updated. + +2009-09-11 Tom Tromey <tromey@redhat.com> + + * dwarf2loc.c (struct piece_closure) <arch>: New field. + (dwarf2_evaluate_loc_desc): Update. + (dwarf2_loc_desc_needs_frame): Likewise. + (allocate_piece_closure): Initialize new field. + (read_pieced_value): Update. + (write_pieced_value): Update. + (copy_pieced_value_closure): Update. + * dwarf2expr.h (enum dwarf_value_location): New. + (struct dwarf_expr_context) <in_reg>: Remove. + <location, len, data>: New fields. + (struct dwarf_expr_piece) <in_reg, value>: Remove. + <location, v>: New fields. + * dwarf2expr.c (add_piece): Remove in_reg, value arguments. + Update. + (require_composition): New function. + (execute_stack_op): Update. + <DW_OP_implicit_value, DW_OP_stack_value>: New cases. + <DW_OP_reg0>: Set location, not in_reg. + <DW_OP_regx>: Likewise. Use require_composition. + <DW_OP_fbreg>: Update. + <DW_OP_piece>: Likewise. + * dwarf2-frame.c (execute_stack_op): Update. + +2009-09-10 Anthony Green <green@moxielogic.com> + + * moxie-tdep.c (moxie_analyze_prologue): Recognize new prologue + sequences. + +2009-09-10 Michael Snyder <msnyder@vmware.com> + + * remote.c (PACKET_bc, PACKET_bs): New enums. + (remote_protocol_features): Add ReverseStep, ReverseContinue. + (remote_resume): Check for reverse capability. + (_initialize_remote): Add packet config for "bs" and "bc" packets. + * NEWS (new options): Mention set/show for "bs" and "bc" packets. + +2009-09-10 Joel Brobecker <brobecker@adacore.com> + + * top.c (interactive_mode): New static variable. + (show_interactive_mode): New function. + (input_from_terminal_p): If interactive_mode is not auto, then + use that rather than checking the stdin settings. + (init_main): Add "set/show interactive-mode" command. + * NEWS: Add entry for new "set/show interactive-mode" command. + +2009-09-10 Joel Brobecker <brobecker@adacore.com> + + * configure.ac: Fix the names of the python source and object files + following the renaming done in an earlier change. + * configure: Regenerate. + +2009-09-08 Joel Brobecker <brobecker@adacore.com> + + Fix a build failure on AIX. + * rs6000-nat.c (vmap_exec): Rewrite using target_get_section_table + instead of relying on the to_sections/to_section_end target_ops + field, since the latter have been removed in a previous patch. + +2009-09-08 Thiago Jung Bauermann <thiago.bauermann@gmail.com> + + * Makefile.in (py-cmd.o): Renamed from python-cmd.o. Updated + references. + (py-frame.o): Renamed from python-frame.o. Updated references. + (py-function.o): Renamed from python-function.o. Updated references. + (py-objfile.o): Renamed from python-objfile.o. Updated references. + (py-prettyprint.o): Renamed from python-prettyprint.o. Updated + references. + (py-type.o): Renamed from python-type.o. Updated references. + (py-utils.o): Renamed from python-utils.o. Updated references. + (py-value.o): Renamed from python-value.o. Updated references. + * py-cmd.c: Renamed from python-cmd.c. + * py-frame.c: Renamed from python-frame.c. + * py-function.c: Renamed from python-function.c. + * py-objfile.c: Renamed from python-objfile.c. + * py-prettyprint.c: Renamed from python-prettyprint.c. + * py-type.c: Renamed from python-type.c. + * py-utils.c: Renamed from python-utils.c. + * py-value.c: Renamed from python-value.c. + +2009-09-08 Joel Brobecker <brobecker@adacore.com> + + Avoid quadratic behavior when computing the value of a register. + * frame.c (frame_stash): New static constant. + (frame_stash_add, frame_stash_find, frame_stash_invalidate): + New functions. + (get_frame_id): Minor reformatting. Add the frame to the frame stash. + (frame_find_by_id): Search the frame stash first before walking all + frames starting from te current_frame. + (reinit_frame_stash): Add call to frame_stash_invalidate (); + +2009-09-08 Joel Brobecker <brobecker@adacore.com> + + * block.c (contained_in): Return zero for nested functions. + * blockframe.c (block_innermost_frame): Delete unreferenced local + variable. + +2009-09-08 Doug Evans <dje@google.com> + + * target.c (initialize_targets): Fix thinko in stack_cache_enabled_p. + +2009-09-08 Michael Snyder <msnyder@vmware.com> + + * amd64-linux-tdep.h (enum amd64_syscall): New enum consts, + to replace literal consts used in amd64-linux-tdep.c + * linux-record.h (enum gdb_syscall): New enum consts, to replace + literal consts used in amd64-linux-tdep.c and linux-record.c. + * amd64-linux-tdep.c (amd64_canonicalize_syscall): New function, + translate from native amd64 Linux syscall id to internal gdb id. + (amd64_linux_syscall_record): Switch statement abstracted out + and replaced with a call to amd64_canonicalize_syscall. + * linux-record.c (record_linux_system_call): Replace literal + consts with enum consts. + * i386-linux-tdep.c (i386_canonicalize_syscall): New function, + trivially translate from native i386 Linux syscalls to gdb syscalls. + (i386_linux_intx80_sysenter_record): + +2009-09-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> + + * gdb/Makefile.in (check//%): Parse 'config.status --version' + output to recreate the configuration from the testsuite directory, + rather than running 'config.status --recheck' from a different + build directory. Let configure do the recursion rather than + doing it manually. + +2009-09-08 Jan Kratochvil <jan.kratochvil@redhat.com> + + * ia64-tdep.c (ia64_memory_remove_breakpoint): Call do_cleanups + before a return. + +2009-09-08 Jan Kratochvil <jan.kratochvil@redhat.com> + + * ia64-tdep.c (ia64_memory_insert_breakpoint) + (ia64_memory_remove_breakpoint): Return immediately if any of memory + reads fail. Do not combine the VAL values. + +2009-09-08 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix ia64 shadowing of breakpoints in multiple slots of a single bundle. + * ia64-tdep.c (ia64_memory_insert_breakpoint): New call + of make_show_memory_breakpoints_cleanup with parameter 0. Move the + reading of SHADOW_CONTENTS to this memory state point of code. Update + comment for the memory re-read. + +2009-09-07 Michael Snyder <msnyder@vmware.com> + + * record.c: Minor comment and white space fix-ups. + +2009-09-07 Jan Kratochvil <jan.kratochvil@redhat.com> + + * m68k-tdep.c (m68k_gdbarch_init): Allocate TDEP as cleared. + * sparc-tdep.c (sparc32_gdbarch_init): Allocate TDEP as cleared. + Remove explicit clearing of TDEP fields. + +2009-09-06 Hui Zhu <teawater@gmail.com> + + * i386-tdep.c (i386_record_check_override): Deleted. + (i386_record_lea_modrm): Ditto. + (i386_process_record): Ditto. + +2009-09-05 Eli Zaretskii <eliz@gnu.org> + + * config/djgpp/djconfig.sh: Fix for Autoconf 2.64. + * config/djgpp/config.sed: Fix for Autoconf 2.64. + +2009-09-05 Hui Zhu <teawater@gmail.com> + + * i386-tdep.c (i386_record_s): Add orig_addr. + (i386_record_check_override): New function. + (i386_record_lea_modrm): Call i386_record_check_override. + (i386_process_record): Ditto. + +2009-09-03 Nathan Froyd <froydnj@codesourcery.com> + + * dwarf2loc.c (struct piece_closure): New. + (allocate_piece_closure): New function. + (read_pieced_value): New function. + (write_pieced_value): New function. + (copy_pieced_value_closure): New function. + (free_pieced_value_closure): New function. + (pieced_value_funcs): Define. + (dwarf2_evaluate_loc_desc): Return a computed value for a variable + described with pieces. + +2009-09-03 Pierre Muller <muller@ics.u-strasbg.fr> + Richard Earnshaw <rearnsha@arm.com> + + * arm-tdep.c (displaced_write_reg): Replace call to abort by call + to internal_error. + +2009-09-02 Tom Tromey <tromey@redhat.com> + + * frame.h (frame_unwinder_is): Declare. + * frame.c (frame_unwinder_is): New function. + * dwarf2loc.c: Include dwarf2-frame.h. + (dwarf_expr_frame_cfa): New function. + (dwarf2_evaluate_loc_desc): Use it. + (needs_frame_frame_cfa): New function. + (dwarf2_loc_desc_needs_frame): Use it. + * dwarf2expr.h (struct dwarf_expr_context) <get_frame_cfa>: New + field. + * dwarf2expr.c (execute_stack_op) <DW_OP_call_frame_cfa>: New + case. + * dwarf2-frame.h (dwarf2_frame_cfa): Declare. + * dwarf2-frame.c (no_get_frame_cfa): New function. + (execute_stack_op): Use it. + (dwarf2_frame_cfa): New function. + +2009-09-02 Hui Zhu <teawater@gmail.com> + + * record.c (record_resume): Change "signal" to "siggnal". + +2009-09-01 Hui Zhu <teawater@gmail.com> + + * record.c (record_resume): Change "siggnal" to "signal". + +2009-09-01 Hui Zhu <teawater@gmail.com> + + * record.c (record_resume_siggnal): Deleted. + (record_resume): Ditto. + (record_wait): Change record_resume_siggnal to + TARGET_SIGNAL_0. + +2009-08-31 Jacob Potter <jdpotter@google.com> + Doug Evans <dje@google.com> + + Implement TARGET_OBJECT_STACK_MEMORY. + * NEWS: Add note on new "set stack-cache" option. + * corefile.c (read_stack): New function. + * dcache.c (dcache_struct): New member ptid. + (dcache_enable_p): Mark as obsolete. + (show_dcache_enabled_p): Flag option as deprecated. + (dcache_invalidate): Update ptid. + (dcache_invalidate_line): New function. + (dcache_read_line): No longer check cacheable attribute, stack + accesses get cached despite attribute. + (dcache_init): Set ptid. + (dcache_xfer_memory): Flush cache if from different ptid than before. + Update cache after write. + (dcache_update): New function. + (dcache_info): Report ptid. + (_initialize_dcache): Update text for `remotecache' to indicate it + is obsolete. + * dcache.h (dcache_update): Declare. + * dwarf2loc.c (dwarf2_evaluate_loc_desc): Mark values on stack with + set_value_stack. + * frame-unwind.c (frame_unwind_got_memory): Ditto. + * gdbcore.h (read_stack): Declare. + * memattr.c (mem_enable_command): Call target_dcache_invalidate + instead of dcache_invalidate. + (mem_disable_command, mem_delete_command): Ditto. + * target.c (stack_cache_enabled_p_1): New static global. + (stack_cache_enabled_p): New static global. + (set_stack_cache_enabled_p): New function. + (show_stack_cache_enabled_p): New function. + (target_dcache): Make static. + (target_dcache_invalidate): New function. + (target_load, target_resume): Call target_dcache_invalidate + instead of dcache_invalidate. + (memory_xfer_partial): New arg object, all callers updated. + Check for existing inferior before calling dcache routines. + When writing non-TARGET_OBJECT_STACK_MEMORY, notify dcache. + (target_xfer_partial): Call memory_xfer_partial for + TARGET_OBJECT_STACK_MEMORY. + (target_read_stack): New function. + (initialize_targets): Install new option `stack-cache'. + * target.h: Remove #include of dcache.h. + (enum target_object): New value TARGET_OBJECT_STACK_MEMORY. + (target_dcache): Delete. + (target_dcache_invalidate): Declare. + (target_read_stack): Declare. + * top.c (prepare_execute_command): New function. + (execute_command): Call prepare_execute_command + instead of free_all_values. + * top.h (prepare_execute_command): Declare. + * valops.c (get_value_at): New function. + (value_at): Guts moved to get_value_at. + (value_at_lazy): Similarly. + (value_fetch_lazy): Call read_stack for stack values. + * value.c (struct value): New member `stack'. + (value_stack, set_value_stack): New functions. + * value.h (value_stack, set_value_stack): Declare. + * mi/mi-main.c (mi_cmd_execute): Call prepare_execute_command + instead of free_all_values. + +2009-08-29 Hui Zhu <teawater@gmail.com> + + * i386-tdep.c (i386_process_record): Fix the error of string + ops instructions's handler. + +2009-08-28 Doug Evans <dje@google.com> + + * top.c (execute_command): Remove redundant comment. + +2009-08-28 Daniel Jacobowitz <dan@codesourcery.com> + + PR gdb/10565 + + * value.c (value_primitive_field): Do not save value_offset for + bitfields. + (unpack_bits_as_long): Do not read an entire ULONGEST. + +2009-08-28 Jan Kratochvil <jan.kratochvil@redhat.com> + + Support constant DW_AT_data_member_location by GCC PR debug/40659. + * dwarf2read.c + (dwarf2_add_field <DW_TAG_member> <DW_AT_data_member_location>): + Initialize BYTE_OFFSET to 0 by default. Explicitly check if + attr_form_is_block. + (dwarf2_add_field <DW_TAG_inheritance> <DW_AT_data_member_location>) + (read_common_block <DW_AT_data_member_location>): New variable + byte_offset. Fix crash on non-DW_BLOCK ATTR values. + +2009-08-28 Hui Zhu <teawater@gmail.com> + + * record.c (record_list_release_next): Change the first + record_reg to record_end. + +2009-08-27 Doug Evans <dje@google.com> + + * value.c (free_all_values): Tweak comment. + + * NEWS: Add note on "info sharedlibrary". + Remove note on "set print symbol-loading". + * main.c (captured_main): Pass !batch for from_tty when calling + symbol_file_add_main. + * objfiles.h (objfile_has_partial_symbols): Declare. + (objfile_has_full_symbols): Declare. + * objfiles.c (objfile_has_partial_symbols): New function. + (have_partial_symbols): Use it. + (objfile_has_full_symbols): New function. + (have_full_symbols): Use it. + * solib.c: Include interps.h. + (solib_read_symbols): Back out patch of 2008-07-10. + Add test for info_verbose for symbol loading messages for + consistency with symfile.c. + (info_sharedlibrary_command): Handle optional parameter of regex of + libraries to list. Inform user of libraries without debugging info. + Rewrite to use ui_out routines to format output. + * symfile.c (print_symbol_loading): Delete. + (symbol_file_add_with_addrs_or_offsets): Back out patch of 2008-07-10. + Print "no debugging symbols found" only if from_tty || info_verbose; + and only check file being loaded, not all files. + (reread_symbols): Test file being loaded for whether it has symbols, + not all files. + (__initialize_symfile): Delete `set print symbol-loading'. + * symfile.h (print_symbol_loading): Delete. + +2009-08-27 Jan Kratochvil <jan.kratochvil@redhat.com> + + * varobj.c (varobj_create): Error if the specified frame was not found + and it is needed. + +2009-08-26 Michael Snyder <msnyder@vmware.com> + + * i386-tdep.c (i386_process_record): Break out of prefix loop + if not amd64. Otherwise inc/dec instructions are lost. + +2009-08-25 Keith Seitz <keiths@redhat.com> + + * c-exp.y (yylex): Add cxx_only check for tokentab2 and tokentab3 + searches. + (tokentab3): Add cxx_only for DOT_STAR. + +2009-08-25 Pedro Alves <pedro@codesourcery.com> + + * inferior.c (print_inferior): Align columns left. Remove header + for the the "current" column. Rename column "Id" to "Num". + Rename column "PID" to "Description". Print if there's no selected + inferior. + +2009-08-25 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix ia64 start crash when GDB built with -lmcheck. + * ia64-tdep.c (ia64_gdbarch_init): Allocate TDEP as cleared. Remove + specific clearing of TDEP SIGCONTEXT_REGISTER_ADDRESS and + PC_IN_SIGTRAMP. + +2009-08-24 Keith Seitz <keiths@redhat.com> + + * c-exp.y (tokentab3): Add new token, ARROW_STAR. Changed all users. + (tokentab2): Add new token, DOT_STAR. Changed all users. + +2009-08-24 Keith Seitz <keiths@redhat.com> + + * symtab.c (default_make_symbol_completion_list): Keep + ':', too, so that we can limit searches in namespaces + and classes. + +2009-08-24 Tom Tromey <tromey@redhat.com> + + * python/python-value.c (valpy_richcompare): Don't return from + inside a TRY_CATCH. + +2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> + + * CONTRIBUTE: Bump documented Autoconf version. + * configure.ac: Do not substitute datarootdir, htmldir, + pdfdir, docdir. Do not process --with-datarootdir, + --with-htmldir, --with-pdfdir, --with-docdir. + * configure: Regenerate. + + * aclocal.m4: Regenerate. + * config.in: Likewise. + * configure: Likewise. + * gnulib/Makefile.in: Likewise. + + * configure.ac: Use AC_USE_SYSTEM_EXTENSIONS instead of + AC_GNU_SOURCE, AC_AIX, AC_ISC_POSIX. + +2009-08-21 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objfiles.h (gdb_bfd_ref): New prototype. + * objfiles.c (gdb_bfd_ref): New function. + (allocate_objfile): Call it. + (gdb_bfd_unref): Adjust assertion. + * solib.c (solib_map_sections): Add reference. + (symbol_add_stub): Don't add reference here. + * symfile.c (reread_symbols): Add reference. + +2009-08-21 Ken Werner <ken@linux.vnet.ibm.com> + Doug Evans <dje@google.com> + + * jit.c (jit_event_handler): Use paddress to print target addresses. + Wrap printf string in _(). + +2009-08-21 Doug Evans <dje@google.com> + + * jit.c (jit_read_descriptor): New arg gdbarch, all callers updated. + (jit_read_code_entry, jit_register_code): Ditto. + (jit_event_handler): Ditto. + (jit_inferior_init): Renamed from previous jit_inferior_created_hook. + (jit_inferior_created_hook, jit_breakpoint_re_set): New functions. + (jit_inferior_created_observer): Renamed from + jit_inferior_created_hook1, all callers updated. + * jit.h (jit_breakpoint_re_set): Declare. + (jit_event_handler): Update prototype. + * breakpoint.c (breakpoint_re_set): Call jit_breakpoint_re_set instead + of jit_inferior_created_hook. + +2009-08-21 Hui Zhu <teawater@gmail.com> + + * record.c (record_wait): Change the argument of + record_beneath_to_wait to options. + +2009-08-20 Jacob Potter <jdpotter@google.com> + + Replace dcache with splay tree. + Remove partially implemented writeback support. + * dcache.c: Include splay-tree.h. + (LINE_SIZE_POWER): Change from 5 to 6. + (DCACHE_SIZE): Change from 64 to 4096. + (ENTRY_INVALID, ENTRY_VALID, ENTRY_DIRTY): Delete. + (state_chars): Delete. + (struct dcache_block): Clean up; remove state and anydirty fields. + (struct dcache_struct): Redefine as a splay tree and linked list. + (last_cache): Make static. + (dcache_invalidate, dcache_hit): Rewrite for new cache structure. + (dcache_read_line, dcache_alloc): Rewrite for new cache structure. + (dcache_write_line): Delete. + (dcache_writeback): Delete. + (dcache_peek_byte): Clean up; remove "invalid" state check. + (dcache_poke_byte): Rewrite for new cache structure; clarify comment. + (dcache_splay_tree_compare): New function. + (dcache_init, dcache_free): Rewrite for new cache structure. + (dcache_xfer_memory): Rewrite for new write-through cache structure. + (dcache_print_line): New function. + (dcache_info): Rewrite for new cache structure. + (_initialize_dcache): Update "info dcache" help text. + * dcache.h (dcache_xfer_memory): Update declaration. + * target.c (memory_xfer_partial): Update calls to dcache_xfer_memory. + +2009-08-19 Reid Kleckner <reid@kleckner.net> + + Add interface for JIT code generation. + * NEWS: Announce JIT interface. + * Makefile.in (SFILES): Add jit.c. + (HFILES_NO_SRCDIR): Add jit.h. + (COMMON_OBS): Add jit.o. + * jit.c: New file. + * jit.h: New file. + * breakpoint.h (enum bptype): Add bp_jit_event to enum. + * breakpoint.c: + (update_breakpoints_after_exec): Delete jit breakpoints after exec. + (bpstat_what): Update event table for bp_jit_event. + (print_it_typical): Added case for bp_jit_event. + (print_one_breakpoint_location): Added case for bp_jit_event. + (allocate_bp_location): Added case for bp_jit_event. + (mention): Added case for bp_jit_event. + (delete_command): Added case for bp_jit_event. + (breakpoint_re_set_one): Added case for bp_jit_event. + (breakpoint_re_set): Added call to jit_inferior_created_hook. + (create_jit_event_breakpoint): New. + * infrun.c (handle_inferior_event): Add handler for jit event. + (follow_exec): Add call to jit_inferior_created_hook. + +2009-08-19 Ulrich Weigand <uweigand@de.ibm.com> + + * value.c (enum internalvar_kind): Replace INTERNALVAR_SCALAR by + INTERNALVAR_INTEGER and INTERNALVAR_POINTER. + (union internalvar_data): Replace "scalar" member by "integer" + and "pointer". + (value_of_internalvar): Handle INTERNALVAR_INTEGER and + INTERNALVAR_POINTER instead of INTERNALVAR_SCALAR. + (get_internalvar_integer): Likewise. + (set_internalvar): Likewise. + (set_internalvar_integer): Likewise. + (preserve_one_internalvar): Likewise. + (value_from_pointer): Handle typedef'd pointer types. + +2009-08-18 Tom Tromey <tromey@redhat.com> + + * utils.c (add_internal_problem_command): Free set_doc and + show_doc. + * remote.c (add_packet_config_cmd): Free set_doc and show_doc. + * language.c (add_language): Free language_set_doc. + +2009-08-18 Tom Tromey <tromey@redhat.com> + + * Makefile.in (ALL_TARGET_OBS): Remove prologue-value.o, solib.o. + +2009-08-17 Ulrich Weigand <uweigand@de.ibm.com> + + * symfile.c (reread_symbols): Call objfiles_changed *before* + calling clear_symtab_users. + +2009-08-17 Michael Snyder <msnyder@vmware.com> + + * amd64-tdep.c: Add a frame unwinder for function epilogues. + (amd64_in_function_epilogue_p): New function. + (amd64_epilogue_frame_sniffer): New function. + (amd64_epilogue_frame_cache): New function. + (amd64_epilogue_frame_this_id): New function. + (amd64_epilogue_frame_unwind): New struct frame_unwind. + (amd64_init_abi): Hook the new unwinder. + + * amd64-linux-tdep.c (amd64_linux_init_abi): Set gdbarch to use + SVR4 method for skip_trampoline_code. + +2009-08-17 Pedro Alves <pedro@codesourcery.com>> + + * objfiles.c (objfile_relocate): Relocate the entry point before + relocating the section offsets. Flush the section map before + resetting breakpoints. + +2009-08-14 Doug Evans <dje@google.com> + + * symfile.c (find_separate_debug_file): Remove double free of + canon_name. + +2009-08-14 Pedro Alves <pedro@codesourcery.com> + + * top.c (any_thread_of): Delete. + (kill_or_detach): Use any_thread_of_process. + * top.c (print_inferior_quit_action): New. + (quit_confirm): Rewrite to print info about all inferiors. + * target.c (dispose_inferior): New. + (target_preopen): Use it. + +2009-08-14 Pedro Alves <pedro@codesourcery.com> + + * ui-file.h (ui_file_xstrdup): Mention that the length argument + may be NULL. + * ui-file.c (ui_file_xstrdup): Don't dereference LENGTH if it is + NULL. + * aix-thread.c (aix_thread_extra_thread_info): Pass NULL as length + parameter to ui_file_xstrdup. + * arm-tdep.c (_initialize_arm_tdep): Ditto. + * infrun.c (print_target_wait_results): Ditto. + * language.c (add_language): Ditto. + * linespec.c (cplusplus_error): Ditto. + * remote.c (escape_buffer): Ditto. + * typeprint.c (type_to_string): Ditto. + * utils.c (error_stream): Ditto. + * varobj.c (value_get_print_value): Ditto. + * xtensa-tdep.c (xtensa_verify_config): Replace `dummy' local with + `length' local. Pass it to ui_file_xstrdup, and avoid an strlen + call. + * gdbarch.sh (verify_gdbarch): Ditto. + * gdbarch.c: Regenerate. + * cli/cli-setshow.c (do_setshow_command): Pass NULL as length + parameter to ui_file_xstrdup. + * python/python-frame.c (frapy_str): Ditto. + * python/python-type.c (typy_str): Use the length local instead of + calling strlen. + * python/python-value.c (valpy_str): Pass NULL as length parameter + to ui_file_xstrdup. + +2009-08-13 Doug Evans <dje@google.com> + + * utils.c (gnu_debuglink_crc32): Store crc32_table as unsigned int + instead of unsigned long. + +2009-08-13 Tom Tromey <tromey@redhat.com> + + * varobj.c (update_dynamic_varobj_children): Don't use + value_copy. + * value.h: (preserve_one_value): Declare. + (value_prepend_to_list, value_remove_from_list): Remove. + * value.c (preserve_one_value): No longer static. + (preserve_values): Call preserve_python_values. + (value_prepend_to_list): Remove. + (value_remove_from_list): Remove. + * python/python.h (values_in_python): Don't declare. + (preserve_python_values): Declare. + * python/python-value.c (values_in_python): Change type. Move + lower. Now static. + (struct value_object): Add struct tag. + <next, prev>: New fields. + (valpy_dealloc): Update. + (note_value): New function. + (valpy_new): Use value_incref, note_value. + (preserve_python_values): New function. + (valpy_positive): Don't use value_copy. + (value_to_value_object): Use value_incref, note_value. + (convert_value_from_python): Update comment. + +2009-08-13 Pedro Alves <pedro@codesourcery.com> + + * remote.c (remote_pid_to_str): If printing a process id and we + don't know what the remote pid could be, output "Remote target"; + otherwise, use normal_pid_to_str. + +2009-08-13 Tom Tromey <tromey@redhat.com> + + * language.h (longest_raw_hex_string): Remove unused declaration. + +2009-08-13 Pedro Alves <pedro@codesourcery.com> + + PR gdb/8869: + + * language.c (language, type, range, case_sensitive): Make const. + (show_language_command): Don't call deprecated_show_value_hack. + Special case "auto". + (set_language_command): An unrecognized language is now an + internal error instead of a user error. Don't call set_lang_str. + (show_type_command): Don't call deprecated_show_value_hack. + Special case "auto". Use warning. + (set_type_command): An unrecognized type is now an internal error + instead of a user error. Output type check mismatch with language + here. Don't call set_type_str. + (show_range_command): Don't call deprecated_show_value_hack. + Special case "auto". Use warning. + (set_range_command): An unrecognized range check is now an + internal error instead of a warning. Output range check mismatch + with language here. Don't call set_range_str. + (show_case_command): Don't call deprecated_show_value_hack. + Special case "auto". Use warning. + (set_case_command): Don't call set_case_str. An unrecognized case + check is now an internal error instead of a warning. Output range + check mismatch with language here. Don't call set_case_str. + (set_type_range_case): Don't call set_type_str, set_range_str or + set_case_str here. + (set_lang_str, set_type_str, set_range_str, set_case_str): Delete. + (add_language): Install or reinstall the "set language" command + here, and make it an enum command. Build the enumeration and the + help string from the current list of known languages. + (_initialize_language): Don't install "set language" here. Make + "set check type", "set check range" and "set case-sensitive" enum + commands. Register the "auto" "local" and "unknown" languages in + that order. + +2009-08-13 Pedro Alves <pedro@codesourcery.com> + + Revert 2009-08-07 changes for PR gdb/8869: + + * language.c (set_language_command): Strip whitespace. + (set_type_command): Likewise. + (set_range_command): Likewise. + + * language.c (language_completer): New function. + (range_or_type_completer): New function. + (case_completer): New function. + (_initialize_language): Set completers. + * cli/cli-decode.c (add_setshow_string_cmd): Return the "set" + command. + (add_setshow_string_noescape_cmd): Likewise. + (add_setshow_integer_cmd): Likewise. + (add_setshow_uinteger_cmd): Likewise. + (add_setshow_zinteger_cmd): Likewise. + (add_setshow_zuinteger_cmd): Likewise. + * command.h (add_setshow_string_cmd, + add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd, + add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update. + +2009-08-12 Michael Snyder <msnyder@vmware.com> + + * remote.c (remote_add_inferior): Remove unused local. + (remote_add_thread): Ditto. + (read_ptid): Ditto. + (remote_current_thread): Ditto. + (remote_stop_ns): Ditto. + (remote_parse_stop_reply): Ditto. + (remote_get_pending_stop_replies): Ditto. + (remote_wait_ns): Ditto. + (remote_wait_as): Ditto. + (send_g_packet): Ditto. + (remote_fetch_registers): Ditto. + (store_register_using_P): Ditto. + (remote_store_registers): Ditto. + (remote_remove_breakpoint): Ditto. + (remote_write_qxfer): Ditto. + (remote_read_qxfer): Ditto. + +2009-08-11 Tom Tromey <tromey@redhat.com> + + * dwarf2loc.c (dwarf2_evaluate_loc_desc): Make a cleanup. + (dwarf2_loc_desc_needs_frame): Likewise. + * dwarf2expr.h (make_cleanup_free_dwarf_expr_context): Declare. + * dwarf2expr.c (free_dwarf_expr_context_cleanup): New function. + (make_cleanup_free_dwarf_expr_context): Likewise. + * dwarf2-frame.c (execute_stack_op): Make a cleanup. + +2009-08-10 Jan Kratochvil <jan.kratochvil@redhat.com> + + * objfiles.c (gdb_bfd_unref): Use the bfd_usrdata accessor. + * solib.c (symbol_add_stub): Likewise. + * symfile.c (symfile_bfd_open): Assert BFD_USRDATA is NULL. + +2009-08-10 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objfiles.c (qsort_cmp): Remove assert. + (preferred_obj_section): New function. + (update_section_map): Filter duplicates. + +2009-08-10 Tristan Gingold <gingold@adacore.com> + + * solib-darwin.c (find_program_interpreter): Simplify the code by + looking up for the load_dylinker command instead of reading the + corresponding (but deprecated) section. + (darwin_solib_create_inferior_hook): Adjust: do not free the + interpreter path. + +2009-08-10 Tristan Gingold <gingold@adacore.com> + + * i386-darwin-tdep.c (i386_m128_p): New function. + (i386_darwin_arg_type_alignment): Ditto. + (i386_darwin_push_dummy_call): Ditto. + (i386_darwin_init_abi): Define Darwin specific push_dummy_call. + Adjust long_double size. Adjust pc offset in setjump buffer. + +2009-08-10 Hui Zhu <teawater@gmail.com> + + Add Linux AMD64 process record support. + + * amd64-linux-tdep.c (amd64_linux_record_tdep): New variable. + This struct has the argument for the function + "record_linux_system_call". + (amd64_linux_syscall_record): New function. Parse the + system call instruction and call function + "record_linux_system_call" to record execute log. + (i386_linux_init_abi): Initialize "amd64_linux_record_tdep". + Set "amd64_linux_syscall_record" to "i386_syscall_record". + +2009-08-10 Hui Zhu <teawater@gmail.com> + + Add process record Linux system call 64 bits support. + + * linux-record.h (linux_record_tdep): Add size_pointer, + size_size_t, size_iovec and arg6. Change the values of + size_int, size_long and size_ulong to + gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT, + gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT, + gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT. + * i386-linux-tdep.c (i386_linux_init_abi): Ditto. + (i386_linux_intx80_sysenter_record): Add a check for system + call number. + * linux-record.c (record_linux_system_call): Make this + function support 64 bits. + +2009-08-10 Hui Zhu <teawater@gmail.com> + + Add AMD64 process record instruction set support. + + * i386-tdep.h (gdbarch_tdep): Add record_regmap for registers + because the AMD64's registers order in GDB is not same with + I386 instructions. + Add i386_syscall_record to be the syscall function handle + interface. + (record_i386_regnum): Number for record_regmap. + * i386-tdep.c (OT_QUAD): For 64 bits. + (i386_record_s): Add rex_x, rex_b, rip_offset and + popl_esp_hack for AMD64 instruction set. And regmap for + record_regmap. + (i386_record_lea_modrm_addr): Support AMD64 instruction set + 64 bits lea. + (i386_record_lea_modrm): Ditto. + (i386_record_push): New function. Record the execution log + of push. + (I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the + register. + (i386_process_record): Support AMD64 instruction set. + * amd64-tdep.c (amd64_record_regmap): For record_regmap. + (amd64_init_abi): Set amd64_record_regmap to record_regmap. + +2009-08-08 Pedro Alves <pedro@codesourcery.com> + + * bfd-target.c (struct target_bfd_data): New. + (target_bfd_xfer_partial): Adjust to get at the section table from + the new structure. + (target_bfd_get_section_table): Ditto. + (target_bfd_xclose): Ditto. Get the bfd pointer from the + target_bfd_data structure, from the section table. + (target_bfd_reopen): Store a struct target_bfd_data in the + target_ops to_data field, instead of a target_section_table. + +2009-08-08 Aleksandar Ristovski <aristovski@qnx.com> + Hui Zhu <teawater@gmail.com> + + * record.c (record_store_registers): Remove unused variable. + +2009-08-07 Tom Tromey <tromey@redhat.com> + + * language.c (set_language_command): Strip whitespace. + (set_type_command): Likewise. + (set_range_command): Likewise. + +2009-08-07 Tom Tromey <tromey@redhat.com> + + PR gdb/8869: + * language.c (language_completer): New function. + (range_or_type_completer): New function. + (case_completer): New function. + (_initialize_language): Set completers. + * cli/cli-decode.c (add_setshow_string_cmd): Return the "set" + command. + (add_setshow_string_noescape_cmd): Likewise. + (add_setshow_integer_cmd): Likewise. + (add_setshow_uinteger_cmd): Likewise. + (add_setshow_zinteger_cmd): Likewise. + (add_setshow_zuinteger_cmd): Likewise. + * command.h (add_setshow_string_cmd, + add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd, + add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update. + +2009-08-06 Paul Pluzhnikov <ppluzhnikov@google.com> + + gold/10400 + * dwarf2-frame.c (qsort_fde_cmp): Use stable sort. + +2009-08-06 Paul Pluzhnikov <ppluzhnikov@google.com> + + * dwarf2-frame.c (struct dwarf2_cie): Remove 'next'. + (struct dwarf2_cie_table): New. + (struct dwarf2_fde): Remove 'next'. + (struct dwarf2_fde_table): New. + (struct comp_unit): Remove 'cie'. + (bsearch_cie_cmp, bsearch_fde_cmp): New function. + (find_cie, dwarf2_frame_find_fde): Use bsearch. + (add_cie, add_fde): Use array instead of linked list. + (decode_frame_entry, decode_frame_entry_1): New parameters. + (qsort_fde_cmp): New function. + (dwarf2_build_frame_info): Adjust. + +2009-08-06 Don Lee <don.lee@sunplusct.com> + + * score-tdep.c: Support a new Sunplus CT S+core variant, S+core 3. + * score-tdep.h: Ditto. + * NEWS: Ditto. + * configure.tgt: Test do we have a simulator. + * MAINTAINERS: Add myself under target score + +2009-08-06 Nick Roberts <nickrob@snap.net.nz> + + * utils.c (defaulted_query): Don't ask for confirmation if server + prefix is used. + +2009-08-05 Tom Tromey <tromey@redhat.com> + + * spu-tdep.h (SPUADDR_SPU): Cast result to int. + +2009-08-04 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objfiles.h (OBJF_KEEPBFD): Delete. + (gdb_bfd_unref): New prototype. + * objfiles.c (gdb_bfd_unref): New function. + (free_objfile): Call gdb_bfd_unref. + * solib.c (free_so): Likewise. + (symbol_add_stub): Set refcount. + +2009-08-04 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * record.c (record_mem_entry): New field 'mem_entry_not_accessible'. + (record_arch_list_add_mem): Initialize 'mem_entry_not_accessible'. + (record_wait): Set 'mem_entry_not_accessible' flag if target + memory not readable. Don't try to change target memory if + 'mem_entry_not_accessible' is set. + +2009-08-03 Richard Guenther <rguenther@suse.de> + Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix memory corruption on reread of file through a symbolic link. + * symfile.c (find_separate_debug_file): Initialize CANON_NAME earlier. + Allocate DEBUGFILE with length based on CANON_NAME. Free CANON_NAME on + all the return paths. + +2009-08-03 Jim Ingham <jingham@apple.com> + Vladimir Prus <vladimir@codesourcery.com> + + Implement -break-commands + + * breakpoint.c (get_breakpoint, breakpoint_set_commands): New. + (commands_command): Use breakpoint_set_commands. + * breakpoint.h (get_breakpoint, breakpoint_set_commands): Declare. + + * mi/mi-cmds.h (mi_cmd_break_commands): New. + * mi/mi-cmds.c: Register -break-commands. + * mi/mi-cmd-break.c (mi_cmd_break_commands, mi_read_next_line) + (mi_command_line_array, mi_command_line_array_cnt) + (mi_command_line_array_ptr): New. + +2009-08-03 Jim Ingham <jingham@apple.com> + Vladimir Prus <vladimir@codesourcery.com> + + Refactor reading of commands + + * defs.h (read_command_lines_1): Declare. + * cli/cli-script.c (read_next_line): Only return string, + do not process. + (process_next_line): New, extracted from read_next_line. + (recurse_read_control_structure): Take a function pointer to the + read function. + (get_command_line) Pass the read_next_line as reader function + into recurse_read_control_structure. + (read_command_lines_1): New, extracted from... + (read_command_lines): ...here. + +2009-07-31 Kazu Hirata <kazu@codesourcery.com> + + * procfs.c (proc_set_current_signal): Populate mysinfo before + copying it to arg. + (proc_clear_current_signal): Likewise. + (proc_set_watchpoint): Populate pwatch before copying it to arg. + +2009-07-31 Michael Snyder <msnyder@vmware.com> + + * remote.c (store_register_using_P): Call putpkt and getpkt + directly instead of calling remote_send. + (store_registers_using_G): Ditto. + (fetch_register_using_p): Ditto. + + * remote.c (store_register_using_P): Make error msg more verbose. + (store_registers_using_G): Ditto. + (fetch_register_using_p): Ditto. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * spu-tdep.c: Include "infcall.h". + (spu_address_class_type_flags): New function. + (spu_address_class_type_flags_to_name): Likewise. + (spu_address_class_name_to_type_flags): Likewise. + (spu_pointer_to_address): Handle __ea pointers. + (spu_auto_flush_cache_p): New static variable. + (spu_objfile_from_frame): New function. + (flush_ea_cache, spu_attach_normal_stop): Likewise. + (show_spu_auto_flush_cache): Likewise. + (spu_gdbarch_init): Install address class handlers. + (_initialize_spu_tdep): Attach to normal_stop observer. + Install "set spu auto-flush-cache" / "show spu auto-flush-cache" + commands. + + * NEWS: Mention "set/show spu auto-flush-cache" commands. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * spu-tdep.c: Include "block.h". + (setspucmdlist, showspucmdlist): New static variables. + (spu_stop_on_load_p): Likewise. + (spu_catch_start): New function. + (show_spu_command, set_spu_command): New functions. + (show_spu_stop_on_load): Likewise. + (_initialize_spu_tdep): Attach spu_catch_start to new_objfile observer. + Install "set spu" / "show spu" prefix command handler. + Install "set spu stop-on-load" / "show spu stop-on-load" command. + + * NEWS: Mention "set/show spu stop-on-load" commands. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * ppc-linux-tdep.c: Include "solib.h", "solist.h", "exceptions.h", + "arch-utils.h", and "spu-tdep.h". + (spu_context_objfile, spe_context_lm_addr, spe_context_offset): + New static variables. + (spe_context_cache_ptid, spe_context_cache_address): Likewise. + (ppc_linux_spe_context_lookup): New function. + (ppc_linux_spe_context_inferior_created): Likewise. + (ppc_linux_spe_context_solib_loaded): Likewise. + (ppc_linux_spe_context_solib_unloaded): Likewise. + (ppc_linux_spe_context): Likewise. + (struct ppu2spu_cache, struct ppu2spu_data): New data types. + (ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register, + ppu2spu_unwind_register, ppu2spu_sniffer, + ppu2spu_dealloc_cache): New functions. + (ppu2spu_unwind): New static variable. + (ppc_linux_init_abi): Install cross-architecture unwinder. + (_initialize_ppc_linux_tdep): Attach to observers. + + * spu-tdep.c (struct spu2ppu_cache): New data type. + (spu2ppu_prev_arch, spu2ppu_this_id, spu2ppu_prev_register, + spu2ppu_sniffer, spu2ppu_dealloc_cache): New functions. + (spu2ppu_unwind): New static variable. + (spu_gdbarch_init): Install cross-architecture unwinder. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * target.h (enum strata): New value arch_stratum. + * target.c (target_require_runnable): Skip arch_stratum targets. + + * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add + solib-spu.o and spu-multiarch.o to gdb_target_obs. + * Makefile.in (ALL_TARGET_OBS): Add solib-spu.o and spu-multiarch.o. + (ALLDEPFILES): Add solib-spu.c and spu-multiarch.c. + + * solib-spu.c: New file. + * solib-spu.h: New file. + * spu-multiarch.c: New file. + + * spu-tdep.h (SPUADDR, SPUADDR_SPU, SPUADDR_ADDR): New macros. + + * spu-tdep.c (struct gdbarch_tdep): New member id. + (spu_gdbarch_id): New function. + (spu_lslr): New function. + + (spu_address_to_pointer): New function. + (spu_pointer_to_address): Support SPU ID address encoding. Use + spu_gdbarch_id and spu_lslr. + (spu_integer_to_address): Likewise. + (spu_frame_unwind_cache): Update for encoded addresses. + (spu_unwind_pc, spu_unwind_sp): Likewise. + (spu_read_pc, spu_write_pc): Likewise. + (spu_push_dummy_call): Likewise. + (spu_software_single_step): Likewise. + (spu_get_longjmp_target): Likewise. + (spu_overlay_update_osect): Likewise. + + (spu_dis_asm_print_address): New function. + (gdb_print_insn_spu): Likewise. + + (spu_gdbarch_init): Store SPU ID in tdep structure. + Install spu_address_to_pointer and gdb_print_insn_spu. + + * ppc-linux-tdep.c: Include "observer.h", "auxv.h", "elf/common.h" + and "solib-spu.h". + (ppc_linux_entry_point_addr): New static variable. + (ppc_linux_inferior_created): New function. + (ppc_linux_displaced_step_location): Likewise. + (ppc_linux_init_abi): Enable Cell/B.E. support if supported + by the target. + (_initialize_ppc_linux_tdep): Attach to inferior_created observer. + + * NEWS: Mention multi-architecture and Cell/B.E. debugging + capabilities. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * linux-nat.c: Include <sys/vfs.h>. + (SPUFS_MAGIC): Define. + (spu_enumerate_spu_ids): New function. + (linux_proc_xfer_spu): New function. + (linux_xfer_partial): Handle TARGET_OBJECT_SPU. + + (iterate_over_spus): New function. + (struct linux_spu_corefile_data): New data type. + (linux_spu_corefile_callback): New function. + (linux_spu_make_corefile_notes): New function. + (linux_nat_make_corefile_notes): Call it. + + * corelow.c (struct spuid_list): New data type. + (add_to_spuid_list): New function. + (core_xfer_partial): Handle TARGET_OBJECT_SPU. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * features/Makefile: Allow sub-platform specific expedite settings. + (WHICH): Add rs6000/powerpc-cell32l and rs6000/powerpc-cell64l. + (rs6000/powerpc-cell32l-expedite): Define. + (rs6000/powerpc-cell64l-expedite): Likewise. + * features/rs6000/powerpc-cell32l.xml: New file. + * features/rs6000/powerpc-cell64l.xml: New file. + * features/rs6000/powerpc-cell32l.c: New generated file. + * features/rs6000/powerpc-cell64l.c: New generated file. + + * regformats/rs6000/powerpc-cell32l.dat: New generated file. + * regformats/rs6000/powerpc-cell64l.dat: New generated file. + + * config/djgpp/fnchange.lst: Add mappings for new files. + + * ppc-linux-tdep.h (tdesc_powerpc_cell32l): Add prototype. + (tdesc_powerpc_cell64l): Likewise. + * ppc-linux-tdep.c: Include "features/rs6000/powerpc-cell32l.c" + and "features/rs6000/powerpc-cell64l.c". + (_initialize_ppc_linux_tdep): Initialize target descriptions. + (ppc_linux_spu_section): New function. + (ppc_linux_core_read_description): Detect Cell/B.E. core files. + * ppc-linux-nat.c (PPC_FEATURE_CELL): Define. + (ppc_linux_read_description): Detect Cell/B.E. architecture. + + * rs6000-tdep.c (rs6000_gdbarch_init): Do not trust BFD wordsize + if exec file is not PowerPC architecture. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * features/gdb-target.dtd (target): Accept optional + <compatible> elements. + (compatible): Define element. + + * target-descriptions.h (tdesc_compatible_p): New. + (tdesc_add_compatible): New. + * target-descriptions.c (arch_p): New VEC_P type. + (struct target_desc): New member compatible. + (free_target_description): Handle it. + (maint_print_c_tdesc_cmd): Likewise. + (tdesc_compatible_p): New function. + (tdesc_add_compatible): New function. + + * xml-tdesc.c (tdesc_end_compatible): New function. + (target_children): Handle <compatible> element. + + * arch-utils.c (choose_architecture_for_target): Accept target + description instead of BFD architecture as input. Query target + description for compatible architectures. + (gdbarch_info_fill): Update call. + + * NEWS: Mention <compatible> element of target descriptions. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * breakpoint.c (remove_breakpoints): If removing one breakpoint + location fails, still continue to remove other locations. + (remove_hw_watchpoints): Likewise. + (detach_breakpoints): Likewise. + +2009-07-31 Ulrich Weigand <uweigand@de.ibm.com> + + * breakpoint.h (enum enable_state): Add bp_startup_disabled. + (disable_breakpoints_before_startup): Add prototype. + (enable_breakpoints_after_startup): Likewise. + + * breakpoint.c (executing_startup): New static variable. + (describe_other_breakpoints): Handle bp_startup_disabled. + (check_duplicates_for): Likewise. + (disable_breakpoints_before_startup): New function. + (enable_breakpoints_after_startup): New function. + (create_breakpoint): Mark new breakpoints as bp_startup_disabled + if executing_startup flag is true. + (break_command_really): Likewise. + (breakpoint_re_set_one): Skip bp_startup_disabled breakpoints. + +2009-07-31 Julian Brown <julian@codesourcery.com> + + * arm-linux-tdep.c (arch-utils.h, inferior.h, gdbthread.h, symfile.h): + Include files. + (arm_linux_cleanup_svc, arm_linux_copy_svc): New. + (cleanup_kernel_helper_return, arm_catch_kernel_helper_return): New. + (arm_linux_displaced_step_copy_insn): New. + (arm_linux_init_abi): Initialise displaced stepping callbacks. + * arm-tdep.c (DISPLACED_STEPPING_ARCH_VERSION): New macro. + (ARM_NOP): New. + (displaced_read_reg, displaced_in_arm_mode, branch_write_pc) + (bx_write_pc, load_write_pc, alu_write_pc, displaced_write_reg) + (insn_references_pc, copy_unmodified, cleanup_preload, copy_preload) + (copy_preload_reg, cleanup_copro_load_store, copy_copro_load_store) + (cleanup_branch, copy_b_bl_blx, copy_bx_blx_reg, cleanup_alu_imm) + (copy_alu_imm, cleanup_alu_reg, copy_alu_reg) + (cleanup_alu_shifted_reg, copy_alu_shifted_reg, cleanup_load) + (cleanup_store, copy_extra_ld_st, copy_ldr_str_ldrb_strb) + (cleanup_block_load_all, cleanup_block_store_pc) + (cleanup_block_load_pc, copy_block_xfer, cleanup_svc, copy_svc) + (copy_undef, copy_unpred): New. + (decode_misc_memhint_neon, decode_unconditional) + (decode_miscellaneous, decode_dp_misc, decode_ld_st_word_ubyte) + (decode_media, decode_b_bl_ldmstm, decode_ext_reg_ld_st) + (decode_svc_copro, arm_process_displaced_insn) + (arm_displaced_init_closure, arm_displaced_step_copy_insn) + (arm_displaced_step_fixup): New. + (arm_gdbarch_init): Initialise max insn length field. + * arm-tdep.h (DISPLACED_TEMPS, DISPLACED_MODIFIED_INSNS): New + macros. + (displaced_step_closure, pc_write_style): New. + (arm_displaced_init_closure, displaced_read_reg) + (arm_process_displaced_insn, arm_displaced_init_closure) + (displaced_read_reg, displaced_write_reg, arm_displaced_step_copy_insn) + (arm_displaced_step_fixup): Add prototypes. + +2009-07-31 Pedro Alves <pedro@codesourcery.com> + Julian Brown <julian@codesourcery.com> + + * infrun.c (displaced_step_fixup): If this is a software + single-stepping arch, don't tell the target to single-step. + (maybe_software_singlestep): Return 0 if we're using displaced + stepping. + (resume): If this is a software single-stepping arch, and + displaced-stepping is enabled, use it for all single-step + requests. + +2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> + + * Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps) + (AUTOCONF, configure_deps, AUTOHEADER): New variables. + ($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in) + (am--refresh): New rules. + (stamp-h, config.status): List config.in and configure including + $(srcdir)/ prefix. + * aclocal.m4: Regenerate. + * configure: Regenerate. + +2009-07-30 Thomas Schwinge <tschwinge@gnu.org> + + * gnu-nat.c (add_task_commands) <stopped>: Register the correct + callback function. + +2009-07-30 H.J. Lu <hongjiu.lu@intel.com> + + * ia64-tdep.c (ia64_access_reg): Correct paddress. + +2009-07-30 Jan Kratochvil <jan.kratochvil@redhat.com> + + Replace public function varobj_list by all_root_varobjs iterator. + * mi/mi-cmd-var.c (struct mi_cmd_var_update, mi_cmd_var_update_iter): + New. + (mi_cmd_var_update): Replace the varobj_list call by all_root_varobjs. + Remove the variables rootlist, cr. New variable data. + * varobj.c (rootcount, varobj_list): Remove. + (install_variable, uninstall_variable): Remove the rootcount updates. + (all_root_varobjs): New function. + (varobj_invalidate): Use the all_root_varobjs call. Move the code to... + (varobj_invalidate_iter): ... a new function. + * varobj.h (varobj_list): Remove the prototype. + (all_root_varobjs): New prototype. + +2009-07-29 Paul Pluzhnikov <ppluzhnikov@google.com> + + PR gdb/6817 + * dbxread.c (read_dbx_symtab): Reduce stack use. + +2009-07-29 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix gcc-4.5 HEAD warnings. + * cp-name-parser.y (%union <typed_val_int>, %token GLOBAL) + (GLOBAL_CONSTRUCTORS, GLOBAL_DESTRUCTORS, demangler_special <GLOBAL>): + Remove. + (yylex <"global constructors keyed to ">) + (yylex <"global destructors keyed to ">): Base it on DEMANGLER_SPECIAL. + (cp_comp_to_string): Remove variables str, prefix and buf. Remove the + GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS handling. + (cp_print): Remove the GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS + handling. + +2009-07-28 Daniel Jacobowitz <dan@codesourcery.com> + + * NEWS: Mention ARM VFP support. + * target-descriptions.c (tdesc_register_type): Make public. + (tdesc_unnumbered_register): New function. + (tdesc_register_reggroup_p): Allow missing + pseudo_register_reggroup_p. + * target-descriptions.h (tdesc_register_type): Declare. + (tdesc_unnumbered_register): Declare. + * arm-tdep.c (arm_neon_quad_read, arm_neon_quad_write): New functions. + (arm_push_dummy_call): Use arm_neon_quad_write. + (arm_neon_double_type, arm_neon_quad_type): New functions. + (arm_register_type): Handle VFP and NEON registers. Override the + types of double-precision registers for NEON. Disable FPA registers + if they are not present. + (arm_dwarf_reg_to_regnum): Add current VFP and NEON register numbers. + (arm_return_value): Use arm_neon_quad_write and arm_neon_quad_read. + (arm_register_name): Handle VFP single and NEON quad registers. + (arm_pseudo_read, arm_pseudo_write): New functions. + (arm_gdbarch_init): Check for VFP and NEON in the target description. + Assign numbers to double-precision registers. Register VFP and NEON + pseudo registers. Remove a shadowed "i" variable. + * arm-tdep.h (enum gdb_regnum): Add ARM_D0_REGNUM and + ARM_D31_REGNUM. + (struct gdbarch_tdep): Add have_neon_pseudos, have_neon, + have_vfp_registers, have_vfp_pseudos, neon_double_type, + and neon_quad_type. + + * features/Makefile: Make expedite settings only architecture + specific. + (WHICH): Add new ARM descriptions. + * features/arm-with-neon.xml, features/arm-with-vfpv2.c, + features/arm-with-vfpv3.c, features/arm-vfpv2.xml, + features/arm-vfpv3.xml, features/arm-with-vfpv2.xml, + features/arm-with-vfpv3.xml, features/arm-with-neon.c: New files. + * regformats/arm-with-neon.dat, regformats/arm-with-vfpv2.dat, + regformats/arm-with-vfpv3.dat: Generate. + +2009-07-28 Daniel Jacobowitz <dan@codesourcery.com> + + * infrun.c (handle_inferior_event): Clear trap_expected after + stepping past a single-step breakpoint. + +2009-07-28 Joseph Myers <joseph@codesourcery.com> + + * arm-tdep.c (enum arm_vfp_cprc_base_type, + arm_vfp_cprc_unit_length, arm_vfp_cprc_reg_char, + arm_vfp_cprc_sub_candidate, arm_vfp_call_candidate, + arm_vfp_abi_for_function): New. + (arm_push_dummy_call): Handle VFP ABI. + (arm_extract_return_value, arm_store_return_value): Handle + ARM_FLOAT_VFP case. + (arm_return_value): Handle VFP ABI. + (arm_gdbarch_init): Default fp_model based on Tag_ABI_VFP_args for + EABI binaries. + +2009-07-28 Daniel Jacobowitz <dan@codesourcery.com> + + * arch-utils.c (displaced_step_at_entry_point): Do not call + gdbarch_convert_from_func_ptr_addr. + * cris-tdep.c: Remove outdated comment. + * infcall.c (call_function_by_hand): Do not call + gdbarch_convert_from_func_ptr_addr after entry_point_address. + * objfiles.c (entry_point_address): Call both + gdbarch_convert_from_func_ptr_addr and + gdbarch_addr_bits_remove. + +2009-07-28 Aleksandar Ristovski <aristovski@qnx.com> + + * nto-tdep.c (nto_thread_state_str): New array. + (nto_extra_thread_info): New function definition. + * nto-tdep.h (gdbthread.h): New include. + (private_thread_info): New struct. + (nto_extra_thread_info): New declaration. + * nto-procfs.c (procfs_thread_alive): Properly check if + thread is still alive. + (update_thread_private_data_name, update_thread_private_data): New + function definition. + (procfs_find_new_threads): Fetch thread private data. + (init_procfs_ops): Register to_extra_thread_info. + +2009-07-25 Pedro Alves <pedro@codesourcery.com> + + * stack.c (backtrace_command_1): Remove dead check of NULL current + frame. + +2009-07-23 Keith Seitz <keiths@redhat.com> + + * source.c (forward_search_command): Don't fclose the stream, + just run the cleanups. + (reverse_search_command): Likewise. + +2009-07-23 Paul Pluzhnikov <ppluzhnikov@google.com> + + * symtab.c (search_symbols): Add QUIT. + +2009-07-22 Paul Pluzhnikov <ppluzhnikov@google.com> + + * symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer. + +2009-07-22 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objfiles.h (objfiles_changed): New prototype. + * objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p. + (allocate_objfile, free_objfile): Must rebuild section map. + (objfile_relocate): Likewise. + (update_section_map, find_pc_section): Adjust. + (set_objfiles_updated_on_exe_change): Remove. + (set_objfiles_updated_on_solib_activity): Remove. + (_initialize_objfiles): Remove. + (objfiles_changed): New function. + * symfile.c (reread_symbols): Call objfiles_changed. + +2009-07-22 Hui Zhu <teawater@gmail.com> + + * record.c (record_xfer_partial): Call error When nquery + return "n". + +2009-07-21 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objfiles.c (objfiles_updated_p): New variable. + (qsort_cmp, bsearch_cmp, update_section_map): New function. + (find_pc_section): Use bsearch. + (set_objfiles_updated_on_exe_change): New function. + (set_objfiles_updated_on_solib_activity): New function. + (_initialize_objfiles): New function. + +2009-07-21 Michael Eager <eager@eagercon.com> + + * features/rs6000/powerpc-405.xml: New. + * rs6000-tdep.c: Add include & initialize for + powerpc-405.c, add 405 to variants. + * features/rs6000/powerpc-405.c: Generate. + +2009-07-21 Paul Pluzhnikov <ppluzhnikov@google.com> + + * utils.c (internal_vproblem): Always print failure message. + +2009-07-21 Daniel Jacobowitz <dan@codesourcery.com> + Vladimir Prus <vladimir@codesourcery.com> + + * valops.c (value_fetch_lazy): Handle bitfields explicitly. + (value_assign): Remove unnecessary FIXME. Honor the container + type of bitfields if possible. + * value.c (struct value): Add parent field. + (value_parent): New function. + (value_free): Free the parent also. + (value_copy): Copy the parent also. + (value_primitive_field): Do not read the contents of a lazy + value to create a child bitfield value. Set bitpos and offset + according to the container type if possible. + (unpack_bits_as_long): Rename from unpack_field_as_long. Take + field_type, bitpos, and bitsize instead of type and fieldno. + (unpack_field_as_long): Use unpack_bits_as_long. + * value.h (value_parent, unpack_bits_as_long): New prototypes. + +2009-07-21 Daniel Jacobowitz <dan@codesourcery.com> + + * value.c (struct value): Add reference_count field. + (allocate_value_lazy): Initialize reference_count. + (value_incref): New function. + (value_free): Check the reference count. + * value.h (value_incref): New prototype. + +2009-07-20 Marc Khouzam <marc.khouzam@ericsson.com> + + * utils.c (defaulted_query): Update comment and remove dead code. + +2009-07-20 Doug Evans <dje@google.com> + + Add support for "comdat types" from DWARF4. + * dwarf2read.c (dwarf2_per_objfile): New member types, + signatured_types. + (TYPES_SECTION): New macro. + (dwarf2_per_cu_data): Change size of length field from 30 bits + to 29 bits. New member from_debug_types. + (signatured_type): New struct. + (struct attribute): New union member signatured_type. + (DW_SIGNATURED_TYPE): New macro. + (dwarf2_attr_no_follow): New function. + (read_type_unit_scope): New function. + (follow_die_ref_or_sig, follow_die_sig): New functions. + (dwarf2_locate_sectoins): Handle .debug_types. + (dwarf2_build_psymtabs): Read .debug_types. + (read_type_comp_unit_head): New function. + (hash_type_signature, eq_type_signature): New functions. + (create_debug_types_hash_table): New function. + (lookup_signatured_type): New function. + (process_psymtab_comp_unit): Handle type units too. + (process_type_comp_unit, build_type_psymtabs): New functions. + (dwarf2_build_psymtabs_hard): Call build_type_psymtabs. + (load_partial_comp_unit): Assert not called for a type unit. + (skip_one_die): Handle DW_FORM_sig8. + (queue_comp_unit): Don't call load_full_comp_unit here, or + update read_in_chain. + (psymtab_to_symtab_1): Call read_signatured_type_at_offset for + type units, or load_full_comp_unit for comp units after + queue_comp_unit returns. + (load_full_comp_unit): Assert not called for type units. + (load_full_comp_unit): Update read_in_chain here. + (process_die): Handle DW_TAG_type_unit. + (read_structure_type): Look for signatured types. + (read_enumeration_type): Ditto. + (init_cu_die_reader): Handle .debug_types. + (read_comp_unit): Assert hash not computed yet. + (read_die_and_children): Expand debugging printf to handle .debug_types. + (read_partial_die): Handle DW_TAG_type_unit: + (find_patial_die): Handle .debug_types. + (read_attribute_value): Handle DW_FORM_sig8. + (die_type): Call follow_die_ref_or_sig instead of follow_die_ref. + (die_containing_type): Ditto. + (dwarf_tag_name): Handle DW_TAG_type_unit. + (dwarf_attr_name): Handle DW_AT_signature. + (dwarf_form_name): Handle DW_FORM_sec_offset, DW_FORM_exprloc, + DW_FORM_flag_present, DW_FORM_sig8. + (dump_die_shallow): Handlel DW_FORM_sig8. + (maybe_queue_comp_unit): Change return type to int from void. + All callers updated. + (follow_die_ref): Handle .debug_types. + (lookup_signatured_type_at_offset): New function. + (read_signatured_type_at_offset): New function. + (read_signatured_type): New function. + +2009-07-20 Ulrich Weigand <uweigand@de.ibm.com> + + * arch-utils.c (gdbarch_info_fill): Only reference GDB_OSABI_DEFAULT + if the macro is defined. + +2009-07-20 Pedro Alves <pedro@codesourcery.com> + + * features/gdb-target.dtd (target): Accept an optional 'osabi' + element. + (osabi): Define element. + * features/mips-linux.xml (target): Add an osabi subelement set to + GNU/Linux. + * regformats/regdat.sh (xmlarch, xmlosabi): New variables. Don't + write the architecture into $xmltarget. Store it in $xmlarch. + Handle the 'osabi' type. Handle outputting the osabi element of + the target description. + * regformats/reg-x86-64-linux.dat (osabi): Set to GNU/Linux. + * regformats/reg-i386-linux.dat (osabi): Set to GNU/Linux. + + * target-descriptions.h (tdesc_osabi, set_tdesc_osabi): Declare. + * target-descriptions.c (struct target_desc) <osabi>: New field. + (tdesc_osabi): New function. + (set_tdesc_osabi): New function. + * xml-tdesc.c: Include osabi.h. + (tdesc_end_osabi): New. + (target_children): Parse "osabi" elements. + * arch-utils.c (gdbarch_info_fill): Try to get the osabi from the + target description if the user didn't override it or it is not + extractable from the bfd. If that still fails, fallback to the + configured in default. + * osabi.h (osabi_from_tdesc_string): Declare. + * osabi.c (osabi_from_tdesc_string): New. + (gdbarch_lookup_osabi): Return GDB_OSABI_UNKNOWN instead of + GDB_OSABI_DEFAULT. + + * NEWS: Mention that target descriptions can now describe the + target OS ABI. + +2009-07-20 Mike Frysinger <vapier@gentoo.org> + + * configure.ac (AC_CHECK_FUNCS): Check for pipe. + * config.in, configure: Regenerate. + * tui/tui-io.c (TUI_USE_PIPE_FOR_READLINE): Define if HAVE_PIPE. + +2009-07-20 Pedro Alves <pedro@codesourcery.com> + + * gnu-nat.c: Include "inf-child.h". + (gnu_mourn_inferior): Use the passed in target_ops + instead of the gnu_ops global. + (gnu_create_inferior): Inline `attach_to_child', use the passed in + target_ops instead of the gnu_ops global. + (gnu_can_run): Delete. + (gnu_attach): Use the passed in target_ops instead of the gnu_ops + global. + (gnu_detach): Ditto. + (gnu_prepare_to_store, gnu_open): Delete. + (gnu_store_registers, gnu_fetch_registers): Delete declarations. + (gnu_ops): Delete. + (init_gnu_ops): Delete. + (gnu_target): New. + (_initialize_gnu_nat): Don't call init_gnu_ops or add_target here. + * gnu-nat.h (gnu_target): Declare. + * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Make + static. + (_initialize_i386gnu_nat): New. + +2009-07-20 Ulrich Weigand <uweigand@de.ibm.com> + + * dwarf2loc.c (find_location_expression): Retrieve beginning and + ending address offsets in location list entries as integers, + not as addresses. + +2009-07-20 Ulrich Weigand <uweigand@de.ibm.com> + + * infrun.c (wait_for_inferior): Invalidate registers and overlay + cache every time before calling target_wait. + (handle_inferior_event): Make static. Always reset waiton_ptid. + Never call registers_changed. + (prepare_to_wait): Do not invaliate registers or overlay cache + (moved to wait_for_inferior). Do not reset waiton_ptid (moved + to handle_inferior_event). + (fetch_inferior_event): Remove check for always-true condition. + +2009-07-20 Thomas Schwinge <tschwinge@gnu.org> + + * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Adjust to + 2009-02-23 target_ops changes. + +2009-07-18 Michael Snyder <msnyder@vmware.com> + + * infrun.c (handle_inferior_event): Remove an execution_direction + check in the "check for subroutine calls" test, and add some + additional handling for reverse-stepping through shared libraries. + +2009-07-18 Anthony Green <green@moxielogic.com> + + * moxie-tdep.c (moxie_analyze_prologue): Take gdbarch as last + parameter instead of frame_info. + (moxie_frame_cache): Call moxie_analyze_prologue with different + args. + +2009-07-17 Ulrich Weigand <uweigand@de.ibm.com> + + * solib.c (solib_bfd_open): Do not call ops->bfd_open. + (solib_map_sections): Call ops->bfd_open instead of solib_bfd_open. + * solib-frv.c (_initialize_frv_solib): Initialize bfd_open member. + * solib-irix.c (_initialize_irix_solib): Likewise. + * solib-null.c (_initialize_null_solib): Likewise. + * solib-osf.c (_initialize_osf_solib): Likewise. + * solib-pa64.c (_initialize_pa64_solib): Likewise. + * solib-som.c (_initialize_som_solib): Likewise. + * solib-sunos.c (_initialize_sunos_solib): Likewise. + * solib-svr4.c (_initialize_svr4_solib): Likewise. + * solib-target.c (_initialize_solib_target): Likewise. + +2009-07-17 Ulrich Weigand <uweigand@de.ibm.com> + + * mi/mi-cmd-disas.c (mi_cmd_disassemble): Respect mixed_mode flag. + +2009-07-16 Doug Evans <dje@google.com> + + * linux-thread.db.c (try_thread_db_load_1): Tweak comment. + +2007-07-16 Paul Pluzhnikov <ppluzhnikov@google.com> + + * linux-thread-db.c (thread_db_find_new_threads_silently): + New function. + (try_thread_db_load_1): Call it. + +2009-07-15 Doug Evans <dje@google.com> + + Code reorg in preparation for adding comdat types support. + * dwarf2read.c (struct die_reader_specs): New struct. + (locate_pdi_sibling): New arg buffer. All callers updated. + (load_partial_dies, read_partial_die): Ditto. + (read_8_bytes): Change return type to ULONGEST. + (read_comp_unit): Delete arg abfd. All callers updated. + (read_die_and_children_1): Delete args abfd, cu. New arg reader. + All callers updated. + (read_die_and_children, read_die_and_siblings): Ditto. + (read_full_die): Ditto. Move closer to callers. + (skip_one_die): New arg buffer. All callers updated. + (load_full_comp_unit): Change return type to void. All callers + updated. + (partial_read_comp_unit_head): New args buffer, buffer_size. + All callers updated. + (process_psymtab_comp_unit): New function, split out from + dwarf2_build_psymtabs_hard. + (dwarf2_build_psymtabs_hard): Call it. + (load_partial_comp_unit): Renamed from load_comp_unit. + All callers updated. + (skip_children): New arg buffer. All callers updated. + (init_cu_die_reader): New function. + (is_ref_attr): New function. + (dwarf2_get_ref_die_offset): Call it. + (alloc_one_comp_unit): New function. + +2009-07-14 Stan Shebs <stan@codesourcery.com> + + * MAINTAINERS (Global Maintainers): Add Doug Evans. + +2009-07-14 Stan Shebs <stan@codesourcery.com> + + Conditional tracepoints. + * ax-gdb.h (gen_eval_for_expr): Declare. + * ax-gdb.c (gen_expr): Generate bytecodes for BINOP_EQUAL + and other comparisons. + (gen_eval_for_expr): New function. + (agent_eval_command): New maintenance command. + (_initialize_ax_gdb): Define the command. + * remote.c (struct remote_state): New field cond_tracepoints. + (PACKET_ConditionalTracepoints): New packet config type. + (remote_cond_tracepoint_feature): New function. + (remote_protocol_features): Add ConditionalTracepoints. + (remote_supports_cond_tracepoints): New function. + (_initialize_remote): Add ConditionalTracepoints. + * tracepoint.c (download_tracepoint): Add conditional. + * NEWS: Mention conditional tracepoints. + +2009-07-14 Ulrich Weigand <uweigand@de.ibm.com> + + * objfiles.c (objfile_relocate): Do not relocate the same + BLOCKVECTOR_MAP address map multiple times. + +2009-07-14 Ulrich Weigand <uweigand@de.ibm.com> + + * remote.c (process_stop_reply): Access expedited target registers + in target_gdbarch. + +2009-07-13 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix memory access from signed 32bit inferior registers on 64bit GDB. + * linux-nat.c (linux_xfer_partial <TARGET_OBJECT_MEMORY>): New variable + addr_bit. Mask OFFSET by the ADDR_BIT width. + +2009-07-13 Anthony Green <green@moxielogic.com> + + * moxie-tdep.c (moxie_gdbarch_init): Call + set_gdbarch_process_record. + (moxie_process_record): New. + (moxie_process_readu): New. + +2009-07-12 Michael Snyder <msnyder@vmware.com> + + * i386-tdep.c: Add a frame unwinder for function epilogues. + (i386_in_function_epilogue_p): New function. + (i386_epilogue_frame_sniffer): New function. + (i386_epilogue_frame_cache): New function. + (i386_epilogue_frame_this_id): New function. + (i386_epilogue_frame_unwind): New struct frame_unwind. + (i386_gdbarch_init): Hook the new unwinder. + +2009-07-11 Hui Zhu <teawater@gmail.com> + + * cli/cli-cmds.c (disassemble_command): Add a new modifier /r + to "disassemble" command to print the raw instructions in hex as + well as in symbolic form. + (init_cli_cmds): Ditto. + (print_disassembly): Change "mixed" to "flags" to translate + the behavior of disassemble. + (disassemble_current_function): Ditto. + * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto. + * stack.c (gdb_disassembly_stub): Ditto. + * disasm.c (do_mixed_source_and_assembly): Ditto. + (do_mixed_source_and_assembly): Ditto. + (do_assembly_only): Ditto. + (gdb_disassembly): Ditto. + (dump_insns): print the raw instructions in hex as well as in + symbolic form if DISASSEMBLY_RAW_INSN and flags is true. + * disasm.h (DISASSEMBLY_SOURCE): Include source code with the + assembly if it and flags is true. + (DISASSEMBLY_RAW_INSN): Include the raw instructions in hex with + the assembly if it and flags is true. + (gdb_disassembly): Update extern. + * NEWS: Document disassemble/r support. + +2009-07-10 Tom Tromey <tromey@redhat.com> + + * dwarf2-frame.c: Include dwarf2.h, not elf/dwarf2.h. + * dwarf2expr.c: Likewise. + * dwarf2loc.c: Likewise. + * dwarf2read.c: Likewise. + * sh-tdep.c: Likewise. + * xtensa-tdep.c: Likewise. + +2009-07-10 Jan Kratochvil <jan.kratochvil@redhat.com> + + Tidy up the code. + * mi/mi-cmd-var.c (mi_cmd_var_update): Remove variable nv. Move + variables var, rootlist and cr to their local sub-block. Move the + make_cleanup_ui_out_tuple_begin_end, make_cleanup_ui_out_list_begin_end + and do_cleanups calls to the common base block. Remove the zero NV + check. + +2009-07-10 Phil Muldoon <pmuldoon@redhat.com> + + * python/python-internal.h (apply_varobj_pretty_printer): Update + definition. + (python_string_to_target_python_string): Add definition. + * python/python-utils.c (unicode_to_encoded_python_string) + (unicode_to_target_python_string) + (python_string_to_target_python_string): New Functions. + * python/python-prettyprint.c (pretty_print_one_value): Likewise. + (print_string_repr): Refactor to logic to account for PyObject + returned strings. + (apply_varobj_pretty_printer): Likewise. + * python/python-value.c (valpy_string): Parse length keyword. Use + length keyword in LA_GET_STRING. + * varobj.c (value_get_print_value): Refactor logic to account for + PyObject returned strings. + * c-lang.c (c_get_string): If the length parameter is specified, + use that. Return value in characters. Update comments. + * language.h: Update c_get_string prototype comments. + +2009-07-09 Doug Evans <dje@google.com> + + * i386-tdep.c (i386_displaced_step_fixup): Fix order of arguments + to read_memory_unsigned_integer. + +2009-07-09 Jan Kratochvil <jan.kratochvil@redhat.com> + + Report error on inaccessible memory. + * cli/cli-dump.c: Include gdbcore.h. + (dump_memory_to_file): Call read_memory instead of target_read_memory. + +2009-07-09 Hui Zhu <teawater@gmail.com> + + * solib.c (solib_bfd_open): Output a warning if solib's + architecture is not compatible with inferior's architecture. + +2009-07-09 Ulrich Weigand <uweigand@de.ibm.com> + Jan Kratochvil <jan.kratochvil@redhat.com> + + * target.h (struct target_ops <to_thread_architecture>): Describe it. + (target_thread_architecture): Refer to to_thread_architecture. + +2009-07-08 Pierre Muller <muller@ics.u-strasbg.fr> + + * cli/cli-cmds.c (init_cli_cmds): Add "inf" alias for "info" command. + +2009-07-07 Ulrich Weigand <uweigand@de.ibm.com> + + * tui/tui-stack.c (tui_make_status_line): Display PC as ?? if unknown. + +2009-07-07 Pierre Muller <muller@ics.u-strasbg.fr> + + * breakpoint.c (set_raw_breakpoint): Remove static modifier. + +2009-07-07 Tom Tromey <tromey@redhat.com> + + * c-lang.c (convert_octal): Only allow 3 octal digits. + (print_wchar): Prefer 3-digit octal form. Fall back to hex if + needed. + * c-exp.y (c_parse_escape): Only allow 3 octal digits. + +2009-07-07 Paul Pluzhnikov <ppluzhnikov@google.com> + + * python/python-value.c (valpy_getitem): Remove incorrect assert. + +2009-07-07 Paul Pluzhnikov <ppluzhnikov@google.com> + + * python/python-value.c (valpy_getitem): Don't return from TRY_CATCH. + +2009-07-07 Sami Wagiaalla <swagiaal@redhat.com> + + * cp-support.h (struct using_direct): Rename members inner and + outer to import_src, and import_dest respectively. + * cp-namespace.c (cp_add_using_directive): Update. + (cp_add_using): Update. + (cp_copy_usings): Update. + (cp_lookup_symbol_namespace): Update. + (cp_scan_for_anonymous_namespaces): Update. + * cp-support.c (make_symbol_overload_list_using): Update. + * cp-support.h (cp_add_using_directive, cp_add_using): Rename + arguments from inner and outer to src and dest respectively. + * cp-namespace.c (cp_add_using_directive): Ditto. + (cp_add_using): Ditto. + +2009-07-07 Jan Kratochvil <jan.kratochvil@redhat.com> + + * mi/mi-cmd-var.c (mi_cmd_var_update): Replace a while loop by for loop. + * varobj.c (varobj_invalidate): Replace a while loop by for loop. + +2009-07-07 Vladimir Prus <vladimir@codesourcery.com> + + Fix hang in floating varobjs. + + * varobj.c (varobj_invalidate): Advance to next + element when processing floating varobj. + +2009-07-07 Vladimir Prus <vladimir@codesourcery.com> + + * varobj.c: Remove unnecessary include. + +2009-07-07 Tristan Gingold <gingold@adacore.com> + + * config/i386/darwin.mh (NATDEPFILES): Remove excServer.o. + Remove excServer.c target. Remove _all target. + * darwin.defs: Removed. + +2009-07-06 Aleksandar Ristovski <aristovski@qnx.com> + + * configure.tgt (i[34567]86-*-nto*): Add build_gdbserver=yes. + +2009-07-06 Jan Kratochvil <jan.kratochvil@redhat.com> + + * source.c (find_and_open_source): Remove the `objfile' parameter. + Update the function comment. + (open_source_file, symtab_to_fullname, psymtab_to_fullname): Update the + find_and_open_source callers. + +2009-07-05 Pedro Alves <pedro@codesourcery.com> + + * coff-pe-read.c (read_pe_exported_syms): Recognize + "pe-arm-wince-little" and "pei-arm-wince-little" bfd targets as PE + targets. + +2009-07-05 Pedro Alves <pedro@codesourcery.com> + + * arm-wince-tdep.c (arm_wince_skip_main_prologue): New. + (arm_wince_init_abi): Register it as gdbarch_skip_main_prologue + callback. + +2009-06-29 Tristan Gingold <gingold@adacore.com> + + * i386-darwin-tdep.c (amd64_darwin_thread_state_reg_offset) + (amd64_darwin_thread_state_num_regs) + (amd64_darwin_sigcontext_addr, x86_darwin_init_abi_64): Moved to + amd64-darwin-tdep.c + (_initialize_i386_darwin_tdep): Remove 64 bits parts. + (darwin_dwarf_signal_frame_p): Make public. + * amd64-darwin-tdep.c: New file with most chunks from + i386-darwin-tdep.c + * i386-darwin-tdep.h: Add a prototype for darwin_dwarf_signal_frame_p. + (amd64_darwin_thread_state_reg_offset) + (amd64_darwin_thread_state_num_regs): Moved to amd64-darwin-tdep.h + * amd64-darwin-tdep.h: New file. + * i386-darwin-nat.c: Only includes amd64-nat.h and amd64-darwin-tdep.h + if BFD64 is defined. + (i386_darwin_fetch_inferior_registers): Add #ifdef BFD64/#endif around + 64 bits parts. + (i386_darwin_store_inferior_registers): Ditto. + (darwin_set_sstep): Ditto. + (darwin_complete_target): Ditto. + (amd64_darwin_sstep_at_sigreturn): Ditto. + * configure.tgt: Create a separate entry for x86_64-*-darwin. + Add 64 bits support for i386-*-darwin if --enable-64-bit-bfd. + * Makefile.in (ALLDEPFILES): Add amd64-darwin-tdep.c, darwin-nat.c, + i386-darwin-tdep.c i386-darwin-nat.c + (ALL_64_TARGET_OBS): Add amd64-darwin-tdep.o + +2009-07-02 Pedro Alves <pedro@codesourcery.com> + + * linux-fork.c (forks_exist_p): Drop unnecessary extern. + (add_fork, linux_fork_killall, linux_fork_mourn_inferior) + (linux_fork_detach): Ditto. + (delete_fork_command): Rename to ... + (delete_checkpoint_command): ... this. + (detach_fork_command): Rename to ... + (detach_checkpoint_command): ... this. + (info_forks_command): Rename to ... + (info_checkpoints_command): ... this. + (_initialize_linux_fork): Remove stale comments. Adjust. + +2009-07-02 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (linux_child_follow_fork): If we're staying attached + to the child process, enable event reporting on it. Don't handle + checkpoints here. Instead, add the child fork to the lwp thread + and inferior lists without clobbering the previous inferior. Let + the thread_db layer learn about a new child process, even if + following the parent. + (linux_nat_switch_fork): Delete lwps of the current inferior only, + instead of clearing the whole list. Use thread_change_ptid to + give the core the illusion the new checkpoint is still the same + inferior. Clear the register cache. + (linux_handle_extended_wait): Handle checkpoints here. + (linux_multi_process): Turn on. + * linux-fork.c (struct fork_info) <pc>: Remove field. + (init_fork_list): Do not delete the checkpoint from the inferior + list (it is not there). + (fork_load_infrun_state): Don't switch inferior_ptid here. Pass + the new checkpoint's ptid to linux_nat_switch_fork. + (fork_save_infrun_state): Make static. Don't stop the pc field of + fork_info, it's gone. + (linux_fork_mourn_inferior): Don't delete the checkpoint from the + inferior list, it's not there. + (linux_fork_detach): Ditto. + (delete_fork_command): Replace mention of fork/checkpoint by + checkpoint only. + (detach_fork_command): Likewise. Don't delete the checkpoint from + the inferior list. + (info_forks_command): Adjust. + (restore_detach_fork): Delete. + (checkpointing_pid): New. + (linux_fork_checkpointing_p): New. + (save_detach_fork): Delete. + (checkpoint_command): Delete temp_detach_fork. Don't remove + breakpoints, that's a nop. Store the pid of the process we're + checkpointing, and use make_cleanup_restore_integer to restore it. + Don't reinsert breakpoints here. + (process_command, fork_command): Delete. + (restart_command): Update comments to only mention checkpoints, + not forks. + (_initialize_linux_fork): Delete "fork", "process", "info forks" + commands. + * linux-fork.h (fork_save_infrun_state, fork_list): Delete + declarations. + (linux_fork_checkpointing_p): Declare. + * cli/cli-cmds.c (killlist): New. + * cli/cli-cmds.h (killlist): Declare. + * gdbcmd.h (killlist): Declare. + * inferior.c: Include "gdbthread.h". + (detach_inferior_command, kill_inferior_command) + (inferior_command): New. + (info_inferiors_command): Allow specifying a specific inferior id. + (_initialize_inferiors): Register "inferior", "kill inferior" and + "detach inferior" commands. + * infcmd.c (_initialize_infcmd): Make "kill" a prefix command. + * gdbthread.h (any_thread_of_process): Declare. + * thread.c (any_thread_of_process): New. + + * NEWS: Mention multi-inferior debugging. Mention 'info + inferiors', 'inferior', 'detach inferior' and 'kill inferior' as + new commands. + (Removed commands): New section, mentioning that 'info forks', + 'fork', 'process', 'delete fork' and 'detach fork' are now gone. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbarch.sh (current_gdbarch): Remove global variable. + (find_arch_by_info): Remove, inline into ... + (gdbarch_find_by_info): ... this. Remove current_gdbarch swapping. + (deprecated_current_gdbarch_select_hack): Rename to ... + (deprecated_target_gdbarch_select_hack): ... this. Do not set + or access current_gdbarch. + * gdbarch.c, gdbarch.h: Regenerate. + + * arch-utils.c (gdbarch_update_p): Update call. + (set_gdbarch_from_file): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * defs.h (extract_signed_integer, extract_unsigned_integer, + extract_long_unsigned_integer, store_signed_integer, + store_unsigned_integer): Add BYTE_ORDER parameter. + * findvar.c (extract_signed_integer, extract_unsigned_integer, + extract_long_unsigned_integer, store_signed_integer, + store_unsigned_integer): Add BYTE_ORDER parameter. Use it + instead of current_gdbarch. + + * gdbcore.h (read_memory_integer, safe_read_memory_integer, + read_memory_unsigned_integer, write_memory_signed_integer, + write_memory_unsigned_integer): Add BYTE_ORDER parameter. + * corefile.c (struct captured_read_memory_integer_arguments): Add + BYTE_ORDER member. + (safe_read_memory_integer): Add BYTE_ORDER parameter. Store it into + struct captured_read_memory_integer_arguments. + (do_captured_read_memory_integer): Pass it to read_memory_integer. + (read_memory_integer): Add BYTE_ORDER parameter. Pass it to + extract_signed_integer. + (read_memory_unsigned_integer): Add BYTE_ORDER parameter. Pass it to + extract_unsigned_integer. + (write_memory_signed_integer): Add BYTE_ORDER parameter. Pass it + to store_signed_integer. + (write_memory_unsigned_integer): Add BYTE_ORDER parameter. Pass it + to store_unsigned_integer. + + * target.h (get_target_memory_unsigned): Add BYTE_ORDER parameter. + * target.c (get_target_memory_unsigned): Add BYTE_ORDER parameter. + Pass it to extract_unsigned_integer. + + + Update calls to extract_signed_integer, extract_unsigned_integer, + extract_long_unsigned_integer, store_signed_integer, + store_unsigned_integer, read_memory_integer, + read_memory_unsigned_integer, safe_read_memory_integer, + write_memory_signed_integer, write_memory_unsigned_integer, and + get_target_memory_unsigned to pass byte order: + * ada-lang.c (ada_value_binop): Update. + * ada-valprint.c (char_at): Update. + * alpha-osf1-tdep.c (alpha_osf1_sigcontext_addr): Update. + * alpha-tdep.c (alpha_lds, alpha_sts, alpha_push_dummy_call, + alpha_extract_return_value, alpha_read_insn, + alpha_get_longjmp_target): Update. + * amd64-linux-tdep.c (amd64_linux_sigcontext_addr): Update. + * amd64obsd-tdep.c (amd64obsd_supply_uthread, + amd64obsd_collect_uthread, amd64obsd_trapframe_cache): Update. + * amd64-tdep.c (amd64_push_dummy_call, amd64_analyze_prologue, + amd64_frame_cache, amd64_sigtramp_frame_cache, fixup_riprel, + amd64_displaced_step_fixup): Update. + * arm-linux-tdep.c (arm_linux_sigreturn_init, + arm_linux_rt_sigreturn_init, arm_linux_supply_gregset): Update. + * arm-tdep.c (thumb_analyze_prologue, arm_skip_prologue, + arm_scan_prologue, arm_push_dummy_call, thumb_get_next_pc, + arm_get_next_pc, arm_extract_return_value, arm_store_return_value, + arm_return_value): Update. + * arm-wince-tdep.c (arm_pe_skip_trampoline_code): Update. + * auxv.c (default_auxv_parse): Update. + * avr-tdep.c (avr_address_to_pointer, avr_pointer_to_address, + avr_scan_prologue, avr_extract_return_value, + avr_frame_prev_register, avr_push_dummy_call): Update. + * bsd-uthread.c (bsd_uthread_check_magic, bsd_uthread_lookup_offset, + bsd_uthread_wait, bsd_uthread_thread_alive, + bsd_uthread_extra_thread_info): Update. + * c-lang.c (c_printstr, print_wchar): Update. + * cp-valprint.c (cp_print_class_member): Update. + * cris-tdep.c (cris_sigcontext_addr, cris_sigtramp_frame_unwind_cache, + cris_push_dummy_call, cris_scan_prologue, cris_store_return_value, + cris_extract_return_value, find_step_target, dip_prefix, + sixteen_bit_offset_branch_op, none_reg_mode_jump_op, + move_mem_to_reg_movem_op, get_data_from_address): Update. + * dwarf2expr.c (dwarf2_read_address, execute_stack_op): Update. + * dwarf2-frame.c (execute_cfa_program): Update. + * dwarf2loc.c (find_location_expression): Update. + * dwarf2read.c (dwarf2_const_value): Update. + * expprint.c (print_subexp_standard): Update. + * findvar.c (unsigned_pointer_to_address, signed_pointer_to_address, + unsigned_address_to_pointer, address_to_signed_pointer, + read_var_value): Update. + * frame.c (frame_unwind_register_signed, + frame_unwind_register_unsigned, get_frame_memory_signed, + get_frame_memory_unsigned): Update. + * frame-unwind.c (frame_unwind_got_constant): Update. + * frv-linux-tdep.c (frv_linux_pc_in_sigtramp, + frv_linux_sigcontext_reg_addr, frv_linux_sigtramp_frame_cache): + Update. + * frv-tdep.c (frv_analyze_prologue, frv_skip_main_prologue, + frv_extract_return_value, find_func_descr, + frv_convert_from_func_ptr_addr, frv_push_dummy_call): Update. + * f-valprint.c (f_val_print): Update. + * gnu-v3-abi.c (gnuv3_decode_method_ptr, gnuv3_make_method_ptr): + Update. + * h8300-tdep.c (h8300_is_argument_spill, h8300_analyze_prologue, + h8300_push_dummy_call, h8300_extract_return_value, + h8300h_extract_return_value, h8300_store_return_value, + h8300h_store_return_value): Update. + * hppabsd-tdep.c (hppabsd_find_global_pointer): Update. + * hppa-hpux-nat.c (hppa_hpux_fetch_register, hppa_hpux_store_register): + Update. + * hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline, + hppa64_hpux_in_solib_call_trampoline, + hppa_hpux_in_solib_return_trampoline, hppa_hpux_skip_trampoline_code, + hppa_hpux_sigtramp_frame_unwind_cache, + hppa_hpux_sigtramp_unwind_sniffer, hppa32_hpux_find_global_pointer, + hppa64_hpux_find_global_pointer, hppa_hpux_search_pattern, + hppa32_hpux_search_dummy_call_sequence, + hppa64_hpux_search_dummy_call_sequence, hppa_hpux_supply_save_state, + hppa_hpux_unwind_adjust_stub): Update. + * hppa-linux-tdep.c (insns_match_pattern, + hppa_linux_find_global_pointer): Update. + * hppa-tdep.c (hppa_in_function_epilogue_p, hppa32_push_dummy_call, + hppa64_convert_code_addr_to_fptr, hppa64_push_dummy_call, + skip_prologue_hard_way, hppa_frame_cache, hppa_fallback_frame_cache, + hppa_pseudo_register_read, hppa_frame_prev_register_helper, + hppa_match_insns): Update. + * hpux-thread.c (hpux_thread_fetch_registers): Update. + * i386-tdep.c (i386bsd_sigcontext_addr): Update. + * i386-cygwin-tdep.c (core_process_module_section): Update. + * i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn, + amd64_darwin_sstep_at_sigreturn): Update. + * i386-darwin-tdep.c (i386_darwin_sigcontext_addr, + amd64_darwin_sigcontext_addr): Likewise. + * i386-linux-nat.c (i386_linux_sigcontext_addr): Update. + * i386nbsd-tdep.c (i386nbsd_sigtramp_cache_init): Update. + * i386-nto-tdep.c (i386nto_sigcontext_addr): Update. + * i386obsd-nat.c (i386obsd_supply_pcb): Update. + * i386obsd-tdep.c (i386obsd_supply_uthread, i386obsd_collect_uthread, + i386obsd_trapframe_cache): Update. + * i386-tdep.c (i386_displaced_step_fixup, i386_follow_jump, + i386_analyze_frame_setup, i386_analyze_prologue, + i386_skip_main_prologue, i386_frame_cache, i386_sigtramp_frame_cache, + i386_get_longjmp_target, i386_push_dummy_call, + i386_pe_skip_trampoline_code, i386_svr4_sigcontext_addr, + i386_fetch_pointer_argument): Update. + * i387-tdep.c (i387_supply_fsave): Update. + * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Update. + * ia64-tdep.c (ia64_pseudo_register_read, ia64_pseudo_register_write, + examine_prologue, ia64_frame_cache, ia64_frame_prev_register, + ia64_sigtramp_frame_cache, ia64_sigtramp_frame_prev_register, + ia64_access_reg, ia64_access_rse_reg, ia64_libunwind_frame_this_id, + ia64_libunwind_frame_prev_register, + ia64_libunwind_sigtramp_frame_this_id, + ia64_libunwind_sigtramp_frame_prev_register, ia64_find_global_pointer, + find_extant_func_descr, find_func_descr, + ia64_convert_from_func_ptr_addr, ia64_push_dummy_call, ia64_dummy_id, + ia64_unwind_pc): Update. + * iq2000-tdep.c (iq2000_pointer_to_address, iq2000_address_to_pointer, + iq2000_scan_prologue, iq2000_extract_return_value, + iq2000_push_dummy_call): Update. + * irix5nat.c (fill_gregset): Update. + * jv-lang.c (evaluate_subexp_java): Update. + * jv-valprint.c (java_value_print): Update. + * lm32-tdep.c (lm32_analyze_prologue, lm32_push_dummy_call, + lm32_extract_return_value, lm32_store_return_value): Update. + * m32c-tdep.c (m32c_push_dummy_call, m32c_return_value, + m32c_skip_trampoline_code, m32c_m16c_address_to_pointer, + m32c_m16c_pointer_to_address): Update. + * m32r-tdep.c (m32r_store_return_value, decode_prologue, + m32r_skip_prologue, m32r_push_dummy_call, m32r_extract_return_value): + Update. + * m68hc11-tdep.c (m68hc11_pseudo_register_read, + m68hc11_pseudo_register_write, m68hc11_analyze_instruction, + m68hc11_push_dummy_call): Update. + * m68linux-tdep.c (m68k_linux_pc_in_sigtramp, + m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache): + Update. + * m68k-tdep.c (m68k_push_dummy_call, m68k_analyze_frame_setup, + m68k_analyze_register_saves, m68k_analyze_prologue, m68k_frame_cache, + m68k_get_longjmp_target): Update. + * m88k-tdep.c (m88k_fetch_instruction): Update. + * mep-tdep.c (mep_pseudo_cr32_read, mep_pseudo_csr_write, + mep_pseudo_cr32_write, mep_get_insn, mep_push_dummy_call): Update. + * mi/mi-main.c (mi_cmd_data_write_memory): Update. + * mips-linux-tdep.c (mips_linux_get_longjmp_target, supply_32bit_reg, + mips64_linux_get_longjmp_target, mips64_fill_gregset, + mips64_fill_fpregset, mips_linux_in_dynsym_stub): Update. + * mipsnbdsd-tdep.c (mipsnbsd_get_longjmp_target): Update. + * mips-tdep.c (mips_fetch_instruction, fetch_mips_16, + mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call, + mips_o32_push_dummy_call, mips_o64_push_dummy_call, + mips_single_step_through_delay, mips_skip_pic_trampoline_code, + mips_integer_to_address): Update. + * mn10300-tdep.c (mn10300_analyze_prologue, mn10300_push_dummy_call): + Update. + * monitor.c (monitor_supply_register, monitor_write_memory, + monitor_read_memory_single): Update. + * moxie-tdep.c (moxie_store_return_value, moxie_extract_return_value, + moxie_analyze_prologue): Update. + * mt-tdep.c (mt_return_value, mt_skip_prologue, mt_select_coprocessor, + mt_pseudo_register_read, mt_pseudo_register_write, mt_registers_info, + mt_push_dummy_call): Update. + * objc-lang.c (read_objc_method, read_objc_methlist_nmethods, + read_objc_methlist_method, read_objc_object, read_objc_super, + read_objc_class, find_implementation_from_class): Update. + * ppc64-linux-tdep.c (ppc64_desc_entry_point, + ppc64_linux_convert_from_func_ptr_addr, ppc_linux_sigtramp_cache): + Update. + * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_sniffer, + ppcobsd_sigtramp_frame_cache): Update. + * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call, + do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call, + ppc64_sysv_abi_return_value): Update. + * ppc-linux-nat.c (ppc_linux_auxv_parse): Update. + * procfs.c (procfs_auxv_parse): Update. + * p-valprint.c (pascal_val_print): Update. + * regcache.c (regcache_raw_read_signed, regcache_raw_read_unsigned, + regcache_raw_write_signed, regcache_raw_write_unsigned, + regcache_cooked_read_signed, regcache_cooked_read_unsigned, + regcache_cooked_write_signed, regcache_cooked_write_unsigned): Update. + * remote-m32r-sdi.c (m32r_fetch_register): Update. + * remote-mips.c (mips_wait, mips_fetch_registers, mips_xfer_memory): + Update. + * rs6000-aix-tdep.c (rs6000_push_dummy_call, rs6000_return_value, + rs6000_convert_from_func_ptr_addr, branch_dest, + rs6000_software_single_step): Update. + * rs6000-tdep.c (rs6000_in_function_epilogue_p, + ppc_displaced_step_fixup, ppc_deal_with_atomic_sequence, + bl_to_blrl_insn_p, rs6000_fetch_instruction, skip_prologue, + rs6000_skip_main_prologue, rs6000_skip_trampoline_code, + rs6000_frame_cache): Update. + * s390-tdep.c (s390_pseudo_register_read, s390_pseudo_register_write, + s390x_pseudo_register_read, s390x_pseudo_register_write, s390_load, + s390_backchain_frame_unwind_cache, s390_sigtramp_frame_unwind_cache, + extend_simple_arg, s390_push_dummy_call, s390_return_value): Update. + * scm-exp.c (scm_lreadr): Update. + * scm-lang.c (scm_get_field, scm_unpack): Update. + * scm-valprint.c (scm_val_print): Update. + * score-tdep.c (score_breakpoint_from_pc, score_push_dummy_call, + score_fetch_inst): Update. + * sh64-tdep.c (look_for_args_moves, sh64_skip_prologue_hard_way, + sh64_analyze_prologue, sh64_push_dummy_call, sh64_extract_return_value, + sh64_pseudo_register_read, sh64_pseudo_register_write, + sh64_frame_prev_register): Update: + * sh-tdep.c (sh_analyze_prologue, sh_push_dummy_call_fpu, + sh_push_dummy_call_nofpu, sh_extract_return_value_nofpu, + sh_store_return_value_nofpu, sh_in_function_epilogue_p): Update. + * solib-darwin.c (darwin_load_image_infos): Update. + * solib-frv.c (fetch_loadmap, lm_base, frv_current_sos, enable_break2, + find_canonical_descriptor_in_load_object): Update. + * solib-irix.c (extract_mips_address, fetch_lm_info, irix_current_sos, + irix_open_symbol_file_object): Update. + * solib-som.c (som_solib_create_inferior_hook, link_map_start, + som_current_sos, som_open_symbol_file_object): Update. + * solib-sunos.c (SOLIB_EXTRACT_ADDRESS, LM_ADDR, LM_NEXT, LM_NAME): + Update. + * solib-svr4.c (read_program_header, scan_dyntag_auxv, + solib_svr4_r_ldsomap): Update. + * sparc64-linux-tdep.c (sparc64_linux_step_trap): Update. + * sparc64obsd-tdep.c (sparc64obsd_supply_uthread, + sparc64obsd_collect_uthread): Update. + * sparc64-tdep.c (sparc64_pseudo_register_read, + sparc64_pseudo_register_write, sparc64_supply_gregset, + sparc64_collect_gregset): Update. + * sparc-linux-tdep.c (sparc32_linux_step_trap): Update. + * sparcobsd-tdep.c (sparc32obsd_supply_uthread, + sparc32obsd_collect_uthread): Update. + * sparc-tdep.c (sparc_fetch_wcookie, sparc32_push_dummy_code, + sparc32_store_arguments, sparc32_return_value, sparc_supply_rwindow, + sparc_collect_rwindow): Update. + * spu-linux-nat.c (parse_spufs_run): Update. + * spu-tdep.c (spu_pseudo_register_read_spu, + spu_pseudo_register_write_spu, spu_pointer_to_address, + spu_analyze_prologue, spu_in_function_epilogue_p, + spu_frame_unwind_cache, spu_push_dummy_call, spu_software_single_step, + spu_get_longjmp_target, spu_get_overlay_table, spu_overlay_update_osect, + info_spu_signal_command, info_spu_mailbox_list, info_spu_dma_cmdlist, + info_spu_dma_command, info_spu_proxydma_command): Update. + * stack.c (print_frame_nameless_args, frame_info): Update. + * symfile.c (read_target_long_array, simple_read_overlay_table, + simple_read_overlay_region_table): Update. + * target.c (debug_print_register): Update. + * tramp-frame.c (tramp_frame_start): Update. + * v850-tdep.c (v850_analyze_prologue, v850_push_dummy_call, + v850_extract_return_value, v850_store_return_value, + * valarith.c (value_binop, value_bit_index): Update. + * valops.c (value_cast): Update. + * valprint.c (val_print_type_code_int, val_print_string, + read_string): Update. + * value.c (unpack_long, unpack_double, unpack_field_as_long, + modify_field, pack_long): Update. + * vax-tdep.c (vax_store_arguments, vax_push_dummy_call, + vax_skip_prologue): Update. + * xstormy16-tdep.c (xstormy16_push_dummy_call, + xstormy16_analyze_prologue, xstormy16_in_function_epilogue_p, + xstormy16_resolve_jmp_table_entry, xstormy16_find_jmp_table_entry, + xstormy16_pointer_to_address, xstormy16_address_to_pointer): Update. + * xtensa-tdep.c (extract_call_winsize, xtensa_pseudo_register_read, + xtensa_pseudo_register_write, xtensa_frame_cache, + xtensa_push_dummy_call, call0_track_op, call0_frame_cache): Update. + + + * dfp.h (decimal_to_string, decimal_from_string, decimal_from_integral, + decimal_from_floating, decimal_to_doublest, decimal_is_zero): Add + BYTE_ORDER parameter. + (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT + parameters. + (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters. + (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters. + * dfp.c (match_endianness): Add BYTE_ORDER parameter. Use it + instead of current_gdbarch. + (decimal_to_string, decimal_from_integral, decimal_from_floating, + decimal_to_doublest, decimal_is_zero): Add BYTE_ORDER parameter. + Pass it to match_endianness. + (decimal_binop): Add BYTE_ORDER_X, BYTE_ORDER_Y, and BYTE_ORDER_RESULT + parameters. Pass them to match_endianness. + (decimal_compare): Add BYTE_ORDER_X and BYTE_ORDER_Y parameters. + Pass them to match_endianness. + (decimal_convert): Add BYTE_ORDER_FROM and BYTE_ORDER_TO parameters. + Pass them to match_endianness. + * valarith.c (value_args_as_decimal): Add BYTE_ORDER_X and + BYTE_ORDER_Y output parameters. + (value_binop): Update call to value_args_as_decimal. + + Update calls to decimal_to_string, decimal_from_string, + decimal_from_integral, decimal_from_floating, decimal_to_doublest, + decimal_is_zero, decimal_binop, decimal_compare and decimal_convert + to pass/receive byte order: + * c-exp.y (parse_number): Update. + * printcmd.c (printf_command): Update. + * valarith.c (value_args_as_decimal, value_binop, value_logical_not, + value_equal, value_less): Update. + * valops.c (value_cast, value_one): Update. + * valprint.c (print_decimal_floating): Update. + * value.c (unpack_long, unpack_double): Update. + * python/python-value.c (valpy_nonzero): Update. + + + * ada-valprint.c (char_at): Add BYTE_ORDER parameter. + (printstr): Update calls to char_at. + (ada_val_print_array): Likewise. + * valprint.c (read_string): Add BYTE_ORDER parameter. + (val_print_string): Update call to read_string. + * c-lang.c (c_get_string): Likewise. + * charset.h (target_wide_charset): Add BYTE_ORDER parameter. + * charset.c (target_wide_charset): Add BYTE_ORDER parameter. + Use it instead of current_gdbarch. + * printcmd.c (printf_command): Update calls to target_wide_charset. + * c-lang.c (charset_for_string_type): Add BYTE_ORDER parameter. + Pass to target_wide_charset. Use it instead of current_gdbarch. + (classify_type): Add BYTE_ORDER parameter. Pass to + charset_for_string_type. Allow NULL encoding pointer. + (print_wchar): Add BYTE_ORDER parameter. + (c_emit_char): Update calls to classify_type and print_wchar. + (c_printchar, c_printstr): Likewise. + + + * gdbarch.sh (in_solib_return_trampoline): Convert to type "m". + * gdbarch.c, gdbarch.h: Regenerate. + * arch-utils.h (generic_in_solib_return_trampoline): Add GDBARCH + parameter. + * arch-utils.c (generic_in_solib_return_trampoline): Likewise. + * hppa-hpux-tdep.c (hppa_hpux_in_solib_return_trampoline): Likewise. + * rs6000-tdep.c (rs6000_in_solib_return_trampoline): Likewise. + (rs6000_skip_trampoline_code): Update call. + + * alpha-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to + dynamic_sigtramp_offset and pc_in_sigtramp callbacks. + (alpha_read_insn): Add GDBARCH parameter. + * alpha-tdep.c (alpha_lds, alpha_sts): Add GDBARCH parameter. + (alpha_register_to_value): Pass architecture to alpha_sts. + (alpha_extract_return_value): Likewise. + (alpha_value_to_register): Pass architecture to alpha_lds. + (alpha_store_return_value): Likewise. + (alpha_read_insn): Add GDBARCH parameter. + (alpha_skip_prologue): Pass architecture to alpha_read_insn. + (alpha_heuristic_proc_start): Likewise. + (alpha_heuristic_frame_unwind_cache): Likewise. + (alpha_next_pc): Likewise. + (alpha_sigtramp_frame_this_id): Pass architecture to + tdep->dynamic_sigtramp_offset callback. + (alpha_sigtramp_frame_sniffer): Pass architecture to + tdep->pc_in_sigtramp callback. + * alphafbsd-tdep.c (alphafbsd_pc_in_sigtramp): Add GDBARCH parameter. + (alphafbsd_sigtramp_offset): Likewise. + * alpha-linux-tdep.c (alpha_linux_sigtramp_offset_1): Add GDBARCH + parameter. Pass to alpha_read_insn. + (alpha_linux_sigtramp_offset): Add GDBARCH parameter. Pass to + alpha_linux_sigtramp_offset_1. + (alpha_linux_pc_in_sigtramp): Add GDBARCH parameter. Pass to + alpha_linux_sigtramp_offset. + (alpha_linux_sigcontext_addr): Pass architecture to alpha_read_insn + and alpha_linux_sigtramp_offset. + * alphanbsd-tdep.c (alphanbsd_sigtramp_offset): Add GDBARCH parameter. + (alphanbsd_pc_in_sigtramp): Add GDBARCH parameter. Pass to + alphanbsd_sigtramp_offset. + * alphaobsd-tdep.c (alphaobsd_sigtramp_offset): Add GDBARCH parameter. + (alphaobsd_pc_in_sigtramp): Add GDBARCH parameter. Pass to + alpha_read_insn. + (alphaobsd_sigcontext_addr): Pass architecture to + alphaobsd_sigtramp_offset. + * alpha-osf1-tdep.c (alpha_osf1_pc_in_sigtramp): Add GDBARCH + parameter. + + * amd64-tdep.c (amd64_analyze_prologue): Add GDBARCH parameter. + (amd64_skip_prologue): Pass architecture to amd64_analyze_prologue. + (amd64_frame_cache): Likewise. + + * arm-tdep.c (SWAP_SHORT, SWAP_INT): Remove. + (thumb_analyze_prologue, arm_skip_prologue, arm_scan_prologue, + thumb_get_next_pc, arm_get_next_pc): Do not use SWAP_ macros. + * arm-wince-tdep.c: Include "frame.h". + + * avr-tdep.c (EXTRACT_INSN): Remove. + (avr_scan_prologue): Add GDBARCH argument, inline EXTRACT_INSN. + (avr_skip_prologue): Pass architecture to avr_scan_prologue. + (avr_frame_unwind_cache): Likewise. + + * cris-tdep.c (struct instruction_environment): Add BYTE_ORDER member. + (find_step_target): Initialize it. + (get_data_from_address): Add BYTE_ORDER parameter. + (bdap_prefix): Pass byte order to get_data_from_address. + (handle_prefix_assign_mode_for_aritm_op): Likewise. + (three_operand_add_sub_cmp_and_or_op): Likewise. + (handle_inc_and_index_mode_for_aritm_op): Likewise. + + * frv-linux-tdep.c (frv_linux_pc_in_sigtramp): Add GDBARCH parameter. + (frv_linux_sigcontext_reg_addr): Pass architecture to + frv_linux_pc_in_sigtramp. + (frv_linux_sigtramp_frame_sniffer): Likewise. + + * h8300-tdep.c (h8300_is_argument_spill): Add GDBARCH parameter. + (h8300_analyze_prologue): Add GDBARCH parameter. Pass to + h8300_is_argument_spill. + (h8300_frame_cache, h8300_skip_prologue): Pass architecture + to h8300_analyze_prologue. + + * hppa-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter to + in_solib_call_trampoline callback. + (hppa_in_solib_call_trampoline): Add GDBARCH parameter. + * hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Add GDBARCH + parameter. + (hppa64_push_dummy_call): Pass architecture to + hppa64_convert_code_addr_to_fptr. + (hppa_match_insns): Add GDBARCH parameter. + (hppa_match_insns_relaxed): Add GDBARCH parameter. Pass to + hppa_match_insns. + (hppa_skip_trampoline_code): Pass architecture to hppa_match_insns. + (hppa_in_solib_call_trampoline): Add GDBARCH parameter. Pass to + hppa_match_insns_relaxed. + (hppa_stub_unwind_sniffer): Pass architecture to + tdep->in_solib_call_trampoline callback. + * hppa-hpux-tdep.c (hppa_hpux_search_pattern): Add GDBARCH parameter. + (hppa32_hpux_search_dummy_call_sequence): Pass architecture to + hppa_hpux_search_pattern. + * hppa-linux-tdep.c (insns_match_pattern): Add GDBARCH parameter. + (hppa_linux_sigtramp_find_sigcontext): Add GDBARCH parameter. + Pass to insns_match_pattern. + (hppa_linux_sigtramp_frame_unwind_cache): Pass architecture to + hppa_linux_sigtramp_find_sigcontext. + (hppa_linux_sigtramp_frame_sniffer): Likewise. + (hppa32_hpux_in_solib_call_trampoline): Add GDBARCH parameter. + (hppa64_hpux_in_solib_call_trampoline): Likewise. + + * i386-tdep.c (i386_follow_jump): Add GDBARCH parameter. + (i386_analyze_frame_setup): Add GDBARCH parameter. + (i386_analyze_prologue): Add GDBARCH parameter. Pass to + i386_follow_jump and i386_analyze_frame_setup. + (i386_skip_prologue): Pass architecture to i386_analyze_prologue + and i386_follow_jump. + (i386_frame_cache): Pass architecture to i386_analyze_prologue. + (i386_pe_skip_trampoline_code): Add FRAME parameter. + * i386-tdep.h (i386_pe_skip_trampoline_code): Add FRAME parameter. + * i386-cygwin-tdep.c (i386_cygwin_skip_trampoline_code): Pass + frame to i386_pe_skip_trampoline_code. + + * ia64-tdep.h (struct gdbarch_tdep): Add GDBARCH parameter + to sigcontext_register_address callback. + * ia64-tdep.c (ia64_find_global_pointer): Add GDBARCH parameter. + (ia64_find_unwind_table): Pass architecture to + ia64_find_global_pointer. + (find_extant_func_descr): Add GDBARCH parameter. + (find_func_descr): Pass architecture to find_extant_func_descr + and ia64_find_global_pointer. + (ia64_sigtramp_frame_init_saved_regs): Pass architecture to + tdep->sigcontext_register_address callback. + * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address): Add + GDBARCH parameter. + + * iq2000-tdep.c (iq2000_scan_prologue): Add GDBARCH parameter. + (iq2000_frame_cache): Pass architecture to iq2000_scan_prologue. + + * lm32-tdep.c (lm32_analyze_prologue): Add GDBARCH parameter. + (lm32_skip_prologue, lm32_frame_cache): Pass architecture to + lm32_analyze_prologue. + + * m32r-tdep.c (decode_prologue): Add GDBARCH parameter. + (m32r_skip_prologue): Pass architecture to decode_prologue. + + * m68hc11-tdep.c (m68hc11_analyze_instruction): Add GDBARCH parameter. + (m68hc11_scan_prologue): Pass architecture to + m68hc11_analyze_instruction. + + * m68k-tdep.c (m68k_analyze_frame_setup): Add GDBARCH parameter. + (m68k_analyze_prologue): Pass architecture to + m68k_analyze_frame_setup. + + * m88k-tdep.c (m88k_fetch_instruction): Add BYTE_ORDER parameter. + (m88k_analyze_prologue): Add GDBARCH parameter. Pass byte order + to m88k_fetch_instruction. + (m88k_skip_prologue): Pass architecture to m88k_analyze_prologue. + (m88k_frame_cache): Likewise. + + * mep-tdep.c (mep_get_insn): Add GDBARCH parameter. + (mep_analyze_prologue): Pass architecture to mep_get_insn. + + * mips-tdep.c (mips_fetch_instruction): Add GDBARCH parameter. + (mips32_next_pc): Pass architecture to mips_fetch_instruction. + (deal_with_atomic_sequence): Likewise. + (unpack_mips16): Add GDBARCH parameter, pass to mips_fetch_instruction. + (mips16_scan_prologue): Likewise. + (mips32_scan_prologue): Likewise. + (mips16_in_function_epilogue_p): Likewise. + (mips32_in_function_epilogue_p): Likewise. + (mips_about_to_return): Likewise. + (mips_insn16_frame_cache): Pass architecture to mips16_scan_prologue. + (mips_insn32_frame_cache): Pass architecture to mips32_scan_prologue. + (mips_skip_prologue): Pass architecture to mips16_scan_prologue + and mips32_scan_prologue. + (mips_in_function_epilogue_p): Pass architecture to + mips16_in_function_epilogue_p and + mips32_in_function_epilogue_p. + (heuristic_proc_start): Pass architecture to mips_fetch_instruction + and mips_about_to_return. + (mips_skip_mips16_trampoline_code): Pass architecture to + mips_fetch_instruction. + (fetch_mips_16): Add GDBARCH parameter. + (mips16_next_pc): Pass architecture to fetch_mips_16. + (extended_mips16_next_pc): Pass architecture to unpack_mips16 and + fetch_mips_16. + + * objc-lang.c (read_objc_method, read_objc_methlist_nmethods, + read_objc_methlist_method, read_objc_object, read_objc_super, + read_objc_class): Add GDBARCH parameter. + (find_implementation_from_class): Add GDBARCH parameter, pass + to read_objc_class, read_objc_methlist_nmethods, and + read_objc_methlist_method. + (find_implementation): Add GDBARCH parameter, pass to + read_objc_object and find_implementation_from_class. + (resolve_msgsend, resolve_msgsend_stret): Pass architecture + to find_implementation. + (resolve_msgsend_super, resolve_msgsend_super_stret): Pass + architecture to read_objc_super and find_implementation_from_class. + + * ppc64-linux-tdep.c (ppc64_desc_entry_point): Add GDBARCH parameter. + (ppc64_standard_linkage1_target, ppc64_standard_linkage2_target, + ppc64_standard_linkage3_target): Pass architecture to + ppc64_desc_entry_point. + * rs6000-tdep.c (bl_to_blrl_insn_p): Add BYTE_ORDER parameter. + (skip_prologue): Pass byte order to bl_to_blrl_insn_p. + (rs6000_fetch_instruction): Add GDBARCH parameter. + (rs6000_skip_stack_check): Add GDBARCH parameter, pass to + rs6000_fetch_instruction. + (skip_prologue): Pass architecture to rs6000_fetch_instruction. + + * remote-mips.c (mips_store_word): Return old_contents as host + integer value instead of target bytes. + + * s390-tdep.c (struct s390_prologue_data): Add BYTE_ORDER member. + (s390_analyze_prologue): Initialize it. + (extend_simple_arg): Add GDBARCH parameter. + (s390_push_dummy_call): Pass architecture to extend_simple_arg. + + * scm-lang.c (scm_get_field): Add BYTE_ORDER parameter. + * scm-lang.h (scm_get_field): Add BYTE_ORDER parameter. + (SCM_CAR, SCM_CDR): Pass SCM_BYTE_ORDER to scm_get_field. + * scm-valprint.c (scm_scmval_print): Likewise. + (scm_scmlist_print, scm_ipruk, scm_scmval_print): Define + SCM_BYTE_ORDER. + + * sh64-tdep.c (look_for_args_moves): Add GDBARCH parameter. + (sh64_skip_prologue_hard_way): Add GDBARCH parameter, pass to + look_for_args_moves. + (sh64_skip_prologue): Pass architecture to + sh64_skip_prologue_hard_way. + * sh-tdep.c (sh_analyze_prologue): Add GDBARCH parameter. + (sh_skip_prologue): Pass architecture to sh_analyze_prologue. + (sh_frame_cache): Likewise. + + * solib-irix.c (extract_mips_address): Add GDBARCH parameter. + (fetch_lm_info, irix_current_sos, irix_open_symbol_file_object): + Pass architecture to extract_mips_address. + + * sparc-tdep.h (sparc_fetch_wcookie): Add GDBARCH parameter. + * sparc-tdep.c (sparc_fetch_wcookie): Add GDBARCH parameter. + (sparc_supply_rwindow, sparc_collect_rwindow): Pass architecture + to sparc_fetch_wcookie. + (sparc32_frame_prev_register): Likewise. + * sparc64-tdep.c (sparc64_frame_prev_register): Likewise. + * sparc32nbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise. + * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise. + + * spu-tdep.c (spu_analyze_prologue): Add GDBARCH parameter. + (spu_skip_prologue): Pass architecture to spu_analyze_prologue. + (spu_virtual_frame_pointer): Likewise. + (spu_frame_unwind_cache): Likewise. + (info_spu_mailbox_list): Add BYTE_ORER parameter. + (info_spu_mailbox_command): Pass byte order to info_spu_mailbox_list. + (info_spu_dma_cmdlist): Add BYTE_ORER parameter. + (info_spu_dma_command, info_spu_proxydma_command): Pass byte order + to info_spu_dma_cmdlist. + + * symfile.c (read_target_long_array): Add GDBARCH parameter. + (simple_read_overlay_table, simple_read_overlay_region_table, + simple_overlay_update_1): Pass architecture to read_target_long_array. + + * v850-tdep.c (v850_analyze_prologue): Add GDBARCH parameter. + (v850_frame_cache): Pass architecture to v850_analyze_prologue. + + * xstormy16-tdep.c (xstormy16_analyze_prologue): Add GDBARCH + parameter. + (xstormy16_skip_prologue, xstormy16_frame_cache): Pass architecture + to xstormy16_analyze_prologue. + (xstormy16_resolve_jmp_table_entry): Add GDBARCH parameter. + (xstormy16_find_jmp_table_entry): Likewise. + (xstormy16_skip_trampoline_code): Pass architecture to + xstormy16_resolve_jmp_table_entry. + (xstormy16_pointer_to_address): Likewise. + (xstormy16_address_to_pointer): Pass architecture to + xstormy16_find_jmp_table_entry. + + * xtensa-tdep.c (call0_track_op): Add GDBARCH parameter. + (call0_analyze_prologue): Add GDBARCH parameter, pass to + call0_track_op. + (call0_frame_cache): Pass architecture to call0_analyze_prologue. + (xtensa_skip_prologue): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * defs.h (strlen_paddr, paddr, paddr_nz): Remove. + (paddress): Add GDBARCH parameter. + * utils.c (strlen_paddr, paddr, paddr_nz): Remove. + (paddress): Add GDBARCH parameter, use it instead of current_gdbarch. + * ui-out.h (ui_out_field_core_addr): Add GDBARCH parameter. + * ui-out.c (ui_out_field_core_addr): Add GDBARCH parameter, + use it instead of current_gdbarch. + + Update calls to ui_out_field_core_addr to pass architecture: + * ada-lang.c (print_one_exception): Update. + * breakpoint.c (print_one_breakpoint_location, + print_one_exception_catchpoint): Update. + * disasm.c (dump_insns): Update. + * darwin-nat-info.c (darwin_debug_regions_recurse): Update. + * mi/mi-main.c (mi_cmd_data_read_memory): Update. + * mi/mi-symbol-cmds.c: Include "objfiles.h". + (mi_cmd_symbol_list_lines): Update. + * stack.c (print_frame_info, print_frame): Update. + + Update callers of paddress to pass architecture: + * ada-tasks.c (info_task): Update. + * ada-valprint.c (ada_val_print_1): Update. + * annotate.c (annotate_source, annotate_frame_begin): Update. + * breakpoint.c (insert_bp_location, describe_other_breakpoints, + mention): Update. + * cli/cli-cmds.c (edit_command, list_command, print_disassembly): + Update. + * corefile.c (memory_error): Update. + * c-valprint.c (print_function_pointer_address, c_val_print): Update. + * disasm.c (dis_asm_print_address): Update. + * exec.c (print_section_info): Update. + * f-valprint.c (f_val_print): Update. + * infcmd.c: Include "arch-utils.h". + (jump_command, program_info): Update. + * linux-fork.c: Include "arch-utils.h". + (info_forks_command): Update. + * m2-valprint.c (print_function_pointer_address, + print_unpacked_pointer, print_variable_at_address, + m2_val_print): Update. + * m32r-rom.c (m32r_load_section, m32r_load, m32r_upload_command): + Update. + * printcmd.c (print_address, print_address_demangle, address_info): + Update. + * p-valprint.c (pascal_val_print): Update. + * source.c: Include "arch-utils.h". + (line_info): Update. + * stack.c (frame_info, print_block_frame_labels): Update. + * symfile.c (add_symbol_file_command, list_overlays_command): Update. + * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, + print_symbol, print_partial_symbols, maintenance_info_psymtabs, + maintenance_check_symtabs): Update. + * symtab.c (find_pc_sect_symtab): Update. + * target.c (deprecated_debug_xfer_memory): Update. + * tracepoint.c (scope_info): Update. + * tui/tui-stack.c (tui_make_status_line): Update. + * valprint.c (val_print_string): Update. + + Update callers of paddr_nz to use paddress instead (keeping + user-visible output identical): + * alpha-tdep.c (alpha_heuristic_proc_start): Update. + * amd64-tdep.c (fixup_riprel, amd64_displaced_step_copy_insn, + amd64_displaced_step_fixup): Update. + * arch-utils.c (simple_displaced_step_copy_insn): Update. + * auxv.c (fprint_target_auxv): Update. + * breakpoint.c (insert_single_step_breakpoint): Update. + * buildsym.c (finish_block): Update. + * cli/cli-dump.c (restore_section_callback): Update. + * fbsd-nat.c (fbsd_find_memory_regions): Update. + * frame.c (frame_unwind_register_value): Update. + * gcore.c (gcore_create_callback): Update. + * hppa-tdep.c (hppa_frame_cache, hppa_skip_trampoline_code): Update. + * i386-tdep.c (i386_displaced_step_fixup, i386_record_modrm, + i386_record_lea_modrm_addr, i386_record_lea_modrm, + i386_process_record): Update. + * ia64-tdep.c (ia64_frame_this_id, ia64_sigtramp_frame_this_id, + ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id, + ia64_dummy_id, ia64_access_reg, ia64_access_rse_reg): Update. + * infrun.c (displaced_step_prepare, displaced_step_fixup, + handle_inferior_event, insert_step_resume_breakpoint_at_sal, + insert_longjmp_resume_breakpoint): Update. + * linux-nat.c (linux_nat_find_memory_regions): Update. + * linux-record.c (record_linux_system_call): Update. + * mips-tdep.c (heuristic_proc_start, mips_eabi_push_dummy_call, + mips_n32n64_push_dummy_call, mips_o32_push_dummy_call, + mips_o64_push_dummy_call): Update. + * monitor.c (monitor_error, monitor_remove_breakpoint): Update. + * record.c (record_arch_list_add_mem, record_wait, + record_xfer_partial): Update. + * remote-mips.c (mips_fetch_word, mips_check_lsi_error, + mips_common_breakpoint): Update. + * remote-sim.c (gdbsim_xfer_inferior_memory): Update. + * rs6000-tdep.c (ppc_displaced_step_fixup): Update. + * solib-som.c (som_current_sos): Update. + * symfile.c (load_progress, generic_load): Update. + * symfile-mem.c (add_vsyscall_page): Update. + * valops.c (value_fetch_lazy): Update. + * windows-tdep.c (windows_xfer_shared_library): Update. + + Update callers of paddr_nz to use paddress instead (changing + user-visible output to make it more correct): + * dwarf2loc.c (locexpr_describe_location): Update. + * ia64-tdep.c (ia64_memory_insert_breakpoint, + ia64_memory_remove_breakpoint): Update. + * jv-valprint.c (java_value_print): Update. + * m32c-tdep.c (m32c_m16c_address_to_pointer): Update. + * monitor.c (monitor_read_memory): Update. + + Update callers of paddr to use paddress instead (changing + user-visible output to make it more correct): + * arm-tdep.c (arm_push_dummy_call): Update. + * breakpoint.c (insert_bp_location, create_thread_event_breakpoint, + create_breakpoint): Update. + * darwin-nat-info.c (darwin_debug_regions): Update. + * dcache.c (dcache_info): Update. + * dsrec.c (load_srec, make_srec): Update. + * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program, + dwarf2_frame_cache): Update. + * gcore.c (gcore_copy_callback): Update. + * gnu-nat.c (gnu_xfer_memory): Update. + * mips-linux-nat.c (mips_show_dr): Update. + * monitor.c (monitor_write_memory, monitor_insert_breakpoint, + monitor_remove_breakpoint): Update. + * remote.c (compare_sections_command): Update. + * remote-m32r-sdi.c (m32r_xfer_memory, m32r_insert_breakpoint, + m32r_remove_breakpoint, m32r_insert_watchpoint, + m32r_remove_watchpoint): Update. + * sol-thread.c (info_cb): Update. + * symfile.c (load_progress): Update. + + Update callers of paddress or paddr_nz to use hex_string instead + (changes output of internal/error/debug messages only): + * dwarf2read.c (dump_die_shallow): Update. + * frame.c (fprint_field, fprint_frame, frame_pc_unwind, + get_frame_func, create_new_frame): Update. + * hppa-tdep.c (find_unwind_entry, unwind_command): Update. + * ia64-tdep.c (get_kernel_table, ia64_find_proc_info_x, + ia64_get_dyn_info_list): Update. + * maint.c (maintenance_translate_address): Update. + * mi/mi-cmd-var.c (mi_cmd_var_create): Update. + * target.c (target_flash_erase): Update. + + Update callers of paddr/paddr_nz to use phex/phex_nz instead, + using an appropriate address size. Remove use of strlen_paddr. + * exec.c (exec_files_info): Update. + * i386-nat.c (i386_show_dr): Update. + * remote.c (remote_flash_erase): Update. + * m32r-rom.c (m32r_load_section): Update. + * monitor.c (monitor_vsprintf, monitor_store_register): Update. + * remote.c (remote_check_symbols, remote_search_memory): Update. + * remote-mips.c (mips_request, mips_common_breakpoint): Update. + * scm-valprint.c (scm_ipruk, scm_scmval_print): Update. + * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs): Update. + * sh-tdep.c (sh_generic_show_regs, sh3_show_regs, sh2e_show_regs, + sh2a_show_regs, sh2a_nofpu_show_regs, sh3e_show_regs, + sh3_dsp_show_regs, sh4_show_regs, sh4_nofpu_show_regs, + sh_dsp_show_regs): Update. + * xcoffsolib.c (sharedlibrary_command): Update. + + + * maint.c (maint_print_section_info): Add ADDR_SIZE parameter. + Use hex_string_custom instead of paddr. + (print_bfd_section_info): Pass address size. + (print_objfile_section_info): Likewise. + + * annotate.h (annotate_source): Add GDBARCH parameter. + (annotate_frame_begin): Likewise. + * annotate.c (annotate_source): Add GDBARCH parameter. + (annotate_frame_begin): Likewise. + * source.c (identify_source_line): Update call to annotate_source. + * stack.c (print_frame_info, print_frame): Update call to + annotate_frame_begin. + + * breakpoint.c (describe_other_breakpoints): Add GDBARCH parameter. + (create_breakpoint, create_ada_exception_breakpoint): Update call. + + * stack.c (print_block_frame_labels): Add GDBARCH parameter. + (print_frame_label_vars): Update call. + + * symmisc.c (print_partial_symbols): Add GDBARCH parameter. + (dump_psymtab): Update call to print_partial_symbols. + (struct print_symbol_args): Add GDBARCH member. + (dump_symtab_1): Set print_symbol_args architecture member. + (print_symbol): Use it. + + * windows-tdep.h (windows_xfer_shared_library): Add GDBARCH + parameter. + * windows-tdep.c (windows_xfer_shared_library): Likewise. + * i386-cygwin-tdep.c (struct cpms_data): Add GDBARCH member. + (core_process_module_section): Pass architecture from cpms_data to + windows_xfer_shared_library. + (windows_core_xfer_shared_libraries): Initialize cmps_data + architecture member. + * windows-nat.c (windows_xfer_shared_libraries): Pass architecture + to windows_xfer_shared_library. + + * defs.h (print_address): Add GDBARCH parameter. + * printcmd.c (print_address): Add GDBARCH parameter. + (print_scalar_formatted, do_examine): Update call. + * findcmd.c (find_command): Update call. + * tracepoint.c: Include "arch-utils.h". + (trace_find_line_command): Update call. + * tui/tui-disasm.c (tui_disassemble): Update call. + + * value.h (print_address_demangle): Add GDBARCH parameter. + * printcmd.c (print_address_demangle): Add GDBARCH parameter. + * c-valprint.c (print_function_pointer_address, c_val_print): + Update call. + * f-valprint.c (f_val_print): Update call. + * gnu-v3-abi.c (gnuv3_print_method_ptr): Update call. + * jv-valprint.c (java_val_print): Update call. + * m2-valprint.c (print_function_pointer_address, m2_val_print): + Update call. + * p-valprint.c (pascal_val_print): Update call. + + * disasm.c (gdb_disassemble_info): Install architecture into + di.application_data field. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * disasm.h (gdb_disassembly): Add GDBARCH parameter. + (gdb_print_insn): Likewise. + * disasm.c (dump_insns): Add GDBARCH parameter. Use it instead + of current_gdbarch. + (do_mixed_source_and_assembly): Add GDBARCH parameter. Pass to + dump_insns. + (do_assembly_only): Likewise. + (gdb_disassembly): Add GDBARCH parameter. Use it instead of + current_gdbarch. Pass to subroutines. + (gdb_print_insn): Add GDBARCH parameter. Use it instead of + current_gdbarch. + + * stack.c (struct gdb_disassembly_stub_args): Add GDBARCH member. + (gdb_disassembly_stub): Pass architecture to gdb_disassembly. + (do_gdb_disassembly): Add GDBARCH argument. Store into args. + (print_frame_info): Pass architecture to do_gdb_disassembly. + + * printcmd.c (print_formatted): Pass architecture to gdb_print_insn. + + * mi/mi-cmd-disas.c: Include "arch-utils.h" + (mi_cmd_disassemble): Pass architecture to gdb_disassembly. + + * cli/cli-cmds.c: Include "arch-utils.h". + (print_disassembly): Add GDBARCH parameter. Pass to gdb_disassembly + and tui_show_assembly. + (disassemble_current_function): Pass architecture to + tui_get_low_disassembly_address and print_disassembly. + (disassemble_command): Pass architecture to + tui_get_low_disassembly_address and print_disassembly. + + * tui/tui.c (tui_show_assembly): Add GDBARCH parameter. Pass to + tui_update_source_windows_with_addr. + + * tui/tui-data.h (struct tui_locator_element): Add GDBARCH member. + (struct tui_source_info): Likewise. + * tui/tui-data.c (tui_clear_win_detail): Clear source_info.gdbarch. + + * tui/tui-disasm.c (tui_disassemble): Add GDBARCH parameter. + Pass to gdb_print_insn. + (tui_find_disassembly_address): Add GDBARCH parameter. Pass to + tui_disassemble. + (tui_set_disassem_content): Add GDBARCH parameter. Install into + source_info.gdbarch. Pass to tui_disassemble. + (tui_show_disassem): Add GDBARCH parameter. Pass to + tui_update_source_window. + (tui_show_disassem_and_update_source): Add GDBARCH parameter. Pass to + tui_show_disassem and tui_update_source_window. + + (tui_get_begin_asm_address): Return locator architecture in addition + to locator PC value. + + (tui_get_low_disassembly_address): Add GDBARCH parameter. Pass to + tui_get_low_disassembly_address. + + (tui_vertical_disassem_scroll): Pass architecture to subroutines. + + * tui/tui-disasm.h (tui_set_disassem_content): Add GDBARCH parameter. + (tui_show_disassem): Likewise. + (tui_show_disassem_and_update_source): Likewise. + (tui_get_begin_asm_address): Return architecture and PC value. + + * tui/tui.h (tui_get_low_disassembly_address): Add GDBARCH parameter. + (tui_show_assembly): Add GDBARCH parameter. + + * tui/tui-layout.c (extract_display_start_addr): Return current window + architecture in addition to current PC value. + + (tui_set_layout): Update calls to tui_get_low_disassembly_address and + extract_display_start_addr. Pass architecture to + tui_update_source_windows_with_addr. + + * tui/tui-source.c: Include "objfiles.h". + (tui_set_source_content): Initialize window architecture. + (tui_show_symtab_source): Add GDBARCH parameter. Pass to + tui_update_source_window_as_is + + * tui/tui-source.h (tui_show_symtab_source): Add GDBARCH parameter. + + * tui/tui-stack.c (tui_set_locator_info): Add GDBARCH parameter. + Install locator architecture. + (tui_set_locator_filename): Update call. + (tui_show_frame_info): Pass architecture to tui_set_locator_info + and subroutines. + + * tui/tui-win.c (make_visible_with_new_height): Pass architecture + to tui_update_source_window. + + * tui/tui-winsource.c: Include "objfiles.h". + (tui_display_main): Update call to tui_get_begin_asm_address. + Pass architecture to tui_update_source_windows_with_addr. + (tui_update_source_window): Add GDBARCH parameter. Pass to + tui_update_source_window_as_is. + (tui_update_source_window_as_is): Add GDBARCH parameter. + Pass to tui_set_disassem_content. + (tui_update_source_windows_with_addr): Add GDBARCH parameter. + Pass to subroutines. + (tui_update_source_windows_with_line): Pass objfile architecture + to subroutines. + (tui_horizontal_source_scroll): Pass architecture to + tui_update_source_window_as_is. + + * tui/tui-winsource.h (tui_update_source_window): Add GDBARCH + parameter. + (tui_update_source_window_as_is): Likewise. + (tui_update_source_windows_with_addr): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * breakpoint.h (struct breakpoint): New member GDBARCH. + * breakpoint.c: Include "arch-utils.h". + (set_raw_breakpoint_without_location): Add GDBARCH parameter. + Use it to set breakpoint architecture. + (set_raw_breakpoint): Add GDBARCH parameter. + (create_internal_breakpoint): Likewise. + (create_catchpoint): Likewise. + (create_fork_vfork_event_catchpoint): Likewise. + (create_breakpoint): Likewise. + (create_breakpoints): Likewise. + (break_command_really): Likewise. + (create_ada_exception_breakpoint): Likewise. + Update local callers to pass architecture: + (create_internal_breakpoint): Update. + (create_overlay_event_breakpoint): Update. + (create_longjmp_master_breakpoint): Update. + (create_thread_event_breakpoint): Update. + (create_solib_event_breakpoint): Update. + (create_catchpoint): Update. + (create_fork_vfork_event_catchpoint): Update. + (set_momentary_breakpoint): Update. + (clone_momentary_breakpoint): Update. + (create_breakpoint): Update. + (create_breakpoints): Update. + (break_command_really): Update. + (break_command_1): Update. + (set_breakpoint): Update. + (watch_command_1): Update. + (catch_fork_command_1): Update. + (catch_exec_commnd_1): Update. + (handle_gnu_v3_exceptions): Update. + (create_ada_exception_breakpoint): Update. + (catch_ada_exception_command): Update. + (catch_assert_command): Update. + (trace_command): Update. + + * breakpoint.h (struct bp_location): New member GDBARCH. + * breakpoint.c (get_sal_arch): New function. + (set_raw_breakpoint): Set location architecture. + (add_location_to_breakpoint): Likewise. + (clone_momentary_breakpoint): Likewise. + (watch_command_1): Likewise. + (update_watchpoint): Likewise. + (bp_loc_is_permanent): Use location architecture instead of + current_gdbarch. + (adjust_breakpoint_address): Add GDBARCH parameter; use it + instead of current_gdbarch. + Update callers of adjust_breakpoint_address to pass + breakpoint location architecture: + (set_raw_breakpoint): Update. + (watch_command_1): Update. + + * tracepoint.c: (collect_symbol): Add GDBARCH parameter, use instead + of current_gdbarch. + (add_local_symbols): Add GDBARCH parameter. Pass to collect_symbol. + (encode_actions): Pass tracepoint architecture to add_local_symbols + (encode_actions): Use tracepoint architecture instead of + current_gdbarch. Pass it to add_local_symbols and collect_symbol. + + * breakpoint.h (struct breakpoint_ops): Replace last_addr parameter + of print_one callback with last_loc. + * breakpoint.c (print_one_breakpoint_location): Replace last_addr + parameter with last_loc. + (print_one_breakpoint): Likewise. + (do_captured_breakpoint_query): Update call. + (breakpoint_1): Pass last_loc instead of last_addr to + print_one_breakpoint. Pass last location architecture instead of + current_gdbarch to set_next_address. + Update all implementations of the print_one callback: + * breakpoint.c (print_one_catch_fork): Update. + (print_one_catch_vfork): Update. + (print_one_catch_exec): Update. + (print_one_exception_catchpoint): Update. + * ada-lang.c (print_one_exception): Update. + (print_one_catch_exception): Update. + (print_one_catch_exception_unhandled): Update. + (print_one_catch_assert): Update. + + * breakpoint.c (print_one_breakpoint_location): Add PRINT_ADDRESS_BITS + parameter. Use it instead of gdbarch_addr_bit (current_gdbarch). + (print_one_breakpoint): Add PRINT_ADDRESS_BITS parameter and pass it + to print_one_breakpoint_location. + (breakpoint_address_bits): New function. + (do_captured_breakpoint_query): Compute number of address bits to print + and pass it to print_one_breakpoint. + (breakpoint_1): Likewise. Use it instead of current_gdbarch. + + * breakpoint.h (create_thread_event_breakpoint): Add GDBARCH. + * breakpoint.c (create_thread_event_breakpoint): Likewise. + Update callers to create_thread_event_breakpoint: + * aix-thread.c (pd_enable): Update. + * linux-thread-db.c (enable_thread_event): Update. + + * breakpoint.h (create_solib_event_breakpoint): Add GDBARCH. + * breakpoint.c (create_solib_event_breakpoint): Likewise. + Update callers to create_solib_event_breakpoint: + * solib-frv.c (enable_break, enable_break2): Update. + * solib-pa64.c (pa64_solib_create_inferior_hook): Update. + * solib-som.c (som_solib_create_inferior_hook): Update. + * solib-darwin.c (darwin_solib_create_inferior_hook): Update. + * solib-svr4.c (enable_break): Update. + + * breakpoint.h (insert_single_step_breakpoint): Add GDBARCH. + * breakpoint.c (insert_single_step_breakpoint): Likewise. + Update callers to insert_single_step_breakpoint: + * alpha-tdep.c (alpha_software_single_step): Update. + * arm-linux-tdep.c (arm_linux_software_single_step): Update. + * arm-tdep.c (arm_software_single_step): Update. + * cris-tdep.c (cris_software_single_step): Update. + * rs6000-aix-tdep.c (rs6000_software_single_step): Update. + * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Update. + * sparc-tdep.c (sparc_software_single_step): Update. + * spu-tdep.c (spu_software_single_step): Update. + * mips-tdep.c (deal_with_atomic_sequence): Add GDBARCH parameter. + Pass it to insert_single_step_breakpoint. + (mips_software_single_step): Pass architecture to + deal_with_atomic_sequence and insert_single_step_breakpoint. + + * breakpoint.h (deprecated_insert_raw_breakpoint): Add GDBARCH. + (deprecated_remove_raw_breakpoint): Likewise. + * breakpoint.c (deprecated_insert_raw_breakpoint): Add GDBARCH. + (deprecated_remove_raw_breakpoint): Likewise. + Update callers to deprecated_insert_raw_breakpoint and + deprecated_remove_raw_breakpoint: + * breakpoint.c (single_step_gdbarch): New static variable. + (insert_single_step_breakpoint): Pass GDBARCH parameter to + deprecated_insert_raw_breakpoint. Store it in single_step_gdbarch. + (remove_single_step_breakpoints): Pass architecture stored in + single_step_gdbarch to deprecated_remove_raw_breakpoint. + * rs6000-nat.c (exec_one_dummy_insn): Update. + * solib-irix.c (enable_break, disable_break): Update. + * procfs.c (procfs_mourn_inferior): Update. + (remove_dbx_link_breakpoint): Update. + + * breakpoint.h (set_breakpoint): Add GDBARCH parameter. + (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise. + * breakpoint.c (set_breakpoint): Add GDBARCH parameter. + (set_momentary_breakpoint, set_momentary_breakpoint_at_pc): Likewise. + Update callers to set_breakpoint, set_momentary_breakpoint and + set_momentary_breakpoint_at_pc: + * breakpoint.c (set_momentary_breakpoint_at_pc): Update. + (until_break_command): Update. + * infcall.c (call_function_by_hand): Update. + * infcmd.c (finish_backward, finish_forward): Update. + * infrun.c (insert_step_resume_breakpoint_at_sal): Add GDBARCH + parameter. Pass it to set_momentary_breakpoint. + (insert_longjmp_resume_breakpoint): Add GDBARCH parameter. + Pass it to set_momentary_breakpoint_at_pc. + (handle_inferior_event): Update. + (insert_step_resume_breakpoint_at_frame): Update. + (insert_step_resume_breakpoint_at_caller): Update.. + * mi/mi-cmd-break.c: Include "arch-utils.h". + (mi_cmd_break_insert): Update. + + * target.h (struct target_ops): Add GDBARCH parameter to + to_insert_breakpoint, to_remove_breakpoint, to_insert_hw_breakpoint, + and to_remove_hw_breakpoint members. + (target_insert_breakpoint, target_remove_breakpoint, + target_insert_hw_breakpoint, target_remove_hw_breakpoint): Add GDBARCH + parameter, pass to target routine. + (memory_remove_breakpoint, memory_insert_breakpoint): Add GDBARCH + parameter. + * target.c (debug_to_insert_breakpoint, debug_to_remove_breakpoint, + debug_to_insert_hw_breakpoint, debug_to_remove_hw_breakpoint): Add + GDBARCH parameter, pass to target routine. + (update_current_target): Update function signature. + * breakpoint.c (insert_bp_location, remove_breakpoint, + deprecated_insert_raw_breakpoint, deprecated_remove_raw_breakpoint): + Pass architecture to target_ routines. + Update all implementations of the target breakpoint routines to take + GDBARCH parameter and use it instead of GDBARCH as appropriate: + * corelow.c (ignore): Update. + * exec.c (ignore): Update. + * mem-break.c (memory_insert_breakpoint): Update. + (memory_remove_breakpoint): Update. + * monitor.c (monitor_insert_breakpoint): Update. + (monitor_remove_breakpoint): Update. + * record.c (record_insert_breakpoint): Update. + (record_beneath_to_insert_breakpoint): Update. + (record_remove_breakpoint): Update. + (record_beneath_to_remove_breakpoint): Update. + * remote.c (remote_insert_breakpoint): Update. + (remote_remove_breakpoint): Update. + (remote_insert_hw_breakpoint): Update. + (remote_remove_hw_breakpoint): Update. + * remote-m32r-sdi.c (m32r_insert_breakpoint): Update. + (m32r_remove_breakpoint): Update. + * remote-mips.c (mips_insert_breakpoint): Update. + (mips_remove_breakpoint): Update. + * i386-nat.c (i386_insert_hw_breakpoint): Update. + (i386_remove_hw_breakpoint): Update. + * nto-procfs.c (procfs_insert_breakpoint): Update. + (procfs_remove_breakpoint): Update. + (procfs_insert_hw_breakpoint): Update. + (procfs_remove_hw_breakpoint): Update. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * frame.h (frame_unwind_arch): New. + (frame_unwind_caller_arch): Likewise. + * frame-unwind.h (frame_prev_arch_ftype): New type. + (struct frame_unwind): New member prev_arch. + * frame.c (struct frame_info): New member prev_arch. + (frame_unwind_arch): New function. + (frame_unwind_caller_arch): Likewise.. + (get_frame_arch): Reimplement in terms of frame_unwind_arch. + * sentinel-frame.c (sentinel_frame_prev_arch): New function. + (sentinel_frame_unwinder): Install it. + + * frame.c (frame_pc_unwind): Use frame_unwind_arch instead + of get_frame_arch. + (frame_unwind_register_value): Likewise. + (frame_unwind_register_signed): Likewise. + (frame_unwind_register_unsigned): Likewise. + * frame-unwind.c (frame_unwind_got_optimized): Likewise. + (frame_unwind_got_register): Likewise. + (frame_unwind_got_constant): Likewise. + (frame_unwind_got_bytes): Likewise. + (frame_unwind_got_address): Likewise. + + * frame.h (enum frame_type): New value ARCH_FRAME. + * frame.c (fprint_frame_type): Handle ARCH_FRAME. + * stack.c (print_frame_info): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * target.h (struct target_ops): New member to_thread_architecture. + (target_thread_architecture): New macro. + * target.c (update_current_target): Inherit to_thread_architecture. + (default_thread_architecture): New function. + (debug_to_thread_architecture): New function. + (setup_target_debug): Handle to_thread_architecture. + + * regcache.h (get_thread_arch_regcache): New. + * regcache.c (struct regcache_list): New data type. + (current_regcache): Hold regcache list instead of single regcache. + (current_thread_ptid, current_thread_arch): New static variables. + (get_thread_arch_regcache): New function. + (get_thread_regcache): Use it. Call target_thread_architecture. + (regcache_thread_ptid_changed): Update to current_regcache changes. + (registers_changed): Likewise. Reset current_thread_arch and + current_thread_ptid. + + * remote.c (remote_wait): Access target registers in target_gdbarch. + * linux-nat.c (linux_nat_do_thread_registers): Likewise. + * proc-service.c (ps_lgetregs, ps_lsetregs): Likewise. + (ps_lgetfpregs, ps_lsetfpregs): Likewise. + * sol-thread.c (ps_lgetregs, ps_lsetregs): Likewise. + (ps_lgetfpregs, ps_lsetfpregs): Likewise. + * solib-svr4.c (enable_break): Likewise. + (svr4_relocate_main_executable): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * python/python-internal.h (struct language_defn): Declare. + (python_gdbarch, python_language): Likewise. + (ensure_python_env): Add prototype. + (make_cleanup_py_restore_gil): Remove prototype. + + * python/python.c: Include "arch-utils.h", "value.h" and "language.h". + (python_gdbarch, python_language): New global variables. + (struct python_env): New data type. + (ensure_python_env, restore_python_env): New functions. + (eval_python_from_control_command): Call ensure_python_env to + install current architecture and language. + (python_command, gdbpy_new_objfile): Likewise. + * python/python-cmd.c: Include "arch-utils.h" and "language.h". + (cmdpy_destroyer, cmdpy_function, cmdpy_completer): Call + ensure_python_env. + * python/python-type.c (clean_up_objfile_types): Likewise. + * python/python-objfile.c: Include "language.h". + (clean_up_objfile): Call ensure_python_env. + * python/python-prettyprint.c (apply_val_pretty_printer): Likewise. + (apply_varobj_pretty_printer): Do not call PyGILState_Ensure. + * varobj.c (varobj_ensure_python_env): New helper function. + (varobj_get_display_hint, update_dynamic_varobj_children, + install_default_visualizer, varobj_set_visualizer, free_variable, + value_get_print_value): Call it. + (value_get_print_value): Add varobj argument instead of pretty + printer argument. Update all callers. + + * python/python-utils.c (py_gil_restore, make_cleanup_py_restore_gil): + Remove. + + * value.h (internal_function_fn): Add GDBARCH and LANGUAGE argument. + (call_internal_function): Likewise. + * value.c (call_internal_function): Likewise. Pass to handler. + * eval.c (evaluate_subexp_standard): Update call. + * python/python-function.c: Include "language.h". + (fnpy_call): Add GDBARCH and LANGAUAGE arguments and call + make_cleanup_python_env. + + * python/python-value.c (builtin_type_pyint, builtin_type_pyfloat, + builtin_type_pylong, builtin_type_pybool, builtin_type_pychar, + valpy_str): Use python_gdbarch and python_language instead of + current_gdbarch and current_language. + * python/python-type.c (typy_lookup_typename): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * arch-utils.c (selected_byte_order): Return target_byte_order_user. + (show_endian): Use target_byte_order_user if specified; otherwise + use get_current_arch () instead of current_gdbarch. + (show_architecture): Use set_architecture_string if specified; + otherwise use get_current_arch () instead of current_gdbarch. + (get_current_arch): New function. + * arch-utils.h (get_current_arch): Add prototype. + + * osabi.c (show_osabi): Use get_current_arch () instead of + current_gdbarch. + + * findcmd.c: Include "arch-utils.h". + (parse_find_args): Add BIG_P argument. Use it instead of byte order + of current_gdbarch. + (find_command): Use get_current_arch () instead of current_gdbarch. + Pass byte order to parse_find_args. + + * maint.c: Include "arch-utils.h". + (maintenance_print_architecture): Use get_current_arch () instead + of current_gdbarch. + + * reggroups.c: Include "arch-utils.h". + (maintenance_print_reggroups): Use get_current_arch () instead + of current_gdbarch. + + * symfile.c: Include "arch-utils.h". + (overlay_load_command): Use get_current_arch () instead of + current_gdbarch. + + * value.c: Include "arch-utils.h". + (show_convenience): Use get_current_arch () instead of + current_gdbarch. + + * tui/tui-regs.c: Include "arch-utils.h". + (tui_reg_next_command): Use get_current_arch () instead of + current_gdbarch. + + * mi/mi-main.c: Include "arch-utils.h". + (mi_cmd_data_read_memory): Use get_current_arch () instead of + current_gdbarch. + + * parse.c: Include "arch-utils.h". + (parse_exp_in_context): Use get_current_arch () instead of + current_gdbarch. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.c (make_pointer_type, make_reference_type, + smash_to_memberptr_type, lookup_array_range_type, check_stub_method): + Use type architecture instead of current_gdbarch. + + * gdbtypes.h (address_space_name_to_int, address_space_int_to_name): + Add GDBARCH paramter. + * gdbtypes.c (address_space_name_to_int, address_space_int_to_name): + Add GDBARCH parameter. Use it instead of current_gdbarch. + * c-typeprint.c (c_type_print_modifier): Update call. + * parse.c (push_type_address_space): Likewise. + + * findvar.c (extract_typed_address, store_typed_address): Use type + architecture instead of current_gdbarch. + + * value.c (value_as_address, unpack_field_as_long): Use type architecture + instead of current_gdbarch. + + * doublest.c (floatformat_from_length): Add GDBARCH argument. Use it + instead of current_gdbarch. + (floatformat_from_type): Pass type architecture. + + * infcall.c (find_function_addr): Use type architecture instead + of current_gdbarch. + + * valarith.c (value_bitstring_subscript, value_x_binop, value_neg, + value_bit_index): Use type architecture instead of current_gdbarch. + * valops.c (value_cast, value_slice): Likewise. + + * value.h (modify_field): Add TYPE argument. + * value.c (modify_field): Add TYPE argument. Use type architecture + instead of current_gdbarch. + (set_internalvar_component): Likewise. + * eval.c (evaluate_struct_tuple): Update call. + * valops.c (value_assign): Likewise. + * ada-lang.c (modify_general_field): Likewise. Add TYPE argument. + (make_array_descriptor): Update calls. + (move_bits): Add BITS_BIG_ENDIAN_P argument. Use it instead of + current_gdbarch. + (ada_value_assign, value_assign_to_component): Update calls. + (decode_packed_array, ada_value_primitive_packed_val, ada_value_assign, + value_assign_to_component): Use type arch instead of current_gdbarch. + + * printcmd.c (float_type_from_length): Remove GDBARCH argument, + use type architecture instead. + (print_scalar_formatted, printf_command): Update calls. Use type + architecture instead of current_gdbarch. + * valprint.c (val_print_type_code_int): Use type architecture + instead of current_gdbarch. + * varobj.c (value_get_print_value): Likewise. + * python/python-prettyprint.c (print_string_repr): Add GDBARCH + argument. Use it instead of current_gdbarch. + (apply_val_pretty_printer): Update call. + + * ada-valprint.c (ada_val_print_1): Use type architecture instead + of current_gdbarch. + * c-valprint.c (print_function_pointer_address): Add GDBARCH argument. + Use it instead of current_gdbarch. + (c_val_print): Update calls passing type architecture. + * f-valprint.c (f_val_print): Use type architecture instead of + current_gdbarch. + * jv-valprint (java_value_print): Likewise. + * m2-valprint.c (print_function_pointer_address): Add GDBARCH argument. + Use it instead of current_gdbarch. + (print_unpacked_pointer): Update calls passing type architecture. + * scm-valprint.c (scm_scmval_print): Use type architecture instead of + current_gdbarch. + + * gnu-v3-abi.c (get_class_arch): Remove. + (gnuv3_rtti_type): Use get_type_arch instead of get_class_arch. Remove + special-case check for Java classes. + (gnuv3_virtual_fn_field, gnuv3_baseclass_offset, gnuv3_print_method_ptr, + gnuv3_method_ptr_size, gnuv3_make_method_ptr, gnuv3_method_ptr_to_value): + Use get_type_arch instead of get_class_arch. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (TYPE_OBJFILE_OWNED, TYPE_OWNER): New macros. + (TYPE_OBJFILE, TYPE_ALLOC, TYPE_ZALLOC): Reimplement. + (alloc_type_arch): Add prototype. + (alloc_type_copy): Likewise. + (get_type_arch): Likewise. + (arch_type): Likewise. + (arch_integer_type): Likewise. + (arch_character_type): Likewise. + (arch_boolean_type): Likewise. + (init_float_type): Remove, replace by ... + (arch_float_type): ... this. + (init_complex_type): Remove, replace by ... + (arch_complex_type): ... this. + (init_flags_type): Remove, replace by ... + (arch_flags_type): ... this. + (init_composite_type): Remove, replace by ... + (arch_composite_type): ... this. + + * gdbtypes.c (alloc_type): No longer support NULL objfile. + (init_type): Likewise. + (alloc_type_arch): New function. + (alloc_type_copy): New function. + (get_type_arch): New function. + + (smash_type): Preserve type ownership information. + (make_pointer_type, make_reference_type, make_function_type, + smash_to_memberptr_type, smash_to_method_type): No longer + preserve OBJFILE across smash_type calls. + (make_pointer_type, make_reference_type, make_function_type, + lookup_memberptr_type, lookup_methodptr_type, allocate_stub_method, + create_range_type, create_array_type, create_set_type, copy_type): + Use alloc_type_copy when allocating types. + (check_typedef): Use alloc_type_arch. + (copy_type_recursive): Likewise. Preserve type ownership data + after copying type. + (recursive_dump_type): Dump type ownership data. + (alloc_type_instance): Update type ownership check. + (copy_type, copy_type_recursive): Likewise. + + (arch_type): New function. + (arch_integer_type): Likewise. + (arch_character_type): Likewise. + (arch_boolean_type): Likewise. + (init_float_type): Remove, replace by ... + (arch_float_type): ... this. + (init_complex_type): Remove, replace by ... + (arch_complex_type): ... this. + (init_flags_type): Remove, replace by ... + (arch_flags_type): ... this. + (append_flags_type_flag): Move down. + (init_composite_type): Remove, replace by ... + (arch_composite_type): ... this. + (append_composite_type_field_aligned, + append_composite_type_field): Move down. + + * gdbarch.c (gdbtypes_post_init): Allocate all types + using per-architecture routines. + * ada-lang.c (ada_language_arch_info): Likewise. + * f-lang.c (build_fortran_types): Likewise. + * jv-lang.c (build_java_types): Likewise. + * m2-lang.c (build_m2_types): Likewise. + * scm-lang.c (build_scm_types): Likewise. + + * ada-lang.c (ada_type_of_array): Use alloc_type_copy. + (packed_array_type): Likewise. + (ada_template_to_fixed_record_type_1): Likewise. + (template_to_static_fixed_type): Likewise. + (to_record_with_fixed_variant_part): Likewise. + (to_fixed_variant_branch_type): Likewise. + (to_fixed_array_type): Likewise. + (to_fixed_range_type): Likewise. + (empty_record): Use type instead of objfile argument. + Use alloc_type_copy. + (to_fixed_variant_branch_type): Update call to empty_record. + * jv-lang.c (type_from_class): Use alloc_type_arch. + + * arm-tdep.c (arm_ext_type): Allocate per-architecture type. + * i386-tdep.c (i386_eflags_type, i386_mxcsr_type, i387_ext_type, + i386_mmx_type, i386_sse_type): Likewise. + * ia64-tdep.c (ia64_ext_type): Likewise. + * m32c-tdep.c (make_types): Likewise. + * m68k-tdep.c (m68k_ps_type, m68881_ext_type): Likewise. + * rs6000-tdep.c (rs6000_builtin_type_vec64, + rs6000_builtin_type_vec128): Likewise. + * sparc-tdep.c (sparc_psr_type, sparc_fsr_type): Likewise. + * sparc64-tdep.c (sparc64_pstate_type, sparc64_fsr_type, + sparc64_fprs_type): Likewise. + * spu-tdep.c (spu_builtin_type_vec128): Likewise. + * xtensa-tdep.c (xtensa_register_type): Likewise. + * linux-tdep.c (linux_get_siginfo_type): Likewise. + * target-descriptions.c (tdesc_gdb_type): Likewise. + * gnu-v3-abi.c (build_gdb_vtable_type): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * i386-tdep.h (struct gdbarch_tdep): Add i386_eflags_type and + i386_mxcsr_type members. + (i386_eflags_type): Make into function. + (i386_mxcsr_type): Likewise. + * i386-tdep.c (i386_eflags_type): Make into function. + (i386_mxcsr_type): Likewise. + (i386_register_type): Update uses. + (i386_init_types): Remove. + (_initialize_i386_tdep): Do not call it. + * amd64-tdep.c (amd64_register_type): Update uses. + + * m68k-tdep.h (struct gdbarch_tdep): Add m68k_ps_type member. + * m68k-tdep.c (m68k_ps_type): Make into function. + (m68k_register_type): Update use. + (m68k_init_types): Remove. + (_initialize_m68k_tdep): Do not call it. + + * sparc-tdep.h (struct gdbarch_tdep): Add sparc_psr_type, + sparc_fsr_type, sparc64_pstate_type, sparc64_fsr_type, and + sparc64_fprs_type members. + * sparc-tdep.c (sparc_psr_type): Make into function. + (sparc_fsr_type): Likewise. + (sparc32_register_type): Update uses. + (sparc_init_types): Remove. + (_initialize_sparc_tdep): Do not call it. + * sparc64-tdep.c (sparc64_pstate_type): Make into function. + (sparc64_fsr_type): Likewise. + (sparc64_fprs_type): Likewise. + (sparc64_register_type): Update uses. + (sparc64_init_types): Remove. + (_initialize_sparc64_tdep): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (builtin_type_ieee_single, builtin_type_ieee_double, + builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext, + builtin_type_ia64_spill, builtin_type_ia64_quad): Remove. + (init_float_type, init_complex_type): Add prototypes. + * gdbtypes.c (builtin_type_ieee_single, builtin_type_ieee_double, + builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext, + builtin_type_ia64_spill, builtin_type_ia64_quad): Remove. + (_initialize_gdbtypes): Do not initialize them. + (build_flt): Rename to ... + (init_float_type): ... this. Make global. + (build_complex): Rename to ... + (init_complex_type): ... this. Make global. Remove BIT argument. + (gdbtypes_post_init): Update calls. + + * ada-lang.c (ada_language_arch_info): Use init_float_type. + * jv-lang.c (build_java_types): Likewise. + * m2-lang.c (build_m2_types): Likewise. + * f-lang.c (build_fortran_types): Use init_float_type and + init_complex_type. + + * target-descriptions.c (tdesc_gdb_type): Call init_float_type instead + of using builtin_type_ieee_single, builtin_type_ieee_double, or + builtin_type_arm_ext. + + * ia64-tdep.h (struct gdbarch_tdep): Add ia64_ext_type member. + * ia64-tdep.c (builtin_type_ia64_ext): Remove. + (_initialize_ia64_tdep): Do not initialize it. + (floatformat_valid, floatformat_ia64_ext, floatformats_ia64_ext): + Move up. + (ia64_ext_type): New function. + (ia64_register_reggroup_p, ia64_convert_register_p, + ia64_register_to_value, ia64_value_to_register, + ia64_extract_return_value, ia64_store_return_value): Use ia64_ext_type + instead of builtin_type_ia64_ext. + + * i386-tdep.h (struct gdbarch_tdep): Add i387_ext_type member. + (i387_ext_type): Add prototype. + * i386-tdep.c (i387_ext_type): New function. + (i386_extract_return_value, i386_store_return_value, + i386_register_type): Use it instead of builtin_type_i387_ext. + * amd64-tdep.c (amd64_register_type): Likewise. + * i387-tdep.c (print_i387_value, i387_register_to_value, + i387_value_to_register): Likewise. + (print_i387_value, print_i387_ext): Add GDBARCH argument. + (print_i387_ext, i387_print_float_info): Pass to subroutines. + + * m68k-tdep.h (struct gdbarch_tdep): Add m68881_ext_type member. + * m68k-tdep.c (m68881_ext_type): New function. + (m68k_register_type, m68k_convert_register_p): Use it instead + of builtin_type_m68881_ext. + + * arm-tdep.h (struct gdbarch_tdep): Add arm_ext_type member. + * arm-tdep.c (arm_ext_type): New function. + (arm_register_type): Use it instead of builtin_type_arm_ext. + + * alpha-tdep.c (alpha_register_type): Use builtin types + instead of builtin_type_ieee_double. + + * mips-tdep.c (mips_float_register_type, mips_double_register_type): + Remove. + (mips_register_type): Use builtin types instead of + builtin_type_ieee_single and builtin_type_ieee_double. + (mips_print_fp_register): Use builtin types instead of + mips_float_register_type and mips_double_register_type. + + * hppa-tdep.c (hppa32_register_type, hppa64_register_type): + Use builtin types instead of builtin_type_ieee_single and + builtin_type_ieee_double. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (builtin_type_int0, builtin_type_int8, builtin_type_uint8, + builtin_type_int16, builtin_type_uint16, builtin_type_int32, + builtin_type_uint32, builtin_type_int64, builtin_type_uint64, + builtin_type_int128, builtin_type_uint128): Remove. + (struct builtin_type): New members builtin_int0, builtin_int8, + builtin_uint8, builtin_int16, builtin_uint16, builtin_int32, + builtin_uint32, builtin_int64, builtin_uint64, builtin_int128, + and builtin_uint128. + * gdbtypes.c (builtin_type_int0, builtin_type_int8, builtin_type_uint8, + builtin_type_int16, builtin_type_uint16, builtin_type_int32, + builtin_type_uint32, builtin_type_int64, builtin_type_uint64, + builtin_type_int128, builtin_type_uint128): Remove. + (_initialize_gdbtypes): Do not initialize them. + (gdbtypes_post_init): Initialize fixed-size integer types. + + * dwarf2expr.c (unsigned_address_type, signed_address_type): Add + GDBARCH argument. Return platform-specific type. + (dwarf2_read_address, execute_stack_op): Update calls. + + * target-descriptions.c (tdesc_gdb_type): Use platform-specific types + instead of global builtin_int_... variables. + * mi/mi-main.c (mi_cmd_data_read_memory): Likewise. + * printcmd.c (do_examine): Likewise. + * jv-exp.y (parse_number): Likewise. + + * alpha-tdep.c (alpha_register_type, alpha_push_dummy_call, + alpha_store_return_value): Likewise. + * amd64-linux-tdep.c (amd64_linux_register_type): Likewise. + * amd64-tdep.c (amd64_register_type): Likewise. + * arm-tdep.c (arm_register_type): Likewise. + * avr-tdep.c (avr_register_type): Likewise. + * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise. + * frv-tdep.c (frv_register_type): Likewise. + * h8300-tdep.c h8300_register_type): Likewise. + * hppa-tdep.c (hppa64_push_dummy_call, hppa32_register_type, + hppa64_register_type): Likewise. + * i386-tdep.c (i386_mmx_type, i386_sse_type): Likewise. + * iq2000-tdep.c (iq2000_register_type): Likewise. + * lm32-tdep.c (lm32_register_type, lm32_push_dummy_call): Likewise. + * m32r-tdep.c (m32r_register_type): Likewise. + * m68hc11-tdep.c (m68hc11_register_type, m68hc11_pseudo_register_read, + m68hc11_pseudo_register_write): Likewise. + * m68k-tdep.c (m68k_register_type): Likewise. + * m88k-tdep.c (m88k_register_type, m88k_store_arguments): Likewise. + * mep-tdep.c (mep_register_type): Likewise. + * mips-tdep.c (mips_register_type, mips_pseudo_register_type, + mips_print_fp_register): Likewise. + * moxie-tdep.c (moxie_register_type): Likewise. + * mt-tdep.c (mt_copro_register_type, mt_register_type): Likewise. + * rs6000-tdep.c (rs6000_builtin_type_vec64, + rs6000_builtin_type_vec128): Likewise. + * score-tdep.c (score_register_type): Likewise. + * sparc-tdep.c (sparc32_register_type, sparc32_store_arguments): + Likewise. + * sparc64-tdep.c (sparc64_register_type, sparc64_store_arguments): + Likewise. + * spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise. + * v850-tdep.c (v850_register_type): Likewise. + * xstormy16-tdep.c (xstormy16_register_type): Likewise. + * xtensa-tdep.c (xtensa_register_type): Likewise. + + * mt-tdep.c (struct gdbarch_tdep): New data structure. + (mt_gdbarch_init): Alloc TDEP structures. + (mt_register_type): Cache coprocessor type in TDEP instead of + static global variable. + + * xtensa-tdep.h (struct gdbarch_tdep): Add type_entries member. + * xtensa-tdep.c (type_entries): Remove. + (xtensa_register_type): Cache fixed-size types in TDEP instead + of in global variable. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (builtin_type_true_char): Remove. + (builtin_type_true_unsigned_char): Likewise. + (struct builtin_type): Add builtin_true_char and + builtin_true_unsigned_char members. + * gdbtypes.c (builtin_type_true_char): Remove. + (builtin_type_true_unsigned_char): Likewise. + (_initialize_gdbtypes): Do not initialize them. + (gdbtypes_post_init): Initialize builtin_true_char and + builtin_true_unsigned_char members of builtin_type. + + * printcmd.c (print_scalar_formatted): Use builtin_type + members instead of builtin_type_true_char and + builtin_type_true_unsigned_char. + * ada-valprint.c (ada_val_print_1): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (builtin_type_void): Remove. + * gdbtypes.c (builtin_type_void): Remove. + (_initialize_gdbtypes): Do not initialize it. + + (safe_parse_type): Add GDBARCH argument. Use it to construct + void return type. + (check_stub_method): Update call. + + * infcall.c (call_function_by_hand): Use platform-specific type + instead of builtin_type_void. + * valops.c (value_cast): Use input void type instead of + builtin_type_void. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (assign_component): Use platform-specific integer type + instead of builtin_type_int32 type. + (ada_evaluate_subexp) [OP_ATR_SIZE]: Likewise. + + * ax-gdb.c (gen_expr) [UNOP_NEG]: Use platform-specific integer type + instead of builtin_type_int8 type. + * valarith.c (value_x_unop): Likewise. + * python/python-value.c (valpy_absolute): Avoid reference to + builtin_type_int8 type. + + * eval.c (evaluate_subexp_standard): Use platform-specific integer + type instead of builtin_type_int8 as EVAL_SKIP return value type. + * ada-lang.c (ada_evaluate_subexp): Likewise. + * jv-lang.c (evaluate_subexp_java): Likewise. + * m2-lang.c (evaluate_subexp_modula2): Likewise. + * scm-lang.c (evaluate_exp): Likewise. + + * value.h (value_bitstring): Add INDEX_TYPE argument. + * valops.c (value_bitstring): Add INDEX_TYPE argument, use it instead + of builtin_type_int32 as base range type. + * eval.c (evaluate_subexp_standard): Update value_bitstring call. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.c (lookup_array_range_type): Add prototype. + (lookup_string_range_type): Likewise. + * gdbtypes.c (lookup_array_range_type): New function. + (lookup_string_range_type): Likewise. + + * ax-gdb.c (gen_repeat): Use lookup_array_range_type. + * parse.c (follow_types): Likewise. + * jv-lang.c (java_array_type): Likewise. + * gnu-v3-abi.c (build_gdb_vtable_type): Likewise. + * mt-tdep.c (mt_register_type): Likewise. + * sh-tdep.c (sh_sh4_build_float_register_type): Likewise. + * sh64-tdep.c (sh64_build_float_register_type): Likewise. + * value.c (allocate_repeat_value): Likewise. + * valops.c (value_array, value_cstring): Likewise. + * valops.c (value_string): Use lookup_string_range_type. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Remove + redundant check for NULL TYPE_TARGET_TYPE. + * m2-valprint.c (m2_print_long_set): Likewise. + * p-valprint.c (pascal_type_print_base): Likewise. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * printcmd.c (next_gdbarch): New static variable. + (set_next_address, do_examine, x_command): Set it. + (decode_format): Use 'a' size to indicate width of an address. + (do_examine): Add GDBARCH argument. Handle 'a' size. + (x_command): Pass architecture to do_examine. + Error if called without argument the first time. + (do_one_display): Pass architecture to do_examine. + + (examine_i_type, examine_b_type, examine_h_type, examine_w_type, + examine_g_type): Remove. + (_initialize_printcmd): Do not initialize them. + (do_examine): Use builin_type_int... instead of examine_..._type. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (struct builtin_type): Add internal_fn member. + * gdbtypes.c (gdbtypes_post_init): Initialize it. + * value.c (internal_fn_type): Remove. + (_initialize_values): Do not initialize it. + + * value.c (struct internalvar): Add enum internalvar_kind type and + kind member. Restructure union internalvar_data type. Remove type, + canonical, and make_value members. + (init_if_undefined_command): Update for data structure changes. + (create_internalvar): Likewise. + (create_internalvar_type_lazy): Likewise. + (get_internalvar_integer): Likewise. + (get_internalvar_function): Likewise. + (set_internalvar_component): Likewise. + (set_internalvar): Likewise. + (set_internalvar_integer): Likewise. + (set_internalvar_function): Likewise. + (clear_internalvar): Likewise. + (add_internal_function): Likewise. + (preserve_one_internalvar): New function. + (preserve_values): Call it. + + * value.h (value_of_internalvar): Add GDBARCH parameter. + (internalvar_make_value): Likewise. + * value.c (value_of_internalvar): Add GDBARCH parameter. Pass it to + make_value callback. Use it to generate per-architecture result value + types for internal variables with no pre-defined type. Update for data + structure changes. + (show_convenience): Pass architecture to value_of_internalvar. + * eval.c (evaluate_subexp_standard): Likewise. + * infrun.c (siginfo_make_value): Add GDBARCH parameter. Use it + instead of current frame architecture. Return per-architecture type. + + * value.h (set_internalvar_string): Add prototype. + * value.c (set_internalvar_string): New function. + * tracepoint.c (set_traceframe_context): Use it. + +2009-07-02 Ulrich Weigand <uweigand@de.ibm.com> + + * jv-lang.h (java_int_type, java_byte_type, java_short_type, + java_long_type, java_boolean_type, java_char_type, java_float_type, + java_double_type, java_void_type): Remove. + (struct builtin_java_type): New data type. + (builtin_java_type): Add prototype. + (java_primitive_type): Add GDBARCH argument. + (java_primitive_type_from_name): Likewise. + (type_from_class): Likewise. + + * jv-lang.c (java_int_type, java_byte_type, java_short_type, + java_long_type, java_boolean_type, java_char_type, java_float_type, + java_double_type, java_void_type): Remove. + + (build_java_types, builtin_java_type): New functions. + (java_type_data): New static variable. + (_initialize_java_language): Initialize it. No longer initialize + global types. + (java_language_arch_info): Use per-architecture types. + + (java_primitive_type): Add GDBARCH argument. Return per-architecture + type instead of refering to global variable. + (java_primitive_type_from_name): Add GDBARCH argument. + (java_primitive_type_name): New function. + (java_demangled_signature_length): Use it instead of + java_primitive_type_from_name. + (java_demangled_signature_copy): Likewise. + + (type_from_class): Add GDBARCH argument. Pass to java_link_class_type, + java_primitive_type, and recursive type_from_class call. + (java_link_class_type): Add GDBARCH argument. Pass to type_from_class + calls. Use per-architecture types instead of global types. + + * jv-exp.y (parse_java_type): New define. + Use per-architecture types instead of global types througout. + + * jv-valprint.c (java_value_print): Pass architecture to + type_from_class and java_primitive_type_from_name. Use per- + architecture types instead of global types. + +2009-07-01 Doug Evans <dje@google.com> + + * NEWS: Mention biarch amd64-linux gdbserver and hardware watchpoint + support for i386-linux, amd64-linux, and i386-win32 builds of + gdbserver. + +2009-07-01 Nick Roberts <nickrob@snap.net.nz> + + * Makefile.in (HFILES_NO_SRCDIR): Remove entries for deleted files. + +2009-06-30 Jan Kratochvil <jan.kratochvil@redhat.com> + + * Makefile.in (TARGET_FLAGS_TO_PASS): Include also FORCE_PARALLEL. + (check//%): Construct FORCE_PARALLEL for the sub-make. Extend the + comment for it. + +2009-06-30 Paul Pluzhnikov <ppluzhnikov@google.com> + + gdb/10275 + * dwarf2-frame.c (dwarf2_frame_state): Move cfa_offset, cfa_reg, + cfa_how and cfa_exp into regs and adjust users. + +2009-06-30 Daniel Jacobowitz <dan@codesourcery.com> + + * dwarf2read.c (inherit_abstract_dies): Work around GCC PR 40573. + +2009-06-30 Vladimir Prus <vladimir@codesourcery.com> + + * mi/mi-cmd-stack.c (parse_print_values): New. + (mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Use the above. + +2009-06-30 Vladimir Prus <vladimir@codesourcery.com> + + * varobj.c (varobj_get_type): Use type_to_string. + +2009-06-29 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (handle_inferior_event): Context switch to the new + thread when resuming for a new_thread_event. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.h (ada_convert_actual): Add GDBARCH argument. + * ada-lang.c (convert_actual): Remove stale prototype. + (ensure_lval, make_array_descriptor, ada_convert_actual): + Add GDBARCH argument and pass through to subroutine calls. + (ensure_lval): Use GDBARCH instead of current_gdbarch. + * infcall.c (value_arg_coerce): Update ada_convert_actual call. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (resolve): Use per-architecture void type instead + of platform-independent one. + (ada_evaluate_subexp) [STRUCTOP_STRUCT]: Likewise. + (ada_resolve_function): Reimplement fallback logic to avoid + explicit reference to builtin_type_void. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-valprint.c (ada_print_scalar): Accept NULL type argument + to indicate scalar should be printed as default integer. + (print_optional_low_bound): Pass NULL to ada_print_scalar to + indicate default integer output. + * ada-typeprint.c (print_range, print_range_bound): Likewise. + (print_choices): Likewise. Thus, accept NULL as val_type. + * ada-lang.c (ada_variant_discrim_type): Return NULL when failed + to look up controlling discriminant name. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (to_fixed_range_type): Add ORIG_TYPE argument. + Fall back to orig_type as index type if symbol lookup fails. + Allocate result types from ORIG_TYPE's objfile. + (ada_array_bound_from_type, to_fixed_array_type, + ada_evaluate_subexp): Pass original index type to + to_fixed_range_type. Do not pass objfile. + + * ada-typeprint.c (print_range_type_named): Add ORIG_TYPE argument. + Fall back to orig_type as index type if symbol lookup fails. + (print_array_type, ada_print_type): Pass original index type + to print_range_type_named. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (ada_index_type): Update comment. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (ada_index_type): Make static. Add NAME argument. + Throw error on invalid input arguments. Return NULL if unable + to determine index type. + + (ada_array_bound_from_type): Remove TYPEP argument. + (ada_array_bound): Make static. Return LONGEST instead of value. + Update for ada_array_bound_from_type change. + (ada_array_length): Return LONGEST instead of value. + Update for ada_array_bound_from_type change. + (make_array_descriptor): Update for ada_array_bound change. + + (ada_evaluate_subexp) [OP_ATR_RANGE, OP_ATR_FIRST, OP_ATR_LAST, + OP_ATR_LENGTH]: Update for ada_array_bound_from_type, + ada_array_bound, ada_array_length, ada_index_type changes. + Always use ada_index_type to compute result type; fall back + to architecture-specific integer type if ada_index_type fails. + + * ada-lang.h (ada_index_type): Remove prototype. + (ada_array_bound): Likewise. + +2009-06-29 Pedro Alves <pedro@codesourcery.com> + + * dbxread.c (read_dbx_symtab): Clear has_line_numbers when ending + a psymtab. + +2009-06-29 Tom Tromey <tromey@redhat.com> + + * README: Mention parallel check. + +2009-06-29 Sami Wagiaalla <swagiaal@redhat.com> + + * dwarf2read.c (read_import_statement): Properly set import location + and destination. + * cp-support.h (cp_add_using, cp_add_using_directive): Now take char* + inner, char* outer arguments. Updated callers. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * value.h (value_subscript, value_subscripted_rvalue, + value_bitstring_subscript, value_ptradd): Use LONGEST instead + of value as type of the index argument. + (value_ptrsub): Remove. + * valarith.c (value_subscript, value_subscripted_rvalue, + value_bitstring_subscript, value_ptradd): Use LONGEST instead + of value as type of the index argument. + (value_ptrsub): Remove. + + * wrapper.h (gdb_value_subscript): Use LONGEST instead of + value as type of the index argument. + * wrapper.c (gdb_value_subscript): Likewise. + + Update calls to gdb_value_subscript, value_subscript, + value_subscripted_rvalue, value_bitstring_subscript and + value_ptradd to use LONGEST instead of value as index + argument type. Use value_ptradd instead of value_ptrsub. + * ada-lang.c (ada_value_subscript, ada_value_ptr_subscript, + ada_tag_name_2): Update. + * ada-tasks.c (read_atcb): Update. + * eval.c (evaluate_subexp_standard): Update. + * valarith.c (value_subscript): Update. + * gnu-v2-abi.c (gnuv2_virtual_fn_field): Update. + * gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset, + gnuv3_method_ptr_to_value): Update. + * jv-lang.c (evaluate_subexp_java): Update. + * m2-lang.c (evaluate_subexp_modula2): Update. + * python/python-value.c (valpy_getitem, valpy_binop): Update. + * wrapper.c (gdb_value_subscript): Update. + * varobj.c (c_describe_child): Update. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (make_function_type): Remove OBJFILE parameter. + * gdbtypes.c (make_function_type): Remove OBJFILE parameter. + (lookup_function_type): Update call. + * stabsread.c (read_type): Likewise. + * dwarf2read.c (read_subroutine_type): Use lookup_function_type + instead of make_function_type. + * jv-lang.c (type_from_class): Likewise. Do not allocate types + on the fake "dynamics" obstack. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (struct builtin_type): Remove builtin_core_addr, + nodebug_text_symbol, nodebug_data_symbol, nodebug_unknown_symbol, + and nodebug_tls_symbol members. + (struct objfile_type): New data structure. + (objfile_type): Add prototype. + * gdbtypes.c (gdbtypes_post_init): Remove initialization code + for types no longer in struct builtin_type. + (objfile_type_data): New static variable. + (_initialize_gdbtypes): Initialize it. + (objfile_type): New function. + + * gdbtypes.h (builtin_type_error): Remove. + * gdbtypes.c (build_complex): Do not use builtin_type_error. + * symtab.c (builtin_type_error): Remove. + (_initialize_symtab): Remove initialization. + + * stabsread.c (dbx_lookup_type, define_symbol, error_type, + rs6000_builtin_type, read_range_type): Use per-objfile types + instead of global or per-architecture builtin types. + * coffread.c (decode_type): Likewise. + * dwarf2read.c (read_array_type, read_tag_string_type, + new_symbol, die_type): Likewise. + * mdebugread.c (parse_symbol, basic_type, upgrade_type, + parse_procedure, psymtab_to_symtab_1): Likewise. + * xcoffread.c (process_xcoff_symbol): Likewise. + * parse.c (write_exp_msymbol): Likewise. + + * stabsread.c (rs6000_builtin_type_data): New static variable. + (_initialize_stabsread): Initialize it. + (rs6000_builtin_type): Add OBJFILE argument. Allocate builtin + types per-objfile instead of globally. + + * stabsread.c (dbx_lookup_type): Add OBJFILE argument. Use it + instead of current_objfile; pass it to rs6000_builtin_type. + (dbx_alloc_type, read_type, read_range_type): Update calls. + (cleanup_undefined_types_noname): Add OBJFILE argument and + pass it to dbx_lookup_type. + (cleanup_undefined_types): Add OBJFILE argument and pass it + to cleanup_undefined_types_noname. + * stabsread.h (cleanup_undefined_types): Add OBJFILE argument. + * buildsym.c (end_symtab): Update call. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * darwin-nat-info.c (darwin_debug_regions_recurse): Use + target_gdbarch instead of current_gdbarch. + +2009-06-29 Ulrich Weigand <uweigand@de.ibm.com> + + * Makefile.in (ALL_64_TARGET_OBS): Add amd64-windows-tdep.o. + (ALL_TARGET_OBS): Add moxie-tdep.o, i386-darwin-tdep.o, and + solib-darwin.o. + + * configure.tgt: Add comment. + +2009-06-28 Paul Pluzhnikov <ppluzhnikov@google.com> + + * mi/mi-cmds.c (mi_cmds): Remove unimplemented entries. + +2009-06-27 Daniel Jacobowitz <dan@codesourcery.com> + Jan Kratochvil <jan.kratochvil@redhat.com> + + * NEWS: Document inlined function support. + * Makefile.in (SFILES): Add inline-frame.c. + (COMMON_OBS): Add inline-frame.o. + * block.c (contained_in): Rewrite to use lexical nesting. + (block_linkage_function): Skip inlined function blocks. + (block_inlined_p): New. + * block.h (struct block): Update comment. + (block_inlined_p): New prototype. + * blockframe.c (get_frame_block): Handle inlined functions. + (get_frame_function): Do not use block_linkage_function. + (block_innermost_frame): Use get_frame_block and contained_in. + * breakpoint.c (watchpoint_check): Remove extra reinit_frame_cache. + Skip over inlined functions. Simplify epilogue check. + (bpstat_check_breakpoint_conditions): Use get_stack_frame_id. + Update comments. + (set_momentary_breakpoint): Only accept non-inlined frames. + (watch_command_1): Use frame_unwind_caller_pc and + frame_unwind_caller_id instead of get_prev_frame. + (until_break_command): Likewise. Use get_stack_frame_id. + * buildsym.c (end_symtab): Set SYMBOL_SYMTAB for block functions. + * dwarf2loc.c (dwarf_expr_frame_base): Use block_linkage_function. + * dwarf2read.c (process_die): Handle DW_TAG_inlined_subroutine. + (read_func_scope, new_symbol): Likewise. Handle arguments specially + for inlined functions without call site information. + (inherit_abstract_dies): Allow tag mismatch for inlined subroutines. + (die_specification): Treat DW_AT_abstract_origin as a specification. + (read_type_die): Handle DW_TAG_inlined_subroutine. + * frame-unwind.c (frame_unwind_init): Add inline_frame_unwind. + * frame.c (fprint_frame_id): Print inline depth. + (fprint_frame_type): Handle INLINE_FRAME and SENTINEL_FRAME. + (skip_inlined_frames, get_stack_frame_id): New. + (frame_unwind_caller_id): Use skip_inlined_frames. + (frame_id_inlined_p): New. + (frame_id_eq): Make the logic match the comments. Add inline_depth + check. + (frame_id_inner): Handle inlined functions. + (frame_unwind_pc): New function, copied from frame_unwind_caller_pc. + (frame_unwind_caller_pc): Use skip_inlined_frames and frame_unwind_pc. + (get_prev_frame_1): Check for inline frames. Split out frame + allocation to get_prev_frame_raw. + (get_prev_frame_raw): New function. + (get_prev_frame): Handle inline frames. + (get_frame_pc): Use frame_unwind_pc. + (get_frame_address_in_block): Skip inlined frames on both sides. + (pc_notcurrent): Delete. + (find_frame_sal): Rewrite to handle inline call sites. Use + get_frame_address_in_block. + (deprecated_update_frame_pc_hack): Make static. + * frame.h: Update comments. + (struct frame_id): Add inline_depth. + (enum frame_type): Add INLINE_FRAME. + (frame_id_inlined_p, get_stack_frame_id): New prototypes. + * gdbthread.h (struct thread_info): Add step_stack_frame_id field. + * infcmd.c (set_step_frame): New function. + (step_once): Use set_step_frame. Handle inlined functions. + (until_next_command): Use set_step_frame. + (finish_backward), finish_forward): Use get_stack_frame_id. + (finish_command): Support inlined functions. + * inferior.h (set_step_info): New prototype. + * infrun.c (RESUME_ALL): Use minus_one_ptid. + (clear_proceed_status): Clear step_stack_frame_id. + (init_wait_for_inferior): Call clear_inline_frame_state. + (init_execution_control_state): Make static. + (set_step_info): New function. + (init_thread_stepping_state): Do not set the symtab or line here. + (stepped_in_from): New function. + (handle_inferior_event): Handle inlined functions. Use set_step_info. + (insert_step_resume_breakpoint_at_frame): Use get_stack_frame_id. + (struct inferior_status): Add step_stack_frame_id. + (save_inferior_status, restore_inferior_status): Save and restore + step_stack_frame_id. + * inline-frame.c, inline-frame.h: New files. + * minsyms.c (prim_record_minimal_symbol_and_info): Use XCALLOC. + * regcache.c (regcache_write_pc): Call reinit_frame_cache. + * s390-tdep.c (s390_prologue_frame_unwind_cache): Handle INLINE_FRAME. + * stack.c (frame_show_address): New. + (print_frame_info, print_frame): Use it. + (find_frame_funname): Use get_frame_function. Handle inlined blocks. + (frame_info): Mark inlined functions. + (backtrace_command_1): Use get_current_user_frame. + (print_frame_local_vars, print_frame_label_vars): Update comments. + (return_command): Refuse inlined functions. + * symtab.c (lookup_symbol_aux_local): Stop at inlined function + boundaries. + (find_function_start_sal): Avoid inlined functions. + (completion_list_add_fields): New function. + (default_make_symbol_completion_list): Use it. Use block_static_block + and block_global_block. Check for inlined functions. + (skip_prologue_using_sal): Avoid line number comparison across + inlining. + * symtab.h (struct symbol): Add is_inlined. + (SYMBOL_INLINED): New. + * target.c (target_resume): Call clear_inline_frame_state. + * valops.c (value_of_variable): Check block_inlined_p. + +2009-06-27 Daniel Jacobowitz <dan@codesourcery.com> + + * frame.c (frame_unwind_id): Renamed to ... + (frame_unwind_caller_id): ... this. All callers updated. + (frame_pc_unwind): Renamed to ... + (frame_unwind_caller_pc): ... this. All callers updated. + * frame.h: Document frame_unwind_caller_WHAT functions. + (frame_unwind_id): Renamed to ... + (frame_unwind_caller_id): ... this. + (frame_pc_unwind): Renamed to ... + (frame_unwind_caller_pc): ... this. + * hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment. + * stack.c (parse_frame_specification_1): Do not rely on + frame_unwind_id. + +2009-06-27 Michael Snyder <msnyder@vmware.com> + + * infrun.c (handle_inferior_event): Improve handling of + reverse-stepping into and over shared library functions. + +2009-06-25 Karen Osmond <karen.osmond@gmail.com> + + * linespec.c (find_method): Add new not_found_ptr parameter to + bring in line with symtab_from_filename, decode_variable. + (decode_compound): Likewise. Also propagate not_found_ptr to + find_method. + (decode_line_1): Propagate not_found_ptr to decode_compound. + (cplusplus_error): Now throws NOT_FOUND_ERROR. + +2009-06-25 Karen Osmond <karen.osmond@gmail.com> + + * MAINTAINERS (Write After Approval): Add self. + +2009-06-23 Ulrich Weigand <uweigand@de.ibm.com> + + * valops.c (value_one): Reimplement broken decimal-float case. + +2009-06-23 Ulrich Weigand <uweigand@de.ibm.com> + + * eval.c (evaluate_subexp_standard): Use expression architecture + instead of current_gdbarch. + + * infrun.c (handle_inferior_event): Avoid unncessary reference + to current_gdbarch and get_current_frame (). + +2009-06-23 Ulrich Weigand <uweigand@de.ibm.com> + + * breakpoint.h (set_longjmp_breakpoint): Add THREAD argument. + (enum bptype): Add bp_longjmp_master. + + * breakpoint.c (create_longjmp_master_breakpoint): New function. + (update_breakpoints_after_exec): Handle bp_longjmp_master + breakpoints. Call create_longjmp_master_breakpoint. + (print_it_typical, bpstat_stop_status, bpstat_what, + print_one_breakpoint_location, allocate_bp_location, mention, + delete_command, breakpoint_re_set_one): Handle bp_longjmp_master. + (breakpoint_re_set): Call create_longjmp_master_breakpoint. + (create_longjmp_breakpoint): Delete. + (set_longjmp_breakpoint): Add THREAD argument. Reimplement + to install momentary clones of bp_longjmp_master breakpoints. + + * infcmd.c (step_1): Pass thread to set_longjmp_breakpoint. + +2009-06-23 Cary Coutant <ccoutant@google.com> + + * dwarf2read.c (dwarf_decode_lines): Ignore rows where is_stmt is 0. + Set basic_block to 0 after a special opcode. + +2009-06-23 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix a regression by the mmap patch from 2009-06-16. + * symfile.c (reread_symbols): Move sym_finish and clear_objfile_data + calls before deleting the OBJFILE obstack. Extend the comment. + +2009-06-23 Ulrich Weigand <uweigand@de.ibm.com> + + * jv-lang.h (JAVA_OBJECT_SIZE): Remove. + (get_java_object_header_size): Add GDBARCH parameter. + * jv-lang.c (get_java_object_header_size): Add GDBARCH parameter. + Use it instead of current_gdbarch. + (evaluate_subexp_java): Replace JAVA_OBJECT_SIZE with call to + get_java_object_header_size. + * jv-valprint.c (java_value_print): Likewise. + +2009-06-23 Sami Wagiaalla <swagiaal@redhat.com> + + * dwarf2read.c (process_die): Handle import statements + (DW_TAG_imported_declaration, case DW_TAG_imported_module) + (read_import_statement): New. + (read_func_scope): Update using_directives to point to current context + (read_lexical_block_scope): Ditto. + * cp-support.h: Added prototype for cp_add_using. + * cp-namespace.c: Removed local context_stack. + (cp_initialize_namespace): Deleted. + (cp_finalize_namespace): Deleted. + (cp_add_using_directive): Use using_directives instead of using_list. + (cp_add_using): No longer static. + * buildsym.h: Created global using_direct variable. + Created using_direct variable in context_stack. + * buildsym.c (finish_block): Set using directives for the block under + construction. + (start_symtab): Removed call to cp_initialize_namespace(). + (end_symtab): Removed call to cp_finalize_namespace(). + (push_context): Save and reset using_directives. + * block.c (block_using): Return using directives for given + block instead of static block. + +2009-06-23 Ulrich Weigand <uweigand@de.ibm.com> + + * target-descriptions.h (struct type): Do not declare. + (struct tdesc_type): Declare. + (tdesc_named_type): Change return type to struct tdesc_type *. + (tdesc_record_type): Remove. + (tdesc_create_vector): Add prototype. + (tdesc_create_union): Likewise. + (tdesc_add_field): Likewise. + + * target-descriptions.c (struct tdesc_reg): Replace gdb_type + member by tdesc_type member. + (struct tdesc_type_field, tdesc_type_field): Add type and vector def. + (struct tdesc_type, tdesc_type_p): Likewise. + (struct tdesc_arch_reg, tdesc_arch_reg): Likewise. + (struct tdesc_feature): Change type of "types" to VEC(tdesc_type_p). + (struct tdesc_arch_data): Replace registers member by arch_regs. + + (tdesc_predefined_types): Change to array of pre-defined + struct tdesc_type structures. Add "code_ptr" and "data_ptr". + (tdesc_named_type): Return struct tdesc_type * instead of GDB type. + (tdesc_gdb_type): New function. + + (target_find_description): Update for data structure changes. + (tdesc_data_cleanup): Likewise. + (tdesc_numbered_register): Likewise. + (tdesc_use_registers): Likewise. + (tdesc_create_reg): Likewise. + + (tdesc_find_arch_register): New function. + (tdesc_find_register): Use it. + (tdesc_register_type): Use tdesc_gdb_type to generate GDB type from + tdesc_type on demand; cache generated types in tdesc_arch_reg. + + (tdesc_free_type): New function. + (tdesc_free_feature): Call it. + + (tdesc_create_vector): New function. + (tdesc_create_union): Likewise. + (tdesc_add_field): Likewise. + (tdesc_record_type): Remove. + + (tdesc_type_id): Remove. + (maint_print_c_tdesc_cmd): Update for data structure changes. Update + generated code to create tdesc_type structures instead of GDB types. + + * xml-tdesc.c: Do not include "gdbtypes.h". + (struct tdesc_parsing_data): Change type of current_union to + struct tdesc_type *. + (tdesc_start_reg): Do not special-case "code_ptr" or "data_ptr". + (tdesc_start_union): Call tdesc_create_union. + (tdesc_start_field): Call tdesc_add_field. + (tdesc_start_vector): Call tdesc_create_vector. + (tdesc_end_union): Remove. + (feature_children): Remove reference to tdesc_end_union. + + * features/arm-with-iwmmxt.c: Regenerate. + * features/mips-linux.c: Regenerate. + * features/mips64-linux.c: Regenerate. + * features/rs6000/powerpc-32.c: Regenerate. + * features/rs6000/powerpc-32l.c: Regenerate. + * features/rs6000/powerpc-403.c: Regenerate. + * features/rs6000/powerpc-403gc.c: Regenerate. + * features/rs6000/powerpc-505.c: Regenerate. + * features/rs6000/powerpc-601.c: Regenerate. + * features/rs6000/powerpc-602.c: Regenerate. + * features/rs6000/powerpc-603.c: Regenerate. + * features/rs6000/powerpc-604.c: Regenerate. + * features/rs6000/powerpc-64.c: Regenerate. + * features/rs6000/powerpc-64l.c: Regenerate. + * features/rs6000/powerpc-7400.c: Regenerate. + * features/rs6000/powerpc-750.c: Regenerate. + * features/rs6000/powerpc-860.c: Regenerate. + * features/rs6000/powerpc-altivec32.c: Regenerate. + * features/rs6000/powerpc-altivec32l.c: Regenerate. + * features/rs6000/powerpc-altivec64.c: Regenerate. + * features/rs6000/powerpc-altivec64l.c: Regenerate. + * features/rs6000/powerpc-e500.c: Regenerate. + * features/rs6000/powerpc-e500l.c: Regenerate. + * features/rs6000/powerpc-isa205-32l.c: Regenerate. + * features/rs6000/powerpc-isa205-64l.c: Regenerate. + * features/rs6000/powerpc-isa205-altivec32l.c: Regenerate. + * features/rs6000/powerpc-isa205-altivec64l.c: Regenerate. + * features/rs6000/powerpc-isa205-vsx32l.c: Regenerate. + * features/rs6000/powerpc-isa205-vsx64l.c: Regenerate. + * features/rs6000/powerpc-vsx32.c: Regenerate. + * features/rs6000/powerpc-vsx32l.c: Regenerate. + * features/rs6000/powerpc-vsx64.c: Regenerate. + * features/rs6000/powerpc-vsx64l.c: Regenerate. + * features/rs6000/rs6000.c: Regenerate. + +2009-06-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (decode_packed_array): If the value is a pointer to + an array, then use value_ind to dereference it, not ada_value_ind. + (ada_template_to_fixed_record_type_1): Handle the case where a + dynamic field is an aligner type. + (to_fixed_array_type): Add handling for packed array types. + (ada_get_base_type): Do not follow the XVS type if the type is + an aligner type. + (ada_evaluate_subexp): Split a few statements up for clarity + and debuggability. + <OP_FUNCALL>: Add handling of the case of a packed array that + has already been fixed. + +2009-06-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (evaluate_subexp): Delete. Use the version from eval.c. + (evaluate_subexp_type): Reimplement using evaluate_subexp. + * value.h (evaluate_subexp): Add declaration. + * eval.c (evaluate_subexp): Make non-static. + * objc-lang.c (print_object_command): Use evaluate_subexp. + +2009-06-23 Paul Pluzhnikov <ppluzhnikov@google.com> + + Revert 2009-05-14 breakpoint commit (no longer needed). + * breakpoint.h (breakpoint_re_set_objfile): Remove + * breakpoint.c (breakpoint_re_set_objfile): Likewise + (create_overlay_event_breakpoint): Remove objfile parameter, + iterate over all objfiles. + * objfiles.c (objfile_relocate): Update. + * symfile.c (new_symfile_objfile): Likewise. + +2009-06-23 Tom Tromey <tromey@redhat.com> + + PR gdb/10309: + * c-lang.c (classify_type): Iterate over typedefs. + * c-valprint.c (textual_element_type): Iterate over typedefs. + +2009-06-22 Tristan Gingold <gingold@adacore.com> + + * darwin-nat.c (darwin_xfer_partial): Use host_address_to_string + instead of "%p". + +2009-06-22 Jan Kratochvil <jan.kratochvil@redhat.com> + + PR gdb/9988: + * buildsym.c (block_compar): New function. + (end_symtab): Replace the bubble sort by a qsort based code. + +2009-06-22 Sami Wagiaalla <swagiaal@redhat.com> + + * MAINTAINERS (Write After Approval): Add self. + +2009-06-22 Ulrich Weigand <uweigand@de.ibm.com> + + * spu-tdep.c (spu_get_longjmp_target): New function. + (spu_gdbarch_init): Install it. + +2009-06-22 H.J. Lu <hongjiu.lu@intel.com> + + PR server/10306 + * remote.c (getpkt_or_notif_sane_1): Initialize val to -1. + +2009-06-21 Michael Snyder <msnyder@vmware.com> + + * inferior.h: Update ancient comment. + +2009-06-20 Aleksandar Ristovski <aristovski@qnx.com> + Pedro Alves <pedro@codesourcery.com> + + * solib-svr4.c (IGNORE_FIRST_LINK_MAP_ENTRY): Avoid dereferencing + NULL pointer. + (scan_dyntag): Skip if input bfd isn't elf flavoured. + (locate_base): Call elf_locate_base even without an exec_bfd. + +2009-06-19 Samuel Bronson <naesten@gmail.com> + + PR cli/9903: + * cli/cli-decode.c (apropos_cmd): Skip traversing abbreviations + for prefix commands to avoid duplicates in the output. + +2009-06-19 Samuel Bronson <naesten@gmail.com> + + PR cli/9903: + * cli/cli-decode.c (apropos_cmd): Fix avoidance of double + printing. + +2009-06-19 Jerome Guitton <guitton@adacore.com> + + * breakpoint.c (expand_line_sal_maybe): When explicit_line, + skip prologue on each sals. + (skip_prologue_sal): Return explicit_line and explicit_pc + unmodified. + +2009-06-19 Tristan Gingold <gingold@adacore.com> + + * darwin-nat.c (_initialize_darwin_inferior): Remove commented-out + line. + +2009-06-19 Tristan Gingold <gingold@adacore.com> + * machoread.c (macho_symtab_read): Adjust for bfd changes. + * darwin-nat.h (struct darwin_exception_msg): New type to describe + a mach exception. + (struct private_thread_info): New type to describe the state of the + thread. + (DEF_VEC_I thread_t): Removed, replaced by ... + (DEF_VEC_O darwin_thread_t): ... this new type. + (struct darwin_inferior): Renamed to ... + (struct private_inferior): ... this type. Fields added. + (darwin_not_port): Moved into the private inferior structure. + * darwin-nat.c: Add includes, improve comments. + Rewrite to handle multiple threads and processes. + (darwin_resume_to): New function and protype. + (darwin_resume, darwin_wait_to, darwin_wait): Ditto. + (darwin_kill_inferior): Add ops argument. + (darwin_pid_to_str): New function. + (darwin_thread_alive): Ditto. + (darwin_inf, darwin_not_port): Removed. + (darwin_inf_fake_stop): New variable. + (msgin, msgout, msg_state, exc_msg): Removed. + (mach_check_error): Use warning instead of error. + (darwin_ptrace): Adjust debug level. + (cmp_thread_t): Fix names (typo). + (darwin_check_new_threads): Argument is now an inferior, + adjust for new structures, add no change check, ignore dead ports, + handle first thread case. + (find_inferior_task_it): New function. + (find_inferior_notify_it): Ditto. + (darwin_find_inferior_by_task): Ditto. + (darwin_find_inferior_by_notify): Ditto. + (darwin_find_thread): Ditto. + (darwin_suspend_inferior): Ditto. + (darwin_resume_inferior): Ditto. + (catch_exception_raise_state): Removed. + (catch_exception_raise_state_identity): Removed. + (darwin_suspend_inferior_it): New function. + (darwin_resume_inferior_it): Ditto. + (darwin_dump_message): New function, extracted from darwin_wait. + (darwin_decode_exception_message): New function. + (darwin_encode_reply): New function. + (catch_exception_raise): Removed. + (darwin_send_reply): New function, extracted from darwin_resume. + (darwin_resume_thread): New function, extracted from darwin_resume. + (struct resume_inferior_threads_param): New type. + (darwin_resume_inferior_threads_it): New function. + (darwin_resume_inferior_threads): New function. + (darwin_suspend_inferior_threads): New function. + (darwin_resume): Mostly rewritten to handle multiple threads and + some corner cases. + (darwin_decode_message): New function extracted from darwin_wait. + (cancel_breakpoint): New function. + (darwin_wait): Mostly rewritten. Handle multiple threads. + (darwin_mourn_inferior): Adjust for per process structures. + (darwin_reply_to_all_pending_messages): New function. + (darwin_stop_inferior): Adjust for per inferior structures. + (darwin_attach_pid): Ditto. + (darwin_init_thread_list): Ditto. + (darwin_attach): Ditto. + (darwin_detach): Ditto. + (darwin_files_info): Now empty. + (darwin_pid_to_str): Adjust returns string to match one expected by + the testsuite. + (darwin_read_write_inferior): Rename err variable to match other uses. + Adjust debug message. Handle submaps. + (darwin_xfer_memory): Adjust for per inferior structures. + (set_enable_mach_exceptions): Ditto. + (darwin_pid_to_exec_file): New function. + (darwin_get_ada_task_ptid): Ditto. + (darwin_supports_multi_process): Ditto. + (_initialize_darwin_inferior): Remove useless assertion, adjust for + per inferior structures. Add new target operations. + +2009-06-18 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * infrun.c (handle_inferior_event): Improve reverse stepping + through function epilogue. + + * infrun.c (handle_inferior_event): Reverse-next through + trampoline. + +2009-06-18 Paul Pluzhnikov <ppluzhnikov@google.com> + + * dwarf2-frame.c (struct comp_unit): Use bfd_size_type for + dwarf_frame_size. + +2009-06-17 Tom Tromey <tromey@redhat.com> + + * dwarf2read.c (zlib_decompress_section): Use a cleanup. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbarch.sh (pointer_to_address): Change to type 'm'. + (address_to_pointer): Likewise. + * gdbarch.c, gdbarch.h: Regenerate. + + * inferior.h (unsigned_pointer_to_address): Add GDBARCH argument. + (signed_pointer_to_address): Likewise. + (unsigned_address_to_pointer, address_to_signed_pointer): Likewise. + * findvar.c (unsigned_pointer_to_address): Likewise. + (signed_pointer_to_address): Likewise. + (unsigned_address_to_pointer, address_to_signed_pointer): Likewise. + + * avr-tdep.c (avr_address_to_pointer): Likewise. + (avr_pointer_to_address): Likewise. + * iq2000-tdep.c (iq2000_pointer_to_address): Likewise. + (iq2000_address_to_pointer): Likewise. + * m32c-tdep.c (m32c_m16c_address_to_pointer): Likewise. + (m32c_m16c_pointer_to_address): Likewise. + * spu-tdep.c (spu_pointer_to_address): Likewise. + * xstormy16-tdep.c (xstormy16_pointer_to_address): Likewise. + (xstormy16_address_to_pointer): Likewise. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * printcmd.c (print_scalar_formatted): Always truncate + unsigned data types. + + * cli-dump.c (struct callback_data): Change type of load_offset + to CORE_ADDR. + (restore_binary_file): Update type casts. + (restore_command): Parse load_offset as address, not long. + + * utils.c (string_to_core_addr): Do not sign-extend value. + * varobj.c (find_frame_addr_in_frame_chain): Truncate frame_base + before comparing against requested frame address. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbarch.sh (gcore_bfd_target): New gdbarch callback. + * gdbarch.h, gdbarch.c: Regenerate. + + * gcore.c (default_gcore_target): Make return value const. + Call gdbarch_gcore_bfd_target if present. + (default_gcore_arch, default_gcore_mach): Use target_gdbarch. + + * corelow.c (core_read_description): Call gdbarch_core_read_description + on core_gdbarch instead of current_gdbarch. + + * ppc-linux-tdep.c (ppc_linux_init_abi): Install gcore_bfd_target. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.c (create_string_type): Receive character type as argument. + * gdbtypes.h (create_string_type): Add character type argument. + * dwarf2read.c (read_tag_string_type): Pass character type to + create_string_type. + + * value.h (value_string): Add character type argument. + * valops.c (value_string): Add character type argument. Pass it to + create_string_type. Do not allocate space in inferior. + * valarith.c (value_concat): Pass character type to value_string. + + * value.h (value_typed_string): Rename to ... + (value_cstring): ... this. + * valops.c (value_typed_string): Rename to ... + (value_cstring): ... this. + * c-lang.c (evaluate_subexp_c): Update. + + * python/python-value.c (builtin_type_pychar): New define. + (convert_value_from_python): Call value_cstring instead + of value_from_string. + * value.c (value_from_string): Remove. + * value.h (value_from_string): Remove. + + * eval.c (evaluate_subexp_standard): Pass character type to + value_string. Pass expression architecture to value_nsstring + and lookup_child_selector. + * objc-lang.h (lookup_objc_class): Add GDBARCH parameter. + (lookup_child_selector): Likewise. + (value_nsstring): Likewise. + * objc-lang.c (lookup_objc_class): Add GDBARCH parameter. + Pass character type to value_string.. + (lookup_child_selector): Likewise. + (value_nsstring): Add GDBARCH parameter, use it instead of + objfile architecture. Pass architecture to lookup_objc_class + and lookup_child_selector. Pass character type to value_string. + (end_msglist): Pass architecture to lookup_objc_class. + * objc-exp.y: Pass architecture to lookup_objc_class. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbtypes.h (struct language_defn): Add forward declaration. + (lookup_typename): Add LANGUAGE and GDBARCH parameters. + (lookup_unsigned_typename): Likewise. + (lookup_signed_typename): Likewise. + * gdbtypes.c (lookup_typename): Add LANGUAGE and GDBARCH parameters. + Use them instead of current_language and current_gdbarch. + (lookup_unsigned_typename): Add LANGUAGE and GDBARCH parameters. + Pass them to lookup_typename. + (lookup_signed_typename): Likewise. + + * c-exp.y: Pass parse_language and parse_gdbarch to + lookup_unsigned_typename and lookup_signed_typename. + * objc-exp.y: Likewise. + * m2-exp.y: Pass parse_language and parse_gdbarch to lookup_typename. + + * c-lang.c (evaluate_subexp_c): Pass expression language and + gdbarch to lookup_typename. + * printcmd.c (printf_command): Pass current language and + gdbarch to lookup_typename. + * python/python-type.c (typy_lookup_typename): Likewise. + Include "language.h". + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * sparc64-nat.c (sparc64_gregset_supplies_p): Add GDBARCH parameter. + Use it instead of current_gdbarch. Pass architecture to + sparc32_gregset_supplies_p. + (sparc64_fpregset_supplies_p): Add GDBARCH parameter. Use it instead + of current_gdbarch. Pass architecture to sparc32_fpregset_supplies_p. + * sparc64nbsd-nat.c (sparc64nbsd_gregset_supplies_p, + sparc64nbsd_fpregset_supplies_p): Likewise. + * sparc-nat.c (sparc_gregset_supplies_p, sparc_fpregset_supplies_p): + Add GDBARCH parameter. + (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise. + (sparc_fetch_inferior_registers): Pass regcache architecture to + sparc_gregset_supplies_p and sparc_fpregset_supplies_p. + (sparc_store_inferior_registers): Likewise. + * sparc-nat.h (sparc_gregset_supplies_p, sparc_fpregset_supplies_p: + Add GDBARCH parameter. + (sparc32_gregset_supplies_p, sparc32_fpregset_supplies_p): Likewise. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-tasks.c (read_known_tasks_array): Use target_gdbarch instead + of current_gdbarch. + * aix-thread.c (pd_enable): Likewise. + * amd64-linux-nat.c (ps_get_thread_area): Likewise. + * bsd-uthread.c (bsd_uthread_activate): Likewise. + * linux-nat.c (linux_nat_info_proc_cmd): Likewise. + * linux-thread-db.c (enable_thread_event): Likewise. + * monitor.c (monitor_write_memory, monitor_read_memory): Likewise. + * nto-procfs.c (procfs_open): Likewise. + * procfs.c (invalidate_cache, procfs_insert_watchpoint, + info_proc_mappings, info_mappings_callback): Likewise. + * record.c (record_open): Likewise. + * rs6000-nat.c (ARCH64): Likewise. + * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise. + (darwin_bfd_open): Likewise. + * memattr.c (mem_info_command): Likewise. + + * windows-nat.c (win32_resume): Use current regcache architecture + instead of current_gdbarch. + + * dbug-rom.c (dbug_regname): Remove check against number of + registers in current_gdbarch. + * solib-pa64.c (read_dynamic_info): Remove unused variable. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * dummy-frame.c (deprecated_pc_in_call_dummy): Add GDBARCH parameter, + use it instead of current_gdbarch. + * frame.h (deprecated_pc_in_call_dummy): Add GDBARCH parameter. + * arm-tdep.c (arm_skip_prologue): Pass architecture to + deprecated_pc_in_call_dummy. + + * symtab.c (skip_prologue_using_sal): Add GDBARCH parameter. + Use it instead of current_gdbarch. + * symtab.h (skip_prologue_using_sal): Add GDBARCH parameter. + * breakpoint.c (expand_line_sal_maybe): Pass architecture to + skip_prologue_using_sal. + * arm-tdep.c (skip_prologue_using_sal): Likewise. + * lm32-tdep.c (lm32_skip_prologue): Likewise. + * m32-tdep.c (m32c_skip_prologue): Likewise. + * mips-tdep.c (mips_skip_prologue): Likewise. + * moxie-tdep.c (moxie_skip_prologue): Likewise. + * mt-tdep.c (mt_frame_unwind_cache): Likewise. + * rs6000-tdep.c (rs6000_skip_prologue): Likewise. + * frv-tdep.c (frv_analyze_prologue): Add GDBARCH parameter, pass + it to skip_prologue_using_sal. Update call sites ... + (frv_skip_prologue, frv_frame_unwind_cache): ... here. + + * mn10300-tdep.c (struct mn10300_prologue): Add GDBARCH member. + (check_for_saved): Use it instead of current_gdbarch. + (mn10300_analyze_prologue): Set it. + + * value.c (using_struct_return): Add GDBARCH parameter. Use it + instead of current_gdbarch. + * value.h (using_struct_return): Add GDBARCH parameter. + * eval.c (evaluate_subexp_standard): Pass architecture to + using_struct_return. + * infcall.c (call_function_by_hand): Likewise. + * stack.c (return_command): Likewise. + * sparc-tdep.c (sparc32_push_dummy_code): Likewise. + + * symtab.c (in_prologue): Add GDBARCH parameter. Use it instead of + current_gdbarch. + * symtab.h (in_prologue): Add GDBARCH parameter. + * infrun.c (handle_inferior_event): Pass architecture to in_prologue. + + * eval.c (evaluate_subexp_standard): Use expression architecture + instead of current_gdbarch. + + * c-lang.c (evaluate_subexp_c): Use expression architecture and + language instead of current_gdbarch and current_language. + + * printcmd.c (do_one_display): Use expression architecture instead + of current_gdbarch. + + * infcmd.c (print_return_value): Use architecture of stop_regcache + instead of current_gdbarch. + (print_vector_info, print_float_info): Remove GDBARCH argument, + use frame architecture instead. + (vector_info, float_info): Update calls. + + * objc-lang.c (objc_skip_trampoline): Use frame architecture + instead of current_gdbarch. + + * parse.c (write_dollar_variable): Use parse architecture instead + of current_gdbarch. + + * source.c (line_info): Use objfile architecture instead of + current_gdbarch. + + * symtab.c (find_function_start_sal): Use gdbarch instead of + current_gdbarch. + (print_msymbol_info): Use objfile architecture instead of + current_gdbarch. + + * valops.c (value_assign): Use frame architecture instead of + current_gdbarch. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * buildsym.c (record_line): Remove call to gdbarch_addr_bits_remove. + + * coffread.c (coff_symtab_read): Call gdbarch_addr_bits_remove before + calling record_line. + (enter_linenos): Likewise. + * dbxread.c (process_one_symbol): Likewise. + * dwarf2read.c (dwarf_decode_lines): Likewise. + * mdebugread.c (psymtab_to_symtab_1): Likewise. + * xcoffread.c (enter_line_range): Likewise. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * ax-gdb.c (gen_bitfield_ref): Add EXP argument, use expression + architecture instead of current_gdbarch. + (gen_struct_ref): Add EXP argument, pass to get_bitfield_ref. + (gen_expr): Pass expression to get_struct_ref. + + * symtab.h (struct symbol_ops): Add GDBARCH parameter to + tracepoint_var_ref callback. + * ax-gdb.c (gen_var_ref): Pass architecture to tracepoint_var_ref + symbol operation callback. + * dwarf2loc.c (dwarf2_tracepoint_var_ref): Add GDBARCH parameter. + Use it instead of current_gdbarch. + (locexpr_tracepoint_var_ref): Add GDBARCH parameter. Pass it to + dwarf2_tracepoint_var_ref. + (loclist_tracepoint_var_ref): Likewise. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * prologue-value.c (make_pv_area): Add ADDR_BIT argument. + Use it instead of address bits of current_gdbarch. + * prologue-value.c (make_pv_area): Add ADDR_BIT argument. + * arm-tdep.c (thumb_analyze_prologue): Pass address bits to + make_pv_area. + (arm_scan_prologue): Likewise. + * m32c-tdep.c (m32c_analyze_prologue): Likewise. + * mep-tdep.c (mep_analyze_prologue): Likewise. + * mn10300-tdep.c (mn10300_analyze_prologue): Likewise. + * s390-tdep.c (s390_analyze_prologue): Likewise. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * mi/mi-main.c (mi_cmd_data_list_register_names): Use selected + frame architecture instead of current_gdbarch. + (mi_cmd_data_list_changed_registers): Likewise. + (mi_cmd_data_list_register_values): Likewise. Pass selected + frame to get_register. + (get_register): Add FRAME argument, use it as frame to retrieve + registers from (instead of selected frame). Use frame architecture + instead of current_gdbarch. + (mi_cmd_data_write_register_values): Use current regcache + architecture instead of current_gdbarch. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * tui/tui-regs.c (tui_show_register_group): Remove GDBARCH parameter; + use frame architecture instead. Replace current_gdbarch uses. + (tui_show_registers): Update call. + (tui_get_register): Remove GDBARCH parameter; use frame architecture + instead. + (tui_show_register_group): Update call. + (tui_check_register_values): Likewise. + (tui_register_format): Remove GDBARCH parameter; use frame + architecture instead. Replace current_gdbarch uses. + (tui_get_register): Update call. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * gdbarch.sh (construct_inferior_arguments): Remove. + * gdbarch.c, gdbarch.h: Regenerate. + * infcmd.c (get_inferior_args): Call construct_inferior_arguments + directly instead of gdbarch_construct_inferior_arguments. + (construct_inferior_arguments): Remove GDBARCH argument. + * inferior.h (construct_inferior_arguments): Likewise. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * symfile.c (section_is_mapped): Use objfile architecture instead + of current_gdbarch. + (TARGET_LONG_BYTES): Remove. + (read_target_long_array): Add SIZE argument. Use it instead of + TARGET_LONG_BYTES. + (simple_read_overlay_table): Retrieve long size from objfile + architecture; pass it to read_target_long_array. + (simple_read_overlay_region_table): Likewise. + (simple_overlay_update_1): Likewise. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * infrun.c (cleanup_displaced_step_closure): Remove. + (displaced_step_clear_cleanup): Move to before displaced_step_prepare. + (displaced_step_prepare): Use displaced_step_clear_cleanup instead + of cleanup_displaced_step_closure. + (handle_inferior_event, keep_going): Use thread architecture instead + of current_gdbarch. + +2009-06-17 Ulrich Weigand <uweigand@de.ibm.com> + + * infrun.c (handle_inferior_event): Use current frame architecture + or thread architecture instead of current_gdbarch. Pass to + handle_step_into_function and handle_step_into_function_backward. + (handle_step_into_function): Add GDBARCH parameter. Use it instead + of current_gdbarch. + (handle_step_into_function_backward): Likewise. + (insert_step_resume_breakpoint_at_frame): Use frame architecture + instead of current_gdbarch. + (insert_step_resume_breakpoint_at_caller): Likewise. + +2009-06-17 Pierre Muller <muller@ics.u-strasbg.fr> + Pedro Alves <pedro@codesourcery.com> + + * infcmd.c (post_create_inferior): Call breakpoint_re_set after target + is pushed for watchpoint promotion to hardware watchpoint. + +2009-06-16 Paul Pluzhnikov <ppluzhnikov@google.com> + + * dwarf2read.c (dwarf_info_section, dwarf_abbrev_section) + (dwarf_line_section, dwarf_pubnames_section, dwarf_aranges_section) + (dwarf_loc_section, dwarf_macinfo_section, dwarf_str_section) + (dwarf_ranges_section, dwarf_frame_section) + (dwarf_eh_frame_section): Removed. + (dwarf2_resize_section): Likewise. + (dwarf2_read_section): Now static, use bfd_mmap() if possible. + (dwarf2_get_section_info): New function. + (munmap_section_buffer): Likewise. + (dwarf2_per_objfile_cleanup): Likewise. + (section_is_p): Signature change. + * dwarf2-frame.c (dwarf2_build_frame_info): Use + dwarf2_get_section_info instead of dwarf2_read_section. + +2009-06-16 Paul Pluzhnikov <ppluzhnikov@google.com> + + * solib.c (symbol_add_stub): New FLAGS parameter. + (solib_read_symbols): FROM_TTY -> FLAGS, call symbol_add_stub + directly. + (solib_add): Defer breakpoint_re_set until after all solibs. + * bsd-uthread.c (bsd_uthread_solib_loaded): Adjust. + * rs6000-nat.c (objfile_symbol_add): Adjust. + * symfile.c (syms_from_objfile): Merge parameters into ADD_FLAGS. + (new_symfile_objfile): Likewise. + (symbol_file_add_with_addrs_or_offsets): Likewise. + (symbol_file_add_from_bfd): Likewise. + (symbol_file_add): Likewise. + * symfile.h (enum symfile_add_flags): New. Adjust prototypes. + * symfile-mem.c (symbol_file_add_from_memory): Adjust. + * windows-nat.c (safe_symbol_file_add_stub): Adjust. + * machoread.c (macho_oso_symfile, macho_symfile_read): Adjust. + +2009-06-16 Keith Seitz <keiths@redhat.com> + + * linespec.c (collect_methods): Delete. + (add_matching_methods): Reove destructor special case. + (find_method): Call find_methods directly instead of + collect_methods. + * valops.c (value_struct_elt): Remove destructor + special cases. + (check_field): Likewise. + (value_struct_elt_for_reference): Likewise. + (destructor_name_p): Remove misleading comment about dtors + being "special cases". + * gdbtypes.h (get_destructor_fn_field): Remove. No longer needed. + * gdbtypes.c (get_destructor_fn_field): Likewise. + +2009-06-16 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-main.c (mi_cmd_data_read_memory): Dispatch + TARGET_OJECT_MEMORY reads to the topmost target, not to the + flattened current_target. + +2009-06-16 Tristan Gingold <gingold@adacore.com> + + * avr-tdep.c (struct gdbarch_tdep): Replace the unused field with + call_length field. + (avr_register_name): Add const to register_names. + (avr_scan_arg_moves): Move inside avr_scan_prologue. + (avr_scan_prologue): Add pc_end argument. + Only read prologue bytes that can be read. + Limit the scan to the known prologue length. + Makes pattern variables static and const. + Fix indentation. + (avr_skip_prologue): Pass func_end argument to avr_scan_prologue. + Fix indentation. + (avr_breakpoint_from_pc): Constify avr_break_insn. + (avr_extract_return_value): Fix function comment. + (avr_frame_unwind_cache): Fix GNU style violations. + Pass current_pc argument to avr_scan_prologue to stop prologue + analysis to the current pc. This fixes the bug with the 'next' + command. + Correctly set the SP register of the previous frame (use call_length). + (avr_frame_prev_register): Fix indentation. + Correctly read PC from the stack on avr6 architectures. + (avr_push_dummy_call): Fix indentation. + (avr_gdbarch_init): Set call_length according to the architecture. + +2009-06-15 Phil Muldoon <pmuldoon@redhat.com> + + * infcall.c (show_unwind_on_terminating_exception_p): New + function. + (call_function_by_hand): Create breakpoint and clean-up call for + std::terminate.breakpoint. Add unwind_on_terminating_exception_p + gate. Pop frame on breakpoint hit. + (_initialize_infcall): Add add_setshow_boolean_cmd for + unwind-on-terminating-exception. + +2009-06-12 Kevin Buettner <kevinb@redhat.com> + + * dwarf2read.c (dwarf2_psymtab_to_symtab): Propagate + `has_section_at_zero' flag from stripped objfile to separate, + debug info only, objfile. + +2009-06-12 Pedro Alves <pedro@codesourcery.com> + + * exec.h (section_table_xfer_memory_partial): Improve description, + mention SECTION_NAME. + * exec.c (section_table_xfer_memory_partial): Remove stale + description. + +2009-06-11 Aleksandar Ristovski <aristovski@qnx.com> + + * nto-tdep.h (nto_generic_supply_gpregset) + (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove. + * nto-tdep.c (nto_generic_supply_gpregset) + (nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove. + +2009-06-11 Aleksandar Ristovski <aristovski@qnx.com> + + * i386-nto-tdep.c (I386_NTO_SIGCONTEXT_OFFSET): Remove define. + (i386nto_sigcontext_addr): Change the way context address is calculated. + (i386nto_init_abi): Remove usage of deprecated sc_reg_offset and + sc_sp_offset and set sc_reg_offset and sc_num_regs. + +2009-06-11 Aleksandar Ristovski <aristovski@qnx.com> + + * i386-nto-tdep.c (i386_nto_target): Remove definition. + (init_i386nto_ops): Use macros to set fields to global + current_nto_target directly. + (i386nto_init_abi): Remove unused nto_set_target call. + * nto-tdep.h (nto_set_target): Remove unused declaration. + * nto-tdep.c (nto_set_target): Remove unused function. + +2009-06-11 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (break_command_really): Rename local variable + breakpoint_chain to bkpt_chain. + +2009-06-11 Aleksandar Ristovski <aristovski@qnx.com> + + Add support for XMM registers. + * i386-nto-tdep.c (i386nto_regset_id): Add case for SSE register set. + (i386nto_register_area): Correctly calculate offsets and sizes for + all supported registers. + +2009-06-11 Tom Tromey <tromey@redhat.com> + + * eval.c (evaluate_subexp_standard) <OP_OBJC_MSGCALL>: Remove + 'static' from local variable definitions. + +2009-06-11 Pedro Alves <pedro@codesourcery.com> + + * symtab.c (append_expanded_sal): Remove unused local variables. + +2009-06-11 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (sched_multi): New global. + (resume): If sched_multi is set, resume only threads of the + current inferior. + (prepare_to_proceed): Don't switch over to wait_ptid if we're + resuming a different inferior, and sched_multi is off. + (show_schedule_multiple): New. + (_initialize_infrun): Register new "set schedule-multiple" command. + * inferior.h (sched_multi): Declare. + * NEWS: Mention new "schedule-multiple" setting. + +2009-06-11 Pedro Alves <pedro@codesourcery.com> + + * varobj.c (varobj_create): Properly restore the selected frame. + +2009-06-05 Tom Tromey <tromey@redhat.com> + + * inferior.c (print_inferior): Make a table, not a list. Emit + table headers. + +2009-06-10 Jonas Maebe <jonas.maebe@elis.ugent.be> + + * darwin-nat.c (darwin_stop_inferior): Pass 0 as options to + darwin_wait (blocking wait). + (darwin_kill_inferior): Likewise. + +2009-06-10 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (handle_inferior_event): Update comment around trying + to revert back to a stepping thread that has exited. + +2009-06-10 Cary Coutant <ccoutant@google.com> + + * dwarf2read.c (dwarf_decode_lines): Recognize and ignore + DW_LNE_set_discriminator. + +2009-06-10 Pierre Muller <muller@ics.u-strasbg.fr> + + * breakpoint.c: ARI fixes. + (create_overlay_event_breakpoint): Avoid assignment inside if statement. + (print_one_breakpoint_location): Likewise. + (create_longjmp_breakpoint): Likewise. + (tracepoint_save_command): Likewise + (bpstat_find_step_resume_breakpoint): No operator at end of line. + (bpstat_stop_status): Likewise. + (describe_other_breakpoints): Likewise. + (hw_watchpoint_used_count): Likewise. + (expand_line_sal_maybe): Likewise. + (break_command_really): Likewise. + (delete_command): Likewise. + (do_enable_breakpoint): Likewise. + (delete_trace_command): Likewise. + (catch_exception_command_1): Likewise and remove extra parentheses. + +2009-06-08 Pierre Muller <muller@ics.u-strasbg.fr> + + * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of + "ubreak" command that does not exist. + +2009-06-08 Pierre Muller <muller@ics.u-strasbg.fr> + + * cli/cli-decode.c (add_alias_cmd): Correct assertion. + +2009-06-07 Pedro Alves <pedro@codesourcery.com> + + * hppa-tdep.c (_initialize_hppa_tdep): Add declaration. + +2009-06-07 Pedro Alves <pedro@codesourcery.com> + + * procfs.h: New. + * proc-utils.h (procfs_first_available): Don't declare here. + * sol-thread.c: Include procfs.h instead of sys/procfs.h and + proc-utils.h. + * procfs.c: Include procfs.h. + (procfs_target): Make it public. Don't register + procfs_can_use_hw_breakpoint here. + (proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being + defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS. + (procfs_can_use_hw_breakpoint): Remove check of + TARGET_HAS_HARDWARE_WATCHPOINTS. + (procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint + here. + (_initialize_procfs): Don't add the procfs target here. + + * i386-sol2-nat.c: Include target.h and procfs.h. + (_initialize_amd64_sol2_nat): Install the procfs target here, + customized with watchpoints support. + * irix5-nat.c: Include target.h. + (_initialize_core_irix5): Rename to ... + (_initialize_irix5_nat): ... this. Install the procfs target + here, customized with watchpoints support. + * alpha-nat.c: Include procfs.h. + (_initialize_core_alpha): Rename to... + (_initialize_alpha_nat): ... this. Install the procfs target + here, customized with watchpoints support. + * sparc-sol2-nat.c: Include target.h and procfs.h. + (_initialize_sparc_sol2_nat): New. + + * config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete. + * config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete. + * config/mips/irix5.mh (NAT_FILE): Delete. + * config/mips/irix6.mh (NAT_FILE): Delete. + * config/mips/nm-irix5.h: Delete. + +20009-06-07 Pedro Alves <pedro@codesourcery.com> + + * auxv.c (procfs_xfer_auxv): Change type of the `object' argument + to enum target_object. Cleanup comments. + * auxv.h: Include "target.h". Cleanup comments to not mention + NATIVE_XFER_AUXV anymore. + +2009-06-07 Pedro Alves <pedro@codesourcery.com> + + * inferior.h (procfs_first_available): Move declaration to... + * proc-utils.h: ... here. + * sol-thread.c: Include procfs.h and proc-utils.h. + +2009-06-07 Pedro Alves <pedro@codesourcery.com> + + * inferior.h (proc_iterate_over_mappings): Delete declaration. + * nto-tdep.h (proc_iterate_over_mappings): Delete declaration. + * procfs.c (proc_iterate_over_mappings): Delete. + +2009-06-07 Pedro Alves <pedro@codesourcery.com> + + * target.h (struct target_ops): Make to_has_all_memory, + to_has_memory, to_has_stack, to_has_registers and to_has_execution + methods instead of variables. + (target_has_all_memory_1, target_has_memory_1, target_has_stack_1) + (target_has_registers_1, target_has_execution_1): Declare + functions. + (target_has_all_memory): Rewrite to call target_has_all_memory_1. + (target_has_memory): Rewrite to call target_has_memory_1. + (target_has_stack): Rewrite to call target_has_all_stack_1. + (target_has_registers): Rewrite to call target_has_registers_1. + (target_has_execution): Rewrite to call target_has_execution_1. + (default_child_has_all_memory, default_child_has_memory) + (default_child_has_stack, default_child_has_registers) + (default_child_has_execution): Declare. + (target_mark_running, target_mark_exited): Delete declarations. + * target.c (default_child_has_all_memory, + default_child_has_memory, default_child_has_stack, + default_child_has_registers, default_child_has_execution): New. + (target_has_all_memory_1, target_has_memory_1, target_has_stack_1, + target_has_registers_1, target_has_execution_1): New. + (add_target): Default the to_has_all_memory, to_has_all_memory, + to_has_memory, to_has_stack, to_has_registers and to_has_execution + callbacks to return 0. + (update_current_target): Do not inherit to_has_all_memory, + to_has_memory, to_has_stack, to_has_registers or to_has_execution. + (target_mark_running, target_mark_exited): Delete. + (memory_xfer_partial): Adjust. + (target_read_memory, target_write_memory, target_search_memory): + Dispatch to the the top-most target, not the flattened + current_target. + (target_info): Adjust. + (init_dummy_target): Install return_zero as callback for + to_has_all_memory, to_has_memory, to_has_stack, to_has_registers, + to_has_execution. + (set_maintenance_target_async_permitted): Use have_live_inferiors + instead of target_has_execution. + * target-memory.c (target_write_memory_blocks): Dispatch memory + writes to the the top-most target, not the flattened + current_target. + + * breakpoint.c (insert_breakpoints): Don't check for + target_has_execution here. + (update_global_location_list): Check if there are live inferiors + to debug instead of target_has_execution. + * infcmd.c (kill_command, detach_command): Check if there are + inferiors instead of target_has_execution. + * inferior.h (have_live_inferiors): Declare. + * inferior.c (have_live_inferiors): New. + * infrun.c (normal_stop): Don't check for target_has_execution to + finish the thread states. + * thread.c (is_thread_state, is_stopped, is_exited, is_running) + (any_running, is_executing): Remove checks for + target_has_execution. + * top.c (kill_or_detach): Don't try to kill core inferiors. + (quit_target): Don't check for target_has_execution. + + * corelow.c (core_has_memory, core_has_stack, core_has_registers): + New. + (init_core_ops): Install core_has_memory, core_has_stack and + core_has_registers. + * exec.c (exec_has_memory): New. + (init_exec_ops): Install exec_has_memory. + * remote.c (remote_add_inferior): Don't call target_mark_running. + (remote_start_remote): Don't call target_mark_exited or call + target_mark_running. + (remote_open_1): Use have_inferiors instead of + target_has_execution. Don't use target_mark_exited. + (init_remote_ops): Install deafult_child_has_all_memory, + default_child_has_memory, default_child_has_stack, + default_child_has_registers, default_child_has_execution. + * bsd-kvm.c (bsd_kvm_return_one): New. + (bsd_kvm_add_target): Register bsd_kvm_return_one as + to_has_memory, to_has_stack and to_has_registers callbacks. + * remote-m32r-sdi.c (m32r_return_one): New. + (init_m32r_ops): Register it. + * inf-child.c (inf_child_target): Adjust to register + default_child_has_all_memory, default_child_has_memory, + default_child_has_stack, default_child_has_registers, + default_child_has_execution callbacks. + * gnu-nat.c (init_gnu_ops): Likewise. + * go32-nat.c (init_go32_ops): Likewise. + * hpux-thread.c (init_hpux_thread_ops): Likewise. + * monitor.c (init_base_monitor_ops): Likewise. + * nto-procfs.c (init_procfs_ops): Likewise. + * remote-mips.c (_initialize_remote_mips): Likewise. + * windows-nat.c (init_windows_ops): Likewise. + * remote-sim.c (gdbsim_create_inferior): Don't use + target_mark_running or target_mark_exited. + (gdbsim_mourn_inferior): Don't call target_mark_exited. + (init_gdbsim_ops): Adjust to register + default_child_has_all_memory, default_child_has_memory, + default_child_has_stack, default_child_has_registers, + default_child_has_execution callbacks. + + * linux-nat.c (linux_nat_xfer_partial): If reading memory, and + there's no inferior selected, defer to a lower stratum. + +2009-06-05 Tom Tromey <tromey@redhat.com> + + * varobj.c (update_dynamic_varobj_children): Wrap error text in + _(). + (install_visualizer): Likewise. + (varobj_set_visualizer): Likewise. + +2009-06-05 Marc Khouzam <marc.khouzam@ericsson.com> + + * mi/mi-main.c (mi_cmd_exec_continue) + (mi_cmd_exec_interrupt): Adjust parsing of thread group + ids to current reality, where they don't have any 'p' prefix. + +2009-06-05 Aleksandar Ristovski <aristovski@qnx.com> + + * corelow.c (core_open): Check for core_gdbarch before calling + gdbarch_target_signal_from_host. + +2009-06-05 Tom Tromey <tromey@redhat.com> + + * c-exp.y (parse_number): Don't use K&R definition. + (yylex): Likewise. + (yyerror): Likewise. + +2009-06-04 Jan Kratochvil <jan.kratochvil@redhat.com> + + * varobj.c (varobj_update): Fix out of scope varobjs to not to change. + +2009-06-04 Ulrich Weigand <uweigand@de.ibm.com> + + * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS. + * ax-gdb.c (gen_var_ref): Likewise. + * findvar.c (read_var_value, symbol_read_needs_frame): Likewise. + * printcmd.c (address_info): Likewise. + * dwarf2loc.c (dwarf_expr_frame_base): Likewise. + * dwarf2read.c (dwarf2_symbol_mark_computed): Likewise. + * symtab.h: Rename struct symbol_ops to struct symbol_computed_ops. + * dwarf2loc.h: Likewise. + * dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise. + + * symtab.h: (struct symbol_register_ops): New struct definition. + (struct symbol): Make "ops" member a union of symbol_computed_ops and + symbol_register_ops callback pointers. + (SYMBOL_REGISTER_OPS): New macro. + * tracepoint.c: Include "objfiles.h". + (scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number + callback to retrieve register numbers. + * ax-gdb.c (gen_var_ref): Likewise. + * findvar.c (read_var_value): Likewise. + * printcmd.c (address_info): Likewise. + + * coffread.c (coff_reg_to_regnum): New function. + (coff_register_funcs): New static variable. + (process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum. + Install SYMBOL_REGISTER_OPS callbacks. + * mdebugread.c (mdebug_reg_to_regnum): New function. + (mdebug_register_funcs): New static variable. + (parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum. + Install SYMBOL_REGISTER_OPS callbacks. + * stabsread.c (stab_reg_to_regnum): New function. + (stab_register_funcs): New static variable. + (define_symbol): Do not call gdbarch_stab_reg_to_regnum. + Install SYMBOL_REGISTER_OPS callbacks. + +2009-06-03 Doug Evans <dje@google.com> + + * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL + after discarding its contents. + +2009-06-03 Pedro Alves <pedro@codesourcery.com> + + * target.c: Include "exec.h". + (update_current_target): Don't inherit to_sections or + to_sections_end. + (target_get_section_table): New. + (target_section_by_addr): Fetch the section table from the passed + in target. + (memory_xfer_partial): Handle unmapped overlay sections before + anything else. Get the overlay mapped address here. Adjust to + use section_table_xfer_memory_partial. + (get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object + instead of TARGET_OBJECT_MEMORY. + (target_resize_to_sections): Delete. + (remove_target_sections): Adjust to remove target sections from + `current_target_sections', and use resize_section_table. + * target.h (struct target_ops) <to_sections, to_sections_end>: + Remove fields. + <to_get_section_table>: New method. + (xfer_memory, print_section_info): Delete declarations. + (struct target_section_table): New type. + (target_get_section_table): Declare. + (target_resize_to_sections): Delete declaration. + (remove_target_sections): Delete declaration. + * bfd-target.c (target_bfd_xfer_partial): Get the section table + from to_data. + (target_bfd_get_section_table): New. + (target_bfd_xclose): Adjust. + (target_bfd_reopen): Store the section table in the to_data field. + * corelow.c (core_data): New. + (core_close): Adjust to release core_data and its sections. + (core_open): Allocate core_data, and build its target sections + table. + (deprecated_core_resize_section_table): New. + (core_files_info): Pass core_data to print_section_info. + (core_xfer_partial): Adjust to use + section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers. + (init_core_ops): Do not install a deprecated_xfer_memory callback + anymore. + * solib.c (update_solib_list): Add the shared library sections + to the current target sections table. + * exec.c (current_target_sections_1): New global. + (current_target_sections): New global. + (exec_close_1): New function, refactored from exec_close. Remove + the exec_bfd's sections from the current target sections table. + Adjust to not use to_sections. + (exec_close): Remove all target sections. Call exec_close_1. + (exec_file_clear): Use exec_close_1 instead of unpushing the + target. + (exec_file_attach): Likewise. Adjust to not use to_sections. Add + exec_bfd's sections to the current target sections table. Don't + push the exec_ops target here. + (resize_section_table): New. + (add_target_sections): New. + (remove_target_sections): Moved here. + (section_table_xfer_memory): Adjust to implement the xfer_partial + interface, and rename to... + (section_table_xfer_memory_partial): ... this, replacing the + current function of that same name. + (exec_get_section_table): New. + (exec_xfer_partial): New. + (xfer_memory): Delete. + (print_section_info): Replace the target_ops parameter by a + target_section_table parameter. + (exec_files_info, set_section_command, exec_set_section_address): + Adjust to use the current sections table. + (init_exec_ops): Do not register a deprecated_xfer_memory + callback. Register to_xfer_partial and to_get_section_table + callbacks. + * infrun.c (handle_inferior_event): Update comments around + solib_add. + * rs6000-nat.c (xcoff_relocate_core): Adjust to use + deprecated_core_resize_section_table. + * exec.h (resize_section_table): Declare. + (section_table_xfer_memory_partial): Add const char * argument. + (remove_target_sections): Declare here. + (add_target_sections): Declare. + (print_section_info): Declare here. + * gdbcore.h (deprecated_core_resize_section_table): Declare. + +2009-06-03 Ulrich Weigand <uweigand@de.ibm.com> + + * value.h (struct internalvar): Remove. + (get_internalvar_integer): Add prototype. + (set_internalvar_integer): Add prototype. + (clear_internalvar): Add prototype. + + * value.c (struct internalvar): Move here. Add type member. Remove + endian member. Add union_internalvar member instead of value member. + (init_if_undefined_command): Use intvar->type. + (create_internalvar): Do not initialize value/endian, but type. + (create_internalvar_type_lazy): Call create_internalvar. + (value_of_internalvar): Handle host-side internalvar contents. + (set_internalvar_component): Likewise. + (set_internalvar): Likewise. + (get_internalvar_integer): New function. + (clear_internalvar): Likewise. + (set_internalvar_integer): Likewise. + (preserve_values): Handle host-side internalvar contents. + + * breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call + set_internalvar_integer instead of set_internalvar. + * findcmd.c (find_command): Likewise. + * infrun.c (handle_inferior_event): Likewise. + * source.c (forward_search_command, reverse_search_command): Likewise. + * tracepoint.c (set_traceframe_num, set_tracepoint_num, + set_traceframe_context): Likewise. + + * printcmd.c (x_command): Call clear_internalvar instead of + set_internalvar. + * tracepoint.c (set_traceframe_context): Likewise. + + * breakpoint.c (get_number_trailer): Call get_internalvar_integer + instead of value_of_internalvar. + * linespec.c (decode_dollar): Likewise. + + * expprint.c (dump_subexp_body_standard): Use internalvar_name + instead of accessing internalvar private elements. + * valops.c (value_assign): Copy from original source instead of + accessing internalvar private elements. + +2009-06-03 Ulrich Weigand <uweigand@de.ibm.com> + + * scm-lang.c (builtin_type_scm): Remove. + (scm_lookup_name): Add GDBARCH parameter. Use it instead of + objfile architecture. Use per-architecture builtin_scm_type instead + of builtin_type_scm. + (evaluate_exp): Pass expression architecture to scm_lookup_name. + + (scm_get_field): Add SIZE parameter. Use it instead of + TYPE_LENGTH (builtin_type_scm). + + (build_scm_types): New function. + (scm_type_data): New variable. + (builtin_scm_type): New function. + (_initialize_scheme_language): Do not initialize builtin_type_scm. + Register build_scm_types as post-init function for scm_type_data. + + * scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type + instead of builtin_type_scm. + + * scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field. + (scm_get_field): Add SIZE paramter. + (scm_scmval_print): Remove prototype. + (builtin_type_scm): Remove. + (struct builtin_scm_type): Add structure definition. + (builtin_scm_type): Add prototype. + + * scm-valprint.c (scm_inferior_print): Add TYPE parameter. Use it + instead of builtin_core_addr type; do not use objfile architecture. + (scm_scmlist_print): Add TYPE parameter. Use it to define SCM_SIZE. + Pass type to scm_scmval_print. + (scm_ipruk): Add TYPE parameter. Use it to define SCM_SIZE. + (scm_scmval_print): Make static. Add TYPE parameter. Use it to + define SCM_SIZE. Pass type to scm_ipruk and scm_scmlist_print. + (scm_val_print): Pass type to scm_inferior_print and scm_scmval_print. + +2009-06-03 Ulrich Weigand <uweigand@de.ibm.com> + + * mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short, + mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64, + mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64, + mdebug_type_unsigned_char, mdebug_type_unsigned_short, + mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64, + mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64, + mdebug_type_unsigned_long_long_64, mdebug_type_adr_32, + mdebug_type_adr_64, mdebug_type_float, mdebug_type_double, + mdebug_type_complex, mdebug_type_double_complex, + mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string): + Remove. + + (basic_type_data): New global variable. + (basic_type): New function. + (parse_type): Remove static basic type map map_bt. Call basic_type + to get basic types instead of using mdebug_type_ variables. + + (parse_symbol): Use builtin types instead of mdebug_type_ variables. + (upgrade_type): Likewise. + (parse_procedure): Likewise. + (psymtab_to_symtab_1): Likewise. + + (_initialize_mdebugread): Do not initialize mdebug_type_ variables. + Initialize basic_type_data. + +2009-06-03 Ulrich Weigand <uweigand@de.ibm.com> + + * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter. + * dfp.c (promote_decimal): Remove. + (decimal_binop): Convert LEN_RESULT to input parameter. + Remove call to decimal_binop. + (decimal_compare): Remove call to decimal_binop. + + * valarith.c (value_binop): Pass desired result type length + to decimal_binop. + +2009-06-01 Tristan Gingold <gingold@adacore.com> + + * configure.tgt (avr): Set gdb_sim to use the simulator. + +2009-05-29 Doug Evans <dje@google.com> + + * infrun.c (prepare_to_proceed): Document. Assert !non_stop. + If scheduler-locking is enabled, we're not going to be singlestepping + any other previously stopped thread. + +2009-05-29 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0. + +2009-05-29 Eli Zaretskii <eliz@gnu.org> + + * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering + for stabs and COFF debug info. + +2009-05-28 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (handle_inferior_event): When thread hoping, switch + inferior_ptid to the event thread before removing breakpoints from + the target. If not stopping, also try to revert back to a thread + that was doing a "next". Check if that thread still exists before + resuming. + (currently_stepping_thread): Delete and merge with ... + (currently_stepping): ... this. + (currently_stepping_callback): Rename to ... + (currently_stepping_or_nexting_callback): ... this, and also + return true if the thread was stepping over a call (has a + step-resume breakpoint). + +2009-05-28 Tom Tromey <tromey@redhat.com> + + * python/python.c (gdbpy_parameter): Rename. Fix error message. + (GdbMethods): Change "get_parameter" to "parameter". + +2009-05-28 Pierre Muller <muller@ics.u-strasbg.fr> + Paul Pluzhnikov <ppluzhnikov@google.com> + + * configure.ac (!have_libpython): Add python-prettyprint source + and object files. + * configure: Regenerate. + * python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before + python headers. + +2009-05-27 Vladimir Prus <vladimir@codesourcery.com> + Tom Tromey <tromey@redhat.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + + * mi/mi-main.c (mi_cmd_list_features): List "python" feature. + * varobj.h (varobj_set_visualizer): Declare. + (varobj_get_display_hint): Likewise. + (varobj_update_result_t) <children_changed, value_installed>: New + fields. + * mi/mi-cmds.c (mi_cmds): Add var-set-visualizer. + * mi/mi-cmds.h (mi_cmd_var_set_visualizer, + mi_cmd_var_set_child_range): Declare. + * mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function. + (mi_cmd_var_list_children): Emit display hint. + (varobj_update_one): Emit display hint. Handle dynamic children. + * python/python.c (GdbMethods): Add "default_visualizer". + * python/python-internal.h (apply_varobj_pretty_printer, + gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint): + Declare. + (gdbpy_default_visualizer): Likewise. + * varobj.c: Include python.h, python-internal.h. + (PyObject): New typedef. + (struct varobj) <children_requested, pretty_printer>: New fields. + (varobj_create): Call install_default_visualizer. + (instantiate_pretty_printer): New function. + (varobj_set_display_format): Update. + (varobj_get_display_hint): New function. + (update_dynamic_varobj_children): New function. + (varobj_get_num_children): Handle dynamic children. + (varobj_list_children): Likewise. + (install_new_value): Likewise. + (varobj_add_child): New function. + (install_visualizer): Likewise. + (install_default_visualizer): Likewise. + (varobj_set_visualizer): Likewise. + (varobj_update): Handle dynamic children. + (create_child): Use create_child_with_value. + (create_child_with_value): New function. + (value_get_print_value): Call pretty printer. Add value_formatter + argument. + (c_value_of_variable): Update. + (varobj_invalidate): Always free all_rootvarobj. + * python/python-prettyprint.c (apply_varobj_pretty_printer): New + function. + (gdbpy_get_varobj_pretty_printer): Likewise. + (gdbpy_default_visualizer): Likewise. + +2009-05-27 Tom Tromey <tromey@redhat.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + Phil Muldoon <pmuldoon@redhat.com> + Paul Pluzhnikov <ppluzhnikov@google.com> + Vladimir Prus <vladimir@codesourcery.com> + + * python/python-value.c (value_object_to_value): New function. + * python/python-internal.h: Include frameobject.h. + (gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst): + Declare. + (value_object_to_value): Declare. + * printcmd.c (struct format_data) <raw>: New field. + (last_format): Default to 0. + (decode_format): Initialize val.raw. Handle /r flag. + (print_command_1): Initialize fmt.raw and opts.raw. + (output_command): Likewise. + (x_command): Fix initialization of fmt.format. Initialize + fmt.raw. + (display_command): Initialize fmt.raw. + (do_one_display): Set opts.raw. + * python/python.c (gdbpy_to_string_cst, gdbpy_children_cst, + gdbpy_display_hint_cst): New globals. + (_initialize_python): Initialize them. Set gdb.pretty_printers. + * cp-valprint.c: Include python.h. + (cp_print_value): Call apply_val_pretty_printer. + * python/python.h (apply_val_pretty_printer): Declare. + * stack.c (print_this_frame_argument_p): Remove. + (print_frame_args): Compute summary flag. Don't use + print_this_frame_argument_p. + * valprint.c: Include python.h. + (user_print_options): Initialize new fields. + (scalar_type_p): New function. + (val_print): Handle 'raw' and 'summary' modes. Call + apply_val_pretty_printer. + (value_print): Handle 'raw' mode. + * valprint.h (struct value_print_options) <raw, summary>: New + fields. + * Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o + (SUBDIR_PYTHON_SRCS): Add python-prettyprint.c. + (python-prettyprint.o): New target. + * python/python-prettyprint.c: New file. + +2009-05-27 Tom Tromey <tromey@redhat.com> + Paul Pluzhnikov <ppluzhnikov@google.com> + + * mi/mi-main.c (mi_cmd_data_evaluate_expression): Use + value_address. + * cli/cli-dump.c (dump_value_to_file): Use value_address. + * valprint.c (common_val_print): Likewise. + * v850-tdep.c (v850_push_dummy_call): Use value_address. + * tracepoint.c (encode_actions): Use value_address. + * printcmd.c (print_formatted): Use value_address. + (x_command): Likewise. + * p-valprint.c (pascal_object_print_static_field): Use + value_address. + * mn10300-tdep.c (mn10300_push_dummy_call): Use value_address. + * mips-tdep.c (mips_eabi_push_dummy_call): Use value_address. + * m32r-tdep.c (m32r_push_dummy_call): Use value_address. + * jv-valprint.c (java_value_print): Use value_address. + * infcall.c (find_function_addr): Use value_address. + * gnu-v3-abi.c (gnuv3_rtti_type): Use value_address. + * gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address. + * frv-tdep.c (frv_push_dummy_call): Use value_address. + * frame.c (frame_register_unwind): Use value_address. + (frame_unwind_register_value): Likewise. + * darwin-nat-info.c (info_mach_region_command): Use + value_address. + * cp-valprint.c (cp_print_static_field): Use value_address. + * c-valprint.c (c_value_print): Use value_address. + * breakpoint.c (update_watchpoint): Use value_address. + (can_use_hardware_watchpoint): Likewise. + * ada-valprint.c (ada_val_print_1): Use value_address. + (ada_value_print): Likewise. + * ada-tasks.c (read_fat_string_value): Use value_address. + * jv-lang.c (java_link_class_type): Use set_value_address. + (java_link_class_type): Likewise. + (get_java_utf8_name): Use value_address. + (type_from_class): Likewise. + (java_link_class_type): Likewise. + * findvar.c (value_of_register): Use set_value_address. + (read_var_value): Likewise. + (read_var_value): Likewise. + * eval.c (evaluate_subexp_standard): Use set_value_address. + (evaluate_subexp_standard): Use value_address. + * dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address. + * ada-lang.c (coerce_unspec_val_to_type): Use set_value_address. + (ada_value_primitive_packed_val): Likewise. + (ensure_lval): Likewise. + (thin_data_pntr): Use value_address. + (desc_bounds): Likewise. + (ada_value_primitive_packed_val): Likewise. + (value_assign_to_component): Likewise. + (ensure_lval): Likewise. + (make_array_descriptor): Likewise. + (ada_to_fixed_value): Likewise. + (unwrap_value): Likewise. + * value.c (deprecated_value_address_hack): Remove. + (value_address): New function. + (value_raw_address): Likewise. + (set_value_address): Likewise. + (value_fn_field): Use set_value_address. + (value_from_contents_and_address): Likewise. + (value_fn_field): Likewise. + (allocate_value_lazy): Don't use VALUE_ADDRESS. + (value_as_address): Use value_address. + (value_static_field): Likewise. + * valops.c (search_struct_field): Use set_value_address. + (value_at): Likewise. + (value_at_lazy): Likewise. + (value_repeat): Likewise. + (value_cast_structs): Use value_address. + (value_cast): Likewise. + (value_fetch_lazy): Likewise. + (value_assign): Likewise. + (value_repeat): Likewise. + (address_of_variable): Likewise. + (value_coerce_array): Likewise. + (value_coerce_function): Likewise. + (value_addr): Likewise. + (search_struct_field): Likewise. + (search_struct_method): Likewise. + (find_method_list): Likewise. + (value_struct_elt_for_reference): Likewise. + (value_full_object): Likewise. + * jv-valprint.c (java_value_print): Use set_value_address. + * value.h (deprecated_value_address_hack): Remove. + (VALUE_ADDRESS): Remove. + (value_address): Declare. + (value_raw_address): Declare. + (set_value_address): Declare. + +2009-05-27 Tom Tromey <tromey@redhat.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + Phil Muldoon <pmuldoon@redhat.com> + Paul Pluzhnikov <ppluzhnikov@google.com> + + * python/python.c (_initialize_python): Call + gdbpy_initialize_types. + (GdbMethods): Add "lookup_type". + * python/python-value.c (value_object) <type>: New field. + (valpy_dealloc): Decref type. + (valpy_new): Initialize type. + (valpy_get_type): New function. + (value_to_value_object): Initialize type. + (valpy_cast): New function. + (value_object_getset): Add "type". + (value_object_methods): Add "cast". + * python/python-internal.h (type_to_type_object): Declare. + (type_object_to_type): Likewise. + (gdbpy_initialize_types): Likewise. + (gdbpy_lookup_type): Declare. + * Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o. + (SUBDIR_PYTHON_SRCS): Add python-type.c. + (python-type.o): New target. + * python/python-type.c: New file. + +2009-05-27 Tom Tromey <tromey@redhat.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + Phil Muldoon <pmuldoon@redhat.com> + + * python/python.c: Include objfiles.h, observer.h. + (gdbpy_auto_load): New global. + (gdbpy_current_objfile): Likewise. + (GDBPY_AUTO_FILENAME): New define. + (gdbpy_new_objfile): New function. + (gdbpy_get_current_objfile): Likewise. + (gdbpy_objfiles): Likewise. + (_initialize_python): Add "maint set auto-load". Call + gdbpy_initialize_objfile. Attach objfile observer. + (GdbMethods): New methods current_objfile, objfiles. + * python/python-objfile.c: New file. + * python/python-internal.h (objfile_to_objfile_object): Declare. + (objfpy_get_printers): Likewise. + (gdbpy_initialize_objfile): Likewise. + * Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o. + (SUBDIR_PYTHON_SRCS): Add python-objfile.c. + (python-objfile.o): New target. + +2009-05-27 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (follow_exec): Clear the stop_requested flag. + * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>: + Add debug output. + +2009-05-27 Aleksandar Ristovski <aristovski@qnx.com> + + * nto-procfs.c (get_regset): Pass correct pointer. + +2009-05-26 Doug Evans <dje@google.com> + + * dwarf2read.c (follow_die_ref): Add comment. + (dwarf2_mark_helper): Tweak comment. + (dwarf2_mark): Move description to its proper place. + +2009-05-25 Pierre Muller <muller@ics.u-strasbg.fr> + + * procfs.c (procfs_wait): Add options parameter. + +2009-05-24 Doug Evans <dje@google.com> + + Global renaming of find_thread_pid to find_thread_ptid. + * gdbthread.h (find_thread_ptid): Renamed from find_thread_pid. + * thread.c (find_thread_ptid): Renamed from find_thread_pid. + All callers updated. + + * infrun.c (follow_fork): Initialize new step_* locals + to avoid "may be used uninitialized" warnings. + +2009-05-24 Pedro Alves <pedro@codesourcery.com> + + * inflow.c (copy_terminal_info): Deep copy `run_terminal'. + +2009-05-24 Pedro Alves <pedro@codesourcery.com> + + * gdbthread.h (struct thread_info): New `pending_follow' field. + * thread.c (new_thread): New function. + (add_thread_silent): Use it. + * breakpoint.c (internal_breakpoint_number): New global, moved + from inside... + (create_internal_breakpoint): ... this. + (clone_momentary_breakpoint): New. + * breakpoint.h (clone_momentary_breakpoint): Declare. + * infrun.c (nullify_last_target_wait_ptid): Move declaration + higher. + (pending_follow): Delete. + (follow_fork): Handle pending follow fork event here. Moved the + preserving of thread stepping state here. + (resume): Don't handle pending follow fork events here. Only + install the inferior's terminal modes if we're about to resume it. + (proceed): Handle possible pending follow fork events here. + (init_wait_for_inferior): No need to clear pending_follow anymore, + it's gone. + (handle_inferior_event): Adjust to per-thread `pending_follow'. + Call `follow_fork' to handle following the fork. If the + follow-fork is cancelled, stop stepping. + * linux-nat.c (linux_child_follow_fork): Adjust to per-thread + `pending_follow' events. Remove code that handled preserving the + thread stepping state. + * inf-ptrace.c (inf_ptrace_follow_fork): Ditto. + * inf-ttrace.c (inf_ttrace_follow_fork): Ditto. + +2009-05-24 Pierre Muller <muller@ics.u-strasbg.fr> + + * symfile.c (add_shared_symbol_files_command): Remove + prototype and function. + (_initialize _symfile): Move "add-shared-symbol-files" + command and "assf" alias. + * windows-nat.c (_initialize_windows_nat): to here. + Change "add-shared-symbol-files" to alias. + + * config/i386/cygwin.mh: Remove NAT_FILE. + * config/i386/mingw.mh: Remove NAT_FILE. + * config/i386/mingw64.mh: Remove NAT_FILE. + * config/i386/nm-cygwin.h: Remove file. + * config/i386/nm-cygwin64.h: Remove file. + +2009-05-24 Hui Zhu <teawater@gmail.com> + + * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*, + I386_LINUX_RECORD_IOCTL_*, + I386_LINUX_RECORD_FCNTL_*) Removed. + (i386_linux_init_abi): Change size of record from macros to + numbers. + +2009-05-24 Hui Zhu <teawater@gmail.com> + + * i386-linux-tdep.c (i386_linux_init_abi): Remove size_char. + * linux-record.c (record_linux_system_call): Ditto. + * linux-record.h (linux_record_tdep): Ditto. + +2009-05-23 Jan Kratochvil <jan.kratochvil@redhat.com> + + Replace the savestring calls by xstrdup calls where possible. + * breakpoint.c (condition_command, set_raw_breakpoint) + (create_catchpoint, update_breakpoint_locations): Replace the + savestring calls by xstrdup calls where possible. + * buildsym.c (start_subfile, patch_subfile_names, record_debugformat) + (record_producer): Likewise. + * coffread.c (coff_start_symtab, complete_symtab): Likewise. + * corefile.c (set_gnutarget): Likewise. + * dbxread.c (add_new_header_file): Likewise. + * demangle.c (set_demangling_command, set_demangling_style): Likewise. + * event-top.c (push_prompt, pop_prompt, command_line_handler) + (set_async_prompt): Likewise. + * infcmd.c (set_inferior_io_terminal, attach_command_post_wait): + Likewise. + * language.c (set_language_command, _initialize_language): Likewise. + * linespec.c (decode_line_2): Likewise. + * rs6000-nat.c (add_vmap): Likewise. + * top.c (set_prompt, init_history, init_main): Likewise. + * tracepoint.c (stringify_collection_list): Likewise. + * varobj.c (varobj_create): Remove variable expr_len. Replace the + savestring calls by xstrdup calls where possible. + (value_of_root, c_name_of_variable, c_describe_child): Replace the + savestring calls by xstrdup calls where possible. + * xcoffread.c (complete_symtab): Likewise. + * cli/cli-script.c (build_command_line, define_command): Likewise. + * cli/cli-setshow.c (do_setshow_command): Likewise. + +2009-05-23 Jan Kratochvil <jan.kratochvil@redhat.com> + + Remove already unreachable code. + * varobj.c (varobj_get_handle): Fix comment when error is called. + All callers updated. + +2009-05-23 Eli Zaretskii <eliz@gnu.org> + + * README (`configure' options): Document GDB-specific options to + `configure'. + + * symtab.c (skip_prologue_using_lineinfo): New function. + (find_function_start_sal): Use it to get to the first line of + function's body that has an entry in the lineinfo table. + + * symmisc.c (dump_symtab): Switch the current language to + the language of the symtab we are dumping only if the symtab's + language is neither language_auto nor language_unknown. + + * coffread.c (coff_symtab_read): Set language_minimal as the + language for the "_globals_" pseudo-file. + (process_coff_symbol): Set the symbol's language to the language + of current_subfile. + +2009-05-22 Pedro Alves <pedro@codesourcery.com> + + * target.h (struct section_table): Rename to ... + (struct target_section): ... this. + * exec.c: Adjust all references. + * exec.h: Adjust all references. + * nto-tdep.c: Adjust all references. + * nto-tdep.h: Adjust all references. + * ppc-linux-tdep.c: Adjust all references. + * rs6000-nat.c: Adjust all references. + * s390-tdep.c: Adjust all references. + * solib-darwin.c: Adjust all references. + * solib-frv.c: Adjust all references. + * solib-irix.c: Adjust all references. + * solib-null.c: Adjust all references. + * solib-osf.c: Adjust all references. + * solib-pa64.c: Adjust all references. + * solib-som.c: Adjust all references. + * solib-sunos.c: Adjust all references. + * solib-svr4.c: Adjust all references. + * solib-target.c: Adjust all references. + * solib.c: Adjust all references. + * solist.h: Adjust all references. + * symfile.c: Adjust all references. + * symfile.h: Adjust all references. + * target.c: Adjust all references. + +2009-05-22 Hui Zhu <teawater@gmail.com> + + Add sys_fcntl argument interfaces to linux_record_tdep. + + * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK, + fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be + interfaces. + * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK, + I386_LINUX_RECORD_FCNTL_F_GETLK64, + I386_LINUX_RECORD_FCNTL_F_SETLK64, + I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values + of I386 Linux sys_fcntl arguments. + (i386_linux_init_abi): Set macros values to linux_record_tdep. + * linux-record.c (record_linux_system_call): Change to use + the interface in linux_record_tdep in sys_fcntl and + sys_fcntl64. + + * linux-record.c (record_linux_system_call): Fix the process + record build error about type in CYGWIN. + +2009-05-22 Pedro Alves <pedro@codesourcery.com> + + * inflow.c (kill_command): Delete left over static declaration. + +2009-05-22 Pedro Alves <pedro@codesourcery.com> + + * bfd-target.c: Don't include gdb_assert.h or gdb_string.h. + Include exec.h. + (struct section_closure): Delete. + (add_to_section_table): Delete. + (build_target_sections_from_bfd): Delete. + (target_bfd_xfer_partial): Use section_table_xfer_memory_partial. + (target_bfd_reopen): Use build_section_table. + * exec.c (xfer_memory): Move most code except for overlay + debugging support from here... + (section_table_xfer_memory): ... to this new function. + (section_table_xfer_memory_partial): New. + * exec.h (section_table_xfer_memory_partial): Declare. + * bfd-target.h (build_target_sections_from_bfd): Delete + declaration. + +2009-05-22 Pedro Alves <pedro@codesourcery.com> + + * remote.c (compare_sections_command): Don't declare exec_bfd. + * tracepoint.c: Include "gdbcore.h". + (remote_set_transparent_ranges): Don't declare exec_bfd. + +2009-05-21 Pedro Alves <pedro@codesourcery.com> + + * aix-thread.c (init_aix_thread_ops): Whitespace. + +2009-05-21 Pedro Alves <pedro@codesourcery.com> + + * dec-thread.c (dec_thread_wait): Add options parameter. Use it + to call the to_wait method in the target beneath. + * remote-m32r-sdi.c (m32r_wait): Add options parameter. + +2009-05-21 Joel Brobecker <brobecker@adacore.com> + + * aix-thread.c (aix_thread_wait): Add options parameter. Use it + to call the to_wait method in the target_beneath. + +2009-05-21 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (linux_nat_terminal_inferior) + (linux_nat_terminal_ours): Don't check sync_execution. + * remote.c (remote_terminal_inferior, remote_terminal_ours): + Don't check sync_execution. Update comments. + * target.c (target_terminal_inferior): New. + * target.h (target_terminal_inferior): Delete macro, and declare + as function. + * event-top.c (async_disable_stdin): Make idempotent. Don't give + the target the terminal here. + * inflow.c (terminal_ours_1): Don't return early without setting + `terminal_is_ours'. + +2009-05-21 Pedro Alves <pedro@codesourcery.com> + + * target.h (TARGET_WNOHANG): New. + * target.c (target_wait): Add `options' argument. Adjust. + (struct target_ops) <to_wait>: Add `options' argument. + (target_wait): Add `options' argument. + * infrun.c (wait_for_inferior): Pass 0 as options to + target_wait (blocking wait). + (fetch_inferior_event): Pass TARGET_WNOHANG as options to + target_wait. + * fork-child.c (startup_inferior): Pass 0 as options to + target_wait (blocking wait). + * linux-nat.c (linux_nat_create_inferior): Remove async masking. + (linux_nat_wait_1): Add `target_options' argument. Use it instead + of checking on target_can_async_p. + (linux_nat_wait): Add `target_options' argument. Adjust. + * remote.c (remote_wait_ns): Add `options' argument. Adjust to + check on TARGET_WNOWAIT instead of checking on remote_is_async_p. + (remote_wait_as): Add `options' argument. Adjust to check on + TARGET_WNOWAIT instead of checking on remote_is_async_p. If doing + a blocking wait, keep waiting until an interesting event comes + out. + (remote_wait): Add `options' argument. Don't loop here if the + target is in async mode, and a blocking wait has been requested. + + * top.c (deprecated_target_wait_hook): Add `options' argument. + * linux-thread-db.c (thread_db_wait): Add `options' argument, and + pass it down to the layer beneath. + * inf-ptrace.c (inf_ptrace_wait): Add `options' argument. + * record.c (record_beneath_to_wait): Add `options' argument. + (record_wait): Add `options' argument, and pass it down to the + layer beneath. + * bsd-uthread.c (bsd_uthread_wait): Add `options' argument. + * darwin-nat.c (darwin_wait): Likewise. + * defs.h (deprecated_target_wait_hook): Likewise. + * gnu-nat.c (gnu_wait): Add `options' argument. + * go32-nat.c (go32_wait): Likewise. + * hpux-thread.c (hpux_thread_wait): Add `options' argument, and + pass it down to the layer beneath. + * inf-ttrace.c (inf_ttrace_wait): Add `options' argument. + * monitor.c (monitor_wait): Likewise. + * nto-procfs.c (procfs_wait): Likewise. + * remote-mips.c (mips_wait): Add `options' argument. + * remote-sim.c (gdbsim_wait): Likewise. + * rs6000-nat.c (rs6000_wait): Add `options' argument. + * sol-thread.c (sol_thread_wait): Add `options' argument, and pass + it down to the layer beneath. + * spu-linux-nat.c (spu_child_wait): Add `options' argument. + * windows-nat.c (windows_wait): Likewise. + * tui/tui-hooks.c (tui_target_wait_hook): Likewise. Adjust. + +2009-05-21 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-interp.c (mi_on_resume): Account for whole process + resumes. + +2009-05-21 Jan Kratochvil <jan.kratochvil@redhat.com> + + * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX. + +2009-05-21 Jan Kratochvil <jan.kratochvil@redhat.com> + + * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99. + +2009-05-21 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix parsing DW_AT_const_value using DW_FORM_string. + * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New. + +2009-05-20 Joel Brobecker <brobecker@adacore.com> + + * aix-thread.c (giter_count): Do not count the main thread. + (giter_accum): Do not include the main thread. + +2009-05-19 Jan Kratochvil <jan.kratochvil@redhat.com> + + Remove the PROT parameter from openp. + * source.c (openp): Remove the parameter PROT. Assertion check MODE. + defs.h (openp): Update the prototype. + Update all the openp callers. + +2009-05-19 Pedro Alves <pedro@codesourcery.com> + + * inflow.c (kill_command): Moved to infcmd.c. + (_initialize_inflow): Don't add the "kill" command or clear + inferior_ptid here. + * infcmd.c (kill_command): Moved here from inflow.c. + (_initialize_infcmd): Add the "kill" command here. + +2009-05-19 Pedro Alves <pedro@codesourcery.com> + + * fork-child.c: Don't include frame.h. Include terminal.h. + (fork_inferior): Call new_tty_postfork after forking adn adding + the child to the inferior list. + * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare + here. + * inflow.c (struct terminal_info): Remove const qualifier from + `run_terminal' field. + (inferior_thisrun_terminal): Tweak comment. + (inflow_inferior_exit): Release the `run_terminal' field. + (copy_terminal_info): New function. + (new_tty_postfork): New function. + * terminal.h (new_tty_prefork, new_tty, new_tty_postfork, + (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare. + * inf-ptrace.c: Include terminal.h. + (inf_ptrace_follow_fork): Copy the parent's terminal info to the + child. + * linux-nat.c: Include terminal.h. + (linux_child_follow_fork): Copy the parent's terminal info to the + child. + * inf-ttrace.c: Include terminal.h. + (inf_ttrace_follow_fork): Copy the parent's terminal info to the + child. + +2009-05-19 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (insert_breakpoints, breakpoint_init_inferior) + (update_global_location_list): Use gdbarch_has_global_breakpoints + instead of gdbarch_has_global_solist and + target_supports_multi_process. + * dicos-tdep.c (dicos_init_abi): Set + gdbarch_has_global_breakpoints. + * gdbarch.sh (has_global_solist): Update comment. + (has_global_breakpoints): New. + * remote.c (remote_start_remote): Use + gdbarch_has_global_breakpoints instead of + gdbarch_has_global_solist. + * target.c (target_detach): Use gdbarch_has_global_breakpoints + instead of gdbarch_has_global_solist. + * infcmd.c (attach_command): Use gdbarch_has_global_solist instead + of target_supports_multi_process. + +2009-05-18 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objc-lang.c (find_methods): Plug a small memory leak. + +2009-05-18 Pedro Alves <pedro@codesourcery.com> + + * solib-svr4.c: Include observer.h. + (debug_base, debug_loader_offset_p, debug_loader_offset) + (debug_loader_name, main_lm_addr): Move these globals... + (struct svr4_info): ... into this new structure. + (svr4_info_p): New typedef. + (svr4_info): New global. + (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New + functions. + (locate_base, solib_svr4_r_map, solib_svr4_r_brk) + (solib_svr4_r_ldsomap): Add svr4_info argument. Adjust to + per-inferior svr4. + (open_symbol_file_object): Adjust to per-inferior svr4. + (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map): + Ditto. + (enable_break): Add svr4_info argument. Adjust to per-inferior + svr4. + (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib): + Adjust to per-inferior svr4. + (_initialize_svr4_solib): Install the solib_svr4_inferior_exit + observer. + +2009-05-18 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.h (linux_proc_get_tgid): Declare. + * linux-nat.c (linux_proc_get_tgid): New. + * linux-thread-db.c (struct thread_db_info): New field + `need_stale_parent_threads_check'. + (add_thread_db_info): Set it. + (find_new_threads_callback): Ignore stale fork parent threads. + (thread_db_resume): New. + (init_thread_db_ops): Install thread_db_resume. + +2009-05-18 Pedro Alves <pedro@codesourcery.com> + + * fork-child.c (fork_inferior): Only reset the thread list if this + is the first inferior. + (startup_inferior): If the target support multi-process, tell it + to resume only the new process. + * linux-nat.c (num_lwps): Delete global. + (purge_lwp_list): New function. + (num_lwps): New function. + (add_lwp, delete_lwp): Adjust. + (ptid_match): New. + (iterate_over_lwps): Add filter argument. Handle it. + (linux_nat_attach): Remove FIXME note. + (linux_nat_detach): Adjust to iterate over threads of the inferior + we're detaching from. Adjust to num_lwps being a function. Don't + assume the head of the lwp list is the main thread of the process + we're detaching from. Don't destroy the LWP list. + (resume_callback): Add debug output. + (linux_nat_resume): Handle resuming a single inferior. Allow a + wildcard resume in non-stop mode. + (linux_handle_extended_wait): Don't assume inferior_ptid is the + correct inferior of the parent LWP. + (status_callback): Also check lp->waitstatus. + (select_event_lwp): Add new filter parameter. Handle it. + (linux_nat_filter_event): Adjust to num_lwps being a function. + (linux_nat_wait_1): When adding the first lwp of the inferior, use + an is_lwp check instead of checking for the number of lwps. + (linux_nat_wait_1): Handle waiting for a specific tgid. Handle + pending process exit statuses. + (linux_nat_mourn_inferior): Don't destroy all the LWP info. + Instead delete LWPs of the inferior that we're mourning. Don't + unregister from the event loop here. + (linux_nat_pid_to_str): Use `num_lwps'. + (linux_nat_make_corefile_notes): Adjust to walk over lwps of a + single inferior. + (linux_nat_is_async_p): Check if async was masked out. + (linux_multi_process): New global. + (linux_nat_supports_multi_process): New. + (linux_nat_stop_lwp): Remove LWP filtering. It is done by the + caller. + (linux_nat_stop): Adjust to make iterate_over_lwps itself do the + LWP filtering. + (linux_nat_close): New. + (linux_nat_add_target): Register linux_nat_close and + linux_nat_supports_multi_process. + * linux-nat.h (iterate_over_lwps): Add filter argument. + * linux-thread-db.c (thread_db_handle): Delete. + (proc_handle, thread_agent, td_init_p, td_ta_new_p) + (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p) + (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p) + (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p) + (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No + longer globals, moved to... + (struct thread_db_info): ... this new structure. + (thread_db_list): New. + (add_thread_db_info, get_thread_db_info, delete_thread_db_info): + New. + (have_threads_callback): Filter out threads of all inferiors but + the one specified by the ARGS argument. + (have_threads): Add ptid argument specifying the inferior we're + interested in. Handle it. + (struct thread_get_info_inout): New. + (thread_get_info_callback, thread_from_lwp): Adjust to use it. + (thread_db_attach_lwp): Check that inferior of the passed in + thread is using thread-db. Adjust. + (enable_thread_event): Remove thread_agent parameter. Instead, + get it from the per-inferior thread-db info. + (dladdr_to_soname): Move higher up. + (enable_thread_event_reporting): Adjust to use per-inferior + thread-db info. + (try_thread_db_load_1): Replace `handle' parameter by a + thread_db_info parameter. Adjust to use per-inferior thread-db + info. + (try_thread_db_load): Adjust to use per-inferior thread-db info. + (thread_db_load, disable_thread_event_reporting): Ditto. + (check_for_thread_db): Remove conditional reporting of which + libthread_db is in use. + (thread_db_new_objfile): Add comment about inferior_ptid. + (attach_thread): Adjust to use per-inferior thread-db info. + (thread_db_detach): Adjust to use per-inferior thread-db info. + Remove thread event breakpoints of the current inferior. Only + unpush the thread-db target if there are no more processes using + it. + (check_event): Adjust to use per-inferior thread-db info. + (thread_db_wait): Adjust to use per-inferior thread-db info. Only + unpush the thread-db target if there are no more processes using + it. + (thread_db_mourn_inferior): Adjust to use per-inferior thread-db + info. Mark breakpoints of the current inferior out before + deleting them. Only unpush the thread-db target if there are no + more processes using it. + (find_new_threads_callback): Adjust to use per-inferior thread_db + info. + (thread_db_find_new_threads_1): Add new ptid argument. Adjust to + use per-inferior thread-db info. + (thread_db_find_new_threads): Adjust to use per-inferior thread-db + info. + (thread_db_get_thread_local_address): Adjust. + (thread_db_get_ada_task_ptid): Adjust. + * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target + if there no more processes left to debug. + * thread.c (set_running, set_executing): Handle resuming all + threads of a single inferior. + * mi/mi-interp.c (mi_output_running_pid): New. + (mi_inferior_count): New. + (mi_on_resume): For backwards compatibility, if resuming all + threads of an inferior, and there is only one inferior, output + "all". + +2009-05-18 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (ada_find_any_type): Move check for primitive types ... + (to_fixed_range_type): ... to here. + +2009-05-18 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (desc_data_type): Remove, replace by ... + (desc_data_target_type): ... this. + (thin_data_pntr): Use desc_data_target_type instead of desc_data_type. + (ada_is_array_descriptor_type): Likewise. + (ada_type_of_array): Likewise. + (ada_coerce_to_simple_array_type): Likewise. + (ada_array_element_type): Likewise. + +2009-05-18 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-valprint.c (ada_val_print_1): Use val_print_string to print + result of ada_vax_float_print_function inferior call. + +2009-05-18 Ulrich Weigand <uweigand@de.ibm.com> + + * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to + avoid creating a dummy value. + +2009-05-18 Ulrich Weigand <uweigand@de.ibm.com> + + * p-valprint.c (pascal_val_print): Use extract_typed_address + to extract reference value. + +2009-05-18 Ulrich Weigand <uweigand@de.ibm.com> + + * doublest.c (NAN): Remove unused define. + (extract_floating_by_length, deprecated_extract_floating): Remove. + (store_floating_by_length, deprecated_store_floating): Remove. + (extract_typed_floating): Do not call extract_floating_by_length. + (store_typed_floating): Do not call store_floating_by_length. + (convert_typed_floating): Remove redundant assertions. + * doublest.h (deprecated_extract_floating): Remove. + (deprecated_store_floating): Remove. + * sh64-tdep.c (sh64_register_convert_to_raw): Call + extract_typed_floating instead of deprecated_extract_floating. + +2009-05-18 Jon Beniston <jon@beniston.com> + + * MAINTAINERS: Add lm32 target. + * Makefile.in: Add lm32 dependencies. + * NEWS: Indicate lm32 is a new target. + * configure.tgt: Add lm32 targets. + * lm32-tdep.c: New file. + +2009-05-18 Pedro Alves <pedro@codesourcery.com> + + * corelow.c (core_open): Flush the register cache before doing + anything with registers. + +2009-05-18 Pedro Alves <pedro@codesourcery.com> + + * inflow.h (our_process_group): Remove declaration. + (inferior_process_group): Delete global variable declaration. + (inferior_process_group): New function declaration. + * inflow.c: Include observer.h. + (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours): + Delete. + (struct terminal_info): New struct. + (our_terminal_info): New global. + (inferior_process_group): New function. + (inferior_thisrun_terminal): Extend description comment. + (gdb_has_a_terminal): Adjust to write to our_terminal_info fields + instead of globals. + (terminal_init_inferior_with_pgrp): Adjust to per-inferior + terminal settings. + (terminal_inferior): Ditto. + (terminal_ours_1): Ditto. + (inflow_new_inferior, inflow_inferior_exit): New functions. + (child_terminal_info): Adjust to per-inferior terminal settings. + (osig_set): New global. + (set_sigint_trap): Adjust to per-inferior terminal settings. Set + or clear `osig_set' accordingly. + (clear_sigint_trap): Check `osig_set' to decide wheater to restore + SIGINT handler, instead of checking the current inferior (which + may be none). + (_initialize_inflow): Attach inflow_new_inferior and + inflow_inferior_exit to the "new_inferior" and "inferior_exit" + notifications, respectively. + * inferior.h (struct terminal_info): Forward declare. + (struct inferior): Add `terminal_info' field. + * inferior.c (delete_inferior_1): Notify the inferior_exit + observers before removing the inferior from the lists and deleting + it. + * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now + a function instead of a variable. Adjust. + * procfs.c (procfs_stop): Ditto. + +2009-05-17 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (handle_inferior_event): When handling a + TARGET_WAITKIND_FORKED, detach breakpoints from the fork child + immediatelly. + * linux-nat.c (linux_child_follow_fork): Only detach breakpoints + from the child if vforking. + * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach + breakpoints from the child here. + +2009-05-17 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (pending_follow): Remove execd_pathname member. + (resume): No longer handle TARGET_WAITKIND_EXECD pending follow. + (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD + event, don't copy `execd_pathname' to pending_follow, use the + event copy instead. Release `execd_pathname' once done with + handling the event. + + * infrun.c (pending_follow): Remove mention of exec events. + +2009-05-17 Hui Zhu <teawater@gmail.com> + + * i386-tdep.c (i386_process_record): Make it extern. + (i386_gdbarch_init): Don't call set_gdbarch_process_record + here. + * i386-tdep.h (i386_process_record): Declare. + * i386-linux-tdep.c (i386_linux_init_abi): Call + set_gdbarch_process_record. + +2009-05-17 Vladimir Prus <vladimir@codesourcery.com> + + Always report varobj as changed when in_scope attribute changes. + + * varobj.c (install_new_value): If non-NULL-ness of value + changed, return 1. + +2009-05-15 Paul Pluzhnikov <ppluzhnikov@google.com> + + * NEWS: Mention set/show libthread-db-search-path. + * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define. + (LIBTHREAD_DB_SO): Moved from linux-thread-db.c + * linux-thread-db.c (libthread_db_search_path): New setting. + (thread_db_handle): New variable (replaces using_thread_db). + (try_thread_db_load_1): New function. + (try_thread_db_load, thread_db_load_search): Likewise. + (dladdr_to_soname): Likewise. + (thread_db_load): Iterate over possibly multiple libthread_db's. + (check_for_thread_db): Attempt to load new libthread_db. + (thread_db_detach, thread_db_wait): Unload libthread_db. + (thread_db_mourn_inferior): Likewise. + (_initialize_thread_db): Add new libthread-db-search-path option. + Defer loading of libthread_db to check_for_thread_db. + * solib.c (libpthread_name_p): New function. + (libpthread_solib_p): Call it. + * solib.h (libpthread_name_p): New prototype. + +2009-05-15 Pierre Muller <muller@ics.u-strasbg.fr> + + * MAINTAINERS: Update my email address. + +2009-05-14 Paul Pluzhnikov <ppluzhnikov@google.com> + + * breakpoint.h: Add breakpoint_re_set_objfile prototype. + * breakpoint.c (create_overlay_event_breakpoint): Renamed + from create_overlay_event_breakpoint_1, old + create_overlay_event_breakpoint deleted. + (breakpoint_re_set_objfile): Don't rescan all objfiles + unnecessarily. + (breakpoint_re_set): New function. + * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile + instead of breakpoint_re_set. + * objfiles.c (objfile_relocate): Likewise. + +2009-05-14 Joel Brobecker <brobecker@adacore.com> + + * gdbarch.sh: Add comment documenting the target_gdbarch global. + gdbarch.h does NOT need to be regenerated as the corresponding + change has already been made in a previous commit. + +2009-05-14 Pierre Muller <muller@ics.u-strasbg.fr> + + Remove all i386 debug register low level macros in config nm files. + (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove. + (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove. + (I386_USE_GENERIC_WATCHPOIINTS): Remove. + + * i386-nat.h: New file (adapted from config/i386/nm-i386.h). + (struct i386_dr_low_type): New type. + (i386_dr_low): New global variable. + * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro. + (i386_insert_aligned_watchpoint): Replace i386 dr low macros by + i386_dr_low struct variable fields. + (i386_remove_aligned_watchpoint): Likewise. + (i386_stopped_data_address): Likewise. + (i386_stopped_by_hwbp): Likewise. + (show_debug_regs_command_added): New static variable. + (add_show_debug_regs_command): New static function. + (i386_use_watchpoints): Call add_show_debug_regs_command if not done. + (i386_set_debug_register_length): New function. + (_initialize_i386_nat): Delete. + + * amd64-linux-nat.c: Include "i386-nat.h". + (amd64_linux_dr_set_control): Change to static. + (amd64_linux_dr_get_status): Change to static. + (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise. + (_initialize_amd64_linux_nat): Set i386_dr_low variable fields. + + * go32-nat.c: Include "i386-nat.h". + (go32_set_addr): Change to static. + (go32_set_dr7): Change to static. Change arg type to unisgned long. + (go32_get_dr6): Change to static. Change return type to unisnged long. + (init_go32_ops): Set i386_dr_low variable fields. + * i386-linux-nat.c: Include "i386-nat.h". + (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static. + (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem. + (_initialize_i386_linux_nat): Set i386_dr_low variable fields. + * i386bsd-nat.h: Declare functions used for + i386_dr_low fields in i386fbsd-nat.c. + * i386fbsd-nat.c: Include "i386-nat.h". + (_initialize_i386fbsd_nat): Set i386_dr_low variable fields. + * windows-nat.c: Include "i386-nat.h". + (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes. + Change to static. + (cygwin_get_dr6): Change return type to unisnged long. + (cygwin_set_dr7): Change arg type to unisgned long. + (init_windows_ops): Set i386_dr_low function fields. + + * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call + i386_set_debug_register_length. + * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise. + + * config/i386/nm-cygwin.h: Remove all I386_* macros. + * config/i386/nm-cygwin64.h: Likewise. + * config/i386/nm-fbsd.h: Likewise. + * config/i386/nm-linux.h: Likewise. + * config/i386/nm-i386.h: Remove completely. + * config/i386/nm-go32.h: Remove completely. + * config/i386/nm-linux64.h: Remove completely. + * config/i386/go32.mh (NAT_FILE): Remove entry. + * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h. + +2009-05-14 Jon Beniston <jon@beniston.com> + + * MAINTAINERS: Add Jon Beniston to write after approval list. + +2009-05-13 Paul Pluzhnikov <ppluzhnikov@google.com> + + * objc-lang.c (objc_objfile_data): New variable. + (find_methods): Skip objfiles without Obj-C methods. + (_initialize_objc_lang): New function. + +2009-05-13 Joel Brobecker <brobecker@adacore.com> + + * c-lang.c (print_wchar): Remove unnecessary cast. + +2009-05-12 Jim Blandy <jimb@red-bean.com> + + * MAINTAINERS: Remove self as m32c target maintainer. + +2009-05-12 Pedro Alves <pedro@codesourcery.com> + + * cli/cli-decode.c (deprecated_add_set_cmd): Delete. + * command.h (deprecated_add_set_cmd): Delete declaration. + * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with + 'set debug gnu-nat' and 'show debug gnu-nat'. + * i386-nat.c (_initialize_i386_nat): Replace 'maint + show-debug-registers' with 'maint set show-debug-registers' and + 'maint show show-debug-registers'. + * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint + show-debug-registers' with 'maint set show-debug-registers' and + 'maint show show-debug-registers'. + +2009-05-12 Joel Brobecker <brobecker@adacore.com> + + * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before + pushing it on the output obstack. + +2009-05-11 Joel Brobecker <brobecker@adacore.com> + + Fix internal error on breaking at a multi-locations caller source line. + * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break' + command with no parameters. + +2009-05-11 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (enum sigchld_state): Delete. + (linux_nat_async_events_state): Delete. + (struct waitpid_result): Delete. + (waitpid_queue): Delete. + (queued_waitpid_1): Delete. + (async_file_flush): New. + (queued_waitpid, push_waitpid): Delete. + (async_file_mark): New. + (drain_queued_events): Delete. + (my_waitpid): Remove locally queued events handling. + (linux_test_for_tracefork): Upjust. + (linux_child_follow_fork): Ditto. + (sync_sigchld_action): Delete. + (blocked_mask): Reinstate. + (async_sigchld_action): Rename to... + (sigchld_action): ... this. + (block_child_signals): New. + (restore_child_signals_mask): New. + (lin_lwp_attach_lwp): Adjust. + (linux_nat_create_inferior): Ditto. + (linux_nat_attach): Also use lp->status in async mode. + (get_pending_status): Don't use queued_waitpid. + (linux_nat_detach): Don't drain locally queued events. + (linux_nat_resume): Allow pending wait statuses stored lp->status + in async mode. If returning early due to a pending event, + re-register the event source. + (stop_wait_callback): Allow pending wait statuses stored + lp->status in async mode. + (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete. + (linux_nat_wait): Rename to ... + (linux_nat_wait_1): ... this. Allow pending wait statuses stored + lp->status in async mode. Always add WNOHANG to the waitpid + options in async mode. + (linux_nat_wait): New. + (kill_callback): Don't drain locally queued events. + (sigchld_handler): Rewrite. + (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to + refer to "set target-async". + (linux_nat_async_mask): If in non-stop, and re-enabling async + mode, re-register the target event source in the event loop. + (linux_nat_event_pipe_pop, linux_nat_event_pipe_push) + (get_pending_events, async_sigchld_handler) + (linux_nat_async_events): Delete. + (handle_target_event): New. + (linux_nat_async_file_handler): Delete. + (linux_async_pipe): New. + (linux_nat_async): Only re-register in the event loop if not + registered yet. Always notify the event-loop once if enabling the + event source. + (linux_nat_stop_lwp): Rewrite to handle pending events stored in + lp->status, not in the locally queued event list. + (linux_nat_stop): Don't mask out async event handling. + (linux_nat_setup_async): Delete. + (_initialize_linux_nat): Adjust. + (lin_thread_get_thread_signals): blocked_mask is global again. + Adjust. + +2009-05-11 Pierre Muller <muller@ics.u-strasbg.fr> + + Unify target macros. + + * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ... + (target_stoppped_by_watchpoint): New macro. + (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ... + (target_have_steppable_watchpoint): New macro. + (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ... + (target_have_continuable_watchpoint): New macro. + (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ... + (target_can_use_hardware_watchpoint): New macro. + (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ... + (target_region_ok_for_hw_watchpoint): New macro. + + * breakpoint.c (update_watchpoint): Use new macros. + (bpstat_alloc): Likewise. + (create_breakpoint): Likewise. + (watch_command_1): Likewise. + (can_use_hardware_watchpoint): Likewise. + (do_enable_breakpoint): Likewise. + * infrun.c (handle_inferior_event): Adapt to new macros. + * mips-tdep.c (mips_gdbarch_init): Update comments. + * procfs.c (procfs_set_watchpoint): Update comment. + (procfs_insert_watchpoint): Adapt to new macros. + * remote-m32r-sdi.c (m32r_stop): + * remote-mips.c (mips_remove_breakpoint): + * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros. + (debug_to_stopped_by_watchpoint): Likewise. + + +2009-05-10 Pierre Muller <muller@ics.u-strasbg.fr> + + * src/gdb/target.h: Remove all tests for already defined + macros. All macros defined here should not be set in config + headers anymore. + +2009-05-08 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com> + + * ppc-linux-nat.c (have_ptrace_getsetregs): New variable. + (have_ptrace_getsetfpregs): Likewise. + fetch_all_gp_regs): New function. + (fetch_gp_regs): New function. + (fetch_all_fp_regs): Likewise. + (fetch_fp_regs): New function. + (fetch_ppc_registers): Using the new methods to fetch general- + purpose and floating-pointer registers. + (store_all_gp_regs): New function. + (store_gp_regs): Likewise. + (store_all_fp_regs): New function. + (store_fp_regs): Likewise. + (store_ppc_registers): Using the new methods to store general- + purpose and floating-pointer registers. + +2009-05-08 Doug Evans <dje@google.com> + + * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n. + +2009-05-07 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com> + + * MAINTAINERS (Write After Approval): Add self. + +2009-05-07 Joel Brobecker <brobecker@adacore.com> + + * gdbarch.h (target_gdbarch): Add comment documenting this global. + +2009-05-06 Joel Brobecker <brobecker@adacore.com> + + * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over + system iconv. + * configure: Regenerate. + +2009-05-06 Joel Brobecker <brobecker@adacore.com> + + * utils.c: Add include of gdb_usleep.h. + (defaulted_query): Detect false EOF conditions that happen + on terminals opened with the O_NONBLOCK flag when there is + nothing to read. + +2009-05-06 Pedro Alves <pedro@codesourcery.com> + + * inferior.c (add_inferior): Move observer_notify_new_inferior + call to ... + (add_inferior_silent): ... here. + +2009-05-06 Pierre Muller <muller@ics.u-strasbg.fr> + Pedro Alves <pedro@codesourcery.com> + + * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint) + (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New + functions. + (procfs_stopped_by_watchpoint): Made static, ptid argument + removed. + (_initialize_procfs): Register new watchpoint related target + functions. + * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT) + (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT) + (HAVE_CONTINUABLE_WATCHPOINT): Delete. + (target_insert_watchpoint, target_remove_watchpoint): Delete. + (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete + declarations. + * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT) + (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete. + (target_insert_watchpoint, target_remove_watchpoint): Delete. + (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete + declarations. + * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT) + (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete. + (target_insert_watchpoint, target_remove_watchpoint): Delete. + (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete + declarations. + +2009-05-06 Hui Zhu <teawater@gmail.com> + + * i386-tdep.c (i386_process_record): Change bzero to memset. + +2009-05-06 Hui Zhu <teawater@gmail.com> + + * NEWS: Add item for process record and replay. + +2009-05-05 Maxim Grigoriev <maxim2405@gmail.com> + + * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc. + +2009-05-05 Ulrich Weigand <uweigand@de.ibm.com> + + * inferior.h (read_pc, write_pc): Remove. + * regcache.c (read_pc, write_pc): Remove. + + * infrun.c (displaced_step_fixup): Use regcache_read_pc instead + of read_pc. + (handle_inferior_event): Use regcache_read_pc instead of read_pc + when determining value of stop_pc. Replace subsequent uses of + read_pc by inspecting already-retrieved stop_pc value. + (keep_going): Use regcache_read_pc instead of read_pc. + + * breakpoint.c (watchpoint_check): Use current frame architecture + and PC instead of current_gdbarch and read_pc (). + * tracepoint.c (set_traceframe_context): Replace PC argument + with FRAME argument. + (trace_start_command, finish_tfind_command): Update calls. + (finish_tfind_command): Compare frame IDs to identify transitions + between frames. + (trace_find_pc_command): Use regcache_read_pc instead of read_pc. + * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead + of gdbarch. Use regcache_read_pc and regcache_write_pc instead + of read_pc and write_pc. + (store_register): Make regcache argument non-const. Update call + to exec_one_dummy_insn. + + * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc. + * infcmd.c (post_create_inferior): Likewise. + * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise. + * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise. + * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise. + * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise. + * linux-fork.c (fork_load_infrun_state): Likewise. + * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise. + * record.c (record_wait): Likewise. + * procfs.c (procfs_wait): Likewise. + * remote-mips.c (common_open, mips_wait): Likewise. + * remote-m32r-sdi.c (m32r_resume): Likewise. + + * symfile.c (generic_load): Use regcache_write_pc instead of write_pc. + * monitor.c (monitor_create_inferior, monitor_load): Likewise. + * m32r-rom.c (m32r_load, m32r_upload_command): Likewise. + * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise. + * remote-mips.c (mips_create_inferior, mips_load): Likewise. + + * solib-darwin.c: Include "regcache.h". + * solib-pa64.c: Include "regcache.h". + * solib-svr4.c: Include "regcache.h.". + + * symfile.c: Do not mention read_pc or write_pc in comments. + * dink32-rom.c: Likewise. + * m32r-rom.c: Likewise. + * mips-tdep.c: Likewise. + +2009-05-05 Ulrich Weigand <uweigand@de.ibm.com> + + * fork-child.c (startup_inferior): Move setting stop_pc ... + * infcmd.c (post_create_inferior): ... to here. + +2009-05-04 Michael Snyder <msnyder@vmware.com> + + * NEWS: Add item for reverse debugging commands. + +2009-05-04 Pedro Alves <pedro@codesourcery.com> + + * go32-nat.c (go32_stop): Delete. + (go32_kill_inferior): Rewrite to only call go32_mourn_inferior. + (go32_create_inferior): Don't call go32_stop or + go32_kill_inferior. + (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior + here. + (init_go32_ops): Don't register go32_stop. + +2009-05-02 Eli Zaretskii <eliz@gnu.org> + + * dbxread.c (read_dbx_symtab): Avoid compiler warnings for + sym_name. + + * infcall.c (find_function_addr): Avoid compiler warnings for + funaddr. + +2009-05-01 Jan Kratochvil <jan.kratochvil@redhat.com> + + * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector) + (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo. + +2009-05-01 Doug Evans <dje@google.com> + + * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment + to thread_info. + +2009-05-01 Eli Zaretskii <eliz@gnu.org> + + * record.c (_initialize_record): Reformat and clarify doc strings + for stop-at-limit and insn-number-max. + + * go32-nat.c: Add comments about dirty secrets of DJGPP debugging. + +2009-05-01 Jan Kratochvil <jan.kratochvil@redhat.com> + + Make specifiable the make_function_type type memory ownership. + * gdbtypes.c (make_function_type): New parameter `objfile', use it + explicitely instead of TYPE-initialized removed local variable + `objfile'. Describe `objfile' it in the function comment. + (lookup_function_type): Update make_function_type callers. + * gdbtypes.h (make_function_type): Update the prototype. + * jv-lang.c (java_link_class_type): Update make_function_type callers. + * dwarf2read.c (read_subroutine_type): Likewise. + * stabsread.c (read_type): Likewise. + +2009-05-01 Eli Zaretskii <eliz@gnu.org> + + * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of + printing a bogus "Thread <main>". + (go32_thread_alive): Don't return 1 for null_ptid. + + * i386-tdep.c (i386_go32_init_abi): Override the number of + registers due to non-support of SSE. + +2009-04-30 Anthony Green <green@moxielogic.com> + + * configure.tgt: Link the moxie simulator in with gdb. + +2009-04-30 Paul Pluzhnikov <ppluzhnikov@google.com> + + * elfread.c (elf_symtab_read): Don't assume .data and .rodata + are present. + +2009-04-30 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + I386 Linux process record and replay support. + + * i386-linux-tdep.c (i386_linux_record_tdep): New variable. + This struct has the argument for the function + "record_linux_system_call". + (i386_linux_intx80_sysenter_record): New function. Parse the + system call instruction and call function + "record_linux_system_call" to record execute log. + (i386_linux_init_abi): Initialize "i386_linux_record_tdep". + Set "i386_linux_intx80_sysenter_record" to + "i386_intx80_record" and "i386_sysenter_record". + +2009-04-30 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + I386 architecture process record and replay support. + + * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK, + PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386 + instruction set. + (aflag, dflag, override, modrm, mod, reg, rm, ot, + i386_record_pc): New variables. Ditto. + (i386_record_modrm, i386_record_lea_modrm_addr, + i386_record_lea_modrm): New functions. Ditto. + (i386_process_record): New function. Parse the instruction in + address "addr" and record the values of registers and memory + that will be changed by this instruction. + (i386_gdbarch_init): Set "i386_process_record" to GDBARCH + "process_record" interface. + * i386-tdep.h (gdbarch_tdep): New function pointers + "i386_intx80_record" and "i386_sysenter_record" that point to + the function that can record "intx80" and "sysenter" execute + log. + +2009-04-30 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * infrun.c (use_displaced_stepping): Return false if process + record and replay target is used. + (proceed): Call function "record_not_record_set" if pocess + record and replay target is used. + +2009-04-30 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + Linux process record and replay support. + + * Makefile.in (ALLDEPFILES): Add linux-record.c. + (ALL_TARGET_OBS): Add linux-record.o. + * configure.tgt (x86_64-*-linux*): Add linux-record.o. + (i[34567]86-*-linux*): Add linux-record.o. + * linux-record.c, linux-record.h: New file. + +2009-04-30 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + Process record and replay target. + + * Makefile.in (SFILES): Add record.c. + (COMMON_OBS): Add record.o. + * record.c, record.h: New file. + +2009-04-30 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + * target.h (strata): New stratum "record_stratum". + +2009-04-30 Hui Zhu <teawater@gmail.com> + Michael Snyder <msnyder@vmware.com> + + GDBARCH interface for process record and replay. + + * gdbarch.sh (process_record): This interface point to the + function that records the inferior execute log. + +2009-04-29 Doug Evans <dje@google.com> + + * i386-nat.c (child_post_startup_inferior): Delete, unused. + +2009-04-29 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (print_exception_catchpoint): Access `b' directly + instead of `b->loc->owner'. + (print_mention_exception_catchpoint): Ditto. + +2009-04-29 Jan Kratochvil <jan.kratochvil@redhat.com> + + * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero. + +2009-04-27 Tom Tromey <tromey@redhat.com> + + * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'. + +2009-04-27 Jerome Guitton <guitton@adacore.com> + + * symtab.c (append_exact_match_to_sals): New function, extracted + from expand_line_sal. + (expand_line_sal): Use append_exact_match_to_sals to append exact + matches. If none found, append all best items. + +2009-04-27 Jerome Guitton <guitton@adacore.com> + + * main.c (captured_main): Move gdbinit lookups after gdb_init. + +2009-04-27 Jan Kratochvil <jan.kratochvil@redhat.com> + + PR gdb/9675: + * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New. + (read_func_scope): Call inherit_abstract_dies. + +2009-04-25 Eli Zaretskii <eliz@gnu.org> + + * Makefile.in (ALLDEPFILES): Remove duplicate entries for + sparc-sol2-nat.c and sparc-sol2-tdep.c. + + * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix. + +2009-04-24 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI change: Use "/* ARI: rule */" pattern. + * utils.c: Update ARI patterns. + * gdb_dirent.h: Likewise. + +2009-04-23 Anthony Green <green@moxielogic.com> + + * MAINTAINERS: Add moxie target. + * configure.tgt: Add moxie-*-elf target. + * moxie-tdep.c: New file. + * moxie-tdep.h: New file. + +2009-04-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c: Remove an extra empty line. No code change. + +2009-04-23 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix double free on error inserting the breakpoint instruction. + * breakpoint.c (create_breakpoints): Move the + update_global_location_list call to ... + (break_command_really): ... here together with the second local call + both unified after all the cleanups. + +2009-04-23 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com> + Tom Tromey <tromey@redhat.com> + + * configure, config.in: Regenerate. + * configure.ac: Support for relocatable GDB datadir. Use + GDB_AC_WITH_DIR. Always define TARGET_SYSTEM_ROOT_RELOCATABLE. + * acinclude.m4 (GDB_AC_WITH_DIR): New defun. + * top.c (init_main): Add "set data-directory". + * defs.h (gdb_datadir): Declare. + * main.c (gdb_datadir): New global. + (captured_main): Initialize gdb_datadir. Use relocate_directory. + (relocate_path): New function. + (relocate_directory): Likewise. + (get_init_files): Use relocate_path. + (README): Mention --with-gdb-datadir. + +2009-04-23 Joel Brobecker <brobecker@adacore.com> + + * ada-tasks (task_command_1): Call target_find_new_threads. + +2009-04-23 Joel Brobecker <brobecker@adacore.com> + + * stack.c (do_gdb_disassembly): Print the exception message if an + error was thrown while trying to perform the disassembly. + +2009-04-22 Jan Kratochvil <jan.kratochvil@redhat.com> + + * varobj.c (free_variable): Replace free_current_contents by xfree. + +2009-04-22 Kazu Hirata <kazu@codesourcery.com> + + * arm-linux-nat.c (fetch_register, store_register): Use + ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM. + * arm-linux-tdep.c (arm_linux_supply_gregset, + arm_linux_collect_gregset): Likewise. + * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New. + * arm-tdep.h (ARM_CPSR_REGNUM): Remove. + +2009-04-22 Hui Zhu <teawater@gmail.com> + + * stack.c (_initialize_stack): Set the default of + disassemble-next-line to off. + +2009-04-21 Tom Tromey <tromey@redhat.com> + + * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING. + * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING. + +2009-04-21 Andreas Schwab <schwab@linux-m68k.org> + + * configure.ac: Add quotes to not lose brackets in help text. + * configure: Rebuild. + +2009-04-21 Andreas Schwab <schwab@linux-m68k.org> + + * configure.ac: Don't postprocess Makefile in config.status. + Substitute GDB_NM_FILE. Don't substitute nm_h. + * Makefile.in (GDB_NM_FILE): Substitute. + (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE). + * configure: Regenerate. + * gnulib/Makefile.in: Regenerate. + +2009-04-21 Joseph Myers <joseph@codesourcery.com> + + * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir, + --with-htmldir): New. + * configure: Regenerate. + +2009-04-21 Tom Tromey <tromey@redhat.com> + + * configure: Rebuild. + * configure.ac: Use lower case for start of help strings. Clean + up --with-sysroot help. + +2009-04-21 Tom Tromey <tromey@redhat.com> + + * configure: Rebuild. + * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING. + * configure.ac: Use AC_HELP_STRING. Use upper case for variables + in help. + +2009-04-21 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: remove "%p". + * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function. + (ia64_sigtramp_frame_this_id): Ditto. + (ia64_libunwind_frame_this_id): Ditto. + (ia64_libunwind_sigtramp_frame_this_id): Ditto. + * symmisc.c (maintenance_info_psymtabs): Ditto. + +2009-04-21 Joseph Myers <joseph@codesourcery.com> + + * configure.ac (--with-relocated-sources): New. + * configure, config.in: Regenerate. + * source.c (add_substitute_path_rule): Remove static. + * source.h (add_substitute_path_rule): Declare. + * main.c: Include "source.h". + (captured_main): Add substitution rule if RELOC_SRCDIR. + +2009-04-21 Pierre Muller <muller@ics.u-strasbg.fr> + + * gnu-nat.h (proc_debug): Add missing continuation line in macro. + +2009-04-20 David Daney <ddaney@caviumnetworks.com> + + * NEWS: Mention MIPS/Linux hardware watchpoint support. + +2009-04-20 David Daney <ddaney@caviumnetworks.com> + + * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes. + (maint_show_dr, super_close): New variables. + (super_fetch_registers, super_store_registers): Make static. + (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT) + (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define. + (pt_watch_style): Define new enum. + (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint): + Define new structs. + (watch_readback_valid, watch_readback, current_watches, watch_mirror): + New variables. + (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo) + (set_watchlo, get_watchhi, set_watchhi, mips_show_dr) + (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint) + (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address) + (type_to_irw, fill_mask, try_one_watch) + (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs) + (mips_linux_new_thread, populate_regs_from_watches) + (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint) + (mips_linux_close): New functions. + (_initialize_mips_linux_nat): Register watchpoint functions with + the target_ops. Add show-debug-regs maintenance command. + +2009-04-20 David Daney <ddaney@caviumnetworks.com> + + * infrun.c (handle_inferior_event): Move gegisters_changed call down. + +2009-04-19 Pedro Alves <pedro@codesourcery.com> + + * NEWS: Mention gdbserver support for x86 Windows CE. + +2009-04-19 Eli Zaretskii <eliz@gnu.org> + + * config/djgpp/fnchange.lst: Fix typos. + + Set default host and target charsets in the DJGPP port. + + * config/djgpp/config.sed (am_cv_langinfo_codeset) + (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes" + in all configure scripts that define ac_cv_env_CPP_value. + + * go32-nat.c (dos_codepage, nl_langinfo): New functions. + Include langinfo.h. + + * config/djgpp/nl_types.h: New file. + + * config/djgpp/langinfo.h: New file. + + * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp. + +2009-04-18 Carlos O'Donell <carlos@codesourcery.com> + + * Makefile.in (MAKEHTML): Set to makeinfo --html. + (MAKEHTMLFLAGS): Set to empty. + +2009-04-18 Eli Zaretskii <eliz@gnu.org> + + * NEWS: Mention all new set/show commands added since GDB 6.8 was + released. + + * go32-nat.c (go32_sysinfo): Check if the call to + __dpmi_get_capabilities fills the buffer with information, and + don't use the buffer if not. + +2009-04-17 Tom Tromey <tromey@redhat.com> + + * charset.c (_initialize_charset): Add special case for "646". + +2009-04-17 Carlos O'Donell <carlos@codesourcery.com> + + * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir. + * configure: Regenerate. + * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from + configure substitutions. + (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir. + +2009-04-17 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: Do not use %p, replace by call to host_address_to_string + for host pointers. + * darwin-nat.c (darwin_xfer_partial): Apply change. + * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto. + * gnu-nat.h (proc_debug): Ditto. + * symmisc.c (maintenance_info_symtabs): Ditto. + (maintenance_info_psymtabs): Ditto. + * windows-nat.c (handle_load_dll): Ditto. + (handle_unload_dll, info_w32_command, handle_exception): Ditto. + * xtensa-tdep.c (xtensa_unwind_pc): Ditto. + +2009-04-17 Joseph Myers <joseph@codesourcery.com> + + * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if + --enable-64-bit-bfd. + (sparc-*-linux*): Likewise. + +2009-04-17 Eli Zaretskii <eliz@gnu.org> + + * go32-nat.c (go32_sysinfo): Update list of Windows versions of + the NT family. + +2009-04-16 Pedro Alves <pedro@codesourcery.com> + + * remote.c (remote_query_attached): Fix pasto in packet_ok result + checking. + +2009-04-16 Joel Brobecker <brobecker@adacore.com> + + * procfs.c (solib_mappings_callback, find_memory_regions_callback): + Revert the previous change. Might not be correct, actually. + +2009-04-16 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop) + (ada_get_current_task, ada_print_exception_breakpoint_nontask) + (ada_print_exception_breakpoint_task, ada_reset_thread_registers): + Remove declaration. These are non-existent functions. + +2009-04-16 Joel Brobecker <brobecker@adacore.com> + + * procfs.c (solib_mappings_callback, find_memory_regions_callback): + Fix a compilation warning on mips-irix due to casting from + a pointer of different size. + +2009-04-16 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (symtab_for_sym): Delete. + (user_select_syms): Use sym->symtab instead of calling symtab_for_sym. + +2009-04-16 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (extract_string): Delete. + (ada_main_name): Reimplement using target_read_string instead of + extract_string. + +2009-04-16 Andreas Schwab <schwab@linux-m68k.org> + + * m68klinux-nat.c: Remove obsolete comment. + (fetch_register, store_register): Don't call + gdbarch_cannot_fetch_register or gdbarch_cannot_store_register, + which are always nops here. + +2009-04-14 Tom Tromey <tromey@redhat.com> + + * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING. + (c_printstr): Likewise. + * charset.c: Include gdb_wait.h. + (make_wchar_iterator): Use INTERMEDIATE_ENCODING. + (find_charset_names): Use pexecute. Handle libiconv's output. + Detect errors. + (_initialize_charset): Use xstrdup. + * gdb_wchar.h: Check HAVE_BTOWC. Split PHONY_ICONV and wchar + cases. + (INTERMEDIATE_ENCODING): New define. + * configure, config.in: Rebuild. + * configure.ac: Check for btowc. + +2009-04-15 Tom Tromey <tromey@redhat.com> + + * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP. + +2009-04-15 Eli Zaretskii <eliz@gnu.org> + + * utils.c (parse_escape): Initialize target_char to pacify GCC. + +2009-04-14 Jan Kratochvil <jan.kratochvil@redhat.com> + + * c-lang.c (c_get_string): Fix xfree crash on a failed string read. + +2009-04-14 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: sprintf rule. + * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf. + * ada-lang.c (add_angle_brackets): Use xstrprintf. + (ada_decode): Replace sprintf by xsnprintf. + (find_old_style_renaming_symbol): Ditto. + (ada_to_fixed_type_1, ada_enum_name): Ditto. + + +2009-04-14 Joel Brobecker <brobecker@adacore.com> + + * target.c (target_mourn_inferior): Call bfd_cache_close_all + after having executed the target mourn_inferior routine. + +2009-04-14 Eli Zaretskii <eliz@gnu.org> + + * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if + undefined. + +2009-04-13 David Daney <ddaney@caviumnetworks.com> + + * infrun.c (maybe_software_singlestep): New function. + (resume): Call maybe_software_singlestep. + (handle_inferior_event): Same. + +2009-04-13 Tom Tromey <tromey@redhat.com> + + * python/python-frame.c (frapy_richcompare): Return + Py_NotImplemented, not an error. Handle Py_NE as well. + +2009-04-13 Eli Zaretskii <eliz@gnu.org> + + * charset.c (EILSEQ): Define if not defined by system headers. + +2009-04-11 Eli Zaretskii <eliz@gnu.org> + + * config/djgpp/config.sed: Tweak ac_config_files in intl/configure + to be consistent with renaming config.intl.in into config_intl.in. + + * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be + consistent with the change from 2008-11-09. + +2009-04-10 Jan Kratochvil <jan.kratochvil@redhat.com> + + * gdbtypes.c: Remove excessive parentheses at the return keywords. + * varobj.c (varobj_invalidate): Fix indentation. + * varobj.c (varobj_invalidate): Fix formatting text width. + +2009-04-08 Vladimir Prus <vladimir@codesourcery.com> + + Implement -exec-jump. + + * mi/mi-cmds.h (mi_cmd_exec_jump): Declare. + * mi/mi-main.c (mi_cmd_exec_jump): New. + * mi/mi-cmds.c (mi_cmds): Register exec-jump. + +2009-04-07 Doug Evans <dje@google.com> + + * symfile.c (symbol_file_clear): Fix indentation. + +2009-04-06 Mark Kettenis <kettenis@gnu.org> + + * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment. + +2009-04-03 Ulrich Weigand <uweigand@de.ibm.com> + + * ppc-linux-nat.c (ppc_linux_target_wordsize): New function. + (ppc_linux_auxv_parse): New function. + (ppc_linux_read_description): Use ppc_linux_target_wordsize. + (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse. + +2009-04-03 Ulrich Weigand <uweigand@de.ibm.com> + + * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory + BFD to contents of SPU name note. + (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd + with "from_tty" argument 1 instead of 0. + +2009-04-02 Jan Kratochvil <jan.kratochvil@redhat.com> + + * dwarf2read.c + (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>): + Create the symbol in local scope. + * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part. + +2009-04-02 Keith Seitz <keiths@redhat.com> + + * stabsread.c (read_member_functions): GCC may emit an extra space + at the end of the names "__base_ctor" and "__base_dtor"; so ignore + whitespace when looking for these functions. + +2009-04-01 Joel Brobecker <brobecker@adacore.com> + + Change the default value for "set print frame-arguments" to scalars. + + * stack.c (print_frame_arguments): Set initial value to "scalars". + +2009-04-01 Aleksandar Ristovski <aristovski@qnx.com> + + * mips-tdep.c (mips_numeric_register_alieses): New definition. + (mips_gdbarch_init): Add user registers from + mips_numeric_register_aliases. + +2009-04-01 Joel Brobecker <brobecker@adacore.com> + + * linux-nat.c (linux_nat_filter_event): Minor comment reformatting. + +2009-04-01 Joel Brobecker <brobecker@adacore.com> + + * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if + this is the last one. + +2009-04-01 Pedro Alves <pedro@codesourcery.com> + + * remote.c (append_resumption): New. + (remote_vcont_resume): Use it. + +2009-04-01 Joel Brobecker <brobecker@adacore.com> + + * windows-nat.c (+windows_get_ada_task_ptid): New function. + (init_windows_ops): Set windows_ops.to_get_ada_task_ptid. + +2009-03-31 Daniel Jacobowitz <dan@codesourcery.com> + Keith Seitz <keiths@redhat.com> + Jan Kratochvil <jan.kratochvil@redhat.com> + + PR gdb/6817 + * Makefile.in (dbxread.o): Update. + * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string. + * dwarf2read.c (GDB_FORM_cached_string): New. + (read_partial_die): Use dwarf2_canonicalize_name. + (dwarf2_linkage_name): Use dwarf2_name. + (dwarf2_canonicalize_name): New. + (dwarf2_name): Use dwarf2_canonicalize_name. + (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string. + * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string. + * symtab.c (lookup_symbol_in_language): Canonicalize input before + searching. + * cp-name-parser.y: operator() requires two parameters, + according to libiberty. + * minsyms.c (lookup_minimal_symbol): Canonicalize input + before searching. + * NEWS: Update. + +2009-03-31 Joel Brobecker <brobecker@adacore.com> + + Provide support for (Ada) task-specific breakpoints. + + * ada-lang.h (ada_get_task_number): Add declaration. + (breakpoint_ada_task_match): Delete declaration. + * ada-tasks.c (ada_get_task_number): Make non-static. + * breakpoint.h (struct breakpoint): Add field "task". + * breakpoint.c (print_one_breakpoint_location): Add handling of + task-specific breakpoints. + (create_breakpoint, create_breakpoints, find_condition_and_thread): + New parameter "task". + (break_command_really): Update calls to find_condition_and_thread + and create_breakpoints. + (breakpoint_re_set_one): Update call to find_condition_and_thread. + Set b->task. + +2009-03-31 Joel Brobecker <brobecker@adacore.com> + + * ada-tasks.c (short_task_info): Eliminate the "Running" task state. + +2009-03-31 Pedro Alves <pedro@codesourcery.com> + + * remote.c (remote_notice_new_inferior): Use ptid_is_pid. Check + if the thread's ptid without a thread id field is in the list + before calling thread_change_ptid. + (extended_remote_attach_1): In non-stop mode, do not rely on + querying the current thread, instead, query the thread list, and + select the first thread of the process. + * gdbthread.h (first_thread_of_process): Declare. + * thread.c (first_thread_of_process): Define. + +2009-03-30 Stan Shebs <stan@codesourcery.com> + + Make tracepoints into a type of breakpoint. + * breakpoint.h (enum bptype): Add bp_tracepoint. + (struct breakpoint): Add fields step_count, pass_count, actions. + (get_tracepoint, get_tracepoint_by_number): Declare. + (all_tracepoints): Declare. + * breakpoint.c: Include tracepoint.h, readline.h. + (ALL_TRACEPOINTS): Move here from tracepoint.c. + (tracepoint_count): Ditto. + (should_be_inserted): GDB does not insert tracepoints itself. + (print_it_typical): Add tracepoint case. + (bpstat_what): Ditto. + (print_one_breakpoint_location): Ditto, and add printing for + pass count, step count, and action list. + (user_settable_breakpoint): Add tracepoint case. + (allocate_bp_location): Ditto. + (set_breakpoint_location_function): Ditto. + (disable_breakpoints_in_shlibs): Ditto. + (mention): Ditto. + (break_command_really): Add argument traceflag, use to choose + basic breakpoint type. + (break_command_1): Pass extra argument. + (set_breakpoint, handle_gnu_v3_exceptions): Ditto. + (breakpoint_re_set_one): Add tracepoint case. + (disable_command, enable_command): Ditto. + (set_tracepoint_count): Move here from tracepoint.c. + (trace_command): Move here from tracepoint.c and use + break_command_really. + (tracepoints_info): Move here from tracepoint.c and call + breakpoints_info. + (enable_trace_command): Move here from tracepoint.c and call + enable_command. + (disable_trace_command): Move here from tracepoint.c and call + disable_command. + (delete_trace_command): Move here from tracepoint.c and call + delete_breakpoint. + (trace_pass_command): Move here from tracepoint.c. + (get_tracepoint_by_number): Ditto. + (tracepoint_save_command): Ditto. + (get_tracepoint): New function. + (all_tracepoints): New function. + (_initialize_breakpoint): Move tracepoint init from tracepoint.c, + deprecate "enable trace" and "disable trace" commands. + * tracepoint.h (struct tracepoint): Remove. + (tracepoint_chain): Remove decl. + (deprecated_create_tracepoint_hook): Remove decl. + (deprecated_delete_tracepoint_hook): Remove decl. + (deprecated_modify_tracepoint_hook): Remove decl. + (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove. + (free_actions): Update signature. + (validate_actionline): Update signature. + (end_actions_pseudocommand): Declare. + (while_stepping_pseudocommand): Declare. + * tracepoint.c: Include breakpoint.h. + (tracepoint_chain, tracepoint_count): Remove. + (free_actions, make_cleanup_free_actions): Update signature. + (trace_command, set_raw_tracepoint): Remove. + (trace_mention): Remove. + (tracepoints_info): Remove. + (tracepoint_operation, map_args_over_tracepoints): Remove. + (get_tracepoint_by_number): Remove. + (enable_trace_command, disable_trace_command): Remove. + (delete_trace_command, trace_pass_command): Remove. + (trace_actions_command, read_actions): Update signature. + (validate_actionline): Update signature, use bp loc. + (encode_actions): Ditto. + (download_tracepoint): New function, body of trace_start_command. + (trace_start_command): Call it, use all_tracepoints. + (tracepoint_save_command): Remove. + (tracepoint_dump_command): Use get_tracepoint. + (end_actions_pseudocommand): Make globally visible. + (while_stepping_pseudocommand): Ditto. + (_initialize_tracepoint): Move command definitions to breakpoint.c. + +2009-03-30 Thiago Jung Bauermann <bauerman@br.ibm.com> + + Expose frames to Python. + * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o. + (SUBDIR_PYTHON_SRCS): Add python-frame.c. + (python-frame.o): New target. + * python/python-frame.c: New file. + * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame, + gdbpy_frame_stop_reason_string, gdbpy_selected_frame, + gdbpy_initialize_frames): New prototypes. + * python/python.c (_initialize_python): Call gdbpy_initialize_frames. + (GdbMethods): Add `selected_frame' and `frame_stop_reason_string' + entries. + * stack.c (find_frame_funname): New function, factored out of + print_frame. + (print_frame): Call find_frame_funname. + * stack.h (find_frame_funname): Add prototype. + +2009-03-29 Thiago Jung Bauermann <bauerman@br.ibm.com> + + Remove unused value_object attribute `owned_by_gdb'. + * python/python-value.c (value_object): Remove owned_by_gdb + attribute. + (valpy_dealloc): Remove reference to self->owned_by_gdb. + (valpy_new): Likewise. + (value_to_value_object): Likewise. + +2009-03-29 Thiago Jung Bauermann <bauerman@br.ibm.com> + + Change gdb.Value.address from a method to an attribute. + * python/python-value.c (value_object): Add `address' element. + (valpy_dealloc): Decrement reference to self->address if set. + (valpy_new): Initialize val_obj->address. + (valpy_address): Rename to ... + (valpy_get_address): ... this. Change signature from method to + attribute. Update self->address if not set. + (value_to_value_object): Initialize val_obj->address. + (value_object_getset): Add `address' element. + (value_object_methods): Remove `address' element. + +2009-03-29 Andreas Schwab <schwab@linux-m68k.org> + + * observer.sh: Set LANG/LC_ALL to C, not c. + +2009-03-28 Kevin Buettner <kevinb@redhat.com> + + * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default, + `char' is unsigned. + +2009-03-28 Pedro Alves <pedro@codesourcery.com> + + * remote.c (remote_stop_ns): If multi-process extensions are off, + and GDB is requesting the whole process to stop, sent "vCont;t", + not "vCont;t:-1" + +2009-03-28 Pedro Alves <pedro@codesourcery.com> + + * inf-loop.c (inferior_event_handler): Avoid calling is_running on + null inferior_ptid. + +2009-03-27 Eli Zaretskii <eliz@gnu.org> + + * config/djgpp/fnchange.lst: Update to fix ARI-reported problems. + +2009-03-26 Doug Evans <dje@google.com> + + * thread.c (do_restore_current_thread_cleanup): Redo test for + whether to restore old->inferior_ptid. + +2009-03-26 Tom Tromey <tromey@redhat.com> + + * breakpoint.c (resolve_sal_pc): Preserve original line number + when skipping prologue. + +2009-03-26 Doug Evans <dje@google.com> + + * thread.c (inferior_thread) Remove "extern" in definition. + +2009-03-26 Thiago Jung Bauermann <bauerman@br.ibm.com> + + Add gdb.Value.is_optimized_out attribute. + * python/python-value.c (valpy_get_is_optimized_out): New + function. + (value_object_getset): New variable. + (value_object_type): Initialize tp_getset element. + +2009-03-26 Joel Brobecker <brobecker@adacore.com> + + Recognize missing DW_AT_location as <value optimized out>. + * dwarf2read.c + (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>): + Call add_symbol_to_list. + +2009-03-25 Tom Tromey <tromey@redhat.com> + + * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value. + * stack.c (print_this_frame_argument_p): Use check_typedef. + +2009-03-25 Tom Tromey <tromey@redhat.com> + + * configure: Rebuild. + * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv. + Rearrange flags setting. Add comments. + +2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr> + + * config/i386/nm-i386.h: Remove code within + I386_WATCHPOINTS_IN_TARGET_VECTOR conditional. + * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR + macro. + * config/i386/nm-cygwin64.h: Ditto. + * config/i386/nm-fbsd.h: Ditto. + * config/i386/nm-go32.h: Ditto. + * config/i386/nm-linux.h: Ditto. + * config/i386/nm-linux64.h: Ditto. + +2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: "xasprintf" rule. + * printcmd.c (sym_info): Replace xasprintf by xstrprintf. + +2009-03-25 Pedro Alves <pedro@codesourcery.com> + + * remote.c (remote_start_remote): In non-stop mode, call + init_wait_for_inferior before adding threads and inferiors. + +2009-03-25 Joel Brobecker <brobecker@adacore.com> + + * breakpoint.c (breakpoint_thread_match): Split a large condition + into several smaller conditions. No behavior change. + +2009-03-25 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (infrun_thread_thread_exit): New. + (_initialize_infrun): Attach it to the thread_exit observer. + * thread.c (delete_thread_1): Always call the observer, passing it + the silent flag. + * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter. If + SILENT, return immediately. + +2009-03-25 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (normal_stop): Use has_stack_frames instead of + target_has_stack. + * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread + when there is no thread selected. + (mi_cmd_execute): Don't special case commands that can run without + a valid selected thread. + * top.c (execute_command): Don't special case commands that can + run without a valid selected thread. Use has_stack_frames. + * infcmd.c (ensure_valid_thread): New. + (continue_1, step_1, jump_command, signal_command): Use it. + (detach_command): Error out if there's no selected thread/inferior. + * thread.c (print_thread_info): Allow having no thread selected. + (switch_to_thread): Don't read the PC if there is no current thread. + (do_restore_current_thread_cleanup): Don't record the current + frame if there is no current thread. + (make_cleanup_restore_current_thread): Don't read frame info if + there is no selected thread. + (_initialize_thread): Don't mark commands as + "no_selected_thread_ok". + * frame.c (get_current_frame): Error out if there is no valid + selected thread. + (has_stack_frames): Return false if there is no valid + selected thread. + * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as + "no_selected_thread_ok". + * cli/cli-decode.c (set_cmd_no_selected_thread_ok) + (get_cmd_no_selected_thread_ok): Delete. + * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete. + (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok): + Delete declaration. + * stack.c (get_selected_block): Use has_stack_frames. + +2009-03-25 Thiago Jung Bauermann <bauerman@br.ibm.com> + + Fix size of FPSCR in Power 7 processors. + * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define. + (PPC_FEATURE_HAS_DFP): New #define. + (ppc_linux_read_description): Check for DFP feature instead of + ISA 2.05 to decide on size of the FPSCR. + +2009-03-25 Kevin Buettner <kevinb@redhat.com> + + * mn10300-tdep.c (trad-frame.h): Don't include. + (prologue-value.h): Include. + (mn10300_frame_unwind_cache, set_reg_offsets): Delete. + (struct mn10300_prologue): Define. + (push_reg, translate_rreg, check_for_saved): New functions. + (mn10300_analyze_prologue): Rewrite, using prologue-value + machinery. Handle more instructions than before. Permit + instructions to occur in any order. + (mn10300_skip_prologue): Find the extents of the function + in question; mn10300_analyze_prologue no longer does this. + (mn10300_analyze_frame_prologue): New function. + (mn10300_frame_base): New function. + (mn10300_frame_this_id): Rewrite, no longer using trad-frame + implementation. + (mn10300_frame_prev_register): Likewise. + (mn10300_frame_base_address, mn10300_frame_base struct): Delete. + (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to + `this_frame'. + (mn10300_frame_unwind_init): Don't call frame_base_set_default(). + +2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr> + + Fix completer problem for filename completion on the first try. + + * gdb/completer.h (gdb_completion_word_break_characters): New function. + * gdb/completer.c: Include gdb_assert.h. + (complete_line_internal_reason): New enum. + (complete_line_internal): Change last argument type to + complete_line_internal_reason. + Modify function to handle the different complete_line_internal_reason + argument values. + (complete_line): Adapt to change in complete_line_internal. + (command_completer): Ditto. + (gdb_completion_word_break_characters): Implement new function. + * top.c (init_main): Set rl_completion_word_break_hook to + gdb_completion_word_break_characters. + + +2009-03-25 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: "strlen d_name" rule. + * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro. + + +2009-03-24 Tom Tromey <tromey@redhat.com> + Pedro Alves <pedro@codesourcery.com> + + * configure, config.in: Rebuild. + * configure.ac: Check for libiconvlist. + * charset.c: Check HAVE_LIBICONVLIST. + * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE, + LIBICONV_LIBDIR. Update CPPFLAGS and LIBS. + * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR): + Remove. + (INTERNAL_CFLAGS_BASE): Update. + (INTERNAL_LDFLAGS): Update. + (CLIBS): Update. + +2009-03-24 Jan Kratochvil <jan.kratochvil@redhat.com> + + * configure.ac: Initialize the variable $PREFER_CURSES. + * configure: Regenerated. + +2009-03-24 Jan Kratochvil <jan.kratochvil@redhat.com> + + * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI. + * configure: Regenerated. + +2009-03-24 Pierre Muller <muller@ics.u-strasbg.fr> + + ARI fix: "strerror" rule. + * darwin-nat.c (darwin_ptrace): Use safe_strerror. + (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs + before looking up the fields inside our struct type. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before + trying to resolve the type qualification. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure + we try to apply the attribute on the real type, rather than + its associated typedef. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef + to make sure we try to get the modulus of the actual type, not the + associated typedef. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST] + [OP_ATR_LENGTH]: When using the attribute on a type, make sure + to get the real type, not the associated typedef. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_get_field_index): Add handling of the case + when TYPE is a typedef of a struct. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + Add gdb_usleep as a portable version of usleep based on gdb_select. + * gdb_usleep.h, gdb_usleep.c: New files. + * Makefile.in (SFILES): Add gdb_usleep.c. + (HFILES_NO_SRCDIR): Add gdb_usleep.h. + (COMMON_OBS): Add gdb_usleep.o. + * ser-unix.c (hardwire_send_break): Replace call to gdb_select + by call to gdb_usleep. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + + * buildsym.c (end_symtab): If we ignore the subfiles, then + unlink the associated symtabs if they were already allocated. + +2009-03-23 Jerome Guitton <guitton@adacore.com> + + Provide a way to force building of GDB with libcurses. + * configure.ac: Add --with-curses. + * configure: Regenerated. + +2009-03-23 Tom Tromey <tromey@redhat.com> + + * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in + error message. + +2009-03-23 Paul Pluzhnikov <ppluzhnikov@google.com> + + * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use + solib_contains_address_p instead of searching. + +2009-03-23 Tom Tromey <tromey@redhat.com> + + * charset.c (ICONV_CONST) <PHONY_ICONV>: Define. + (iconv): Make 'inbuf' argument const. + (convert_between_encodings): Use ICONV_CONST. + (wchar_iterate): Likewise. + +2009-03-22 Christopher Faylor <me+cygwin@cgf.cx> + + * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for + dynamically loaded function. + (LookupPrivilegeValueA): Ditto. + (OpenProcessToken): Ditto. + (AdjustTokenPrivileges): Rename and define placeholder for address of + dynamically loaded function. + (LookupPrivilegeValueA): Ditto. + (OpenProcessToken): Ditto. + (set_process_privilege): Remove check for loaded functions. + (bad_OpenProcessToken): Define. + (_initialize_loadable): Load token functions from advapi here, setting + OpenProcessToken function to a dummy static function which always return + error if OS doesn't support this functionality. + +2009-03-22 Nicolas Roche <roche@adacore.com> + Christopher Faylor <me+cygwin@cgf.cx> + + * win32-nat.c (ctrl_c_handler): New function. + (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior + is run in a separate console. + +2009-03-22 Christopher Faylor <me+cygwin@cgf.cx> + + * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound + for dynamically loaded function. + (DebugBreakProcess): Ditto. + (DebugSetProcessKillOnExit): Ditto. + (EnumProcessModules): Ditto. + (GetModuleFileNameExA): Ditto. + (GetModuleInformation): Ditto. + (DebugActiveProcessStop): Rename and define placeholder for address of + dynamically loaded function. + (DebugBreakProcess): Ditto. + (DebugSetProcessKillOnExit): Ditto. + (EnumProcessModules): Ditto. + (GetModuleFileNameExA): Ditto. + (GetModuleInformation): Ditto. + (psapi_loaded): Delete. + (get_module_name): Don't check psapi_loaded, just rely on the fact that + dynamically loaded functions will return failure if they weren't + previously found. + (has_detach_ability): Delete. + (windows_attach): Remove call to has_detach_ability (). Just rely on + functions being callable. + (bad_DebugActiveProcessStop): Define. + (bad_DebugBreakProcess): Ditto. + (bad_DebugSetProcessKillOnExit): Ditto. + (bad_EnumProcessModules): Ditto. + (bad_GetModuleFileNameExA): Ditto. + (bad_GetModuleInformation): Ditto. + (_initialize_loadable): Rename from _initialize_psapi. Initialize all + dynamic storage here, setting nonexistent functions to dummy static + functions which always return error. + +2009-03-22 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed + to the about_to_proceed observer notification. + (mi_about_to_proceed): New. + (mi_on_resume): Only output ^running and the prompt here if the + target was proceeded. + * breakpoint.c (breakpoint_proceeded): New static. + (breakpoint_about_to_proceed): New. + (_initialize_breakpoints): Attach breakpoint_about_to_proceed to + the about_to_proceed observer notification. + * inferior.h (breakpoint_proceeded): Delete declaration. + * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded. + Notify the about_to_proceed observers. + (struct inferior_status): Delete breakpoint_proceeded member. + (save_inferior_status): Don't save it. + (restore_inferior_status): Don't restore it. + * mi-main.h (mi_proceeded): Declare. + * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running + a command. + +2009-03-22 Pedro Alves <pedro@codesourcery.com> + + * gdbthread.h (struct thread_info): Add in_infcall member. + * infcall.c (run_inferior_call): Save, set and restore in_infcall. + Remove reverences to suppress_resume_observer. Refresh + `call_thread' after returning from `proceed'. + * infcmd.c (suppress_resume_observer): Delete. + * inferior.h (suppress_resume_observer): Delete declaration. + * mi/mi-interp.c (mi_on_resume): Suppress output while calling an + inferior function. + * thread.c (set_running): Remove references to + suppress_resume_observer. + * infrun.c (struct inferior_status): Add in_infcall member. + (save_inferior_status): Save it. + (restore_inferior_status): Restore it. + +2009-03-22 Pedro Alves <pedro@codesourcery.com> + + * infcall.c (run_inferior_call): Remove references to + suppress_stop_observer. + * infcmd.c (suppress_stop_observer): Delete. + (finish_command_continuation): Remove NOTE. Don't clear + suppress_stop_observer anymore. + (finish_command_continuation_free_arg): Likewise. + (finish_forward): Remove references to suppress_stop_observer. + Call normal_stop observer if we haven't already. + * inferior.h (suppress_stop_observer): Delete. + * infrun.c (normal_stop): When deciding to suppress the + normal_stop observer, check for proceed_to_finish instead of + suppress_stop_observer. + +2009-03-22 Pedro Alves <pedro@codesourcery.com> + + * symfile.c (symfile_relocate_debug_section): Remove check for + SEC_DEBUGGING. + +2009-03-21 Jan Kratochvil <jan.kratochvil@redhat.com> + Jim Blandy <jimb@red-bean.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + Tom Tromey <tromey@redhat.com> + + Miscellaneous fixes to the Python code. + * python/python-cmd.c (cmdpy_init): Accept keyword + arguments. + * python/python-value.c (valpy_string): Accept keyword + arguments. + (valpy_binop): Use `break' to exit from the TRY_CATCH block. + Do not call value_to_value_object on NULL RES_VAL. + (value_object_methods): Change `string' entry to also accept + keyword arguments. + (convert_value_from_python): Return a copy of the value if obj is + a gdb.Value object. + (value_object_methods): Mark the `string' method as accepting + keywords, and show method "prototype" in the doc string. + * python/python.c (get_parameter): Don't return inside a + TRY_CATCH. + +2009-03-20 Tom Tromey <tromey@redhat.com> + + Add support for convenience functions in Python. + * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o. + (SUBDIR_PYTHON_SRCS): Add python-function.c. + (python-function.o): New target. + * eval.c: Include "python/python.h" and <ctype.h>. + (evaluate_subexp_standard): Handle values of type + TYPE_CODE_INTERNAL_FUNCTION. + * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION. + * parse.c (write_exp_string): Remove duplicate word in comment. + * python/python-function.c: New file. + * python/python-internal.h (gdbpy_initialize_functions): Add + prototype. + * python/python.c (_initialize_python): Call + gdbpy_initialize_functions. + * valprint.c (value_check_printable): Handle values of type + TYPE_CODE_INTERNAL_FUNCTION. + * value.c: Include "cli/cli-decode.h". + (internal_function): New struct. + (functionlist, internal_fn_type): New static variables. + (lookup_only_internalvar, + lookup_internalvar): Add const qualifier to name argument. + (create_internalvar): Likewise. Initialize new field. + (set_internal_var): Fix typo in comment. Don't allow assignment + to canonical variable. + (value_create_internal_function, value_internal_function_name, + call_internal_function, function_command, function_destroyer, + add_internal_function): New functions. + (_initialize_values): Create `function' placeholder command. + Initialize internal_fn_type. + * value.h (lookup_only_internalvar, create_internalvar, + lookup_internalvar): Add const qualifier to name argument. + (internal_function_fn, add_internal_function, call_internal_function, + value_internal_function_name): Add prototypes. + (struct internalvar) <canonical>: New field. + +2009-03-20 Tom Tromey <tromey@redhat.com> + + * c-lang.c (evaluate_subexp_c): Call check_typedef. + +2009-03-20 Tom Tromey <tromey@redhat.com> + Julian Brown <julian@codesourcery.com> + + PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103, + PR i18n/9401, PR exp/9613: + * NEWS: Update + * value.h (value_typed_string): Declare. + (val_print_string): Update. + * valprint.h (print_char_chars): Update. + * valprint.c (print_char_chars): Add type argument. Update. + (val_print_string): Likewise. + * valops.c (value_typed_string): New function. + * utils.c (host_char_to_target): New function. + (parse_escape): Use host_char_to_target, host_hex_value. Update. + Remove '^' case. + (no_control_char_error): Remove. + * typeprint.c (print_type_scalar): Update. + * scm-valprint.c (scm_scmval_print): Update. + * scm-lang.h (scm_printchar, scm_printstr): Update. + * scm-lang.c (scm_printchar): Add type argument. + (scm_printstr): Likewise. + * printcmd.c (print_formatted): Update. + (print_scalar_formatted): Update. + (printf_command) <wide_string_arg, wide_char_arg>: New constants. + Handle '%lc' and '%ls'. + * parser-defs.h (struct typed_stoken): New type. + (struct stoken_vector): Likewise. + (write_exp_string_vector): Declare. + * parse.c (write_exp_string_vector): New function. + * p-valprint.c (pascal_val_print): Update. + * p-lang.h (is_pascal_string_type, pascal_printchar, + pascal_printstr): Update. + * p-lang.c (is_pascal_string_type): Remove 'char_size' argument. + Add 'char_type' argument. + (pascal_emit_char): Add type argument. + (pascal_printchar): Likewise. + (pascal_printstr): Likewise. + * objc-lang.c (objc_emit_char): Add type argument. + (objc_printchar): Likewise. + (objc_printstr): Likewise. + * macroexp.c (get_character_constant): Handle unicode characters. + Use c_parse_escape. + (get_string_literal): Handle unicode strings. Use + c_parse_escape. + * m2-valprint.c (print_unpacked_pointer): Update. + (m2_print_array_contents): Update. + (m2_val_print): Update. + * m2-lang.c (m2_emit_char): Add type argument. + (m2_printchar): Likewise. + (m2_printstr): Likewise. + * language.h (struct language_defn) <la_printchar>: Add type + argument. + <la_printstr, la_emitchar>: Likewise. + (LA_PRINT_CHAR): Likewise. + (LA_PRINT_STRING): Likewise. + (LA_EMIT_CHAR): Likewise. + * language.c (unk_lang_emit_char): Add type argument. + (unk_lang_printchar): Likewise. + (unk_lang_printstr): Likewise. + * jv-valprint.c (java_val_print): Update. + * jv-lang.c (java_emit_char): Add type argument. + * f-valprint.c (f_val_print): Update. + * f-lang.c (f_emit_char): Add type argument. + (f_printchar): Likewise. + (f_printstr): Likewise. + * expprint.c (print_subexp_standard): Update. + * charset.h (target_wide_charset): Declare. + (c_target_char_has_backslash_escape, c_parse_backslash, + host_char_print_literally, host_char_to_target, + target_char_to_host, target_char_to_control_char): Remove. + (enum transliterations): New type. + (convert_between_encodings): Declare. + (HOST_ESCAPE_CHAR): New define. + (host_letter_to_control_character, host_hex_value): Declare. + (enum wchar_iterate_result): New enum. + (struct wchar_iterator): Declare. + (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator, + wchar_push_back): Declare. + * charset-list.h: New file. + * c-valprint.c (textual_name): New function. + (textual_element_type): Handle wide character types. + (c_val_print): Pass original type to textual_element_type. Handle + wide character types. + (c_value_print): Use textual_element_type. Pass original type of + value to val_print. + * c-lang.h (enum c_string_type): New type. + (c_printchar, c_printstr): Update. + * c-lang.c (classify_type): New function. + (print_wchar): Likewise. + (c_emit_char): Add type argument. Handle wide characters. + (c_printchar): Likewise. + (c_printstr): Add type argument. Handle wide and multibyte + character sets. + (convert_ucn): New function. + (emit_numeric_character): Likewise. + (convert_octal): Likewise. + (convert_hex): Likewise. + (ADVANCE): New macro. + (convert_escape): New function. + (parse_one_string): Likewise. + (evaluate_subexp_c): Likewise. + (exp_descriptor_c): New global. + (c_language_defn): Use exp_descriptor_c. + (cplus_language_defn): Likewise. + (asm_language_defn): Likewise. + (minimal_language_defn): Likewise. + (charset_for_string_type): New function. + * c-exp.y (%union): Add 'svec' and 'tsval'. + (CHAR): New token. + (exp): Add CHAR production. + (string_exp): Rewrite. + (exp) <string_exp>: Rewrite. + (tempbuf): Now global. + (tempbuf_init): New global. + (parse_string_or_char): New function. + (yylex) <tempbuf>: Now global. + <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>: + Remove. + Handle 'u', 'U', and 'L' prefixes. Call parse_string_or_char. + (c_parse_escape): New function. + * auxv.c (fprint_target_auxv): Update. + * ada-valprint.c (ada_emit_char): Add type argument. + (ada_printchar): Likewise. + (ada_print_scalar): Update. + (printstr): Add type argument. Update calls to ada_emit_char. + (ada_printstr): Add type argument. + (ada_val_print_array): Update. + (ada_val_print_1): Likewise. + * ada-lang.c (emit_char): Add type argument. + * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add + type arguments. + * gdb_locale.h: Include langinfo.h. + * charset.c (_initialize_charset): Set default host charset from + the locale. Don't register charsets. Add target-wide-charset + commands. Call find_charset_names. + (struct charset, struct translation): Remove. + (GDB_DEFAULT_HOST_CHARSET): Remove. + (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define. + (target_wide_charset_name): New global. + (show_host_charset_name): Handle "auto". + (show_target_wide_charset_name): New function. + (host_charset_enum, target_charset_enum): Remove. + (charset_enum): New global. + (all_charsets, register_charset, lookup_charset, all_translations, + register_translation, lookup_translation): Remove. + (simple_charset, ascii_print_literally, ascii_to_control): Remove. + (iso_8859_print_literally, iso_8859_to_control, + iso_8859_family_charset): Remove. + (ebcdic_print_literally, ebcdic_to_control, + ebcdic_family_charset): Remove. + (struct cached_iconv, check_iconv_cache, cached_iconv_convert, + register_iconv_charsets): Remove. + (target_wide_charset_be_name, target_wide_charset_le_name): New + globals. + (identity_either_char_to_other): Remove. + (set_be_le_names, validate): New functions. + (backslashable, backslashed, represented): Remove. + (default_c_target_char_has_backslash_escape): Remove. + (default_c_parse_backslash, iconv_convert): Remove. + (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table, + ascii_to_ibm1047_table, iso_8859_1_to_ascii_table, + iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table, + ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table, + ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table, + ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove. + (table_convert_char, table_translation, simple_table_translation): + Remove. + (current_host_charset, current_target_charset, + c_target_char_has_backslash_escape_func, + c_target_char_has_backslash_escape_baton): Remove. + (c_parse_backslash_func, c_parse_backslash_baton): Remove. + (host_char_to_target_func, host_char_to_target_baton): Remove. + (target_char_to_host_func, target_char_to_host_baton): Remove. + (cached_iconv_host_to_target, cached_iconv_target_to_host): + Remove. + (lookup_charset_or_error, check_valid_host_charset): Remove. + (set_host_and_target_charsets): Remove. + (set_host_charset, set_target_charset): Remove. + (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite. + (set_target_wide_charset_sfunc): New function. + (show_charset): Print target wide character set. + (host_charset, target_charset): Rewrite. + (target_wide_charset): New function. + (c_target_char_has_backslash_escape): Remove. + (c_parse_backslash): Remove. + (host_letter_to_control_character): New function. + (host_char_print_literally): Remove. + (host_hex_value): New function. + (target_char_to_control_char): Remove. + (cleanup_iconv): New function. + (convert_between_encodings): New function. + (target_char_to_host): Remove. + (struct wchar_iterator): Define. + (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator, + wchar_push_back): New functions. + (do_cleanup_iterator): New function. + (char_ptr): New typedef. + (charsets): New global. + (add_one, find_charset_names): New functions. + (default_charset_names): New global. + (auto_host_charset_name): Likewise. + * aclocal.m4, config.in, configure: Rebuild. + * configure.ac: Call AM_LANGINFO_CODESET. + (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8. + (AM_ICONV): Invoke earlier. + * acinclude.m4: Include codeset.m4. Subst LIBICONV_INCLUDE and + LIBICONV_LIBDIR. Check for libiconv in build tree. + * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros. + (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE. + (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR. + * gdb_obstack.h (obstack_grow_wstr): New define. + * gdb_wchar.h: New file. + * defs.h: Include it. + +2009-03-20 Tom Tromey <tromey@redhat.com> + Jan Kratochvil <jan.kratochvil@redhat.com> + + * dwarf2read.c (process_die): Handle DW_TAG_typedef. + * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single + typedef. + * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the + SYMBOL_TYPE result. + * ada-typeprint.c (print_array_type): Do the NULL check + unconditionally. + +2009-03-19 Tom Tromey <tromey@redhat.com> + + * utils.c (do_obstack_free): New function. + (make_cleanup_obstack_free): Likewise. + * defs.h (make_cleanup_obstack_free): Declare. + +2009-03-18 Doug Evans <dje@google.com> + + * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an + int, not a long long. + (linux_nat_info_proc_cmd): Store pid in long instead of long long. + + * expprint.c (dump_raw_expression): Print note if non-NULL. + + * printcmd.c (display_uses_solib_p): Redo loop, scan element list + backwards. + +2009-03-18 Nathan Sidwell <nathan@codesourcery.com> + + * Makefile.in: Update license to GPLv3. + * ada-exp.y: Update license to GPLv3. + * ada-lex.l: Update license to GPLv3. + * c-exp.y: Update license to GPLv3. + * cp-name-parser.y: Update license to GPLv3. + * darwin-nat-info.c: Update license to GPLv3. + * f-exp.y: Update license to GPLv3. + * gdb_thread_db.h: Update license to GPLv3. + * hppanbsd-nat.c: Update license to GPLv3. + * hppanbsd-tdep.c: Update license to GPLv3. + * hppaobsd-tdep.c: Update license to GPLv3. + * jv-exp.y: Update license to GPLv3. + * m2-exp.y: Update license to GPLv3. + * objc-exp.y: Update license to GPLv3. + * p-exp.y: Update license to GPLv3. + * reply_mig_hack.awk: Update license to GPLv3. + * reverse.c: Update license to GPLv3. + * xtensa-xtregs.c: Update license to GPLv3. + +2009-03-18 Pedro Alves <pedro@codesourcery.com> + + * remote.c (remote_close): Don't call generic_mourn_inferior. + (remote_mourn_1): Call generic_mourn_inferior after closing the + target. + +2009-03-18 Pedro Alves <pedro@codesourcery.com> + + * remote.c (remote_start_remote): Add missing call to + init_wait_for_inferior in non-stop mode. + +2009-03-18 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (bpstat_should_step): Only consider software + watchpoints that have a location. + +2009-03-17 Joel Brobecker <brobecker@adacore.com> + + Add a target_ops parameter to the to_kill method in struct target_ops. + + * target.h (struct target_ops): Add a "target_ops *" parameter to + method to_kill. + (target_kill): Remove macro. Add declaration. + * target.c (debug_to_kill): Delete, no longer necessary. + (target_kill): New function. + (update_current_target): Stop inheriting the to_kill method. + Do not de_fault it to no_process either. + (setup_target_debug): Do not set current_target.to_kill. + * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c, + linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c, + remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update + accordingly. + +2009-03-17 Doug Evans <dje@google.com> + + * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for + glibc 2.3.2 and earlier. + +2009-03-17 Joel Brobecker <brobecker@adacore.com> + + * frame.c (get_prev_frame_1): Do not perform the inner_frame + sanity check if this_frame is not NORMAL. + (frame_id_inner): Update the description of this function. + +2009-03-17 Hui Zhu <teawater@gmail.com> + + * stack.c: Change the introduce of "disassemble-next-line". + +2009-03-17 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype, + declare as extern. + +2009-03-17 Hui Zhu <teawater@gmail.com> + + * stack.c: Include valprint.h. + (disassemble_next_line): New enum. + (show_disassemble_next_line): New function. Show the current + value of disassemble-next-line. + (gdb_disassembly_stub_args): New struct for argument passing + between function do_gdb_disassembly and function + gdb_disassembly_stub. + (gdb_disassembly_stub): New function. Helper for + gdb_disassembly. + (do_gdb_disassembly): New function. Use TRY_CATCH to catch + the exception from the gdb_disassembly because it will be + broken by filter sometime. + (print_frame_info): If disassemble-next-line is set to auto + or on and doesn't have the line debug messages for $pc, + output the next instruction. + If disassemble-next-line is set to on and there is line debug + messages, output assembly codes for next line. + (_initialize_stack): Make the "set disassemble-next-line" + command an auto-boolean command. Change its class to + class_stack. Place it in the top level set list. Extend help + to describe the auto mode. + +2009-03-17 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (normal_stop): Don't overwrite old_chain. + +2009-03-16 Joel Brobecker <brobecker@adacore.com> + + * remote-mips.c (mips_load): Replace call to regcache_set_valid_p, + which is undefined, by call to regcache_invalidate, which should + do what the original author wanted to do. + +2009-03-16 Joel Brobecker <brobecker@adacore.com> + + * remote-mips.c (mips_mourn_inferior): Add missing ops parameter. + (mips_create_inferior): Likewise. + +2009-03-16 Joel Brobecker <brobecker@adacore.com> + + * go32-nat.c (go32_create_inferior): Add missing ops parameter. + +2009-03-16 Joel Brobecker <brobecker@adacore.com> + + * darwin-nat.c (darwin_resume): Fix a compiler warning when + building on x86_64-darwin. + +2009-03-16 Tristan Gingold <gingold@adacore.com> + + * configure.tgt: Add handling for x86_64-darwin. + +2009-03-16 Jan Kratochvil <jan.kratochvil@redhat.com> + + * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM. + +2009-03-15 Joel Brobecker <brobecker@adacore.com> + + * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str): + Use the ops parameter to get to the target beneath, rather than + using the current_target global. Using the current_target global + was an unintended accident. + +2009-03-15 Joel Brobecker <brobecker@adacore.com> + + Fix an error happening while loading symbols from a core file + (on AIX). + + * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution + to detect whether we're debugging a core file or not. + +2009-03-15 Joel Brobecker <brobecker@adacore.com> + + Modernize the aix-thread later by getting rid of the base_target + global. This brings back to life the AIX port which was otherwise + crashing all the time. + + * aix-thread.c (base_target): Delete. + (pd_enable): Do not set base_target. + (aix_thread_attach): Use find_target_beneath instead of base_target. + (aix_thread_detach, aix_thread_resume, aix_thread_wait) + (aix_thread_fetch_registers, aix_thread_store_registers), + (aix_thread_xfer_partial, aix_thread_mourn_inferior) + (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise. + (aix_thread_kill): Delete. Does not seem necessary. + (init_aix_thread_ops): Do not set aix_thread_ops.to_kill. + +2009-03-15 Jan Kratochvil <jan.kratochvil@redhat.com> + + * stack.c (return_command <retval_exp>): New variables retval_expr + and old_chain. Inline parse_and_eval to initialize retval_expr. Check + RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type + if RETURN_TYPE is NULL. + +2009-03-14 Pedro Alves <pedro@codesourcery.com> + + * remote.c (PACKET_qAttached): New. + (remote_query_attached): New. + (remote_add_inferior): Add new `attached' argument. Handle it. + (remote_notice_new_inferior, remote_start_remote): Adjust to pass + -1 to remote_add_inferior in new parameter. + (extended_remote_attach_1): Adjust to pass 1 to + remote_add_inferior in the new parameter. + (extended_remote_create_inferior_1): Adjust to pass 0 to + remote_add_inferior in the new parameter. + (_initialize_remote): Add "set/show remote query-attached-packet" + commands. + +2009-03-13 Tom Tromey <tromey@redhat.com> + + * symtab.c (lookup_symbol_in_language): Use a cleanup. + +2009-03-13 Doug Evans <dje@google.com> + + * exceptions.h: Clean up some comments on catch_exceptions usage. + * exceptions.c: Ditto. Plus mark catch_errors as superseded by + catch_exceptions. + +2009-02-17 Joel Brobecker <brobecker@adacore.com> + + The following patch helps getting rid of a warning inside solib-som.c. + + * source.c (source_full_path_of): Constify parameter filename. + * defs.h (source_full_path_of): Update declaration accordingly. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and + BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL. + Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to + promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + * ada-tasks.c (ada_task_is_alive): Move up and make static. + * ada-lang.h (ada_task_is_alive): Remove declaration. + +2009-03-12 Jerome Guitton <guitton@adacore.com> + + * ada-lang.c (ada_delta): Change the type of numerators and + denominators to DOUBLEST, as they may not fit into a long. + (scaling_factor): Ditto. + +2009-03-12 Jerome Guitton <guitton@adacore.com> + + * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged + types, if we are unable to determine the actual symbol type + from its tag, then use the static approximation instead. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + Fix crash printing packed record with packed array. + + * ada-lang.c (ada_modulus_from_name): New function. + (ada_modulus): In the case where the type length is bigger than + the size of the type used to hold the bounds, try determining + the modulus from the type name. + (ada_value_primitive_packed_val): Fix bug in the computation of + ntarg causing an out-of-buffer invalid access. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + Fix segfault when printing short_integer'last. + + * ada-lang.c (ada_find_any_type): Search in the primitive types + if a symbol could not be found. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + * ada-tasks.c (task_states,long_task_states): Add new states + Activating and Acceptor_Delay_Sleep. Update the description + of state Acceptor_Sleep. + +2009-03-12 Jonas Maebe <jonas.maebe@elis.ugent.be> (obvious change) + + Fix a build failure on Darwin following some changes in + the profile of some target_ops methods. + + * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter + where missing. + (darwin_stop_inferior, darwin_detach): Likewise. + +2009-03-12 Vladimir Prus <vladimir@codesourcery.com> + + Include token in ^running notification for CLI commands. + + * mi/mi-main.c (mi_execute_command): Set current_token here. + (mi_cmd_execute): Do not set current_token here. + +2009-03-12 Vladimir Prus <vladimir@codesourcery.com> + + Fix MI timings. + + * mi/mi-main.c (mi_print_timing_maybe): New. + (captured_mi_execute_command): Simplify. Output timings to + CLI commands, too. + (mi_execute_async_cli_command): Do not print timings. + * mi/mi-main.h (mi_print_timing_maybe): Declare. + * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe. + +2009-03-12 Jerome Guitton <guitton@adacore.com> + + * xcoffread.c (process_linenos): Check if the line in the + include table refers to the main source file and, if so, + add them to the main subfile. + +2009-03-12 Joel Brobecker <brobecker@adacore.com> + + Fix a build failure on AIX introduced after a change in the profile + of some of the "methods" in the target_ops structure. + * aix-thread.c: Add missing target_ops parameter throughout. + + Implement Ada task switching on AIX. + * aix-thread.c (aix_thread_get_ada_task_ptid): New function. + (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid. + +2009-03-11 Daniel Jacobowitz <dan@codesourcery.com> + + * breakpoint.c (bpstat_check_breakpoint_conditions): Use + value_mark and value_free_to_mark. + * objfiles.c (free_objfile): Call objfile_free_data before + freeing the BFD. + +2009-03-10 Hui Zhu <teawater@gmail.com> + + * disasm.c (gdb_disassembly): Remove unused argument + "line_num". + * disasm.h (gdb_disassembly): Ditto. + * cli/cli-cmds.c (print_disassembly): Ditto. + * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto. + +2009-03-09 Paul Pluzhnikov <ppluzhnikov@google.com> + + * solib.c (solib_contains_address_p): New function. + (solib_name_from_address): Use it. + * printcmd.c (display_uses_solib_p): Use it. + * solib.h (solib_contains_address_p): Declare it. + +2009-03-09 Jan Kratochvil <jan.kratochvil@redhat.com> + + * varobj.c (free_variable): Call value_free. + +2009-03-09 Jan Kratochvil <jan.kratochvil@redhat.com> + + PR gdb/9873: + * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'. + Move the variable `macinfo_type' out of the loop. Create a new + processing pass before the current one to pre-create `current_file'. + New complaint on misplaced zero/non-zero definitions/includes. + Skip first DW_MACINFO_start_file with `at_commandline' set. + +2008-03-09 Vladimir Prus <vladimir@codesourcery.com> + + * solib.c (reload_shared_libraries): Give + inferior a chance to reset solib breakpoint. + Reinit frame cache. + +2009-03-08 Christopher Faylor <me+cygwin@cgf.cx> + + * windows-nat.c (dr): Redefine to use largest possible integer which + holds a pointer. + (cygwin_set_dr): Avoid coercion. + +2009-03-08 Oswald Buddenhagen <oswald.buddenhagen@trolltech.de> + + * windows-nat.c (windows_create_inferior): Implement --tty handling on + non-cygwin. + +2009-03-06 Paul Pluzhnikov <ppluzhnikov@google.com> + + Rename solib_address to solib_name_from_address. + * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs) + (disable_breakpoints_in_unloaded_shlib): Update. + * printcmd.c (display_uses_solib_p): Likewise. + * stack.c (print_frame): Likewise. + * solib.c: Rename. + * solib.h: Rename. + +2009-03-05 Paul Pluzhnikov <ppluzhnikov@google.com> + + * printcmd.c (do_one_display): Reparse exp_string. + (display_uses_solib_p): New function. + (clear_dangling_display_expressions): New function. + (_initialize_printcmd): Add observer. + * solib.c (no_shared_libraries): Swap order of calls to + clear_solib and objfile_purge_solibs. + +2009-03-05 Joel Brobecker <brobecker@adacore.com> + + Implement the target-specific part of Ada tasking support + on Tru64. + + * dec-thread.c (dec_thread_get_ada_task_ptid): New function. + (init_dec_thread_ops): Set the to_get_ada_task_ptid method. + +2009-03-05 Joel Brobecker <brobecker@adacore.com> + + Get rid of the global "base_target" and use "find_target_beneath" + to find the underlying target. + * dec-thread.c (base_target): Delete. + (enable_dec_thread): Remove assignement to base_target. + (dec_thread_detach, dec_thread_wait, dec_thread_wait) + (dec_thread_fetch_registers, dec_thread_store_registers) + (dec_thread_mourn_inferior, dec_thread_pid_to_str): + Update the function profile if necessary. + Use find_target_beneath to call the same method but from + the underlying target, removing the need for "base_target". + + * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets): + Fix a copy/paste error in a few debug traces... + + * solib-osf.c (init_so): Use a simpler method for computing + the size of lm_info structure. This also gets rid of warning + emitted by the compiler. + +2009-03-05 Pedro Alves <pedro@codesourcery.com> + + * breakpoint.c (check_duplicates_for): Skip permanent breakpoints + duplicates of permanent breakpoints. + +2009-03-04 Pedro Alves <pedro@codesourcery.com> + + * inferior.h (notice_new_inferior): Declare. + * infcmd.c (notice_new_inferior): New. + * remote.c (remote_add_inferior, remote_add_thread): New. + (notice_new_inferiors): Rename to... + (remote_notice_new_inferior): ... this. Add RUNNING argument. + Use remote_add_thread instead of add_thread, passing it the + RUNNING argument. Add an inferior with remote_add_inferior. If + we just learned about an inferior, call notice_new_inferior. + (record_currthread): Adjust. + (remote_threads_info): Adjust to use remote_notice_new_inferior. + (remote_start_remote, extended_remote_attach_1): Use + remote_add_inferior. + (process_stop_reply): Adjust. Call remote_notice_new_inferior + after handling expedited registers and watchpoint state. + (extended_remote_create_inferior_1): Use remote_add_inferior. + +2009-03-04 Aleksandar Ristovski <aristovski@qnx.com> + + * infcmd.c (registers_info): Remove register number case. + +2009-03-03 Pedro Alves <pedro@codesourcery.com> + + * top.c (quit_target): Check for target_has_execution before + killing or detaching from inferiors. + +2009-03-02 Joel Brobecker <brobecker@adacore.com> + + Remove some unused routines. + + * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing): + Delete. + * ada-lang.c (ada_task_list_iterator_ftype) + (iterate_over_live_ada_tasks): Delete. + * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks): + Delete. + +2009-03-01 Doug Evans <dje@google.com> + + * symtab.c: Remove trailing whitespace throughout the file. + (expand_line_sal): Fix some typos and whitespace. + + * Makefile.in (clean): rm -f $(DEPDIR)/*. + + * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common. + (init.c): signals/ -> common/. + (signals.o): Update. + * target.h (target_signal_to_string,target_signal_to_string) + (target_signal_from_name,target_signal_to_host_p) + (target_signal_from_host,target_signal_to_host): Move to ... + * common/gdb_signals.h: ... here. New file. + * common/signals.c: Moved here from signals/signals.c. + #include gdb_signals.h, remove #include of target.h in gdb case. + (target_signal_from_command,default_target_signal_to_host) + (default_target_signal_from_host): Move inside #ifndef GDBSERVER. + + Include thread ID in target_wait debugging output. + * infrun.c (print_target_wait_results): New function. + (wait_for_inferior,fetch_inferior_event): Call it. + +2009-02-27 Pedro Alves <pedro@codesourcery.com> + + * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field + with a ptid_t field. + * linux-thread-db.c (thread_get_info_callback): Build the ptid + using the pid stored in proc_handle.ptid. + (thread_from_lwp, thread_db_attach_lwp, enable_thread_event) + (check_for_thread_db, thread_db_detach, check_event) + (thread_db_mourn_inferior, find_new_threads_callback) + (thread_db_find_new_threads_1): Adjust. + * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs) + (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust. + +2009-02-27 Phil Muldoon <pmuldoon@redhat.com> + + * valprint.c (read_string): Rework clean-up logic. Use + free_current_contents to clean-up buffer. + +2009-02-27 Andreas Schwab <schwab@linux-m68k.org> + + * MAINTAINERS: Update e-mail address. + +2009-02-26 Phil Muldoon <pmuldoon@redhat.com> + + * python/python-utils.c (python_string_to_unicode): Always return + a new reference. + (python_string_to_target_string): Decrement transient python + instance. + (python_string_to_host_string): Likewise. + +2007-02-26 Pedro Alves <pedro@codesourcery.com> + + * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to + call to super_fetch_registers. + (mips64_linux_store_registers): Pass `ops' to call to + super_store_registers. + +2009-02-25 Doug Evans <dje@google.com> + + * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint + error message. + + * breakpoint.c (disable_breakpoints_in_shlibs): Delete local + disabled_shlib_breaks, unused. + + * printcmd.c (build_address_symbolic): Fix comment. + +2009-02-25 Hui Zhu <teawater@gmail.com> + + * cli/cli-script.c (define_command): Add _() to query. + * gnu-nat.c (inf_validate_task_sc): Ditto. + * infcmd.c (kill_if_already_running): Ditto. + (jump_command): Ditto. + (attach_command): Ditto. + * inflow.c (kill_command): Ditto. + * infrun.c (handle_command): Ditto. + * maint.c (maintenance_dump_me): Ditto. + * memattr.c (mem_delete_command): Ditto. + * monitor.c (monitor_interrupt_query): Ditto. + * nto-procfs.c (interrupt_query): Ditto. + * printcmd.c (undisplay_command): Ditto. + * remote-mips.c (mips_kill): Ditto. + * remote.c (interrupt_query): Ditto. + * solib-irix.c (irix_open_symbol_file_object): Ditto. + * solib-osf.c (osf_open_symbol_file_object): Ditto. + * solib-pa64.c (pa64_open_symbol_file_object): Ditto. + * solib-som.c (som_open_symbol_file_object): Ditto. + * solib-svr4.c (open_symbol_file_object): Ditto. + * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto. + * target.c (kill_or_be_killed): Ditto. + * tracepoint.c (delete_trace_command): Ditto. + * top.c (quit_confirm): Add _() to s that will be used + in query. + +2009-02-24 Pierre Muller <muller@ics.u-strasbg.fr> + + Fix windows-nat.c compilation failure. + + * windows-nat.c (windows_thread_alive): Fix forward declaration. + (get_windows_debug_event): Add ops parameter to call to windows_resume. + +2009-02-23 Pedro Alves <pedro@codesourcery.com> + + * remote-sim.c (gdbsim_resume): Add target_ops* argument. + +2009-02-23 Jay Krell <jay.krell@cornell.edu> (tiny change) + + * symtab.c (find_line_symtab): Initialize exact to avoid + a compiler warning. + +2009-02-23 Pedro Alves <pedro@codesourcery.com> + + * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass + `ops' to recursive call. + +2009-02-23 Pedro Alves <pedro@codesourcery.com> + + * corelow.c (get_core_registers): Adjust. + (core_file_thread_alive): Rename to... + (core_thread_alive): ... this. + (core_pid_to_str): Try gdbarch_core_pid_to_str first. + (init_core_ops): Adjust. + (coreops_suppress_target): Delete. + (_initialize_corelow): Unconditionally add core_ops. + * procfs.c: Include "inf-child.h". + (procfs_ops): Delete. + (init_procfs_ops): Delete. Reimplement as... + (procfs_target): ... this, inheriting from inf-child. + (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust. + (procfs_prepare_to_store): Delete. + (procfs_store_registers, procfs_resume): Adjust. + (procfs_open): Delete. + (procfs_suppress_run): Delete. + (procfs_can_run): Delete. + (procfs_mourn_inferior): Adjust. + (procfs_init_inferior): Add target_ops parameter. Adjust. + (procfs_create_inferior): Don't pass procfs_init_inferior to + fork_inferior. Instead call it after fork_inferior returns. + (procfs_find_new_threads): Adjust. + (_initialize_procfs): Adjust to use procfs_target instead of + init_procfs_ops. + * sol-thread.c (orig_core_ops, sol_core_ops): Delete. + (lwp_to_thread): Use target_thread_alive. + (sol_thread_open): Delete. + (sol_thread_attach): Delete. + (sol_thread_detach, sol_thread_resume, sol_thread_wait) + (sol_thread_fetch_registers, sol_thread_store_registers): Adjust + to use find_target_beneath. + (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete. + (sol_thread_xfer_partial): Adjust to use find_target_beneath. + (sol_thread_files_info, sol_thread_kill_inferior): Delete. + (check_for_thread_db): New. + (sol_thread_notice_signals, sol_thread_create_inferior): Delete. + (sol_thread_new_objfile): Call check_for_thread_db. + (sol_thread_mourn_inferior): Adjust to use find_target_beneath. + (sol_thread_can_run): Delete. + (sol_thread_alive): Adjust to use find_target_beneath. + (sol_thread_stop): Delete. + (rw_common): Use target_write_memory or target_read_memory. + (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers. + (ps_lsetregs, ps_lsetfpregs): Use target_store_registers. + (solaris_pid_to_str): Remove check for libthread_db initialization + failing. + (sol_find_new_threads): Remove check for libthread_db + initialization failing, or for an invalid inferior_ptid. Adjust + to use find_target_beneath. + (sol_core_open, sol_core_close, sol_core_detach, + sol_core_files_info, sol_find_memory_regions, + sol_make_note_section, ignore): Delete. + (init_sol_thread_ops): Make it a thread_stratum target. Remove + unneeded callback settings. + (init_sol_core_ops): Delete. + (_initialize_sol_thread): No longer call init_sol_core_ops, set + procfs_suppress_run, or hack with core_ops. + + * target.h (struct target_ops): Add a target_ops * parameter to + to_resume, to_fetch_registers, to_store_registers, to_thread_alive + and to_find_new_threads. + (target_fetch_registers, target_store_registers) + (target_thread_alive, target_find_new_threads): Redeclare as + function. + + * target.c (update_current_target): Do not inherit or de_fault + to_resume, to_fetch_registers, to_store_registers, + to_thread_alive, to_find_new_threads. + (target_resume): Adjust. + (target_thread_alive, target_find_new_threads): New. + (debug_to_resume, debug_to_fetch_registers): Delete. + (target_fetch_registers): New. + (debug_to_store_registers): Delete. + (target_store_registers): New. + (debug_to_thread_alive, debug_to_find_new_threads): Delete. + (setup_target_debug): Adjust. + + * gdbcore.h (core_ops): Delete declaration. + + * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c, + inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c, + i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c, + hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c, + nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c, + alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c, + bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c, + hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c, + ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c, + m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c, + mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c, + ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c, + shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c, + vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes. + + * gdbarch.sh (core_pid_to_str): New gdbarch callback. + * gdbarch.h, gdbarch.c: Regenerate. + + * sol2-tdep.c: Include "inferior.h". + (sol2_core_pid_to_str): New. + * sol2-tdep.h (sol2_core_pid_to_str): Declare. + + * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it. + * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it. + * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it. + * i386-sol2-tdep.c (i386_sol2_init_abi): Set it. + +2009-02-22 Doug Evans <dje@google.com> + + * exec.c (exec_file_attach): Fix comment. + +2009-02-22 Pedro Alves <pedro@codesourcery.com> + + Silence a few -Wmissing-prototypes warnings. + + PR build/9877: + * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make + it static. + * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare. + * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static. + * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ... + (_initialize_amd64nbsd_tdep): ... this. + * arm-linux-tdep.c (arm_linux_software_single_step): Make it static. + (_initialize_arm_linux_tdep): Declare. + * armbsd-tdep.c (armbsd_fpreg_offset): Make it static. + * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare. + * armobsd-tdep.c (_initialize_armobsd_tdep): Declare. + * avr-tdep.c (avr_return_value): Make it static. + (avr_frame_unwind_cache): Ditto. + * bsd-uthread.c (bsd_uthread_inferior_created): Ditto. + (bsd_uthread_solib_loaded): Ditto. + (bsd_uthread_solib_unloaded): Ditto. + (bsd_uthread_target): Ditto. + (_initialize_bsd_uthread): Declare. + * cris-tdep.c (crisv32_single_step_through_delay): Make it static. + (cris_frame_unwind_cache): Ditto. + * frv-tdep.c (frv_return_value): Ditto. + * h8300-tdep.c (h8300_use_struct_convention): Ditto. + (h8300h_use_struct_convention): Ditto. + * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend): + Ditto. + * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete + declarations. + * hppabsd-tdep.c: Include hppabsd-tdep.h. + (hppabsd_find_global_pointer): Make it static. + * hppabsd-tdep.h: New. + * hppanbsd-tdep.c: Include hppabsd-tdep.h. + (hppabsd_init_abi): Remove declaration. + (_initialize_hppabsd_tdep): Remove declaration. + (_initialize_hppanbsd_tdep): Declare. + * hppaobsd-tdep.c: Include hppabsd-tdep.h. + (hppabsd_init_abi): Delete declaration. + (hppaobsd_init_abi): Make it static. + * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare. + * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare. + * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare. + * ia64-tdep.c (ia64_register_reggroup_p): Make it static. + * iq2000-tdep.c (_initialize_iq2000_tdep): Declare. + * m32c-tdep.c (m32c_register_reggroup_p): Make it static. + (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto. + (_initialize_m32c_tdep): Declare. + * m32r-rom.c (_initialize_m32r_rom): Declare. + * m32r-tdep.c (m32r_skip_prologue): Make it static. + (m32r_return_value): Ditto. + * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static. + (m68hc11_return_value): Ditto. + * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare. + * m88k-tdep.c (m88k_frame_cache): Make it static. + * mep-tdep.c (mep_gdb_print_insn): Ditto. + (mep_return_value): Ditto. + (_initialize_mep_tdep): Declare. + * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare. + * mips-linux-tdep.c (supply_64bit_reg): Make it static. + (mips_linux_syscall_next_pc): Ditto. + (_initialize_mips_linux_tdep): Declare. + * mips-tdep.c (mips_single_step_through_delay): Make it static. + * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare. + * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare. + * mn10300-tdep.c (_initialize_mn10300_tdep): Declare. + * mt-tdep.c (_initialize_mt_tdep): Declare. + * nbsd-tdep.c: Include nbsd-tdep.h. + * nto-tdep.c (find_load_phdr): Make it static. + (_initialize_nto_tdep): Declare. + * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it + static. + (_initialize_ppc_linux_tdep): Declare. + * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint) + (m32r_insert_watchpoint, m32r_remove_watchpoint) + (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make + static. + * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare. + * rs6000-nat.c: Include xcoffread.h. + (find_toc_address): Don't extern declare get_toc_offset. Adjust + to call xcoff_get_to_offset. + * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup) + (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline) + (rs6000_skip_trampoline_code): Make static. + * s390-tdep.c (s390_regset_from_core_section): Ditto. + * sh-tdep.c (sh_register_reggroup_p): Ditto. + * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto. + (_initialize_shnbsd_tdep): Declare. + * solib-frv.c (displacement_from_map): Make static. + (_initialize_frv_solib): Declare. + * solib-irix.c (fetch_lm_info): Make static. + (_initialize_irix_solib): Declare. + * solib-som.c: Include solib-som.h. + (som_solib_select): Line break. + * sparc-tdep.c (sparc_regset_from_core_section): Make static. + * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ... + (_initialize_sparcnbsd_tdep): ... this. + * spu-tdep.c (spu_software_single_step): Make it static. + (_initialize_spu_tdep): Declare. + * vax-tdep.c (vax_frame_cache): Make it static. + * xcoffread.c: Include xcoffread.h. + (get_toc_offset): Rename to ... + (xcoff_get_toc_offset): ... this. + (_initialize_xcoffread): Declare. + * xcoffread.h: New. + * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare. + * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make + static. + (_initialize_xtensa_tdep): Declare. + +2008-02-21 Pedro Alves <pedro@codesorcery.com> + + Silence a few -Wmissing-prototypes warnings. + + PR build/9877: + * amd64-nat.c: Include "amd64-nat.h". + * fork-child.c (_initialize_fork_child): Ditto. + * gcore.c (_initialize_gcore): Ditto. + * inf-ptrace.c: Include "inf-ptrace.h". + (inf_ptrace_store_registers): Make it static. + * linux-nat.c (linux_nat_terminal_ours): Make it static. + (_initialize_linux_nat): Declare before definition. + * linux-tdep.c: Include "linux-tdep.h". + * linux-thread-db.c (_initialize_thread_db): Declare before + definition. + * proc-service.c (_initialize_proc_service): Ditto. + * remote.c (remote_send_printf): Make it static. + * solib.c: Include "solib.h". + * symfile-mem.c (_initialize_symfile_mem): Declare before + definition. + * ada-lang.c (ada_la_decode, ada_match_name) + (ada_suppress_symbol_printing, ada_is_array_type) + (ada_value_ptr_subscript, ada_array_length) + (ada_to_static_fixed_value): Make them static. + (_initialize_ada_language): Declare before definition. + * ada-tasks.c (ada_get_task_number, ada_get_environment_task) + (ada_task_list_changed, ada_new_objfile_observer): Make them + static. + (_initialize_tasks): Declare before definition. + * addrmap.c (_initialize_addrmap): Declare before definition. + * auxv.c (default_auxv_parse): Make it static. + * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make + them static. + * breakpoint.c (remove_sal): Add line break. + (expand_line_sal_maybe): Make it static. + * cp-name-parser.y: Include "cp-support.h". + * cp-valprint.c (cp_find_class_member): Make it static. + * eval.c (value_f90_subarray): Ditto. + * exceptions.c (print_any_exception): Ditto. + * findcmd.c (_initialize_mem_search): Declare before definition. + * frame.c (frame_observer_target_changed): Make it static. + * gnu-v3-abi.c (gnuv3_find_method_in): Make it static. + * inf-child.c: Include "inf-child.h". + * inferior.h (valid_inferior_id): Rename to ... + (valid_gdb_inferior_id): ... this. + * infrun.c (infrun_thread_stop_requested, siginfo_make_value): + Make them static. + * jv-lang.c (java_language_arch_info): Make it static. + * m2-typeprint.c (m2_get_discrete_bounds): Ditto. + * osdata.c (info_osdata_command): Make it static. + * regcache.c (regcache_observer_target_changed): Make it static. + * reverse.c (_initialize_reverse): Declare before definition. + * stabsread.c (cleanup_undefined_types_noname) + (cleanup_undefined_types_1): Make them static. + * symfile.c (place_section): Make it static. + * symtab.c (find_pc_sect_psymtab_closer): Make it static. + * target-descriptions.c (_initialize_target_descriptions): Declare + before definition. + * target.c (default_get_ada_task_ptid, find_default_can_async_p) + (find_default_is_async_p, find_default_supports_non_stop): Make + them static. + (target_supports_non_stop): Add prototype. + (dummy_pid_to_str): Make it static. + * utils.c (_initialize_utils): Declare before definition. + * ada-exp.y (_initialize_ada_exp): Declare before definition. + * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype. + * target.h (struct target_ops): Add a prototype to the + to_can_execute_reverse callback. + * macroscope.c (_initialize_macroscope): Declare before definition. + * cp-namespace.c (_initialize_cp_namespace): Declare before definition. + * python/python.c (_initialize_python): Declare before definition. + * tui/tui-command.c: Include "tui/tui-command.h". + * tui/tui-data.c (init_content_element, init_win_info): Make them + static. + * tui/tui-disasm.c: Include "tui/tui-disasm.h". + * tui/tui-interp.c (_initialize_tui_interp): Declare before + definition. + * tui/tui-layout.c: Include "tui/tui-layout.h". + (_initialize_tui_layout): Declare before definition. + * tui/tui-regs.c: Include "tui/tui-regs.h". + (tui_display_reg_element_at_line): Make it static. + (_initialize_tui_regs): Declare before definition. + * tui/tui-stack.c (_initialize_tui_stack): Declare before + definition. + * tui/tui-win.c: Include "tui/tui-win.h". + (_initialize_tui_win): Declare before definition. + (tui_sigwinch_handler): Make it static. Wrap in ifdef SIGWINCH. + * tui/tui-win.h (tui_sigwinch_handler): Delete declaration. + (tui_get_cmd_list): Add a prototype. + * tui/tui-windata.c: Include tui-windata.h. + * tui/tui-wingeneral.c (box_win): Make it static. + * cli/cli-logging.c (show_logging_command): Make it static. + (_initialize_cli_logging): Declare before definition. + * mi/mi-common.c (_initialize_gdb_mi_common): Declare before + definition. + +2009-02-20 Pierre Muller <muller@ics.u-strasbg.fr> + + Extend use of i386_use_watchpoints to all i386 native files + using hardware watchpoints. + * go32-nat.c (init_go32_ops): Call i386_use_watchpoints. + * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto. + * windows-nat.c (init_windows_ops): Ditto. + * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR. + * config/i386/nm-cygwin64.h: Ditto. + * config/i386/nm-fbsd.h: Ditto. + * config/i386/nm-go32.h: Ditto. + +2009-02-19 Joel Brobecker <brobecker@adacore.com> + + * ada-typeprint.c (ada_typedef_print): Remove. Unused. + +2009-02-18 Vladimir Prus <vladimir@codesourcery.com> + + * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New. + (mi_interpreter_init): Register the above. + * solib.c (clear_solib): Notify solib unload. + * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not + disable breakpoints on a.out targets. + +2009-02-17 Vladimir Prus <vladimir@codesourcery.com> + + * observer.c (observer_test_first_notification_function) + (observer_test_second_notification_function) + (observer_test_third_notification_function): Adjust prototype. + +2009-02-17 Pedro Alves <pedro@codesourcery.com> + + * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o. + (ALL_TARGET_OBS): Add dicos-tdep.o. + (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c. + * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to + gdb_target_obs. + (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to + gdb_target_obs. + * dicos-tdep.h, dicos-tdep.c: New. + * amd64-dicos-tdep.c: New. + * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or + inferior.h. Include dicos-tdep.h. + (i386_dicos_init_abi): Call dicos_init_abi. + (i386_dicos_bfd_has_symbol_p): Delete. + (i386_dicos_osabi_sniffer): Use dicos_load_module_p. + + * NEWS: Mention x86-64 DICOS target support. + +2009-02-16 Doug Evans <dje@google.com> + + * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes. + All callers updated. + (amd64_get_insn_details): Handle more 3-byte opcode insns. + (amd64_breakpoint_p): Delete. + (amd64_displaced_step_fixup): When fixing up after stepping an int3, + don't back up pc to the start of the int3. + * i386-tdep.c: #include opcode/i386.h. + (i386_skip_prefixes): New function. + (i386_absolute_jmp_p): Constify argument. + (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto. + (i386_breakpoint_p): Delete. + (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes. + When fixing up after stepping an int3, don't back up pc to the start + of the int3. + +2009-02-16 Pedro Alves <pedro@codesourcery.com> + + * corelow.c (core_close): Don't hardcode the core's pid. + (core_open): Find core threads before calling + post_create_inferior. + (add_to_thread_list, get_core_register_section): Take into account + systems where the regset section names encode the pid of the + inferior. + + * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting. + * gdbarch.h, gdbarch.c: Regenerate. + + * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it. + * i386-sol2-tdep.c (i386_sol2_init_abi): Set it. + * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it. + * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it. + +2009-02-14 Vladimir Prus <vladimir@codesourcery.com> + + Include frame information for *stopped due to CLI commands. + + * ada-tasks.c (ada_normal_stop_observer): Adjust prototype. + * infcmd.c (finish_command_continuation): Pass '1' for + 'print_frame' parameter to the observer. + * infrun.c (normal_stop): Don't print mi-specific information + here. Pass 'stop_print_frame' to the 'print_frame' parameter + of the observer. + * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype. + If we need to print frame, and current uiout is not the MI one, + print frame again. + +2009-02-13 Pierre Muller <muller@ics.u-strasbg.fr> + + * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro. + Replace BSZ macro uses by XTENSA_ISA_BSZ macro. + +2009-02-12 Jan Kratochvil <jan.kratochvil@redhat.com> + + PR fortran/9806 + * dwarf2read.c (process_die <DW_TAG_module>, read_module) + (scan_partial_symbols <DW_TAG_module>, add_partial_module): New. + +2009-02-11 Pierre Muller <muller@ics.u-strasbg.fr> + + * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR + for DW_ATE_signed_char and DW_ATE_unsigned_char + for pascal language. + +2009-02-11 Jim Meyering <meyering@redhat.com> + Jan Kratochvil <jan.kratochvil@redhat.com> + + Avoid NULL dereference. + * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun). + New variable func_type. + +2009-02-11 Pedro Alves <pedro@codesourcery.com> + + * gdbarch.c: Regenerate. + +2009-02-10 Pierre Muller <muller@ics.u-strasbg.fr> + + * p-lang.c (is_pascal_string_type): Fix comment. + Determine exact size of char elements for GPC + strings. + (pascal_printstr): Handle char width of 2 or 4. + * p-valprint.c (pascal_val_print): Handle char + of width 2 or 4. + +2009-02-07 Daniel Jacobowitz <dan@codesourcery.com> + + * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc + inside the loop. Only call addrmap_set_empty if the compilation unit + had DW_AT_high_pc and DW_AT_low_pc. Update call to + scan_partial_symbols. + (scan_partial_symbols): Take NEED_PC argument and pass it along with + LOWPC and HIGHPC. + (add_partial_namespace): Take NEED_PC argument and pass it through. + (add_partial_subprogram): Take NEED_PC argument. Update the addrmap + if necessary. + +2009-02-07 Pedro Alves <pedro@codesourcery.com> + + * NEWS: Mention inspecting extra signal information, $_siginfo, + and the qXfer:siginfo:read and qXfer:siginfo:write packets. + +2009-02-07 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO + isn't defined. + +2009-02-06 Pedro Alves <pedro@codesourcery.com> + + * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t) + (compat_timer_t, compat_clock_t, struct compat_timeval) + (compat_sigval_t, compat_siginfo_t): New types. + (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun) + (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr) + (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines. + (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo) + (amd64_linux_siginfo_fixup): New. + * linux-nat.c (linux_nat_siginfo_fixup): New. + (siginfo_fixup): New. + (linux_xfer_siginfo): Use siginfo_fixup to convert between the + siginfo layout expected by ptrace and the siginfo layout of the + inferior. + (linux_nat_set_siginfo_fixup): New. + * linux-nat.h (linux_nat_set_siginfo_fixup): Declare. + +2009-02-06 Pedro Alves <pedro@codesourcery.com> + + * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO. + * infrun.c (siginfo_value_read, siginfo_value_write): New. + (siginfo_value_funcs): New. + (siginfo_make_value): New. + (_initialize_infrun): Create the $_siginfo convenience variable. + * gdbtypes.h (append_composite_type_field_aligned): Declare. + * gdbtypes.c (append_composite_type_field): Rename to... + (append_composite_type_field_aligned): ... this. Add ALIGNMENT + argument. Handle it. + (append_composite_type_field): Rewrite on top of + append_composite_type_field_aligned. + * value.h (internalvar_make_value): New typedef. + (struct internalvar) <make_value>: New field. + (create_internalvar_type_lazy): Declare. + * value.c (create_internalvar): Clear make_value. + (create_internalvar_type_lazy): New. + (value_of_internalvar): If make_value is set use it. + (preserve_values): Skip internal variables that don't have a + value. + * gdbarch.sh (get_siginfo_type): New. + * gdbarch.h, gdbarch.c: Regenerate. + + * linux-tdep.h, linux-tdep.c: New. + * amd64-linux-tdep.c: Include "linux-tdep.h". + (amd64_linux_init_abi): Register linux_get_siginfo_type and + linux_get_siginfo_mapper. + * i386-linux-tdep.c: Include "linux-tdep.h". + (i386_linux_init_abi): Register linux_get_siginfo_type and + linux_get_siginfo_mapper. + * arm-linux-tdep.c: Include "linux-tdep.h". + (i386_linux_init_abi): Register linux_get_siginfo_type and + linux_get_siginfo_mapper. + + * linux-nat.c (linux_xfer_siginfo): New. + (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO. + * remote.c (PACKET_qXfer_siginfo_read) + (PACKET_qXfer_siginfo_write): New. + (feature remote_protocol_features): Add "qXfer:siginfo:read" and + "qXfer:siginfo:write" features. + (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO. + (_initialize_remote): Add "set/show remote read-siginfo-object" + and "set/show remote write-siginfo-object" commands. + + * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o. + (HFILES_NO_SRCDIR): Add linux-tdep.h. + (ALLDEPFILES): Add linux-tdep.c. + + * configure.tgt (arm*-*-linux* | arm*-*-uclinux*) + (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to + gdb_target_obs. + +2009-02-06 Jim Blandy <jimb@codesourcery.com> + Daniel Jacobowitz <dan@codesourcery.com> + Vladimir Prus <vladimir@codesourcery.com> + Pedro Alves <pedro@codesourcery.com> + + * defs.h (enum lval_type): New value: lval_computed. + * value.h (struct lval_funcs): New type. + (allocate_computed_value, value_computed_funcs) + (value_computed_closure): New declarations. + * value.c (struct value): Add a structure to the location union + for computed lvalues, containing 'funcs' and 'closure' members. + (allocate_computed_value, value_computed_funcs) + (value_computed_closure): New functions. + (value_free): For computed lvalues, call the closure's + 'free_closure' function before freeing the value itself. + (value_copy): If we're copying an lval_computed value, call the + closure's 'copy_closure' function. + (set_value_component_location): If the original value is a + computed lvalue, then call the closure's 'copy_closure' function. + (value_of_internalvar): If an internal variable's value is a + computed lvalue, make retrieving its value produce an equivalent + computed lvalue. + * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling + their read function. + (value_assign): Assign to computed lvalues by calling their write + function. + +2009-02-06 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (linux_nat_wait): Adjust. + (linux_nat_pid_to_str): Adjust. Remove call to thread_db_init. + * linux-nat.h (thread_db_init): Delete declaration. + * linux-thread-db.c (target_beneath): Delete. + (thread_db_init): Delete. + (thread_db_detach): Use find_target_beneath. + (thread_db_wait): Adjust interface. Use find_target_beneath. + (thread_db_mourn_inferior): Use find_target_beneath. + (thread_db_can_async_p, thread_db_is_async_p, thread_db_async) + (thread_db_async_mask): Delete. + (thread_db_pid_to_str): Adjust interface. Use + find_target_beneath. + (thread_db_get_thread_local_address): Adjust interface. Use + find_target_beneath. + (init_thread_db_ops): Delete references to delete functions. + * target.c (update_current_target): Don't inherit or default + to_wait. Don't inherit to_pid_to_str and + to_get_thread_local_address. + (target_translate_tls_address): Look for a pushed target that + implements to_get_thread_local_address, and use it instead of + checking for target_get_thread_local_address_p. + (target_wait, target_pid_to_str): Reimplement as functions. + (dummy_pid_to_str): New. + (init_dummy_target): Register it. + (debug_to_wait): Delete. + * target.h (struct target_ops): Make to_wait, to_pid_to_str and + to_get_thread_local_address accept a pointer to struct target_ops. + (target_wait): Delete macro, and declare as function. + (target_pid_to_str): Likewise. + (target_get_thread_local_address) + (target_get_thread_local_address_p): Delete. + (noprocess): Add NORETURN and ATTR_NORETURN tags. + * inf-ptrace.c (inf_ptrace_wait): Adjust. + (inf_ptrace_pid_to_str): New. + (inf_ptrace_target): Use inf_ptrace_pid_to_str. + * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust. + * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust. + * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str): + Adjust. + * corelow.c (core_pid_to_str): Adjust. + * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust. + * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust. + * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust. + * go32-nat.c (go32_wait, go32_pid_to_str): Adjust. + * hpux-thread.c (hpux_thread_wait): Adjust. + * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust. + * monitor.c (monitor_wait, monitor_pid_to_str): Adjust. + * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust. + * procfs.c (procfs_pid_to_str): Adjust. + * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust. + * remote-mips.c (mips_wait): Adjust. + * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust. + * remote.c (remote_wait, remote_pid_to_str) + (remote_get_thread_local_address): Adjust. + * rs6000-nat.c (rs6000_wait): Adjust. + * sol-thread.c (procfs_pid_to_str): Adjust declaration. + (sol_thread_wait, solaris_pid_to_str): Adjust. + * spu-linux-nat.c (spu_child_wait): Adjust. + * windows-nat.c (windows_wait, windows_pid_to_str): Adjust. + +2009-02-06 Tom Tromey <tromey@redhat.com> + + * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o. + (SUBDIR_PYTHON_SRCS): Add python-cmd.c. + (python-cmd.o): New target. + * cli/cli-decode.c (set_cmd_completer): Add self parameter to + completer prototype. + (add_cmd): Initialize destroyer member of cmd_list_element. Use + make_symbol_completion_list_fn as completer. + (delete_cmd): Call destroyer if one is set. + * cli/cli-decode.h (cmd_list_element): Add cmd parameter to + completer member. Add destroyer member. + (set_cmd_completer): Add self parameter to + completer prototype. + * command.h (set_cmd_completer): Add cmd parameter to + completer prototype. + * completer.c (noop_completer, filename_completer, + location_completer, expression_completer, command_completer): Adapt + to new completer prototype. + (complete_line_internal): Pass new parameter to completer function. + * completer.h (noop_completer, filename_completer, + location_completer, expression_completer, command_completer): Adapt + prototypes to new completer prototype. + * interps.c (interpreter_completer): Adapt to new completer + prototype. + * python/python-cmd.c: New file. + * python/python-internal.h (gdbpy_initialize_commands): Add + prototype. + (gdbpy_doc_cst): Add forward declaration. + * python/python.c (gdbpy_doc_cst): Declare. + (_initialize_python): Call gdbpy_initialize_commands. Initialize + gdbpy_doc_cst. + * symtab.c (make_symbol_completion_list_fn): New function. + * symtab.h (make_symbol_completion_list_fn): Add prototype. + +2009-02-06 Pedro Alves <pedro@codesourcery.com> + + * target.c (target_get_osdata): Check for equal or higher than + process_stratum, not dummy_stratum. + +2009-02-06 Pedro Alves <pedro@codesourcery.com> + + * remote.c (extended_remote_can_run): Delete. + (init_remote_ops): Don't register it. + * target.c (target_get_osdata): Don't check for target_can_run. + Instead any target that has already been pushed, otherwise + fallback to the default run target. + +2009-02-06 Pedro Alves <pedro@codesourcery.com> + + * target.c (target_create_inferior, target_detach) + (target_mourn_inferior, target_attach, target_close): Do target + debug output. + (debug_to_attach, debug_to_detach, debug_to_create_inferior) + (debug_to_mourn_inferior, debug_to_close): Delete. + (setup_target_debug): Adjust. + +2009-02-05 Pedro Alves <pedro@codesourcery.com> + + * target.h (target_stopped_data_address_p): Delete declaration, + and don't define as macro. + * target.c (target_stopped_data_address_p): Delete. + +2009-02-05 Thiago Jung Bauermann <bauerman@br.ibm.com> + Tom Tromey <tromey@redhat.com> + + * python/python-utils.c (target_string_to_unicode): New function. + * python/python-internal.h (target_string_to_unicode): New prototype. + * python/python-value.c (valpy_string): New function. + (value_object_methods): Add `string' entry. + +2009-02-05 Pedro Alves <pedro@codesourcery.com> + + * target.h (target_tid_to_str): Delete. + * thread.c (print_thread_info, thread_apply_all_command) + (thread_apply_command, thread_command, do_captured_thread_select): + Use target_pid_to_str instead of target_tid_to_str. + * linux-fork.c (delete_fork_command): Likewise. + +2009-02-05 Pedro Alves <pedro@codesourcery.com> + + * frame.c (has_stack_frames): Make public. + (get_prev_frame): Don't allow a NULL this_frame anymore. + * frame.h (has_stack_frames): Declare. + * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL + to get_prev_frame, instead start at get_current_frame. + (varobj_create): Check has_stack_frames before getting any frame; + eliminate one usage of deprecated_safe_get_selected_frame. + +2009-02-05 Tom Tromey <tromey@redhat.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + + * python/python.c (GdbMethods): Move to bottom of file. + (get_parameter, execute_gdb_command, gdbpy_write, + gdbpy_flush): Remove forward declarations. + (eval_python_from_control_command): Fix error checking of function + PyRun_SimpleString. Fix error string. + (python_command): Likewise. + (execute_gdb_command): Added from_tty argument. + +2009-02-05 Thiago Jung Bauermann <bauerman@br.ibm.com> + + * language.h (language_dfn): Add la_get_string member. + (LA_GET_STRING): New macro. + (default_get_string): New prototype. + * language.c (default_get_string): New function. + (unknown_language_defn, auto_language_defn, local_language_defn): Use + default_get_string for la_get_string. + * c-lang.c (c_get_string): New function. + (c_language_defn, cplus_language_defn, asm_language_defn): Use + c_get_string for la_get_string. + (minimal_language_defn): Likewise + * ada-lang.c (ada_language_defn): Likewise. + * f-lang.c (f_language_defn): Use default_get_string for + la_get_string. + * jv-lang.c (java_language_defn): Likewise. + * m2-lang.c (m2_language_defn): Likewise. + * objc-lang.c (objc_language_defn): Likewise. + * p-lang.c (p_language_defn): Likewise. + * scm-lang.c (scm_language_defn): Likewise. + * typeprint.c (type_to_string): New function. + * value.h (type_to_string): New prototype. + * valprint.c (val_print_string): Factor out code for reading string + from the inferior into its own function. Put 2 spaces after period + in comments. + (read_string): New function. + * valprint.h (read_string): New prototype. + +2009-01-07 Pierre Muller <muller@ics.u-strasbg.fr> + Tom Tromey <tromey@redhat.com> + + PR breakpoints/8079: + * breakpoint.c (print_one_breakpoint): Use exp_string field + to display expression of watchpoints. + (mention): Likewise. + (watch_command_1): Remove trailing whitespace from expression. + * printcmd.c (struct display) <exp_string>: New field. + (display_command): Set exp_string. + (free_display): Free exp_string. + (clear_displays): Use free_display. + (do_one_display): Print exp_string. + (display_info): Likewise. + +2009-02-04 Tom Tromey <tromey@redhat.com> + Thiago Jung Bauermann <bauerman@br.ibm.com> + Phil Muldoon <pmuldoon@redhat.com> + + * python/python-internal.h (gdbpy_get_value_from_history): Rename + prototype to gdbpy_history. + (gdbpy_is_string): Declare. + (python_string_to_host_string): Declare. + * python/python-utils.c (gdbpy_is_string): New function. + (unicode_to_encoded_string): New function. + (unicode_to_target_string): Use it. + (python_string_to_host_string): New function. + * python/python-value.c (valpy_address): New function. + (convert_value_from_python): Use gdbpy_is_string. Change to throw + Python exception instead of a GDB exception on error. Properly check + Python booleans. + (valpy_getitem): Convert field name to host string. Handle array + accesses. Adapt to new behaviour of convert_value_from_python. + (valpy_new): Adapt to new behaviour of convert_value_from_python. + (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND, + VALPY_BITXOR, VALPY_BITOR>: New constants. + (valpy_binop): Update. Adapt to new behaviour of + convert_value_from_python. + (valpy_invert): New function. + (valpy_lsh): Likewise. + (valpy_rsh): Likewise. + (valpy_and): Likewise. + (valpy_or): Likewise. + (valpy_xor): Likewise. + (valpy_richcompare): Call convert_value_from_python instead of doing + conversions itself. + (is_intlike, valpy_int, valpy_long, valpy_float): New functions. + (gdbpy_get_value_from_history): Rename + function to gdbpy_history. + (gdbpy_initialize_values): Don't set tp_new. + (value_object_type): Add valpy_new. + (value_object_methods): Add `address' entry. + (value_object_as_number): Update for new methods. + * python/python.c (GdbMethods): Rename entry from + `get_value_from_history' to `history'. + +2009-02-04 Jerome Guitton <guitton@adacore.com> + + * ada-lang.c (ada_template_to_fixed_record_type_1): Check size + of type to guard against a crash. + +2009-02-04 Jerome Guitton <guitton@adacore.com> + + * value.c (value_from_contents_and_address): Always return + a lval_memory value, even if address is null. + +2009-02-04 Tristan Gingold <gingold@adacore.com> + + * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function. + (amd64_darwin_sigcontext_addr): Ditto. + (darwin_dwarf_signal_frame_p): Ditto. + (i386_darwin_init_abi): Handle signal frames, use the const for + sc_num_regs. + (x86_darwin_init_abi_64): Ditto. + +2009-02-04 Tristan Gingold <gingold@adacore.com> + + * i386-tdep.c (i386_sigtramp_p): Make it public. + * i386-tdep.h (i386_sigtramp_p): Declare. + +2009-02-04 Tristan Gingold <gingold@adacore.com> + + * machoread.c (macho_symfile_read): Read minsymtab also from + shared libraries. + (macho_symfile_read): Try to read dwarf2 frame info from main + object file, but not from OSO files. + (macho_symfile_offsets): Update section names for latest BFD + changes. + * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops. + (x86_darwin_init_abi_64): Ditto. + * solib-darwin.c: New file. + * solib-darwin.h: New file. + * configure.tgt: Add solib.o solib-darwin.o for Darwin. + +2009-02-04 Tristan Gingold <gingold@adacore.com> + + * solist.h (struct target_so_ops): Comment fallback behavior for + operation same. + +2009-02-03 Tom Tromey <tromey@redhat.com> + + * completer.c (add_struct_fields): Check type_name against NULL + before use. + +2009-02-03 Joel Brobecker <brobecker@adacore.com> + + * MAINTAINERS: Update Elena's email address. + +2009-02-02 Joel Brobecker <brobecker@adacore.com> + + * breakpoint (update_watchpoint): Minor comment adjustment. + +2009-02-02 Tom Tromey <tromey@redhat.com> + + PR gdb/9594: + * completer.c (count_struct_fields): Count method names. + (add_struct_fields): Add matching method names. + +2009-02-02 Doug Evans <dje@google.com> + + * configure.ac (gdbkt): Check both no_tcl/no_tk first, before + doing any further tcl/tk configury. Don't configure gdbtk if + tcl or tk check fails. + * aclocal.m4: Regenerate. + * configure: Regenerate. + +2009-02-02 Tom Tromey <tromey@redhat.com> + + PR exp/9059: + * valops.c (find_overload_match): Follow typedefs before taking + address of object argument. + +2009-02-01 Doug Evans <dje@google.com> + + * target.h (target_waitstatus_to_string): Declare. + * target.c (target_waitstatus_to_string): New function. Copied from + debug_to_wait. Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY, + TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE, + TARGET_WAITKIND_NO_HISTORY. + (debug_to_wait): Call it. + * infrun.c (wait_for_inferior): If debug_infrun, print result of + target_wait. + (fetch_inferior_event): Ditto. + +2009-01-30 Tom Tromey <tromey@redhat.com> + + * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h. + +2009-01-30 Vladimir Prus <vladimir@codesourcery.com> + + PR 8145. + * thread.c (do_captured_list_thread_ids): Report the current + thread id. + +2009-01-30 Vladimir Prus <vladimir@codesourcery.com> + + * breakpoint.c (create_breakpoint, create_breakpoints) + (break_command_really, set_breakpoint): New parameter enabled. + (create_breakpoint, break_command_really): Make breakpoint + disabled if so requested. + * breakpoint.h (set_breakpoint): New parameter enabled. + * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option. + +2009-01-28 Doug Evans <dje@google.com> + + * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare. + (amd64_displaced_step_fixup): Declare. + * amd64-tdep.c: #include opcode/i386.h, dis-asm.h. + (amd64_arch_regmap): Move out of amd64_analyze_stack_align + and make static global. + (amd64_arch_regmap_len): New static global. + (amd64_arch_reg_to_regnum): New function. + (struct amd64_insn): New struct. + (struct displaced_step_closure): New struct. + (onebyte_has_modrm,twobyte_has_modrm): New static globals. + (rex_prefix_p,skip_prefixes) + (amd64_insn_length_fprintf,amd64_insn_length_init_dis) + (amd64_insn_length,amd64_get_unused_input_int_reg) + (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy) + (amd64_displaced_step_copy_insn) + (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p) + (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p) + (amd64_displaced_step_fixup): New functions. + * amd64-linux-tdep.c: #include arch-utils.h. + (amd64_linux_init_abi): Install displaced stepping support. + +2009-01-28 Daniel Jacobowitz <dan@codesourcery.com> + Jerome Guitton <guitton@adacore.com> + + * configure, config.in: Regenerated. + * configure.ac: Add --with-system-gdbinit. + * main.c (get_init_files): New. + (captured_main): Use get_init_files. Load system gdbinit before + $HOME/.gdbinit. + (print_gdb_help): Print location of init files. + +2009-01-28 Pedro Alves <pedro@codesourcery.com> + + * corefile.c (generic_search): Delete disabled code. + * gdbcore.h (generic_search): Delete declaration. + +2009-01-26 Pedro Alves <pedro@codesourcery.com> + + * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the + parent to the child. + * inf-ttrace.c (inf_ttrace_follow_fork): Likewise. + * inf-ptrace.c (inf_ptrace_follow_fork): Likewise. Use + remove_breakpoints to remove breakpoints from the parent. + +2009-01-26 Pedro Alves <pedro@codesourcery.com> + + PR backtrace/9458, PR backtrace/8864: + * frame.c (create_new_frame): Update the frame's cached PC before + finding its unwinder. Use frame_id_build to build the new frame's + id. + * stack.c (parse_frame_specification_1): Correct setting ``addrs'' + array values from the ``args'' array values. + +2009-01-26 Pedro Alves <pedro@codesourcery.com> + + * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type) + (create_array_type, create_set_type, init_flags_type) + (copy_type_recursive): Replace pairs of calls to XALLOC and memset + with a call to XZALLOC or XCALLOC, and pairs of calls to + obstack_alloc and memset with a call to OBSTACK_ZALLOC. + +2009-01-26 Pedro Alves <pedro@codesourcery.com> + + Add "maint set|show internal-error|internal-warning quit|corefile + ask|yes|no" commands. + + PR gdb/7580: + * utils.c (internal_problem_ask, internal_problem_yes) + (internal_problem_no, internal_problem_modes): New. + (struct internal_problem): Remove FIXME. Make should_quit and + should_dump_core types to char *. + (internal_vproblem, internal_error_problem) + (internal_warning_problem): Adjust. + (set_internal_problem_cmd, show_internal_problem_cmd): New dummy + functions. + (add_internal_problem_command): New. + (_initialize_utils): New. + +2009-01-25 Pedro Alves <pedro@codesourcery.com> + + * infcmd.c (program_info): Use paddress instead of casting stop_pc + to unsigned long. + +2009-01-24 Pedro Alves <pedro@codesourcery.com> + + * infrun.c (normal_stop): Don't call + deprecated_update_frame_pc_hack. + * frame.c (deprecated_update_frame_pc_hack) + (deprecated_update_frame_base_hack): Delete, and ... + (create_new_frame): ... inline here. + * frame.h (deprecated_update_frame_pc_hack) + (deprecated_update_frame_base_hack): Delete declarations. + +2009-01-23 Pedro Alves <pedro@codesourcery.com> + + * cli/cli-decode.c (add_setshow_zuinteger_cmd): New. + * cli/cli-setshow.c (do_setshow_command): Handle it. + * command.h (enum var_types): Add var_zuinteger. + (add_setshow_zuinteger_cmd): Declare. + + * valprint.c (_initialize_valprint): Change the set input-radix + and set output-radix commands to zuinteger type. + +2009-01-23 Pedro Alves <pedro@codesourcery.com> + + PR gdb/9664: + * infrun.c (normal_stop): Tag threads as stopped, and run the + hook-stop before printing the stack frame. + +2009-01-22 Pedro Alves <pedro@codesourcery.com> + + PR c++/9631: + * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on + vbasetype. + +2009-01-20 Kazu Hirata <kazu@codesourcery.com> + + * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to + unsigned long. + +2009-01-20 Daniel Jacobowitz <dan@codesourcery.com> + + PR gdb/9346 + * infcmd.c (signal_command): Do not specify a resume PC. + +2009-01-19 Doug Evans <dje@google.com> + + * dummy-frame.c (dummy_frame): Replace regcache member with + caller_state. + (dummy_frame_push): Replace caller_regcache arg with caller_state. + All callers updated. + (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns. + (dummy_frame_pop): Rewrite. Verify requested frame is in the + dummy frame stack. Restore program state. + (cleanup_dummy_frames): Rewrite. + (dummy_frame_sniffer): Update. Make static. + * dummy-frame.h (regcache,frame_info): Delete forward decls. + (inferior_thread_state): New forward decl. + (dummy_frame_push): Update prototype. + * frame.c (frame_pop): dummy_frame_pop now does all the work for + DUMMY_FRAMEs. + * infcall.c (breakpoint_auto_delete_contents): Delete. + (get_function_name,run_inferior_call): New fns. + (call_function_by_hand): Simplify by moving some code to + get_function_name, run_inferior_call. Inferior function call wrapped + in TRY_CATCH so there's less need for cleanups and all exits from + proceed are handled similarily. Detect program exit. + Detect program stopping in a different thread. + Make error messages more consistent. + * inferior.h (inferior_thread_state): Declare (opaque type). + (save_inferior_thread_state,restore_inferior_thread_state, + make_cleanup_restore_inferior_thread_state, + discard_inferior_thread_state, get_inferior_thread_state_regcache): + Declare. + (save_inferior_status): Update prototype. + * infrun.c: (normal_stop): When stopped for the completion of an + inferior function call, verify the expected stack frame kind. + (inferior_thread_state): New struct. + (save_inferior_thread_state,restore_inferior_thread_state, + do_restore_inferior_thread_state_cleanup, + make_cleanup_restore_inferior_thread_state, + discard_inferior_thread_state, + get_inferior_thread_state_regcache): New functions. + (inferior_status): Move stop_signal, stop_pc, registers to + inferior_thread_state. Remove restore_stack_info. + (save_inferior_status): Remove arg restore_stack_info. + All callers updated. Remove saving of state now saved by + save_inferior_thread_state. + (restore_inferior_status): Remove restoration of state now done by + restore_inferior_thread_state. + (discard_inferior_status): Remove freeing of registers, now done by + discard_inferior_thread_state. + +2009-01-18 Pedro Alves <pedro@codesourcery.com> + + * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line + at a time, times NUM_TO_SCROLL. + * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to + fetch the selected frame if there is no stack. + +2009-01-18 Pedro Alves <pedro@codesourcery.com> + + PR gdb/9747: + * gdbthread.h (finish_thread_state, finish_thread_state_cleanup): + Declare. + * thread.c (finish_thread_state, finish_thread_state_cleanup): New. + * infrun.c (wait_for_inferior, fetch_inferior_event): If an error + is thrown while handling an event, finish the thread state. + (normal_stop): Use finish_thread_state cleanup. + * infcmd.c (run_command_1): If an error is thrown while starting + the inferior, finish the thread state. + +2009-01-18 Pedro Alves <pedro@codesourcery.com> + + * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout, + skip breakpoints without a location (pending breakpoints). + +2009-01-18 Pedro Alves <pedro@codesourcery.com> + + PR build/9186: + * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'. + +2009-01-18 Nick Roberts <nickrob@snap.net.nz> + + * thread.c (thread_command): Move call to annotate_thread_changed + to... + (do_captured_thread_select): ... here, to avoid printing an + annotation if the thread change generates an exception. + +2009-01-16 Joel Brobecker <brobecker@adacore.com> + + * NEWS: Document x86_64/MinGW as a new native configuration. + +2009-01-16 Joel Brobecker <brobecker@adacore.com> + + * NEWS: Move the documentation of "info os processes" to + the appropriate section (documenting the new commands). + +2009-01-15 Doug Evans <dje@google.com> + + * target.h (target_signal_to_string): Make return type const char *. + (target_signal_to_name): Ditto. + (target_signal_from_name): Make arg const char *. + * infrun.c (sig_print_info): Update. + * signals/signals.c (signals): Make array and struct members const. + (target_signal_to_string): Make return type const char *. + (target_signal_to_name): Ditto. + (target_signal_from_name): Make arg const char *. + +2009-01-15 Ulrich Weigand <uweigand@de.ibm.com> + Tristan Gingold <gingold@adacore.com> + + * solist.h (struct target_so_ops): New member bfd_open. + (solib_find): Add prototype. + (solib_bfd_fopen): Add prototype. + * solib.c (solib_find, solib_bfd_fopen): New functions, extracted + from solib_bfd_open. + (solib_bfd_open): Use ops->bfd_open override if present. Call + solib_find and solib_bfd_open otherwise. + + * objfiles.h (OBJF_KEEPBFD): New define. + * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD + objfile flag is set. + * solib.c (symbol_add_stub): Do not allocate second BFD for + shared library; use OBJF_KEEPBFD flag on solib objfile. + +2009-01-15 Ulrich Weigand <uweigand@de.ibm.com> + + * frame.c (get_frame_arch): Abort if called with NULL this_frame. + +2009-01-15 Ulrich Weigand <uweigand@de.ibm.com> + + * value.h (address_of_variable): Add prototype. + (locate_var_value): Remove prototype. + + * findvar.c (read_var_value): Do not attempt to default frame + to selected frame. + (locate_var_value): Remove function. + * valops.c (value_of_variable): Retrieve selected frame for + symbols that require a frame when called with NULL block. + * valops.c (address_of_variable): New function. + + * eval.c (evaluate_subexp_for_address): Call address_of_variable + instead of calling locate_var_value. + (evaluate_subexp_with_coercion): Likewise. + +2009-01-14 Daniel Jacobowitz <dan@codesourcery.com> + + * NEWS: Document "define" for prefixed commands. + * cli/cli-cmds.c (show_user): Update calls to show_user_1. Call + show_user_1 for prefix commands. + * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined". + * cli/cli-script.c (validate_comname): Rewrite to handle prefix + commands. Return the containing command list. + (define_command, document_command): Update to handle prefix commands. + (show_user_1): Add prefix and name arguments. Handle prefix + commands. + * cli/cli-script.h (show_user_1): Update prototype. + +2009-01-14 Kai Tietz <kai.tietz@onevision.com> + + * ser-mingw.c (console_select_thread): Add return to make + compiler happy. + (pipe_select_thread): Likewise. + (file_select_thread): Likewise. + +2009-01-14 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from + previous change. + +2009-01-14 Pedro Alves <pedro@codesourcery.com> + + * remote.c (extended_remote_mourn_1): Invalidate our notion of + current general thread. + +2009-01-14 Pedro Alves <pedro@codesourcery.com> + + * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups + without a live selected thread. + +2009-01-14 Joel Brobecker <brobecker@adacore.com> + + Update the copyright notice of some of the files I missed + in the previous copyright update. + +2009-01-14 Joel Brobecker <brobecker@adacore.com> + + * windows-nat.c (handle_unload_dll): Use %p to print the DLL + base address instead of casting it to DWORD. + +2009-01-13 Ulrich Weigand <uweigand@de.ibm.com> + + * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch + for NULL frame pointers. + +2009-01-13 Mark Kettenis <kettenis@gnu.org> + + * utils.c (host_address_to_string): Reimplement in a way that + avoids the cast of the address to long. + +2009-01-13 Joel Brobecker <brobecker@adacore.com> + + * mdebugread.c (parse_symbol): Save the symbol private data + using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE. + (psymtab_to_symtab_1): Likewise. + (parse_procedure): Declare variable "e" only in the scope + where it is used. Extract the symbol private data using + SYMBOL_VALUE_BYTES. + +2009-01-13 Jim Blandy <jimb@codesourcery.com> + + Abstract out common code for copying value locations. + + * value.h (set_value_component_location): New declaration. + * value.c (set_value_component_location): New function. + (value_primitive_field): Use it. + * valarith.c (value_subscript, value_subscripted_rvalue): Same. + * valops.c (search_struct_field, value_slice): Same. + * ada-lang.c (coerce_unspec_val_to_type) + (ada_value_primitive_packed_val): Same. + +2009-01-13 Joel Brobecker <brobecker@adacore.com> + + * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey. + +2009-01-12 Christopher Faylor <me+cygwin@cgf.cx> + + * amd64-windows-nat.c Rename gdb-specific win32_* to windows_* + throughout. + * i386-cygwin-tdep.c: Ditto. + * i386-windows-nat.c: Ditto. + * windows-nat.h: Ditto. + * windows-tdep.c: Ditto. + * windows-tdep.h: Ditto. + * windows-nat.c: Ditto. + (cygwin_load_start): Redefine as CORE_ADDR. + (cygwin_load_end): Ditto. + (windows_make_so): Coerce result of address arithmetic to uintptr_t + before coercing to CORE_ADDR to avoid a compiler warning. + (handle_exception): Define addr as CORE_ADDR and coerce + ExceptionAddress to uintptr_t before assigining to avoid a compiler + warning. + * config/djgpp/fnchange.lst: Add mappings for recently renamed windows + files. + +2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com> + + Fix linking with --enable-targets=all: + * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o. + (HFILES_NO_SRCDIR): Add windows-tdep.h. + (ALLDEPFILES): Add windows-tdep.c. + +2009-01-11 Chris Faylor <me.gdb@cgf.cx> + + * win32-nat.h: Delete. + * windows-nat.h: Rename from win32-nat.h. + * win32-nat.c: Delete. + * windows-nat.c: Rename from win32-nat.c. + * win32-termcap.c: Delete. + * windows-termcap.c: Rename from win32-termcap.c. + * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h. + * configure.ac: Handle rename from win32-termcap.c -> + windows-termcap.c. + * configure: Regenerate. + * gdb_curses.h: Change comment to reflect rename from win32-termcap.c + -> windows-termcap.c. + * i386-cygwin-tdep.c: Handle rename from win32-tdep.h -> + windows-tdep.h. + * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h. + * windows-nat.c: Ditto. Also reflect rename from from win32-tdep.h -> + windows-tdep.h. + (win32_make_so): Handle cygwin compiler warning due to change of + load_addr from DWORD to LPVOID. + (handle_load_dll): Use %p in format string to properly print address + and avoid a compiler warning. + (DEBUG_EXCEPTION_SIMPLE): Ditto. + (handle_exception): Ditto. + * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h. + * config/i386/cygwin.mh: Handle rename from win32-nat.o -> + windows-nat.o. + * config/i386/mingw.mh: Ditto. + * config/i386/mingw64.mh: Ditto. + +2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com> + + * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable + arrayprint_recurse_level to a parameter. Update all the callers. New + comment at autovariables. + +2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com> + + * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU + coding style. + +2009-01-11 Joel Brobecker <brobecker@adacore.com> + + * target.c (target_xfer_partial): Use host_address_to_string to + print the address of readbuf and writebuf. Cast the address of + elements inside the myaddr buffer into intptr_t. + (deprecated_debug_xfer_memory): Use paddress to print memaddr. + Cast the address of elements inside the myaddr buffer into + intptr_t. + +2009-01-11 Joel Brobecker <brobecker@adacore.com> + + * amd64-windows-nat.c, amd64-windows-tdep.c: New files. + * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files. + * configure.host, configure.tgt: Add handling for x86_64/windows. + * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c + and amd64-windows-tdep.c. + +2009-01-11 Joel Brobecker <brobecker@adacore.com> + + * win32-tdep.h, win32-tdep.c: New files. + * i386-cygwin-tdep.h: Delete. + * i386-cygwin-tdep.c: Include win32-tdep.h instead of + i386-cygwin-tdep.h. + (win32_xfer_shared_library): Delete. Moved to win32-tdep.c. + * win32-nat.c: Likewise. + * configure.tgt: Add win32-tdep.o to the list of target object + files for i386-cygwin and i386-mingw targets. + +2009-01-11 Joel Brobecker <brobecker@adacore.com> + + * win32-nat.h: New file. + * win32-nat.c (mappings): Initialize to NULL. + (win32_set_context_register_offsets): New function. + * i386-windows-nat.c: New file. + (mappings): Moved here from win32-nat.c. + (_initialize_i386_windows_nat): New function. + * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o. + * config/i386/cygwin.mh (NATDEPFILES): Likewise. + +2009-01-09 Andreas Schwab <schwab@suse.de> + + * Makefile.in (init.c): Set LANG/LC_ALL to C, not c. + +2009-01-09 Daniel Jacobowitz <dan@codesourcery.com> + + * gdbtypes.c (append_composite_type_field): Correct the location of + appended fields. + +2009-01-09 Pedro Alves <pedro@codesourcery.com> + + * defs.h (deprecated_error_hook): Delete declaration. + * interps.c (clear_interpreter_hooks): Adjust. + * remote-sim.c (gdb_os_error): Don't try to call + deprecated_error_hook. No need to call exit anymore. + * top.c (deprecated_error_hook): Delete. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * arch-utils.c (gdbarch_update_p): Use host_address_to_string + to print the address of the gdbarch pointer. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * gdbarch.sh: Fix all the compilation errors on amd64-windows + due to casting a pointer to a long when printing a function + address. Instead, use host_address_to_string to convert our + address to a string. + * gdbarch.c: Regenerate. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * event-top.c (async_disconnect, async_stop_sig): use "raise" + instead of "kill" to raise a signal. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * win32-nat.c (get_module_name): Change the type of parameter + "base_address" to LPVOID. Remove unnecessary cast. + (struct lm_info): Change type of load_addr to LPVOID. + (win32_make_so): Change the type of parameter "load_addr" + to LPVOID. Remove some unnecessary casts. + (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID. + (win32_xfer_shared_libraries): Add missing cast. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * win32-nat.c (has_detach_ability, set_process_privilege): + Cast the result of GetProcAddress to (void *) to avoid + a compilation warning. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not + already defined. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * win32-nat.c (get_image_name, win32_xfer_memory): Fix type + definition of local variable "done". + (info_w32_command, handle_exception): Remove unnecessary cast. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames + DebugSetProcessKillOnExit. Update all uses in this file. + (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop. + Update all uses in this file. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * win32-nat.c (do_initial_win32_stuff): Add new ops parameter, + and use it when pushing the target. + (win32_attach, win32_create_inferior): Update call to + do_initial_win32_stuff. + (win32_detach, win32_mourn_inferior): Use our ops parameter + instead of the global win32_ops to unpush the target. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * ser-mingw.c (ser_windows_open): Use proper type when casting + in call to _open_osfhandle. + +2009-01-09 Kai Tietz <kai.tietz@onevision.com> + + * coff-pe-read.c (read_pe_exported_syms): Fix typo. + +2009-01-09 Joel Brobecker <brobecker@adacore.com> + + * CONTRIBUTE: Minor reformatting. + +2009-01-08 Kai Tietz <kai.tietz@onevision.com> + + * MAINTAINERS: Add myself to Write After Approval. + * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+ + export directory. + +2009-01-08 Nathan Froyd <froydnj@codesourcery.com> + + * remote-sim.c (gdb_os_error): Mark as a noreturn function. + Call exit to make it obvious to GCC. + +2009-01-08 Tom Tromey <tromey@redhat.com> + + PR breakpoints/9350: + * varobj.c (varobj_invalidate): Unconditionally free + all_rootvarobj. + * symfile.c (syms_from_objfile): Free local_addr when returning + normally. + * exec.c (exec_file_attach): Do cleanups before returning. + (exec_file_command): Likewise. + * corefile.c (reopen_exec_file): Do cleanups before returning. + * breakpoint.c (insert_breakpoint_locations): Do cleanups before + returning. + (do_vec_free): New function. + (update_global_location_list): Make a cleanup for old_locations. + Do cleanups before returning. Remove unused variable 'e'. + (find_condition_and_thread): Free result of parsing the + expression. + (print_it_typical): Do cleanups before returning. + (breakpoint_re_set_one): Always free sals.sals. + +2009-01-08 Joel Brobecker <brobecker@adacore.com> + Emi Suzuki <emi-suzuki@tjsys.co.jp> + + * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for + watchpoints. + +2009-01-07 Doug Evans <dje@google.com> + + * top.c (gdb_prompt_string): Delete, unused. + +2009-01-07 Pedro Alves <pedro@codesourcery.com> + + Delete ONE_PROCESS_WRITETEXT leftovers. + + * breakpoint.c (insert_bp_location): Delete process_warning + argument. Adjust. + (insert_breakpoint_locations): Adjust. + (reattach_breakpoints): Adjust. + * infrun.c (normal_stop): Drop "It might be running in another + process" notice. + +2009-01-07 Stan Shebs <stan@codesourcery.com> + + * config/pa/linux.mh (XDEPFILES): Remove. + +2009-01-07 Doug Evans <dje@google.com> + + * cli/cli-cmds.c (set_debug): Fix cut-n-paste error. + +2009-01-07 Jan Kratochvil <jan.kratochvil@redhat.com> + + * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output + spacing, a regression from 2008-04-22. + +2009-01-07 Joel Brobecker <brobecker@adacore.com> + + * utils.c (gdb_print_host_address): Adjust implementation to + reuse host_address_to_string. Move comment explaining the conversion + from host address to string from here... + (host_address_to_string): ... to there. + +2009-01-07 Emi Suzuki <emi-suzuki@tjsys.co.jp> + + * MAINTAINERS: Add myself for write after approval privileges. + +2009-01-06 Tom Tromey <tromey@redhat.com> + + * value.c (set_internalvar): Use value_free, not xfree. + +2009-01-06 Jim Blandy <jimb@red-bean.com> + + Check return values of functions declared with warn_unused_result + attribute in GLIBC 2.8. + * cli/cli-cmds.c (pwd_command): Check return value from getcwd. + * inflow.c (check_syscall): New function. + (new_tty): Use check_syscall to check return values from open and dup. + * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets. + * main.c (captured_main): Call cwd after setting up gdb_stderr; + check for errors from getcwd. + * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd. + * ui-file.c (stdio_file_write): Ignore return value from fwrite. + (stdio_file_fputs): Same. + * utils.c (internal_vproblem): abort if last-ditch error message + write fails. + + * top.c (gdb_init): Don't set the current directory here; that's + already been done in captured_main. + +2009-01-06 Sandra Loosemore <sandra@codesourcery.com> + + * ser-tcp.c: Adjust includes. + (tcp_set_cmdlist, tcp_show_cmdlist): Declare. + (tcp_auto_retry, tcp_retry_limit): Declare. + (TIMEOUT): Remove, in favor of tcp_retry_limit. + (POLL_INTERVAL): Increase to 5, in favor of backoff logic. + (wait_for_connect): New function. + (net_open): Use it. Add auto-retry logic. + (set_tcp_cmd, show_tcp_cmd): New functions. + (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry" + and "set/show tcp connect-timeout" commands. + * NEWS: Document new commands. + +2009-01-05 Tom Tromey <tromey@redhat.com> + + * python/python-internal.h (Py_ssize_t): Define as int. + +2009-01-05 Jim Blandy <jimb@red-bean.com> + + * MAINTAINERS: Fix my e-mail address as steering committee member. + +2009-01-03 Joel Brobecker <brobecker@adacore.com> + + Updated copyright notices for most files. + +2009-01-03 Joel Brobecker <brobecker@adacore.com> + + * top.c (print_gdb_version): Update copyright year. + +2009-01-03 Joel Brobecker <brobecker@adacore.com> + + * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008. + +2009-01-01 Pedro Alves <pedro@codesourcery.com> + + PR breakpoints/9681: + * exceptions.h (enum errors): New error type, MEMORY_ERROR. + * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR. + * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but + retrow all other exceptions. + +For older changes see ChangeLog-2008. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +coding: utf-8 +End: |