Commit graph

24987 commits

Author SHA1 Message Date
Doug Evans
51939b3dd6 * dcache.c (dcache_print_line, dcache_info): Use paddress to print addresses. 2009-08-20 23:30:15 +00:00
Doug Evans
25f122dc09 Replace dcache with splay tree.
Remove partially implemented writeback support.
	* dcache.c: Include splay-tree.h.
	(LINE_SIZE_POWER): Change from 5 to 6.
	(DCACHE_SIZE): Change from 64 to 4096.
	(ENTRY_INVALID, ENTRY_VALID, ENTRY_DIRTY): Delete.
	(state_chars): Delete.
	(struct dcache_block): Clean up; remove state and anydirty fields.
	(struct dcache_struct): Redefine as a splay tree and linked list.
	(last_cache): Make static.
	(dcache_invalidate, dcache_hit): Rewrite for new cache structure.
	(dcache_read_line, dcache_alloc): Rewrite for new cache structure.
	(dcache_write_line): Delete.
	(dcache_writeback): Delete.
	(dcache_peek_byte): Clean up; remove "invalid" state check.
	(dcache_poke_byte): Rewrite for new cache structure; clarify comment.
	(dcache_splay_tree_compare): New function.
	(dcache_init, dcache_free): Rewrite for new cache structure.
	(dcache_xfer_memory): Rewrite for new write-through cache structure.
	(dcache_print_line): New function.
	(dcache_info): Rewrite for new cache structure.
	(_initialize_dcache): Update "info dcache" help text.
	* dcache.h (dcache_xfer_memory): Update declaration.
	* target.c (memory_xfer_partial): Update calls to dcache_xfer_memory.
2009-08-20 22:30:12 +00:00
Doug Evans
4efc650796 Add interface for JIT code generation.
* NEWS: Announce JIT interface.
	* Makefile.in (SFILES): Add jit.c.
	(HFILES_NO_SRCDIR): Add jit.h.
	(COMMON_OBS): Add jit.o.
	* jit.c: New file.
	* jit.h: New file.
	* breakpoint.h (enum bptype): Add bp_jit_event to enum.
	* breakpoint.c:
	(update_breakpoints_after_exec): Delete jit breakpoints after exec.
	(bpstat_what): Update event table for bp_jit_event.
	(print_it_typical): Added case for bp_jit_event.
	(print_one_breakpoint_location): Added case for bp_jit_event.
	(allocate_bp_location): Added case for bp_jit_event.
	(mention): Added case for bp_jit_event.
	(delete_command): Added case for bp_jit_event.
	(breakpoint_re_set_one): Added case for bp_jit_event.
	(breakpoint_re_set): Added call to jit_inferior_created_hook.
	(create_jit_event_breakpoint): New.
	* infrun.c (handle_inferior_event): Add handler for jit event.
	(follow_exec): Add call to jit_inferior_created_hook.
	* doc/gdb.texinfo: Add chapter on JIT interface.
2009-08-20 18:02:48 +00:00
gdbadmin
a94fb4c3ae *** empty log message *** 2009-08-20 00:00:03 +00:00
Ulrich Weigand
cab0c772ae ChangeLog:
* value.c (enum internalvar_kind): Replace INTERNALVAR_SCALAR by
	INTERNALVAR_INTEGER and INTERNALVAR_POINTER.
	(union internalvar_data): Replace "scalar" member by "integer"
	and "pointer".
	(value_of_internalvar): Handle INTERNALVAR_INTEGER and
	INTERNALVAR_POINTER instead of INTERNALVAR_SCALAR.
	(get_internalvar_integer): Likewise.
	(set_internalvar): Likewise.
	(set_internalvar_integer): Likewise.
	(preserve_one_internalvar): Likewise.
	(value_from_pointer): Handle typedef'd pointer types.

testsuite/ChangeLog:

2009-08-19  Doug Evans  <dje@google.com>

	* gdb.base/gdbvars.c: New file.
	* gdb.base/gdbvars.exp: Test convenience vars with program variables.
2009-08-19 13:00:29 +00:00
gdbadmin
57d985a531 *** empty log message *** 2009-08-19 00:00:33 +00:00
Tom Tromey
1eefb8588a * utils.c (add_internal_problem_command): Free set_doc and
show_doc.
	* remote.c (add_packet_config_cmd): Free set_doc and show_doc.
	* language.c (add_language): Free language_set_doc.
2009-08-18 16:17:16 +00:00
Tom Tromey
a8d1234eac * Makefile.in (ALL_TARGET_OBS): Remove prologue-value.o, solib.o. 2009-08-18 15:22:12 +00:00
gdbadmin
99348b4253 *** empty log message *** 2009-08-18 00:00:32 +00:00
Ulrich Weigand
ff3536bc83 * symfile.c (reread_symbols): Call objfiles_changed *before*
calling clear_symtab_users.
2009-08-17 20:09:38 +00:00
Michael Snyder
872761f485 2009-08-17 Michael Snyder <msnyder@vmware.com>
* amd64-tdep.c: Add a frame unwinder for function epilogues.
	(amd64_in_function_epilogue_p): New function.
	(amd64_epilogue_frame_sniffer): New function.
	(amd64_epilogue_frame_cache): New function.
	(amd64_epilogue_frame_this_id): New function.
	(amd64_epilogue_frame_unwind): New struct frame_unwind.
	(amd64_init_abi): Hook the new unwinder.

	* amd64-linux-tdep.c (amd64_linux_init_abi): Set gdbarch to use
	SVR4 method for skip_trampoline_code.
2009-08-17 18:23:45 +00:00
Pedro Alves
f1f2b5f40e 2009-08-17 Pedro Alves <pedro@codesourcery.com>>
* objfiles.c (objfile_relocate): Relocate the entry point before
	relocating the section offsets.  Flush the section map before
	resetting breakpoints.
2009-08-17 11:16:13 +00:00
gdbadmin
aa2c26d104 *** empty log message *** 2009-08-17 00:00:03 +00:00
gdbadmin
406eb4ca8a *** empty log message *** 2009-08-16 00:00:03 +00:00
gdbadmin
f52d0c66ef *** empty log message *** 2009-08-15 00:00:33 +00:00
Doug Evans
7e960b208f * symfile.c (find_separate_debug_file): Remove double free of
canon_name.
2009-08-14 23:35:33 +00:00
Pedro Alves
b8fa0bfa75 2009-08-14 Pedro Alves <pedro@codesourcery.com>
gdb/
	* top.c (any_thread_of): Delete.
	(kill_or_detach): Use any_thread_of_process.
	* top.c (print_inferior_quit_action): New.
	(quit_confirm): Rewrite to print info about all inferiors.
	* target.c (dispose_inferior): New.
	(target_preopen): Use it.

2009-08-14  Pedro Alves  <pedro@codesourcery.com>

	gdb/testsuite/
	* gdb.threads/killed.exp, gdb.threads/manythreads.exp,
	gdb.threads/staticthreads.exp: Adjust to "quit" output changes.
2009-08-14 14:28:15 +00:00
Pedro Alves
759ef83693 * ui-file.h (ui_file_xstrdup): Mention that the length argument
may be NULL.
	* ui-file.c (ui_file_xstrdup): Don't dereference LENGTH if it is
	NULL.
	* aix-thread.c (aix_thread_extra_thread_info): Pass NULL as length
	parameter to ui_file_xstrdup.
	* arm-tdep.c (_initialize_arm_tdep): Ditto.
	* infrun.c (print_target_wait_results): Ditto.
	* language.c (add_language): Ditto.
	* linespec.c (cplusplus_error): Ditto.
	* remote.c (escape_buffer): Ditto.
	* typeprint.c (type_to_string): Ditto.
	* utils.c (error_stream): Ditto.
	* varobj.c (value_get_print_value): Ditto.
	* xtensa-tdep.c (xtensa_verify_config): Replace `dummy' local with
	`length' local.  Pass it to ui_file_xstrdup, and avoid an strlen
	call.
	* gdbarch.sh (verify_gdbarch): Ditto.
	* gdbarch.c: Regenerate.
	* cli/cli-setshow.c (do_setshow_command): Pass NULL as length
	parameter to ui_file_xstrdup.
	* python/python-frame.c (frapy_str): Ditto.
	* python/python-type.c (typy_str): Use the length local instead of
	calling strlen.
	* python/python-value.c (valpy_str): Pass NULL as length parameter
	to ui_file_xstrdup.
2009-08-14 00:32:33 +00:00
gdbadmin
c5bc725163 *** empty log message *** 2009-08-14 00:00:03 +00:00
Doug Evans
6e0a4fbcdf * utils.c (gnu_debuglink_crc32): Store crc32_table as unsigned int
instead of unsigned long.
2009-08-13 22:35:29 +00:00
Tom Tromey
4e7a5ef5a8 * varobj.c (update_dynamic_varobj_children): Don't use
value_copy.
	* value.h: (preserve_one_value): Declare.
	(value_prepend_to_list, value_remove_from_list): Remove.
	* value.c (preserve_one_value): No longer static.
	(preserve_values): Call preserve_python_values.
	(value_prepend_to_list): Remove.
	(value_remove_from_list): Remove.
	* python/python.h (values_in_python): Don't declare.
	(preserve_python_values): Declare.
	* python/python-value.c (values_in_python): Change type.  Move
	lower.  Now static.
	(struct value_object): Add struct tag.
	<next, prev>: New fields.
	(valpy_dealloc): Update.
	(note_value): New function.
	(valpy_new): Use value_incref, note_value.
	(preserve_python_values): New function.
	(valpy_positive): Don't use value_copy.
	(value_to_value_object): Use value_incref, note_value.
	(convert_value_from_python): Update comment.
