* disasm.h (gdb_disassembly): Add GDBARCH parameter.
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 77777d369520dc7704e1c4b1a79428ce62fa9bda..709fc16a745bf25e7bc455b00aff199a3f1ec728 100644 (file)
+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/9930:
+       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/9930:
+       PR cli/9903:
        * cli/cli-decode.c (apropos_cmd): Fix avoidance of double
        printing.
 
This page took 0.0975 seconds and 4 git commands to generate.