X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2FChangeLog;h=f29c3fc1ad5e9905c60eb26deab662e191905dc5;hb=30b155416bc2f21436603dcbf37d3dd0400813c6;hp=95d41e5b47a84c04bb17d3d234b919b2595fd790;hpb=4e608b4f2ee7213a9b161ff91b9a8a852dac3486;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 95d41e5b47..f29c3fc1ad 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,314 @@ +2009-06-29 Ulrich Weigand + + * 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 + + * 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 + + * 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 + + * ada-lang.c (ada_index_type): Update comment. + +2009-06-29 Ulrich Weigand + + * 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 + + * dbxread.c (read_dbx_symtab): Clear has_line_numbers when ending + a psymtab. + +2009-06-29 Tom Tromey + + * README: Mention parallel check. + +2009-06-29 Sami Wagiaalla + + * 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 + + * 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 + + * 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 + + * 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 + + * darwin-nat-info.c (darwin_debug_regions_recurse): Use + target_gdbarch instead of current_gdbarch. + +2009-06-29 Ulrich Weigand + + * 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 + + * mi/mi-cmds.c (mi_cmds): Remove unimplemented entries. + +2009-06-27 Daniel Jacobowitz + Jan Kratochvil + + * 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 + + * 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 + + * infrun.c (handle_inferior_event): Improve handling of + reverse-stepping into and over shared library functions. + +2009-06-25 Karen Osmond + + * 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 + + * MAINTAINERS (Write After Approval): Add self. + 2009-06-23 Ulrich Weigand * valops.c (value_one): Reimplement broken decimal-float case. @@ -51,26 +362,26 @@ 2009-06-23 Sami Wagiaalla - * 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. + * 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 @@ -201,6 +512,11 @@ * c-lang.c (classify_type): Iterate over typedefs. * c-valprint.c (textual_element_type): Iterate over typedefs. +2009-06-22 Tristan Gingold + + * darwin-nat.c (darwin_xfer_partial): Use host_address_to_string + instead of "%p". + 2009-06-22 Jan Kratochvil PR gdb/9988: