Commit Graph

24660 Commits

Author SHA1 Message Date
Ulrich Weigand 22601c155d * 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 12:20:18 +00:00
Ulrich Weigand e3506a9f27 * 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 12:18:46 +00:00
Ulrich Weigand d5c831bd76 * 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 12:16:56 +00:00
Ulrich Weigand 5d3729b5d1 ChangeLog:
* 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.

testsuite/ChangeLog:

	* gdb.base/default.exp: Update test case for "x" changes.
2009-07-02 12:14:01 +00:00
Ulrich Weigand 78267919d6 * 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 12:11:19 +00:00
Ulrich Weigand 0daa2b63cc * 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-02 12:09:27 +00:00
gdbadmin 16fb2c8c42 *** empty log message *** 2009-07-02 00:00:33 +00:00
Doug Evans d70e31dd87 * NEWS: Mention biarch amd64-linux gdbserver and hardware watchpoint
support for i386-linux, amd64-linux, and i386-win32 builds of
	gdbserver.
2009-07-01 16:19:14 +00:00
Tristan Gingold af589bd0cd 2009-07-01 Tristan Gingold <gingold@adacore.com>
* gdb.base/bigcore.exp: Make darwin untested.
2009-07-01 10:17:06 +00:00
gdbadmin 1a2d0533e1 *** empty log message *** 2009-07-01 00:00:03 +00:00
Nick Roberts ae0a7e74bf (HFILES_NO_SRCDIR): Remove entries for deleted files. 2009-06-30 22:36:27 +00:00
Nick Roberts b565e7574b *** empty log message *** 2009-06-30 22:36:02 +00:00
Nick Roberts 7371bfdc1a *** empty log message *** 2009-06-30 22:34:18 +00:00
Jan Kratochvil 40974f9158 gdb/testsuite/
* gdb.base/completion.exp (directory completion): Create the directory.
	New variables uniquedir, escapeduniquedir, uniquesu, uniquesub,
	escapeuniquesub.
	(directory completion 2): Expect now ${escapeuniquesub}.
	(Glob remaining of directory test): Remove one excessive newline.
	Expect the real output.