2009-08-13 18:39:20 +00:00
Pedro Alves
ecd0ada520 * remote.c (remote_pid_to_str): If printing a process id and we
don't know what the remote pid could be, output "Remote target";
	otherwise, use normal_pid_to_str.
2009-08-13 18:27:56 +00:00
Tom Tromey
078bc676bd * language.h (longest_raw_hex_string): Remove unused declaration. 2009-08-13 17:06:21 +00:00
Pedro Alves
b84aa90aa5 2009-08-13 Pedro Alves <pedro@codesourcery.com>
PR gdb/8869:

	* language.c (language, type, range, case_sensitive): Make const.
	(show_language_command): Don't call deprecated_show_value_hack.
	Special case "auto".
	(set_language_command): An unrecognized language is now an
	internal error instead of a user error.  Don't call set_lang_str.
	(show_type_command): Don't call deprecated_show_value_hack.
	Special case "auto".  Use warning.
	(set_type_command): An unrecognized type is now an internal error
	instead of a user error.  Output type check mismatch with language
	here.  Don't call set_type_str.
	(show_range_command): Don't call deprecated_show_value_hack.
	Special case "auto".  Use warning.
	(set_range_command): An unrecognized range check is now an
	internal error instead of a warning.  Output range check mismatch
	with language here.  Don't call set_range_str.
	(show_case_command): Don't call deprecated_show_value_hack.
	Special case "auto".  Use warning.
	(set_case_command): Don't call set_case_str.  An unrecognized case
	check is now an internal error instead of a warning.  Output range
	check mismatch with language here.  Don't call set_case_str.
	(set_type_range_case): Don't call set_type_str, set_range_str or
	set_case_str here.
	(set_lang_str, set_type_str, set_range_str, set_case_str): Delete.
	(add_language): Install or reinstall the "set language" command
	here, and make it an enum command.  Build the enumeration and the
	help string from the current list of known languages.
	(_initialize_language): Don't install "set language" here.  Make
	"set check type", "set check range" and "set case-sensitive" enum
	commands.  Register the "auto" "local" and "unknown" languages in
	that order.

2009-08-13  Pedro Alves  <pedro@codesourcery.com>

	* gdb.base/default.exp: Adjust "set language test": it's now an
	enum command.  Larger help string moved to "help set language".
	* gdb.base/help.exp: Adjust "help set language" expected output,
	now lists all known languages.
