+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