2009-06-30 21:33:20 +00:00
Doug Evans e6f9de8791 Add h/w watchpoint support to x86-linux, win32-i386.
* Makefile.in (SFILES): Add i386-low.c
	(i386_low_h): Define.
	(i386-low.o): Add dependencies.
	(linux-x86-low.o): Add i386-low.h dependency.
	(win32-i386-low.o): Ditto.
	* i386-low.c: New file.
	* i386-low.h: New file.
	* configure.srv (i[34567]86-*-cygwin*): Add i386-low.o to srv_tgtobj.
	(i[34567]86-*-linux*, i[34567]86-*-mingw*, x86_64-*-linux*): Ditto.
	* linux-low.c (linux_add_process): Initialize arch_private.
	(linux_remove_process): Free arch_private.
	(add_lwp): Initialize arch_private.
	(delete_lwp): Free arch_private.
	(linux_resume_one_lwp): Call the_low_target.prepare_to_resume if
	provided.
	* linux-low.h (process_info_private): New member arch_private.
	(lwp_info): New member arch_private.
	(linux_target_ops): New members new_process, new_thread,
	prepare_to_resume.
	(ptid_of): New macro.
	* linux-x86-low.c: Include stddef.h, i386-low.h.
	(arch_process_info): New struct.
	(arch_lwp_info): New struct.
	(x86_linux_dr_get, x86_linux_dr_set): New functions.
	(i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
	(i386_dr_low_get_status): New function.
	(x86_insert_point, x86_remove_point): New functions.
	(x86_stopped_by_watchpoint): New function.
	(x86_stopped_data_address): New function.
	(x86_linux_new_process, x86_linux_new_thread): New functions.
	(x86_linux_prepare_to_resume): New function.
	(the_low_target): Add entries for insert_point, remove_point,
	stopped_by_watchpoint, stopped_data_address, new_process, new_thread,
	prepare_to_resume.
	* server.c (debug_hw_points): New global.
	(monitor_show_help): Document set debug-hw-points.
	(handle_query): Process "set debug-hw-points".
	* server.h (debug_hw_points): Declare.
	(paddress): Declare.
	* utils.c (NUMCELLS, CELLSIZE): New macros.
	(get_sell, xsnprintf, paddress): New functions.
	* win32-arm-low.c (the_low_target): Add entries for insert_point,
	remove_point, stopped_by_watchpoint, stopped_data_address.
	* win32-i386-low.c: Include i386-low.h.
	(debug_reg_state): Replaces dr.
	(i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
	(i386_dr_low_get_status): New function.
	(i386_insert_point, i386_remove_point): New functions.
	(i386_stopped_by_watchpoint): New function.
	(i386_stopped_data_address): New function.
	(i386_initial_stuff): Update.
	(get_thread_context,set_thread_context,i386_thread_added): Update.
	(the_low_target): Add entries for insert_point,
	remove_point, stopped_by_watchpoint, stopped_data_address.
	* win32-low.c (win32_insert_watchpoint): New function.
	(win32_remove_watchpoint): New function.
	(win32_stopped_by_watchpoint): New function.
	(win32_stopped_data_address): New function.
	(win32_target_ops): Add entries for insert_watchpoint,
	remove_watchpoint, stopped_by_watchpoint, stopped_data_address.
	* win32-low.h (win32_target_ops): New members insert_point,
	remove_point, stopped_by_watchpoint, stopped_data_address.
2009-06-30 21:31:32 +00:00
Jan Kratochvil 59dd3af6a2 gdb/
* Makefile.in (TARGET_FLAGS_TO_PASS): Include also FORCE_PARALLEL.
	(check//%): Construct FORCE_PARALLEL for the sub-make.  Extend the
	comment for it.

gdb/testsuite/
	Fix `make check//%' target after `make check' has been ran.
	* Makefile.in (TEST_TARGETS): Remove the %/.dir dependency.  Add
	a mkdir call.
	(check-gdb.base%): Remove the gdb.base%/.dir dependency.
	(%/.dir): Remove.
2009-06-30 21:23:38 +00:00
Jan Kratochvil f4e164aac4 gdb/testsuite/
* lib/mi-support.exp (mi_check_thread_states): Permit any output before
	the expected result record.
2009-06-30 20:23:05 +00:00
Jan Kratochvil 69af212282 gdb/testsuite/
Remove racy FAILs relying just on the timeouts.
	* gdb.base/setshow.exp (set annotate 2, show annotate (2))
	(annotation_level 2): Remove racy FAILs.
2009-06-30 18:28:12 +00:00
Doug Evans aa5ca48fad Add h/w watchpoint support to x86-linux, win32-i386.
* Makefile.in (SFILES): Add i386-low.c
	(i386_low_h): Define.
	(i386-low.o): Add dependencies.
	(linux-x86-low.o): Add i386-low.h dependency.
	(win32-i386-low.o): Ditto.
	* i386-low.c: New file.
	* i386-low.h: New file.
	* configure.srv (i[34567]86-*-cygwin*): Add i386-low.o to srv_tgtobj.
	(i[34567]86-*-linux*, i[34567]86-*-mingw*, x86_64-*-linux*): Ditto.
	* linux-low.c (linux_add_process): Initialize arch_private.
	(linux_remove_process): Free arch_private.
	(add_lwp): Initialize arch_private.
	(delete_lwp): Free arch_private.
	(linux_resume_one_lwp): Call the_low_target.prepare_to_resume if
	provided.
	* linux-low.h (process_info_private): New member arch_private.
	(lwp_info): New member arch_private.
	(linux_target_ops): New members new_process, new_thread,
	prepare_to_resume.
	(ptid_of): New macro.
	* linux-x86-low.c: Include stddef.h, i386-low.h.
	(arch_process_info): New struct.
	(arch_lwp_info): New struct.
	(x86_linux_dr_get, x86_linux_dr_set): New functions.
	(i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
	(i386_dr_low_get_status): New function.
	(x86_insert_point, x86_remove_point): New functions.
	(x86_stopped_by_watchpoint): New function.
	(x86_stopped_data_address): New function.
	(x86_linux_new_process, x86_linux_new_thread): New functions.
	(x86_linux_prepare_to_resume): New function.
	(the_low_target): Add entries for insert_point, remove_point,
	stopped_by_watchpoint, stopped_data_address, new_process, new_thread,
	prepare_to_resume.
	* server.c (debug_hw_points): New global.
	(monitor_show_help): Document set debug-hw-points.
	(handle_query): Process "set debug-hw-points".
	* server.h (debug_hw_points): Declare.
	(paddress): Declare.
	* utils.c (NUMCELLS, CELLSIZE): New macros.
	(get_sell, xsnprintf, paddress): New functions.
	* win32-arm-low.c (the_low_target): Add entries for insert_point,
	remove_point, stopped_by_watchpoint, stopped_data_address.
	* win32-i386-low.c: Include i386-low.h.
	(debug_reg_state): Replaces dr.
	(i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
	(i386_dr_low_get_status): New function.
	(i386_insert_point, i386_remove_point): New functions.
	(i386_stopped_by_watchpoint): New function.
	(i386_stopped_data_address): New function.
	(i386_initial_stuff): Update.
	(get_thread_context,set_thread_context,i386_thread_added): Update.
	(the_low_target): Add entries for insert_point,
	remove_point, stopped_by_watchpoint, stopped_data_address.
	* win32-low.c (win32_insert_watchpoint): New function.
	(win32_remove_watchpoint): New function.
	(win32_stopped_by_watchpoint): New function.
	(win32_stopped_data_address): New function.
	(win32_target_ops): Add entries for insert_watchpoint,
	remove_watchpoint, stopped_by_watchpoint, stopped_data_address.
	* win32-low.h (win32_target_ops): New members insert_point,
	remove_point, stopped_by_watchpoint, stopped_data_address.
2009-06-30 16:35:25 +00:00
Paul Pluzhnikov 2fd481e1ea ChangeLog:
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.

testsuite/ChangeLog:

2009-06-30  Paul Pluzhnikov  <ppluzhnikov@google.com>

	gdb/10275
	* gdb.dwarf2/dw2-restore.{S,exp}: New test.
2009-06-30 16:22:59 +00:00
Daniel Jacobowitz c38f313db7 * dwarf2read.c (inherit_abstract_dies): Work around GCC PR 40573.
testsuite/
	* gdb.opt/inline-locals.exp: Remove XFAIL with duplicated arg1.
2009-06-30 15:50:27 +00:00
Vladimir Prus 8b777f02e1 * 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 09:37:24 +00:00
Vladimir Prus 1a4300e94d * varobj.c (varobj_get_type): Use type_to_string. 2009-06-30 09:24:47 +00:00
gdbadmin b6225317cc *** empty log message *** 2009-06-30 00:00:03 +00:00
Jan Kratochvil 00c7eacff4 gdb/testsuite/
* gdb.threads/current-lwp-dead.exp, gdb.threads/current-lwp-dead.c: New.
2009-06-29 18:53:55 +00:00
Pedro Alves 173853dc66 * infrun.c (handle_inferior_event): Context switch to the new
thread when resuming for a new_thread_event.
2009-06-29 18:27:23 +00:00
Ulrich Weigand 4a399546aa * 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 17:33:32 +00:00
Ulrich Weigand 30b155416b * 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 17:31:24 +00:00
Ulrich Weigand 7c964f079e * 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 17:30:12 +00:00
Ulrich Weigand 1ce677a4a1 * 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 17:28:59 +00:00
Ulrich Weigand dd19d49e4b * ada-lang.c (ada_index_type): Update comment. 2009-06-29 17:26:29 +00:00
Ulrich Weigand 1eea4ebd85 * 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 17:22:10 +00:00
Pedro Alves 578933abf5 * dbxread.c (read_dbx_symtab): Clear has_line_numbers when ending
a psymtab.
2009-06-29 16:48:15 +00:00
Tom Tromey 6bc80edc98 gdb
* README: Mention parallel check.
gdb/testsuite
	* dg-extract-results.sh: New file.
	* Makefile.in (FORCE_PARALLEL): New variable.
	(CHECK_TARGET): New conditional variable.
	(check): Use CHECK_TARGET.
	(DO_RUNTEST): New variable.
	(check-single): New target.
	(TEST_DIRS): New variable.
	(TEST_TARGETS): Likewise.
	(check-parallel): New target.
	(check-gdb.%): New pattern.
	(BASE1_FILES): New variable.
	(BASE2_FILES): Likewise.
	(check-gdb.base%): New pattern.
	(%/.dir): New pattern.
	* configure: Rebuild.
	* aclocal.m4 (AM_CONDITIONAL): New defun.
	* configure.ac: Check whether user is using GNU make.
	(GMAKE): New conditional.
2009-06-29 16:41:45 +00:00
Sami Wagiaalla 794684b64f 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  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdb.cp/namespace-nested-import.cc: New test.
	* gdb.cp/namespace-nested-import.exp: New test.
2009-06-29 15:18:07 +00:00
Ulrich Weigand 2497b49845 * 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 13:24:41 +00:00
Ulrich Weigand 0c8b41f1c6 * 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 13:19:19 +00:00
Ulrich Weigand 46bf50512c * 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 13:18:37 +00:00
Ulrich Weigand b08f1e8d6d * darwin-nat-info.c (darwin_debug_regions_recurse): Use
target_gdbarch instead of current_gdbarch.
2009-06-29 13:11:37 +00:00
Ulrich Weigand 6d10c194d7 * 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-29 13:10:39 +00:00
gdbadmin 5399f65c28 *** empty log message *** 2009-06-29 00:00:03 +00:00
Paul Pluzhnikov 9901a55bcf ChangeLog:
2009-06-28  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* mi/mi-cmds.c (mi_cmds): Remove unimplemented entries.

doc/ChangeLog:
2009-06-28  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.texinfo (GDB/MI Program Context): @ignore unimplemented
	MI commands.
	(GDB/MI Symbol Query): Likewise.
	(GDB/MI File Commands): Likewise.
	(GDB/MI File Transfer Commands): Likewise.
	(GDB/MI Target Manipulation): Likewise.
	(GDB/MI Miscellaneous Commands): Likewise.
2009-06-28 18:53:12 +00:00
Daniel Jacobowitz edb3359dff gdb/
* 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.

	gdb/doc/
	* gdb.texinfo (Debugging Optimized Code): New chapter.
	(Compiling for Debugging): Reference it.  Move some
	text to the new section.

	gdb/testsuite/
	* gdb.base/break.exp: Add an XFAIL for gcc/36748.
	* gdb.cp/annota2.exp: Accept frames-invalid in more places.
	* gdb.opt/Makefile.in (EXECUTABLES): Update.
	* gdb.opt/clobbered-registers-O2.exp: Update to GPL v3.
	* gdb.opt/inline-bt.c, gdb.opt/inline-bt.exp,
	gdb.opt/inline-cmds.c, gdb.opt/inline-cmds.exp,
	gdb.opt/inline-locals.c, gdb.opt/inline-locals.exp,
	gdb.opt/inline-markers.c: New files.
	* lib/gdb.exp (skip_inline_frame_tests): New function.
	(skip_inline_var_tests): New function.
2009-06-28 00:20:24 +00:00
Daniel Jacobowitz c7ce8faacb * 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-28 00:05:14 +00:00
gdbadmin cd953ae9d0 *** empty log message *** 2009-06-28 00:00:33 +00:00
Andreas Schwab cf657a0c94 * gdb.cp/exception.exp: Don't require $hex before inner frame in
backtrace.
2009-06-27 21:36:49 +00:00
Michael Snyder 28d41a992f 2009-06-27 Michael Snyder <msnyder@vmware.com>
* gdb.reverse: New directory.
	* gdb.reverse/break-reverse.c: New test.
	* gdb.reverse/break-reverse.exp: New test.
	* gdb.reverse/consecutive-reverse.c: New test.
	* gdb.reverse/consecutive-reverse.exp: New test.
	* gdb.reverse/finish-reverse.c: New test.
	* gdb.reverse/finish-reverse.exp: New test.
	* gdb.reverse/machinestate.c: New test.
	* gdb.reverse/ms1.c: New test.
	* gdb.reverse/machinestate.exp: New test.
	* gdb.reverse/Makefile.in: New file.
	* gdb.reverse/shr2.c: New test.
	* gdb.reverse/solib-reverse.c: New test.
	* gdb.reverse/solib-reverse.exp: New test.
	* gdb.reverse/step-reverse.c: New test.
	* gdb.reverse/step-reverse.exp: New test.
	* gdb.reverse/until-reverse.c: New test.
	* gdb.reverse/ur1.c: New test.
	* gdb.reverse/until-reverse.exp: New test.
	* gdb.reverse/watch-reverse.c: New test.
	* gdb.reverse/watch-reverse.exp: New test.
	* configure.ac (AC_OUTPUT): Add gdb.reverse/Makefile.
	* configure: Regenerate.
2009-06-27 18:49:20 +00:00
Michael Snyder 388a856237 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-27 18:34:58 +00:00
gdbadmin e34ba805ab *** empty log message *** 2009-06-27 00:00:03 +00:00
Doug Evans fe3c8b0d4d * gdb.base/psymtab.exp: Turn off pending breakpoints. 2009-06-26 16:08:20 +00:00