2009-08-13 14:58:27 +00:00
Pedro Alves
5efd5804f7 Revert 2009-08-07 changes for PR gdb/8869:
* language.c (set_language_command): Strip whitespace.
	(set_type_command): Likewise.
	(set_range_command): Likewise.

	* language.c (language_completer): New function.
	(range_or_type_completer): New function.
	(case_completer): New function.
	(_initialize_language): Set completers.
	* cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
	command.
	(add_setshow_string_noescape_cmd): Likewise.
	(add_setshow_integer_cmd): Likewise.
	(add_setshow_uinteger_cmd): Likewise.
	(add_setshow_zinteger_cmd): Likewise.
	(add_setshow_zuinteger_cmd): Likewise.
	* command.h (add_setshow_string_cmd,
	add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
	add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
2009-08-13 14:56:19 +00:00
gdbadmin
46c554ccf2 *** empty log message *** 2009-08-13 00:00:33 +00:00
Michael Snyder
cea39f658d 2009-08-12 Michael Snyder <msnyder@vmware.com>
* remote.c (remote_add_inferior): Remove unused local.
	(remote_add_thread): Ditto.
	(read_ptid): Ditto.
	(remote_current_thread): Ditto.
	(remote_stop_ns): Ditto.
	(remote_parse_stop_reply): Ditto.
	(remote_get_pending_stop_replies): Ditto.
	(remote_wait_ns): Ditto.
	(remote_wait_as): Ditto.
	(send_g_packet): Ditto.
	(remote_fetch_registers): Ditto.
	(store_register_using_P): Ditto.
	(remote_store_registers): Ditto.
	(remote_remove_breakpoint): Ditto.
	(remote_write_qxfer): Ditto.
	(remote_read_qxfer): Ditto.
2009-08-12 23:00:27 +00:00
gdbadmin
4a9bf9e953 *** empty log message *** 2009-08-12 00:00:33 +00:00
Tom Tromey
4a22739830 * dwarf2loc.c (dwarf2_evaluate_loc_desc): Make a cleanup.
(dwarf2_loc_desc_needs_frame): Likewise.
	* dwarf2expr.h (make_cleanup_free_dwarf_expr_context): Declare.
	* dwarf2expr.c (free_dwarf_expr_context_cleanup): New function.
	(make_cleanup_free_dwarf_expr_context): Likewise.
	* dwarf2-frame.c (execute_stack_op): Make a cleanup.
2009-08-11 20:36:49 +00:00
Nathan Froyd
0d8f9b2ced * gdb.arch/altivec-abi.exp (altivec_abi_tests): Turn on printing of
all frame arguments.
	* gdb.arch/altivec-regs.exp: Likewise.
2009-08-11 19:21:37 +00:00
gdbadmin
0fa5cf2232 *** empty log message *** 2009-08-11 00:00:04 +00:00
Jan Kratochvil
4f6f9936b6 gdb/
* objfiles.c (gdb_bfd_unref): Use the bfd_usrdata accessor.
	* solib.c (symbol_add_stub): Likewise.
	* symfile.c (symfile_bfd_open): Assert BFD_USRDATA is NULL.
2009-08-10 22:09:22 +00:00
Paul Pluzhnikov
3aad21cf47 2009-08-10 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.c (qsort_cmp): Remove assert.
	(preferred_obj_section): New function.
	(update_section_map): Filter duplicates.
2009-08-10 20:14:14 +00:00
Tristan Gingold
023e4e81ac 2009-08-10 Tristan Gingold <gingold@adacore.com>
* solib-darwin.c (find_program_interpreter): Simplify the code by
	looking up for the load_dylinker command instead of reading the
	corresponding (but deprecated) section.
	(darwin_solib_create_inferior_hook): Adjust: do not free the
	interpreter path.
2009-08-10 09:35:24 +00:00
Tristan Gingold
48f09bc00d 2009-08-10 Tristan Gingold <gingold@adacore.com>
* i386-darwin-tdep.c (i386_m128_p): New function.
	(i386_darwin_arg_type_alignment): Ditto.
	(i386_darwin_push_dummy_call): Ditto.
	(i386_darwin_init_abi): Define Darwin specific push_dummy_call.
	Adjust long_double size.  Adjust pc offset in setjump buffer.
2009-08-10 09:32:55 +00:00
Hui Zhu
952b2d6368 2009-08-10 Hui Zhu <teawater@gmail.com>
Add Linux AMD64 process record support.

	* amd64-linux-tdep.c (amd64_linux_record_tdep): New variable.
	This struct has the argument for the function
	"record_linux_system_call".
	(amd64_linux_syscall_record): New function. Parse the
	system call instruction and call function
	"record_linux_system_call" to record execute log.
	(i386_linux_init_abi): Initialize "amd64_linux_record_tdep".
	Set "amd64_linux_syscall_record" to "i386_syscall_record".
2009-08-10 03:06:34 +00:00
Hui Zhu
2c543fc432 2009-08-10 Hui Zhu <teawater@gmail.com>
Add process record Linux system call 64 bits support.

        * linux-record.h (linux_record_tdep): Add size_pointer,
        size_size_t, size_iovec and arg6.  Change the values of
	size_int, size_long and size_ulong to
	gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
	gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT,
	gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT.
	* i386-linux-tdep.c (i386_linux_init_abi): Ditto.
	(i386_linux_intx80_sysenter_record): Add a check for system
	call number.
        * linux-record.c (record_linux_system_call): Make this
        function support 64 bits.
2009-08-10 03:04:45 +00:00
Hui Zhu
cf648174b0 2009-08-10 Hui Zhu <teawater@gmail.com>
Add AMD64 process record instruction set support.

	* i386-tdep.h (gdbarch_tdep): Add record_regmap for registers
	because the AMD64's registers order in GDB is not same with
	I386 instructions.
	Add i386_syscall_record to be the syscall function handle
	interface.
	(record_i386_regnum): Number for record_regmap.
	* i386-tdep.c (OT_QUAD): For 64 bits.
	(i386_record_s): Add rex_x, rex_b, rip_offset and
	popl_esp_hack for AMD64 instruction set. And regmap for
	record_regmap.
	(i386_record_lea_modrm_addr): Support AMD64 instruction set
	64 bits lea.
	(i386_record_lea_modrm): Ditto.
	(i386_record_push): New function.  Record the execution log
	of push.
	(I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the
	register.
	(i386_process_record): Support AMD64 instruction set.
	* amd64-tdep.c (amd64_record_regmap): For record_regmap.
	(amd64_init_abi): Set amd64_record_regmap to record_regmap.
2009-08-10 03:02:39 +00:00
gdbadmin
b229017acf *** empty log message *** 2009-08-10 00:00:33 +00:00
gdbadmin
08ab23f3fc *** empty log message *** 2009-08-09 00:00:33 +00:00
Pedro Alves
891e75843a * bfd-target.c (struct target_bfd_data): New.
(target_bfd_xfer_partial): Adjust to get at the section table from
	the new structure.
	(target_bfd_get_section_table): Ditto.
	(target_bfd_xclose): Ditto.  Get the bfd pointer from the
	target_bfd_data structure, from the section table.
	(target_bfd_reopen): Store a struct target_bfd_data in the
	target_ops to_data field, instead of a target_section_table.
2009-08-08 16:32:37 +00:00
Hui Zhu
280d8011ec 2009-08-08 Aleksandar Ristovski <aristovski@qnx.com>
Hui Zhu  <teawater@gmail.com>

	* record.c (record_store_registers): Remove unused variable.
2009-08-08 01:57:44 +00:00
gdbadmin
93da6da6f9 *** empty log message *** 2009-08-08 00:00:34 +00:00
Tom Tromey
bda180e011 gdb
* language.c (set_language_command): Strip whitespace.
	(set_type_command): Likewise.
	(set_range_command): Likewise.
gdb/testsuite
	* gdb.base/setshow.exp: Add tests for changes to set language, set
	check range, and set check type.
2009-08-07 23:28:13 +00:00
Tom Tromey
6cc0b2563e PR gdb/8869:
* language.c (language_completer): New function.
	(range_or_type_completer): New function.
	(case_completer): New function.
	(_initialize_language): Set completers.
	* cli/cli-decode.c (add_setshow_string_cmd): Return the "set"
	command.
	(add_setshow_string_noescape_cmd): Likewise.
	(add_setshow_integer_cmd): Likewise.
	(add_setshow_uinteger_cmd): Likewise.
	(add_setshow_zinteger_cmd): Likewise.
	(add_setshow_zuinteger_cmd): Likewise.
	* command.h (add_setshow_string_cmd,
	add_setshow_string_noescape_cmd, add_setshow_uinteger_cmd,
	add_setshow_zinteger_cmd, add_setshow_zuinteger_cmd): Update.
2009-08-07 20:44:15 +00:00
gdbadmin
88cd6f5e2a *** empty log message *** 2009-08-07 00:00:33 +00:00
Paul Pluzhnikov
e5af178fbf 2009-08-06 Paul Pluzhnikov <ppluzhnikov@google.com>
gold/10400
	* dwarf2-frame.c (qsort_fde_cmp): Use stable sort.
2009-08-06 23:25:49 +00:00
Paul Pluzhnikov
b01c84103b 2009-08-06 Paul Pluzhnikov <ppluzhnikov@google.com>
* dwarf2-frame.c (struct dwarf2_cie): Remove 'next'.
	(struct dwarf2_cie_table): New.
	(struct dwarf2_fde): Remove 'next'.
	(struct dwarf2_fde_table): New.
	(struct comp_unit): Remove 'cie'.
	(bsearch_cie_cmp, bsearch_fde_cmp): New function.
	(find_cie, dwarf2_frame_find_fde): Use bsearch.
	(add_cie, add_fde): Use array instead of linked list.
	(decode_frame_entry, decode_frame_entry_1): New parameters.
	(qsort_fde_cmp): New function.
	(dwarf2_build_frame_info): Adjust.
2009-08-06 23:19:47 +00:00
Nick Roberts
d837706a7c (Server Prefix): Explain that server prefix suppresses
confirmation request.
2009-08-06 23:08:16 +00:00
Nick Roberts
43089a6e06 *** empty log message *** 2009-08-06 23:06:54 +00:00
Don Lee
5f814c3b3f * score-tdep.c: Support a new Sunplus CT S+core variant, S+core 3.
* score-tdep.h: Ditto.
	* NEWS: Ditto.
	* configure.tgt: Test do we have a simulator.
	* MAINTAINERS: Add myself under target score
2009-08-06 10:28:38 +00:00
Nick Roberts
a502cf95fe (defaulted_query): Don't ask for confirmation if server
prefix is used.
2009-08-06 08:19:58 +00:00
Nick Roberts
78ad01c15f *** empty log message *** 2009-08-06 08:11:22 +00:00
gdbadmin
8dfc33311a *** empty log message *** 2009-08-06 00:00:03 +00:00
Eli Zaretskii
99e008fef7 * gdb.texinfo (Separate Debug Files, Remote Protocol): Clarified
CRC definitions.
2009-08-05 17:47:09 +00:00
Tom Tromey
768f092942 * spu-tdep.h (SPUADDR_SPU): Cast result to int. 2009-08-05 15:11:45 +00:00
gdbadmin
e1d0c9e0d7 *** empty log message *** 2009-08-05 00:00:35 +00:00
Thiago Jung Bauermann
6b3ae8188c 2009-08-04 Thiago Jung Bauermann <thiago.bauermann@gmail.com>
gdb/
	* linux-tdep.c (check_is_pie_binary,
	_initialize_linux_tdep): New functions.

gdb/testsuite/
	* gdb.base/pie-support.exp: New file.
	* gdb.base/pie-support.c: New file.
2009-08-04 20:41:13 +00:00
Paul Pluzhnikov
e3c69974ac 2009-08-04 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.h (OBJF_KEEPBFD): Delete.
	(gdb_bfd_unref): New prototype.
	* objfiles.c (gdb_bfd_unref): New function.
	(free_objfile): Call gdb_bfd_unref.
	* solib.c (free_so): Likewise.
	(symbol_add_stub): Set refcount.
2009-08-04 18:46:05 +00:00
Michael Snyder
afd0cd3fc1 2009-08-04 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@vmware.com>

	* record.c (record_mem_entry): New field 'mem_entry_not_accessible'.
	(record_arch_list_add_mem): Initialize 'mem_entry_not_accessible'.
	(record_wait): Set 'mem_entry_not_accessible' flag if target
	memory not readable.  Don't try to change target memory if
	'mem_entry_not_accessible' is set.
2009-08-04 18:19:52 +00:00
gdbadmin
1b6bf71993 *** empty log message *** 2009-08-04 00:00:03 +00:00
Jan Kratochvil
1ffa32eed6 gdb/
Fix memory corruption on reread of file through a symbolic link.
	* symfile.c (find_separate_debug_file): Initialize CANON_NAME earlier.
	Allocate DEBUGFILE with length based on CANON_NAME.  Free CANON_NAME on
	all the return paths.
2009-08-03 17:00:34 +00:00
Vladimir Prus
48cb2d8581 Implement -break-commands
* breakpoint.c (get_breakpoint, breakpoint_set_commands): New.
	(commands_command): Use breakpoint_set_commands.
	* breakpoint.h (get_breakpoint, breakpoint_set_commands): Declare.

	* mi/mi-cmds.h (mi_cmd_break_commands): New.
	* mi/mi-cmds.c: Register -break-commands.
	* mi/mi-cmd-break.c (mi_cmd_break_commands, mi_read_next_line)
	(mi_command_line_array, mi_command_line_array_cnt)
	(mi_command_line_array_ptr): New.
2009-08-03 12:39:01 +00:00
Vladimir Prus
3c1179ff51 Refactor reading of commands
* defs.h (read_command_lines_1): Declare.
	* cli/cli-script.c (read_next_line): Only return string,
	do not process.
	(process_next_line): New, extracted from read_next_line.
	(recurse_read_control_structure): Take a function pointer to the
	read function.
	(get_command_line) Pass the read_next_line as reader function
	into recurse_read_control_structure.
	(read_command_lines_1): New, extracted from...
	(read_command_lines): ...here.
2009-08-03 12:26:37 +00:00
gdbadmin
0329406f62 *** empty log message *** 2009-08-03 00:00:34 +00:00
gdbadmin
43c6951f03 *** empty log message *** 2009-08-02 00:00:05 +00:00
Kazu Hirata
73930d4df0 * procfs.c (proc_set_current_signal): Populate mysinfo before
copying it to arg.
	(proc_clear_current_signal): Likewise.
	(proc_set_watchpoint): Populate pwatch before copying it to arg.
2009-08-01 00:02:04 +00:00
gdbadmin
033a2b10a8 *** empty log message *** 2009-08-01 00:00:33 +00:00
Michael Snyder
27a9c0bfdc 2009-07-31 Michael Snyder <msnyder@vmware.com>
* remote.c (store_register_using_P): Make error msg more verbose.
	(store_registers_using_G): Ditto.
	(fetch_register_using_p): Ditto.
2009-07-31 22:15:15 +00:00
Michael Snyder
1f4437a49e 2009-07-29 Michael Snyder <msnyder@vmware.com>
* remote.c (store_register_using_P): Call putpkt and getpkt
	directly instead of calling remote_send.
	(store_register_using_G): Ditto.
	(fetch_register_using_p): Ditto.
2009-07-31 21:33:39 +00:00
Ulrich Weigand
79d0a52d5d Fix previous check-in. 2009-07-31 15:39:24 +00:00
Ulrich Weigand
1ea342040c * configure.ac: Run gdb.cell tests when appropriate.
* configure: Regenerate.
	* lib/cell.exp: New file.
	* gdb.cell: New directory.
	* gdb.cell/configure.ac: New file.
	* gdb.cell/configure: New file.
	* gdb.cell/Makefile.in: New file.
	* gdb.cell/arch.exp: New file.
	* gdb.cell/break.c: New file.
	* gdb.cell/break.exp: New file.
	* gdb.cell/break-spu.c: New file.
	* gdb.cell/bt.c: New file.
	* gdb.cell/bt2-spu.c: New file.
	* gdb.cell/bt-spu.c: New file.
	* gdb.cell/bt.exp: New file.
	* gdb.cell/coremaker.c: New file.
	* gdb.cell/coremaker-spu.c: New file.
	* gdb.cell/core.exp: New file.
	* gdb.cell/gcore.exp: New file.
	* gdb.cell/data.c: New file.
	* gdb.cell/data.exp: New file.
	* gdb.cell/data-spu.c: New file.
	* gdb.cell/ea-cache.exp: New file.
	* gdb.cell/ea-cache.c: New file.
	* gdb.cell/ea-cache-spu.c: New file.
	* gdb.cell/ea-standalone.c: New file.
	* gdb.cell/ea-standalone.exp: New file.
	* gdb.cell/ea-test.c: New file.
	* gdb.cell/ea-test.exp: New file.
	* gdb.cell/f-regs.exp: New file.
	* gdb.cell/mem-access.c: New file.
	* gdb.cell/mem-access.exp: New file.
	* gdb.cell/mem-access-spu.c: New file.
	* gdb.cell/ptype.exp: New file.
	* gdb.cell/registers.exp: New file.
	* gdb.cell/size.c: New file.
	* gdb.cell/sizeof.exp: New file.
	* gdb.cell/size-spu.c: New file.
	* gdb.cell/solib.exp: New file.
	* gdb.cell/solib-symbol.exp: New file.
2009-07-31 15:38:16 +00:00
Ulrich Weigand
ff1a52c620 ChangeLog:
* spu-tdep.c: Include "infcall.h".
	(spu_address_class_type_flags): New function.
	(spu_address_class_type_flags_to_name): Likewise.
	(spu_address_class_name_to_type_flags): Likewise.
	(spu_pointer_to_address): Handle __ea pointers.
	(spu_auto_flush_cache_p): New static variable.
	(spu_objfile_from_frame): New function.
	(flush_ea_cache, spu_attach_normal_stop): Likewise.
	(show_spu_auto_flush_cache): Likewise.
	(spu_gdbarch_init): Install address class handlers.
	(_initialize_spu_tdep): Attach to normal_stop observer.
	Install "set spu auto-flush-cache" / "show spu auto-flush-cache"
	commands.

	* NEWS: Mention "set/show spu auto-flush-cache" commands.

doc/ChangeLog:

	* gdb.texinfo (Cell Broadband Engine SPU architecture): Document the
	"set spu auto-flush-cache" and "show spu auto-flush-cache" commands.
2009-07-31 15:35:38 +00:00
Ulrich Weigand
3285f3fe1a ChangeLog:
* spu-tdep.c: Include "block.h".
	(setspucmdlist, showspucmdlist): New static variables.
	(spu_stop_on_load_p): Likewise.
	(spu_catch_start): New function.
	(show_spu_command, set_spu_command): New functions.
	(show_spu_stop_on_load): Likewise.
	(_initialize_spu_tdep): Attach spu_catch_start to new_objfile observer.
	Install "set spu" / "show spu" prefix command handler.
	Install "set spu stop-on-load" / "show spu stop-on-load" command.

	* NEWS: Mention "set/show spu stop-on-load" commands.

doc/ChangeLog:

	* gdb.texinfo (Cell Broadband Engine SPU architecture): Document the
	"set spu stop-on-load" and "show spu stop-on-load" commands.
2009-07-31 15:33:50 +00:00
Ulrich Weigand
cc5f0d6150 * ppc-linux-tdep.c: Include "solib.h", "solist.h", "exceptions.h",
"arch-utils.h", and "spu-tdep.h".
	(spu_context_objfile, spe_context_lm_addr, spe_context_offset):
	New static variables.
	(spe_context_cache_ptid, spe_context_cache_address): Likewise.
	(ppc_linux_spe_context_lookup): New function.
	(ppc_linux_spe_context_inferior_created): Likewise.
	(ppc_linux_spe_context_solib_loaded): Likewise.
	(ppc_linux_spe_context_solib_unloaded): Likewise.
	(ppc_linux_spe_context): Likewise.
	(struct ppu2spu_cache, struct ppu2spu_data): New data types.
	(ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register,
	ppu2spu_unwind_register, ppu2spu_sniffer,
	ppu2spu_dealloc_cache): New functions.
	(ppu2spu_unwind): New static variable.
	(ppc_linux_init_abi): Install cross-architecture unwinder.
	(_initialize_ppc_linux_tdep): Attach to observers.

	* spu-tdep.c (struct spu2ppu_cache): New data type.
	(spu2ppu_prev_arch, spu2ppu_this_id, spu2ppu_prev_register,
	spu2ppu_sniffer, spu2ppu_dealloc_cache): New functions.
	(spu2ppu_unwind): New static variable.
	(spu_gdbarch_init): Install cross-architecture unwinder.
2009-07-31 15:31:08 +00:00
Ulrich Weigand
0b9ff2c0a4 * linux-ppc-low.c (INSTR_SC, NR_spu_run): Define.
(parse_spufs_run): New function.
	(ppc_get_pc, ppc_set_pc): Detect and handle SPU PC.
	(ppc_breakpoint_at): Handle SPU breakpoints.
2009-07-31 15:30:03 +00:00
Ulrich Weigand
85e747d249 ChangeLog:
* target.h (enum strata): New value arch_stratum.
	* target.c (target_require_runnable): Skip arch_stratum targets.

	* configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add
	solib-spu.o and spu-multiarch.o to gdb_target_obs.
	* Makefile.in (ALL_TARGET_OBS): Add solib-spu.o and spu-multiarch.o.
	(ALLDEPFILES): Add solib-spu.c and spu-multiarch.c.

	* solib-spu.c: New file.
	* solib-spu.h: New file.
	* spu-multiarch.c: New file.

	* spu-tdep.h (SPUADDR, SPUADDR_SPU, SPUADDR_ADDR): New macros.

	* spu-tdep.c (struct gdbarch_tdep): New member id.
	(spu_gdbarch_id): New function.
	(spu_lslr): New function.

	(spu_address_to_pointer): New function.
	(spu_pointer_to_address): Support SPU ID address encoding.  Use
	spu_gdbarch_id and spu_lslr.
	(spu_integer_to_address): Likewise.
	(spu_frame_unwind_cache): Update for encoded addresses.
	(spu_unwind_pc, spu_unwind_sp): Likewise.
	(spu_read_pc, spu_write_pc): Likewise.
	(spu_push_dummy_call): Likewise.
	(spu_software_single_step): Likewise.
	(spu_get_longjmp_target): Likewise.
	(spu_overlay_update_osect): Likewise.

	(spu_dis_asm_print_address): New function.
	(gdb_print_insn_spu): Likewise.

	(spu_gdbarch_init): Store SPU ID in tdep structure.
	Install spu_address_to_pointer and gdb_print_insn_spu.

	* ppc-linux-tdep.c: Include "observer.h", "auxv.h", "elf/common.h"
	and "solib-spu.h".
	(ppc_linux_entry_point_addr): New static variable.
	(ppc_linux_inferior_created): New function.
	(ppc_linux_displaced_step_location): Likewise.
	(ppc_linux_init_abi): Enable Cell/B.E. support if supported
	by the target.
	(_initialize_ppc_linux_tdep): Attach to inferior_created observer.

	* NEWS: Mention multi-architecture and Cell/B.E. debugging
	capabilities.

testsuite/ChangeLog:

	* gdb.xml/tdesc-regs.exp: Skip for SPU targets.
2009-07-31 15:28:27 +00:00
Ulrich Weigand
efcbbd1428 ChangeLog:
* linux-nat.c: Include <sys/vfs.h>.
	(SPUFS_MAGIC): Define.
	(spu_enumerate_spu_ids): New function.
	(linux_proc_xfer_spu): New function.
	(linux_xfer_partial): Handle TARGET_OBJECT_SPU.

	(iterate_over_spus): New function.
	(struct linux_spu_corefile_data): New data type.
	(linux_spu_corefile_callback): New function.
	(linux_spu_make_corefile_notes): New function.
	(linux_nat_make_corefile_notes): Call it.

	* corelow.c (struct spuid_list): New data type.
	(add_to_spuid_list): New function.
	(core_xfer_partial): Handle TARGET_OBJECT_SPU.

gdbserver/ChangeLog:

	* linux-low.c: Include <sys/stat.h> and <sys/vfs.h>.
	(SPUFS_MAGIC): Define.
	(spu_enumerate_spu_ids): New function.
	(linux_qxfer_spu): New function.
	(linux_target_ops): Install linux_qxfer_spu.
2009-07-31 15:25:22 +00:00
Ulrich Weigand
f4d9badee6 ChangeLog:
* features/Makefile: Allow sub-platform specific expedite settings.
	(WHICH): Add rs6000/powerpc-cell32l and rs6000/powerpc-cell64l.
	(rs6000/powerpc-cell32l-expedite): Define.
	(rs6000/powerpc-cell64l-expedite): Likewise.
	* features/rs6000/powerpc-cell32l.xml: New file.
	* features/rs6000/powerpc-cell64l.xml: New file.
	* features/rs6000/powerpc-cell32l.c: New generated file.
	* features/rs6000/powerpc-cell64l.c: New generated file.

	* regformats/rs6000/powerpc-cell32l.dat: New generated file.
	* regformats/rs6000/powerpc-cell64l.dat: New generated file.

	* config/djgpp/fnchange.lst: Add mappings for new files.

	* ppc-linux-tdep.h (tdesc_powerpc_cell32l): Add prototype.
	(tdesc_powerpc_cell64l): Likewise.
	* ppc-linux-tdep.c: Include "features/rs6000/powerpc-cell32l.c"
	and "features/rs6000/powerpc-cell64l.c".
	(_initialize_ppc_linux_tdep): Initialize target descriptions.
	(ppc_linux_spu_section): New function.
	(ppc_linux_core_read_description): Detect Cell/B.E. core files.
	* ppc-linux-nat.c (PPC_FEATURE_CELL): Define.
	(ppc_linux_read_description): Detect Cell/B.E. architecture.

	* rs6000-tdep.c (rs6000_gdbarch_init): Do not trust BFD wordsize
	if exec file is not PowerPC architecture.

gdbserver/ChangeLog:

	* configure.srv (powerpc*-*-linux*): Add powerpc-cell32l.o
	and powerpc-cell64l.o to srv_regobj.  Add rs6000/powerpc-cell32l.xml
	and rs6000/powerpc-cell64l.xml to srv_xmlfiles.
	* Makefile.in (powerpc-cell32l.o, powerpc-cell32l.c): New rules.
	(powerpc-cell64l.o, powerpc-cell64l.c): Likewise.
	(clean): Handle powerpc-cell32l.c and powerpc-cell64l.c.
	* linux-ppc-low.c (PPC_FEATURE_CELL): Define.
	(init_registers_powerpc_cell32l): Add prototype.
	(init_registers_powerpc_cell64l): Likewise.
	(ppc_arch_setup): Detect Cell/B.E. architecture.
2009-07-31 15:23:21 +00:00
Ulrich Weigand
e35359c551 ChangeLog:
* features/gdb-target.dtd (target): Accept optional
	<compatible> elements.
	(compatible): Define element.

	* target-descriptions.h (tdesc_compatible_p): New.
	(tdesc_add_compatible): New.
	* target-descriptions.c (arch_p): New VEC_P type.
	(struct target_desc): New member compatible.
	(free_target_description): Handle it.
	(maint_print_c_tdesc_cmd): Likewise.
	(tdesc_compatible_p): New function.
	(tdesc_add_compatible): New function.

	* xml-tdesc.c (tdesc_end_compatible): New function.
	(target_children): Handle <compatible> element.

	* arch-utils.c (choose_architecture_for_target): Accept target
	description instead of BFD architecture as input.  Query target
	description for compatible architectures.
	(gdbarch_info_fill): Update call.

	* NEWS: Mention <compatible> element of target descriptions.

doc/ChangeLog:

	* gdb.texinfo (Target Descriptions): Document <compatible> element.
2009-07-31 14:39:12 +00:00
Ulrich Weigand
3a1bae8e7f * breakpoint.c (remove_breakpoints): If removing one breakpoint
location fails, still continue to remove other locations.
	(remove_hw_watchpoints): Likewise.
	(detach_breakpoints): Likewise.
2009-07-31 14:33:45 +00:00
Ulrich Weigand
8bea4e01db * breakpoint.h (enum enable_state): Add bp_startup_disabled.
(disable_breakpoints_before_startup): Add prototype.
	(enable_breakpoints_after_startup): Likewise.

	* breakpoint.c (executing_startup): New static variable.
	(describe_other_breakpoints): Handle bp_startup_disabled.
	(check_duplicates_for): Likewise.
	(disable_breakpoints_before_startup): New function.
	(enable_breakpoints_after_startup): New function.
	(create_breakpoint): Mark new breakpoints as bp_startup_disabled
	if executing_startup flag is true.
	(break_command_really): Likewise.
	(breakpoint_re_set_one): Skip bp_startup_disabled breakpoints.
2009-07-31 14:31:16 +00:00
gdbadmin
463bde6807 *** empty log message *** 2009-07-31 00:00:33 +00:00
Julian Brown
cca44b1b87 * arm-linux-tdep.c (arch-utils.h, inferior.h, gdbthread.h, symfile.h):
Include files.
	(arm_linux_cleanup_svc, arm_linux_copy_svc): New.
	(cleanup_kernel_helper_return, arm_catch_kernel_helper_return): New.
	(arm_linux_displaced_step_copy_insn): New.
	(arm_linux_init_abi): Initialise displaced stepping callbacks.
	* arm-tdep.c (DISPLACED_STEPPING_ARCH_VERSION): New macro.
	(ARM_NOP): New.
	(displaced_read_reg, displaced_in_arm_mode, branch_write_pc)
	(bx_write_pc, load_write_pc, alu_write_pc, displaced_write_reg)
	(insn_references_pc, copy_unmodified, cleanup_preload, copy_preload)
	(copy_preload_reg, cleanup_copro_load_store, copy_copro_load_store)
	(cleanup_branch, copy_b_bl_blx, copy_bx_blx_reg, cleanup_alu_imm)
	(copy_alu_imm, cleanup_alu_reg, copy_alu_reg)
	(cleanup_alu_shifted_reg, copy_alu_shifted_reg, cleanup_load)
	(cleanup_store, copy_extra_ld_st, copy_ldr_str_ldrb_strb)
	(cleanup_block_load_all, cleanup_block_store_pc)
	(cleanup_block_load_pc, copy_block_xfer, cleanup_svc, copy_svc)
	(copy_undef, copy_unpred): New.
	(decode_misc_memhint_neon, decode_unconditional)
	(decode_miscellaneous, decode_dp_misc, decode_ld_st_word_ubyte)
	(decode_media, decode_b_bl_ldmstm, decode_ext_reg_ld_st)
	(decode_svc_copro, arm_process_displaced_insn)
	(arm_displaced_init_closure, arm_displaced_step_copy_insn)
	(arm_displaced_step_fixup): New.
	(arm_gdbarch_init): Initialise max insn length field.
	* arm-tdep.h (DISPLACED_TEMPS, DISPLACED_MODIFIED_INSNS): New
	macros.
	(displaced_step_closure, pc_write_style): New.
	(arm_displaced_init_closure, displaced_read_reg)
	(arm_process_displaced_insn, arm_displaced_init_closure)
	(displaced_read_reg, displaced_write_reg, arm_displaced_step_copy_insn)
	(arm_displaced_step_fixup): Add prototypes.
2009-07-30 23:05:05 +00:00
Julian Brown
929dfd4f59 * infrun.c (displaced_step_fixup): If this is a software
single-stepping arch, don't tell the target to single-step.
	(maybe_software_singlestep): Return 0 if we're using displaced
	stepping.
	(resume): If this is a software single-stepping arch, and
	displaced-stepping is enabled, use it for all single-step
	requests.
2009-07-30 23:01:27 +00:00
Ralf Wildenhues
96e946ca9a sim/
* Makefile.in (datarootdir): New variable.

sim/common/
	* Makefile.in (datarootdir): New variable.

sim/igen/
	* Makefile.in (datarootdir): New variable.

sim/ppc/
	* Makefile.in (datarootdir): New variable.

readline/
	* Makefile.in (datarootdir): New variable.
	* doc/Makefile.in (datarootdir): New variable.
	* shlib/Makefile.in (datarootdir): New variable.

gdb/gdbserver/
	* Makefile.in (datarootdir): New variable.
2009-07-30 22:53:18 +00:00
Ralf Wildenhues
1983cb9a62 intl/
* Makefile.in (aclocal_deps): New variable.
	($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.

libdecnumber/
	* Makefile.in (aclocal_deps): New variable.
	($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.

etc/
	* Makefile.in (AUTOCONF, configure_deps): New variables.
	($(srcdir)/configure, config.status): New rules.
	(Makefile): Depend on config.status.
	* configure.in: Accept --enable-maintainer-mode, set and
	substitute MAINT accordingly.

gdb/
	* Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
	(AUTOCONF, configure_deps, AUTOHEADER): New variables.
	($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
	(am--refresh): New rules.
	(stamp-h, config.status): List config.in and configure including
	$(srcdir)/ prefix.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
2009-07-30 22:44:50 +00:00
Thomas Schwinge
fe79276ff1 2009-07-30 Thomas Schwinge <tschwinge@gnu.org>
* gnu-nat.c (add_task_commands) <stopped>: Register the correct
	callback function.
2009-07-30 17:42:24 +00:00
H.J. Lu
2edfe795a3 2009-07-30 H.J. Lu <hongjiu.lu@intel.com>
* ia64-tdep.c (ia64_access_reg): Correct paddress.
2009-07-30 16:29:53 +00:00
Jan Kratochvil
54333c3bf8 gdb/
Replace public function varobj_list by all_root_varobjs iterator.
	* mi/mi-cmd-var.c (struct mi_cmd_var_update, mi_cmd_var_update_iter):
	New.
	(mi_cmd_var_update): Replace the varobj_list call by all_root_varobjs.
	Remove the variables rootlist, cr.  New variable data.
	* varobj.c (rootcount, varobj_list): Remove.
	(install_variable, uninstall_variable): Remove the rootcount updates.
	(all_root_varobjs): New function.
	(varobj_invalidate): Use the all_root_varobjs call.  Move the code to...
	(varobj_invalidate_iter): ... a new function.
	* varobj.h (varobj_list): Remove the prototype.
	(all_root_varobjs): New prototype.
2009-07-30 13:12:54 +00:00
gdbadmin
8bcef88754 *** empty log message *** 2009-07-30 00:00:33 +00:00
Paul Pluzhnikov
60f25dfd8c 2009-07-29 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/6817
	* dbxread.c (read_dbx_symtab): Reduce stack use.
2009-07-29 23:10:05 +00:00
Jan Kratochvil
e23cce4514 gdb/
Fix gcc-4.5 HEAD warnings.
	* cp-name-parser.y (%union <typed_val_int>, %token GLOBAL)
	(GLOBAL_CONSTRUCTORS, GLOBAL_DESTRUCTORS, demangler_special <GLOBAL>):
	Remove.
	(yylex <"global constructors keyed to ">)
	(yylex <"global destructors keyed to ">): Base it on DEMANGLER_SPECIAL.
	(cp_comp_to_string): Remove variables str, prefix and buf.  Remove the
	GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS handling.
	(cp_print): Remove the GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS
	handling.
2009-07-29 18:44:28 +00:00
gdbadmin
45de461e3b *** empty log message *** 2009-07-29 00:00:33 +00:00
Daniel Jacobowitz
58d6951de5 * NEWS: Mention ARM VFP support.
* target-descriptions.c (tdesc_register_type): Make public.
	(tdesc_unnumbered_register): New function.
	(tdesc_register_reggroup_p): Allow missing
	pseudo_register_reggroup_p.
	* target-descriptions.h (tdesc_register_type): Declare.
	(tdesc_unnumbered_register): Declare.
	* arm-tdep.c (arm_neon_quad_read, arm_neon_quad_write): New functions.
	(arm_push_dummy_call): Use arm_neon_quad_write.
	(arm_neon_double_type, arm_neon_quad_type): New functions.
	(arm_register_type): Handle VFP and NEON registers.  Override the
	types of double-precision registers for NEON.  Disable FPA registers
	if they are not present.
	(arm_dwarf_reg_to_regnum): Add current VFP and NEON register numbers.
	(arm_return_value): Use arm_neon_quad_write and arm_neon_quad_read.
	(arm_register_name): Handle VFP single and NEON quad registers.
	(arm_pseudo_read, arm_pseudo_write): New functions.
	(arm_gdbarch_init): Check for VFP and NEON in the target description.
	Assign numbers to double-precision registers.  Register VFP and NEON
	pseudo registers.  Remove a shadowed "i" variable.
	* arm-tdep.h (enum gdb_regnum): Add ARM_D0_REGNUM and
	ARM_D31_REGNUM.
	(struct gdbarch_tdep): Add have_neon_pseudos, have_neon,
	have_vfp_registers, have_vfp_pseudos, neon_double_type,
	and neon_quad_type.

	* features/Makefile: Make expedite settings only architecture
	specific.
	(WHICH): Add new ARM descriptions.
	* features/arm-with-neon.xml, features/arm-with-vfpv2.c,
	features/arm-with-vfpv3.c, features/arm-vfpv2.xml,
	features/arm-vfpv3.xml, features/arm-with-vfpv2.xml,
	features/arm-with-vfpv3.xml, features/arm-with-neon.c: New files.
	* regformats/arm-with-neon.dat, regformats/arm-with-vfpv2.dat,
	regformats/arm-with-vfpv3.dat: Generate.

	doc/
	* gdb.texinfo (ARM Features): Document org.gnu.gdb.arm.vfp and
	org.gnu.gdb.arm.neon.

	gdbserver/
	* linux-low.c (linux_write_memory): Update debugging output.
	* Makefile.in (clean): Add new descriptions.
	(arm-with-vfpv2.o, arm-with-vfpv2.c, arm-with-vfpv3.o)
	(arm-with-vfpv3.c, arm-with-neon.o, arm-with-neon.c): New rules.
	* configure.srv: Add new files for arm*-*-linux*.
	* linux-arm-low.c: Add new declarations.
	(PTRACE_GETVFPREGS, PTRACE_SETVFPREGS): Define if undefined.
	(arm_hwcap, HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3)
	(HWCAP_VFPv3D16): New.
	(arm_fill_wmmxregset, arm_store_wmmxregset): Check HWCAP_IWMMXT
	instead of __IWMMXT__.
	(arm_fill_vfpregset, arm_store_vfpregset, arm_get_hwcap)
	(arm_arch_setup): New.
	(target_regsets): Remove #ifdef.  Add VFP regset.
	(the_low_target): Use arm_arch_setup.

	testsuite/
	* gdb.base/float.exp: Handle VFP registers.
2009-07-28 18:26:51 +00:00
Daniel Jacobowitz
12b42a1250 * linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
the main thread again.
2009-07-28 17:44:29 +00:00
Daniel Jacobowitz
79626f8a5f * infrun.c (handle_inferior_event): Clear trap_expected after
stepping past a single-step breakpoint.
2009-07-28 17:43:58 +00:00
Daniel Jacobowitz
90445bd31f * arm-tdep.c (enum arm_vfp_cprc_base_type,
arm_vfp_cprc_unit_length, arm_vfp_cprc_reg_char,
	arm_vfp_cprc_sub_candidate, arm_vfp_call_candidate,
	arm_vfp_abi_for_function): New.
	(arm_push_dummy_call): Handle VFP ABI.
	(arm_extract_return_value, arm_store_return_value): Handle
	ARM_FLOAT_VFP case.
	(arm_return_value): Handle VFP ABI.
	(arm_gdbarch_init): Default fp_model based on Tag_ABI_VFP_args for
	EABI binaries.
2009-07-28 17:30:52 +00:00
Daniel Jacobowitz
3612b1927e * arch-utils.c (displaced_step_at_entry_point): Do not call
gdbarch_convert_from_func_ptr_addr.
	* cris-tdep.c: Remove outdated comment.
	* infcall.c (call_function_by_hand): Do not call
	gdbarch_convert_from_func_ptr_addr after entry_point_address.
	* objfiles.c (entry_point_address): Call both
	gdbarch_convert_from_func_ptr_addr and
	gdbarch_addr_bits_remove.
2009-07-28 16:39:06 +00:00
Pedro Alves
d551e57bf7 Revert previous commit. 2009-07-28 15:22:20 +00:00
Pedro Alves
e12af5a2d1 * bfd-target.c (target_bfd_xclose): Only close the bfd if the
section tarble is not empty.
	(target_bfd_reopen): If the section table ends up empty, close the
	bfd here.
2009-07-28 15:05:01 +00:00
Aleksandar Ristovski
745a434e15 * nto-tdep.c (nto_thread_state_str): New array.
(nto_extra_thread_info): New function definition.
	* nto-tdep.h (gdbthread.h): New include.
	(private_thread_info): New struct.
	(nto_extra_thread_info): New declaration.
	* nto-procfs.c (procfs_thread_alive): Properly check if
	thread is still alive.
	(update_thread_private_data_name, update_thread_private_data): New
	function definition.
	(procfs_find_new_threads): Fetch thread private data.
	(init_procfs_ops): Register to_extra_thread_info.
2009-07-28 13:20:26 +00:00
gdbadmin
69f0bd77fa *** empty log message *** 2009-07-28 00:00:02 +00:00
gdbadmin
e9652373e1 *** empty log message *** 2009-07-27 00:00:34 +00:00
gdbadmin
f086594c97 *** empty log message *** 2009-07-26 00:00:33 +00:00
Pedro Alves
4610615798 * stack.c (backtrace_command_1): Remove dead check of NULL current
frame.
2009-07-25 16:03:56 +00:00
gdbadmin
a331e0d9db *** empty log message *** 2009-07-25 00:00:33 +00:00
gdbadmin
57118ddad8 *** empty log message *** 2009-07-24 00:00:35 +00:00
Keith Seitz
e681b284b3 * source.c (forward_search_command): Don't fclose the stream,
just run the cleanups.
	(reverse_search_command): Likewise.
2009-07-23 23:20:00 +00:00
Paul Pluzhnikov
89295b4d6f 2009-07-23 Paul Pluzhnikov <ppluzhnikov@google.com>
* symtab.c (search_symbols): Add QUIT.
2009-07-23 16:03:13 +00:00
gdbadmin
af9a40b923 *** empty log message *** 2009-07-23 00:00:03 +00:00
Paul Pluzhnikov
8caee43bac 2009-07-22 Paul Pluzhnikov <ppluzhnikov@google.com>
* symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer.
2009-07-22 20:00:34 +00:00
Paul Pluzhnikov
bb27289292 2009-07-22 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.h (objfiles_changed): New prototype.
	* objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p.
	(allocate_objfile, free_objfile): Must rebuild section map.
	(objfile_relocate): Likewise.
	(update_section_map, find_pc_section): Adjust.
	(set_objfiles_updated_on_exe_change): Remove.
	(set_objfiles_updated_on_solib_activity): Remove.
	(_initialize_objfiles): Remove.
	(objfiles_changed): New function.
	* symfile.c (reread_symbols): Call objfiles_changed.
2009-07-22 19:21:31 +00:00
Hui Zhu
9a9dc473d3 2009-07-22 Hui Zhu <teawater@gmail.com>
* record.c (record_xfer_partial): Call error When nquery
	return "n".
2009-07-22 05:31:26 +00:00
gdbadmin
3185993431 *** empty log message *** 2009-07-22 00:00:03 +00:00
Paul Pluzhnikov
c761c4ee3f Corrected date on '2009-06-26 Michael Eager <eager@eagercon.com>' entry 2009-07-21 20:57:20 +00:00
Paul Pluzhnikov
a845f5cbc8 2009-07-21 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.c (objfiles_updated_p): New variable.
	(qsort_cmp, bsearch_cmp, update_section_map): New function.
	(find_pc_section): Use bsearch.
	(set_objfiles_updated_on_exe_change): New function.
	(set_objfiles_updated_on_solib_activity): New function.
	(_initialize_objfiles): New function.
2009-07-21 20:54:30 +00:00
Michael Snyder
4d09ffeaea 2009-06-26 Michael Eager <eager@eagercon.com>
* features/rs6000/powerpc-405.xml: New.
	* rs6000-tdep.c: Add include & initialize for
	powerpc-405.c, add 405 to variants.
	* features/rs6000/powerpc-405.c: Generate.
2009-07-21 20:21:20 +00:00
Paul Pluzhnikov
25f77bfae9 Oops. s/util.c/utils.c/ 2009-07-21 18:23:28 +00:00
Paul Pluzhnikov
26bb68be79 2009-07-21 Paul Pluzhnikov <ppluzhnikov@google.com>
* util.c (internal_vproblem): Always print failure message.
2009-07-21 18:21:02 +00:00
Daniel Jacobowitz
4ea48cc1cd gdb/
* valops.c (value_fetch_lazy): Handle bitfields explicitly.
	(value_assign): Remove unnecessary FIXME.  Honor the container
	type of bitfields if possible.
	* value.c (struct value): Add parent field.
	(value_parent): New function.
	(value_free): Free the parent also.
	(value_copy): Copy the parent also.
	(value_primitive_field): Do not read the contents of a lazy
	value to create a child bitfield value.  Set bitpos and offset
	according to the container type if possible.
	(unpack_bits_as_long): Rename from unpack_field_as_long.  Take
	field_type, bitpos, and bitsize instead of type and fieldno.
	(unpack_field_as_long): Use unpack_bits_as_long.
	* value.h (value_parent, unpack_bits_as_long): New prototypes.
2009-07-21 18:15:32 +00:00
Daniel Jacobowitz
828d3400fb gdb/
* value.c (struct value): Add reference_count field.
	(allocate_value_lazy): Initialize reference_count.
	(value_incref): New function.
	(value_free): Check the reference count.
	* value.h (value_incref): New prototype.
2009-07-21 18:12:40 +00:00
Marc Khouzam
7a01c6e083 2009-07-20 Marc Khouzam <marc.khouzam@ericsson.com>
* utils.c (defaulted_query): Update comment and remove dead code.
2009-07-21 03:31:18 +00:00
gdbadmin
4afcbd1072 *** empty log message *** 2009-07-21 00:00:03 +00:00
Doug Evans
348e048f0c Add support for "comdat types" from DWARF4.
* dwarf2read.c (dwarf2_per_objfile): New member types,
	signatured_types.
	(TYPES_SECTION): New macro.
	(dwarf2_per_cu_data): Change size of length field from 30 bits
	to 29 bits.  New member from_debug_types.
	(signatured_type): New struct.
	(struct attribute): New union member signatured_type.
	(DW_SIGNATURED_TYPE): New macro.
	(dwarf2_attr_no_follow): New function.
	(read_type_unit_scope): New function.
	(follow_die_ref_or_sig, follow_die_sig): New functions.
	(dwarf2_locate_sectoins): Handle .debug_types.
	(dwarf2_build_psymtabs): Read .debug_types.
	(read_type_comp_unit_head): New function.
	(hash_type_signature, eq_type_signature): New functions.
	(create_debug_types_hash_table): New function.
	(lookup_signatured_type): New function.
	(process_psymtab_comp_unit): Handle type units too.
	(process_type_comp_unit, build_type_psymtabs): New functions.
	(dwarf2_build_psymtabs_hard): Call build_type_psymtabs.
	(load_partial_comp_unit): Assert not called for a type unit.
	(skip_one_die): Handle DW_FORM_sig8.
	(queue_comp_unit): Don't call load_full_comp_unit here, or
	update read_in_chain.
	(psymtab_to_symtab_1): Call read_signatured_type_at_offset for
	type units, or load_full_comp_unit for comp units after
	queue_comp_unit returns.
	(load_full_comp_unit): Assert not called for type units.
	(load_full_comp_unit): Update read_in_chain here.
	(process_die): Handle DW_TAG_type_unit.
	(read_structure_type): Look for signatured types.
	(read_enumeration_type): Ditto.
	(init_cu_die_reader): Handle .debug_types.
	(read_comp_unit): Assert hash not computed yet.
	(read_die_and_children): Expand debugging printf to handle .debug_types.
	(read_partial_die): Handle DW_TAG_type_unit:
	(find_patial_die): Handle .debug_types.
	(read_attribute_value): Handle DW_FORM_sig8.
	(die_type): Call follow_die_ref_or_sig instead of follow_die_ref.
	(die_containing_type): Ditto.
	(dwarf_tag_name): Handle DW_TAG_type_unit.
	(dwarf_attr_name): Handle DW_AT_signature.
	(dwarf_form_name): Handle DW_FORM_sec_offset, DW_FORM_exprloc,
	DW_FORM_flag_present, DW_FORM_sig8.
	(dump_die_shallow): Handlel DW_FORM_sig8.
	(maybe_queue_comp_unit): Change return type to int from void.
	All callers updated.
	(follow_die_ref): Handle .debug_types.
	(lookup_signatured_type_at_offset): New function.
	(read_signatured_type_at_offset): New function.
	(read_signatured_type): New function.
2009-07-20 21:21:17 +00:00
Ulrich Weigand
f4290e2a0c * arch-utils.c (gdbarch_info_fill): Only reference GDB_OSABI_DEFAULT
if the macro is defined.
2009-07-20 19:41:34 +00:00
Pedro Alves
08d1664121 2009-07-20 Pedro Alves <pedro@codesourcery.com>
* features/gdb-target.dtd (target): Accept an optional 'osabi'
	element.
	(osabi): Define element.
	* features/mips-linux.xml (target): Add an osabi subelement set to
	GNU/Linux.
	* regformats/regdat.sh (xmlarch, xmlosabi): New variables.  Don't
	write the architecture into $xmltarget.  Store it in $xmlarch.
	Handle the 'osabi' type.  Handle outputting the osabi element of
	the target description.
	* regformats/reg-x86-64-linux.dat (osabi): Set to GNU/Linux.
	* regformats/reg-i386-linux.dat (osabi): Set to GNU/Linux.

	* target-descriptions.h (tdesc_osabi, set_tdesc_osabi): Declare.
	* target-descriptions.c (struct target_desc) <osabi>: New field.
	(tdesc_osabi): New function.
	(set_tdesc_osabi): New function.
	* xml-tdesc.c: Include osabi.h.
	(tdesc_end_osabi): New.
	(target_children): Parse "osabi" elements.
	* arch-utils.c (gdbarch_info_fill): Try to get the osabi from the
	target description if the user didn't override it or it is not
	extractable from the bfd.  If that still fails, fallback to the
	configured in default.
	* osabi.h (osabi_from_tdesc_string): Declare.
	* osabi.c (osabi_from_tdesc_string): New.
	(gdbarch_lookup_osabi): Return GDB_OSABI_UNKNOWN instead of
	GDB_OSABI_DEFAULT.

	* NEWS: Mention that target descriptions can now describe the
	target OS ABI.

2009-07-20  Pedro Alves  <pedro@codesourcery.com>

	* gdb.texinfo (Target Description Format): Mention the new <osabi>
	optional element.
	(subsection OS ABI): New subsection.
2009-07-20 18:51:42 +00:00
Mike Frysinger
a156a29064 fix gdbtui build errors when pipe() is not available (e.g. mingw targets)
* configure.ac (AC_CHECK_FUNCS): Check for pipe.
	* config.in, configure: Regenerate.
	* tui/tui-io.c (TUI_USE_PIPE_FOR_READLINE): Define if HAVE_PIPE.
2009-07-20 15:24:55 +00:00
Pedro Alves
b4d1e8c700 * gnu-nat.c: Include "inf-child.h".
(gnu_mourn_inferior): Use the passed in target_ops
	instead of the gnu_ops global.
	(gnu_create_inferior): Inline `attach_to_child', use the passed in
	target_ops instead of the gnu_ops global.
	(gnu_can_run): Delete.
	(gnu_attach): Use the passed in target_ops instead of the gnu_ops
	global.
	(gnu_detach): Ditto.
	(gnu_prepare_to_store, gnu_open): Delete.
	(gnu_store_registers, gnu_fetch_registers): Delete declarations.
	(gnu_ops): Delete.
	(init_gnu_ops): Delete.
	(gnu_target): New.
	(_initialize_gnu_nat): Don't call init_gnu_ops or add_target here.
	* gnu-nat.h (gnu_target): Declare.
	* i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Make
	static.
	(_initialize_i386gnu_nat): New.
2009-07-20 15:18:24 +00:00
Ulrich Weigand
b5758fe446 * dwarf2loc.c (find_location_expression): Retrieve beginning and
ending address offsets in location list entries as integers,
	not as addresses.
2009-07-20 15:06:13 +00:00
Ulrich Weigand
ec9499be38 * infrun.c (wait_for_inferior): Invalidate registers and overlay
cache every time before calling target_wait.
	(handle_inferior_event): Make static. Always reset waiton_ptid.
	Never call registers_changed.
	(prepare_to_wait): Do not invaliate registers or overlay cache
	(moved to wait_for_inferior).  Do not reset waiton_ptid (moved
	to handle_inferior_event).
	(fetch_inferior_event): Remove check for always-true condition.
2009-07-20 15:05:12 +00:00
Thomas Schwinge
85a772a574 2009-07-20 Thomas Schwinge <tschwinge@gnu.org>
* i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Adjust to
	2009-02-23 target_ops changes.
2009-07-20 09:51:01 +00:00
gdbadmin
c2fd7da247 *** empty log message *** 2009-07-20 00:00:33 +00:00
gdbadmin
6e0db5a268 *** empty log message *** 2009-07-19 00:00:03 +00:00
Michael Snyder
fdd654f3cc 2009-07-18 Michael Snyder <msnyder@vmware.com>
* infrun.c (handle_inferior_event): Remove an execution_direction
	check in the "check for subroutine calls" test, and add some
	additional handling for reverse-stepping through shared libraries.
2009-07-18 23:35:31 +00:00
Anthony Green
99f752754d Fix prologue analysis for moxie. 2009-07-18 13:52:02 +00:00
gdbadmin
f22fded053 *** empty log message *** 2009-07-18 00:00:33 +00:00
Ulrich Weigand
831a0c4447 * solib.c (solib_bfd_open): Do not call ops->bfd_open.
(solib_map_sections): Call ops->bfd_open instead of solib_bfd_open.
	* solib-frv.c (_initialize_frv_solib): Initialize bfd_open member.
	* solib-irix.c (_initialize_irix_solib): Likewise.
	* solib-null.c (_initialize_null_solib): Likewise.
	* solib-osf.c (_initialize_osf_solib): Likewise.
	* solib-pa64.c (_initialize_pa64_solib): Likewise.
	* solib-som.c (_initialize_som_solib): Likewise.
	* solib-sunos.c (_initialize_sunos_solib): Likewise.
	* solib-svr4.c (_initialize_svr4_solib): Likewise.
	* solib-target.c (_initialize_solib_target): Likewise.
2009-07-17 17:08:23 +00:00
Ulrich Weigand
328d0145af * mi/mi-cmd-disas.c (mi_cmd_disassemble): Respect mixed_mode flag. 2009-07-17 15:55:54 +00:00
gdbadmin
967d9d9538 *** empty log message *** 2009-07-17 00:00:03 +00:00
Doug Evans
099cb4fb6e * linux-thread.db.c (try_thread_db_load_1): Tweak comment. 2009-07-16 20:45:17 +00:00
Paul Pluzhnikov
456b0e2407 2007-07-16 Paul Pluzhnikov <ppluzhnikov@google.com>
* linux-thread-db.c (thread_db_find_new_threads_silently):
	New function.
	(try_thread_db_load_1): Call it.
2009-07-16 19:47:43 +00:00
gdbadmin
74a4e4306a *** empty log message *** 2009-07-16 00:00:33 +00:00
Doug Evans
933113889e Code reorg in preparation for adding comdat types support.
* dwarf2read.c (struct die_reader_specs): New struct.
	(locate_pdi_sibling): New arg buffer.  All callers updated.
	(load_partial_dies, read_partial_die): Ditto.
	(read_8_bytes): Change return type to ULONGEST.
	(read_comp_unit): Delete arg abfd.  All callers updated.
	(read_die_and_children_1): Delete args abfd, cu.  New arg reader.
	All callers updated.
	(read_die_and_children, read_die_and_siblings): Ditto.
	(read_full_die): Ditto.  Move closer to callers.
	(skip_one_die): New arg buffer.  All callers updated.
	(load_full_comp_unit): Change return type to void.  All callers
	updated.
	(partial_read_comp_unit_head): New args buffer, buffer_size.
	All callers updated.
	(process_psymtab_comp_unit): New function, split out from
	dwarf2_build_psymtabs_hard.
	(dwarf2_build_psymtabs_hard): Call it.
	(load_partial_comp_unit): Renamed from load_comp_unit.
	All callers updated.
	(skip_children): New arg buffer.  All callers updated.
	(init_cu_die_reader): New function.
	(is_ref_attr): New function.
	(dwarf2_get_ref_die_offset): Call it.
	(alloc_one_comp_unit): New function.
2009-07-15 22:17:10 +00:00
Michael Snyder
dcd5da8777 2009-07-14 Michael Snyder <msnyder@vmware.com>
* gdb.reverse/finish-reverse.exp: Do not expect reverse-finish
	to bring gdb to the beginning of the calling line.
2009-07-15 01:18:58 +00:00
Michael Snyder
6e0a4f1593 2009-07-14 Michael Snyder <msnyder@vmware.com>
* gdb.arch/i386-signal.c (sigframe): Add a nop to avoid
	confusing the i386 epilogue unwinder.
2009-07-15 01:12:16 +00:00
gdbadmin
5c0b619860 *** empty log message *** 2009-07-15 00:00:33 +00:00
Stan Shebs
bf0d7e9cd3 * MAINTAINERS (Global Maintainers): Add Doug Evans. 2009-07-14 22:56:30 +00:00
Stan Shebs
782b2b0784 gdb/
Conditional tracepoints.
	* ax-gdb.h (gen_eval_for_expr): Declare.
	* ax-gdb.c (gen_expr): Generate bytecodes for BINOP_EQUAL
	and other comparisons.
	(gen_eval_for_expr): New function.
	(agent_eval_command): New maintenance command.
	(_initialize_ax_gdb): Define the command.
	* remote.c (struct remote_state): New field cond_tracepoints.
	(PACKET_ConditionalTracepoints): New packet config type.
	(remote_cond_tracepoint_feature): New function.
	(remote_protocol_features): Add ConditionalTracepoints.
	(remote_supports_cond_tracepoints): New function.
	(_initialize_remote): Add ConditionalTracepoints.
	* tracepoint.c (download_tracepoint): Add conditional.
	* NEWS: Mention conditional tracepoints.

	gdb/doc/
	* gdb.texinfo (Tracepoint Conditions): New section.
	(General Query Packets): Describe ConditionalTracepoints.
	(Tracepoint Packets): Describe condition field.
	(Maintenance Commands): Describe maint agent-eval.
	* agentexpr.texi (Using Agent Expressions): Mention eval usage.

	gdb/testsuite/
	* gdb.trace/tracecmd.exp: Add basic test of tracepoint conditions.
2009-07-14 21:40:34 +00:00
Michael Snyder
f662c3bce4 2009-07-14 Michael Snyder <msnyder@vmware.com>
* gdb.reverse/step-reverse.exp (stepi into function call):
	Call instruction may not be first instruction in the line.
	(reverse stepi from a function call): Used wrong line number.
2009-07-14 20:17:26 +00:00