Commit Graph

12620 Commits

Author SHA1 Message Date
Joel Brobecker f7f9143bd3 * ada-lang.h (ada_find_printable_frame): Remove.
(ada_exception_catchpoint_p, ada_decode_exception_location)
        (ada_decode_assert_location): Add declaration.
        * ada-lang.c: Add include of annotate.h and valprint.h.
        (exception_catchpoint_kind): New enum.
        (function_name_from_pc, is_known_support_routine)
        (ada_find_printable_frame, ada_unhandled_exception_name_addr)
        (ada_exception_name_addr_1, ada_exception_name_addr)
        (print_it_exception, print_one_exception, print_mention_exception)
        (print_it_catch_exception, print_one_catch_exception)
        (print_mention_catch_exception, catch_exception_breakpoint_ops)
        (print_it_catch_exception_unhandled)
        (print_one_catch_exception_unhandled)
        (print_mention_catch_exception_unhandled, print_it_catch_assert)
        (print_one_catch_assert, print_mention_catch_assert)
        (ada_exception_catchpoint_p, error_breakpoint_runtime_sym_not_found)
        (ada_get_next_arg, catch_ada_exception_command_split)
        (ada_exception_sym_name, ada_exception_sym_name)
        (ada_exception_breakption_ops, ada_exception_catchpoint_cond_string)
        (ada_parse_catchpoint_condition, ada_exception_sal)
        (ada_decode_exception_location)
        (ada_decode_assert_location): New function.
        (catch_exception_unhandled_breakpoint_ops): New global variable.
        (catch_assert_breakpoint_ops): New global variable.
        * breakpoint.c: Add include of ada-lang.h.
        (print_one_breakpoint): Do not print the condition for Ada
        exception catchpoints.
        (create_ada_exception_breakpoint): New function.
        (catch_ada_exception_command, catch_assert_command): New function.
        (catch_command_1): Add support for the new "catch exception" and
        "catch assert" commands.
        (_initialize_breakpoint): Add help description for the new catch
        commands.
        * Makefile.in (ada-lang.o): Add dependency on annotate.h and
        valprint.h.
        (breakpoint.o): Add dependency on ada-lang.h.
2007-01-04 05:27:31 +00:00
Daniel Jacobowitz 05cfdb42f8 2007-01-03 Pedro Alves <pedro_alves@portugalmail.pt>
* coffread.c (cs_to_section): If bfd_section is found, always
	return its section index.
	(coff_symtab_read): Determine the minimal_symbol_type using the
	bfd_section flags.

	* gdb.base/shreloc.exp: Use ldflags instead of additional_flags to
	pass --image-base to linker.
2007-01-03 23:06:29 +00:00
Daniel Jacobowitz 2e03ee74df 2007-01-03 Jan Kratochvil <jan.kratochvil@redhat.com>
Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (top.o): Update.
	* top.c (gdb_readline_wrapper_done, gdb_readline_wrapper_result)
	(saved_after_char_processing_hook, gdb_readline_wrapper_line)
	(struct gdb_readline_wrapper_cleanup, gdb_readline_wrapper_cleanup):
	New.
	(gdb_readline_wrapper): Rewrite to use asynchronous readline.

2007-01-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb.base/readline.exp: Set $TERM.  Test arrow keys in
	secondary prompts.
2007-01-03 21:46:12 +00:00
Mark Kettenis 1c63d08666 * arm-linux-tdep.c (arm_linux_extract_return_value): Remove.
(arm_linux_init_abi): Don't set deprecated_extract_return_value.
2007-01-03 20:54:32 +00:00
Daniel Jacobowitz d5d6fca504 Warning fixes.
* ada-lang.c (find_struct_field): Initialize *byte_offset_p.
	* breakpoint.c (do_enable_breakpoint): Ignore both mem_cnt and i.
	* c-typeprint.c (c_type_print_varspec_suffix): Don't test length
	greater than or equal to zero.
	* m2-typeprint.c (m2_array): Likewise.
	* p-typeprint.c (pascal_type_print_varspec_prefix): Likewise.
	* gdbtypes.c (copy_type_recursive): Correct == typo.
	* i386-tdep.c (i386_skip_prologue): Remove stray semicolon.
	* linux-nat.c (linux_nat_info_proc_cmd): Don't compare a pointer
	greater than zero.
	* macroscope.c (sal_macro_scope): Don't name a local variable "main".
	(default_macro_scope): Remove unused variable.
	* prologue-value.h (pv_area_find_reg): Don't name an argument
	"register".
	* remote-fileio.c (remote_fio_func_map): Add missing braces.
	* remote.c (sigint_remote_twice_token, sigint_remote_token): Change
	type.
	(cleanup_sigint_signal_handler): Remove casts.
	* valprint.c (val_print): Use a volatile local for the modified
	argument.
	* varobj.c (languages): Remove extra array dimension.
	(varobj_create): Correct access to languages array.
	* mi/mi-cmd-break.c (mi_cmd_break_insert, mi_cmd_break_watch): Add
	missing braces.
	* mi/mi-cmd-disas.c (mi_cmd_disassemble): Likewise.
	* mi/mi-cmd-env.c (mi_cmd_env_path, mi_cmd_env_dir): Likewise.
	* mi/mi-getopt.c (mi_valid_noargs): Likewise.
	* mi/mi-main.c (mi_cmd_data_read_memory): Likewise.
	(mi_cmd_data_write_memory): Likewise.
	* signals/signals.c (target_signal_to_string): Cast to int before
	comparing.
	* tui/tui-layout.c (init_and_make_win): Take and return a void *.
	Update all callers.
2007-01-03 19:01:25 +00:00
Daniel Jacobowitz 0d5de0100f * NEWS: Mention pointer to member improvements.
* Makefile.in (gnu-v3-abi.o): Delete special rule.
	(eval.o, gnu-v3-abi.o, ia64-tdep.o): Update.
	* ada-valprint.c (ada_print_scalar): Update for new type codes.
	* c-typeprint.c (c_print_type): Update for new type codes.
	(c_type_print_varspec_prefix, c_type_print_varspec_suffix)
	(c_type_print_base): Likewise.
	(c_type_print_args): Rewrite.
	* c-valprint.c (c_val_print): Update for new type codes.  Remove
	support for references to members.  Treat methods like functions.
	* cp-abi.c (cplus_print_method_ptr, cplus_method_ptr_size)
	(cplus_make_method_ptr, cplus_method_ptr_to_value): New.
	* cp-abi.h (cplus_print_method_ptr, cplus_method_ptr_size)
	(cplus_make_method_ptr, cplus_method_ptr_to_value): New prototypes.
	(struct cp_abi_ops): Add corresponding members.
	* cp-valprint.c (cp_print_class_method): Delete.
	(cp_find_class_member): New function.
	(cp_print_class_member): Use it.  Simplify support for bogus
	member pointers.
	* dwarf2read.c (quirk_gcc_member_function_pointer): Use
	lookup_methodptr_type.
	(read_tag_ptr_to_member_type): Likewise, and lookup_memberptr_type.
	* eval.c (evaluate_subexp_standard): Implement EVAL_SKIP for
	OP_SCOPE.  Update call to value_aggregate_elt.  Rewrite member
	pointer support.
	(evaluate_subexp_for_address): Handle OP_SCOPE explicitly.  Handle
	references returned by user defined operators.
	* f-typeprint.c (f_print_type, f_type_print_varspec_prefix)
	(f_type_print_varspec_suffix): Remove support for member pointers.
	* gdbtypes.c (lookup_memberptr_type): Renamed from lookup_member_type
	and adjusted.
	(smash_to_memberptr_type): Likewise, from smash_to_member_type.
	(lookup_methodptr_type): New.
	(rank_one_type): Adjust for TYPE_CODE_MEMBERPTR.
	(recursive_dump_type): Update for new types.
	* gdbtypes.h (enum type_code): Replace TYPE_CODE_MEMBER with
	TYPE_CODE_MEMBERPTR and TYPE_CODE_METHODPTR.
	(lookup_memberptr_type, lookup_methodptr_type)
	(smash_to_memberptr_type): New prototypes.
	(smash_to_method_type): Formatting fix.
	(lookup_member_type, smash_to_member_type): Delete prototypes.
	* gnu-v3-abi.c (gnuv3_get_vtable, gnuv3_get_virtual_fn): New.
	Do not rely on debug information for the vptr or the method's
	enclosing type.  Handle function descriptors for IA64.
	(gnuv3_virtual_fn_field): Rewrite using the new functions.
	(gnuv3_find_method_in, gnuv3_print_method_ptr)
	(gnuv3_method_ptr_size, gnuv3_make_method_ptr)
	(gnuv3_method_ptr_to_value): New.
	(init_gnuv3_ops): Set new members of gnu_v3_abi_ops.
	* hpread.c (hpread_type_lookup): Update for new types.
	* infcall.c (value_arg_coerce): Likewise.
	* m2-typeprint.c (m2_print_type): Remove explicit support
	for member pointers.
	* m2-valprint.c (m2_val_print): Likewise.
	* p-typeprint.c (pascal_type_print_varspec_prefix)
	(pascal_type_print_varspec_suffix, pascal_type_print_base): Likewise.
	* p-valprint.c (pascal_val_print): Likewise.
	(pascal_object_print_class_method, pascal_object_print_class_member):
	Delete.
	* p-lang.h (pascal_object_print_class_method)
	(pascal_object_print_class_member): Delete prototypes.
	* stabsread.c (read_type): Update for new types.
	* typeprint.c (print_type_scalar): Likewise.
	* valops.c (value_struct_elt_for_reference, value_namespace_elt)
	(value_maybe_namespace_elt, value_aggregate_elt): Add want_address
	argument.  Construct a pointer to member if the address of a
	function or data member is requested.
	(value_cast_pointers): Don't modify the input value.
	(value_cast): Adjust pointer to member handling for new types.
	Allow null pointer to member constants.  Don't modify the input
	value.
	(value_ind): Remove pointer to member check.  Handle function
	descriptors for function pointers.
	(value_struct_elt, value_find_oload_method_list, check_field):
	Remove pointer to member checks.
	* value.c (unpack_long): Allow pointers to data members.
	(value_from_longest): Allow member pointers.
	* value.h (value_aggregate_elt): Add want_address.
	* varobj.c (c_variable_editable): Remove check for members.
	* gdbarch.sh: Add vtable_function_descriptors and vbit_in_delta.
	* ia64-tdep.c (ia64_convert_from_func_ptr_addr): Handle descriptors
	in virtual tables.
	(ia64_gdbarch_init): Call set_gdbarch_vtable_function_descriptors.
	* c-lang.h (cp_print_class_method): Delete prototype.
	* arm-tdep.c (arm_gdbarch_init): Call set_gdbarch_vbit_in_delta.
	* mips-tdep.c (mips_gdbarch_init): Likewise.
	* gdbarch.c, gdbarch.h: Regenerated.

	* gdb.cp/classes.exp (test_pointers_to_class_members): Update expected
	output.  Test the types of members and member pointers.
	* gdb.cp/inherit.exp (test_print_mi_member_types): Remove KFAILs for
	gdb/2092.
	* gdb.cp/member-ptr.exp: Search for a comment instead of a
	statement.  Enable for GCC.  Update expected output for some tests
	and add new tests.  Remove obsolete GCC KFAILs.  Allow GCC's class
	layout.
	* gdb.cp/member-ptr.cc (Padding, Padding::vspacer, Base, Base::get_x)
	(Base::vget_base, Left, Left::vget, Right, Right::vget, Diamond)
	(Diamond::vget_base): New.
	(main): Add new tests.
	* gdb.cp/printmethod.exp: Update expected output for member functions.
	* gdb.cp/virtfunc.exp (test_virtual_calls): Add a KFAIL for
	print pEe->D::vg().
2007-01-03 18:05:45 +00:00
Mark Kettenis d217aaedaf * rs6000-tdep.c (rs6000_use_struct_convention)
(rs6000_extract_return_value, rs6000_store_return_value)
(rs6000_extract_struct_value_address): Remove.
(rs6000_return_value): New function.
(rs6000_gdbarch_init): Don't set deprecated_extract_return_value,
store_return_value, deprecated_extract_struct_value_address and
deprecated_use_struct_convention.  Use rs6000_return_value
instead.
2007-01-02 19:21:13 +00:00
Nick Roberts 02296b2961 *** empty log message *** 2007-01-02 06:58:36 +00:00
Joel Brobecker ce186b302c * breakpoint.c (remove_breakpoint): Remove dead code. 2007-01-01 14:10:40 +00:00
Nick Roberts ab9245edd2 *** empty log message *** 2007-01-01 12:00:33 +00:00
Mark Kettenis 9f3a16025f * mi/mi-main.c (mi_cmd_data_write_register_values): Use
regcache_cooked_write_signed instead of
deprecated_write_register_bytes.
2007-01-01 11:17:28 +00:00
Joel Brobecker 12349ccd62 * config/djgpp/fnchange.lst: Add entry for ChangeLog-2006. 2007-01-01 07:01:30 +00:00
Joel Brobecker 8c48ebcfed Followed the Start of New Year Procedure:
* ChangeLog-2006: New file, containing all the entries for 2006.
        * ChangeLog: Removed all 2006 entries, and changed the reference
        to the previous ChangeLog to point to ChangeLog 2006.
        * top.c (print_gdb_version): Update copyright year.
2007-01-01 05:57:49 +00:00
Mark Kettenis 154927ff99 * Makefile.in (remote-sds.o): Remove.
* remote-sds.c: Delete.
2006-12-31 23:59:07 +00:00
Daniel Jacobowitz 9ee57c332e * linux-nat.c (lin_lwp_attach_lwp): Return a status. Do not
add the LWP to our list until we are attached.  Warn instead
	of erroring if the attach fails.
	* linux-nat.h (lin_lwp_attach_lwp): New prototype.
	* linux-thread-db.c (attach_thread): Call lin_lwp_attach_lwp
	directly.  Do not add the thread to our list until we are
	successfully attached.
	* config/nm-linux.h (lin_lwp_attach_lwp, ATTACH_LWP): Delete.
2006-12-31 21:04:51 +00:00
Daniel Jacobowitz 59f80f1088 * configure.ac: Add tests for TD_VERSION and TD_NOTLS.
* linux-thread-db.c (thread_db_err_str): Recognize TD_NOTALLOC,
	TD_VERSION, and TD_NOTLS.
	* configure, config.in: Regenerated.
2006-12-31 20:20:13 +00:00
Joel Brobecker ade5215683 * i386-tdep.c (i386_analyze_stack_align): Add handling of two
other possible code sequences that perform a stack realignment.
2006-12-31 14:50:37 +00:00
Mark Kettenis 6df5070e3f * sparc64-tdep.h (SPARC64_PSTATE_AG, SPARC64_PSTATE_IE)
(SPARC64_PSTATE_PRIV, SPARC64_PSTATE_AM, SPARC64_PSTATE_PEF)
(SPARC64_PSTATE_RED, SPARC64_PSTATE_TLE, SPARC64_PSTATE_CLE)
(SPARC64_PSTATE_PID0, SPARC64_PSTATE_PID1): New defines.
* sparc64nbsd-nat.c: Include "gdbcore.h".
(sparc64nbsd_supply_pcb): Get %pc from stack if necessary.  Supply
processor state register.
* sparc64obsd-tdep.c (sparc64obsd_trapframe_cache)
(sparc64obsd_trapframe_this_id)
(sparc64obsd_trapframe_prev_register)
(sparc64obsd_trapframe_sniffer): New functions.
(sparc64obsd_trapframe_unwind): New variable.
(sparc64obsd_init_abi): Append trapframe unwinder.
* Makefile.in (sparc64nbsd-nat.o): Update dependencies.
2006-12-31 01:28:07 +00:00
Daniel Jacobowitz 17e245fee0 * infrun.c (handle_inferior_event): Don't call
ENSURE_VFORKING_PARENT_REMAINS_STOPPED.
	* target.h (ENSURE_VFORKING_PARENT_REMAINS_STOPPED): Delete.
	(RESUME_EXECD_VFORKING_CHILD_TO_GET_PARENT_VFORK): Delete.
2006-12-30 15:56:00 +00:00
Mark Kettenis 2d45707707 * sparc-tdep.c (sparc_psr_type, sparc_fsr_type): New variables.
(sparc_init_types): New function.
(sparc32_register_type): Use appropriate flag types for %fsr and
%prs.
(_initialize_sparc_tdep): Call sparc_init_types.
2006-12-29 21:00:47 +00:00
Mark Kettenis 0cb31fdf92 * memory-map.c (memory_map_end_element): Move variable
declarations to the begining of the block.
2006-12-29 09:46:35 +00:00
Daniel Jacobowitz eeec829cf9 * ia64-tdep.c (get_kernel_table): Correct signedness in check
for a negative return value.
2006-12-28 23:48:51 +00:00
Jim Blandy 470340e188 Consolidate Gary Funck's two ChangeLog entries. 2006-12-28 19:55:23 +00:00
Gary Funck b761958201 2006-12-27 Gary Funck <gary@intrepid.com>
* dwarf2read.c (dwarf_attr_name, dwarf_cfi_name)
	(dwarf_stack_op_name, dwarf_tag_name)
	(dwarf_type_encoding_name): Decode additional DWARF 2
	and DWARF 3 codes into their corresponding string names.
2006-12-27 22:38:57 +00:00
Gary Funck a82f4889cb * MAINTAINERS (Write After Approval): Add myself. 2006-12-27 21:29:33 +00:00
Joel Brobecker 4bd8771477 * sparc64-tdep.c (sparc64_extract_return_value): Add handling
for array types.
        (sparc64_store_return_value): Likewise.
2006-12-26 05:03:11 +00:00
Daniel Jacobowitz 69fbadd53d * breakpoint.c (watchpoint_check): Double-check the found frame. 2006-12-18 22:10:13 +00:00
Mark Kettenis 84c5b489a8 Mark Kettenis <kettenis@gnu.org>
* i386nbsd-nat.c: Include "nbsd-nat.h".
(_initialize_i386nbsd_nat): Update target vector to use
nbsd_pid_to_exec_file.
* config/i386/nbsdelf.mh (NATDEPFILES): Add nbsd-nat.o.
* config/i386/nbsdaout.mh (NATDEPFILES): Add nbsd-nat.o.
* nbsd-nat.c: New file.
* nbsd-nat.h: New file.
* Makefile.in (ALLDEPFILES): Add nbsd-nat.c.
(nbsd_nat_h): New variable.
(nbsd-nat.o): New dependency.
2006-12-17 13:30:44 +00:00
Daniel Jacobowitz d0e5500c95 * Makefile.in (ALLDEPFILES): Remove mipsv4-nat.c.
(mipsv4-nat.o): Delete.
	* mipsv4-nat.c: Delete.
2006-12-16 21:00:29 +00:00
Daniel Jacobowitz f3d770869c * dve3900-rom.c: Delete file.
* Makefile.in (dve3900-rom.o): Delete.
2006-12-16 19:18:37 +00:00
Daniel Jacobowitz 6213115e47 * vx-share/README: Delete file. 2006-12-16 18:40:56 +00:00
Mark Kettenis 5d0fc17b31 * i386obsd-nat.c: Include "gdbcore.h", "regcache.h", "target.h",
<machine/frame.h>, <machine/pcb.h>, "i386bsd-nat.h" and
"bsd-kvm.h".
(i386obsd_supply_pcb): New function.
(_initialize_i386obsd_nat): Construct and add target
vector. Enable libkvm interface.
* Makefile.in (i386obsd-nat.o): Update dependencies.
* config/i386/obsd.mh (NATDEPFILES): Remove i386nbsd-nat.c
2006-12-16 10:45:52 +00:00
Mark Kettenis 37e28b926c * sparcobsd-tdep.c: Fix typo. 2006-12-16 00:06:55 +00:00
Mark Kettenis bd37273160 Add OpenBSD/sh native support.
* NEWS (New native configurations): Mention OpenBSD/sh.
* configure.host: Add sh*-*-openbsd*.
* shnbsd-nat.c: Include "inf-ptrace.h".
(shnbsd_fetch_inferior_registers): Rename from
fetch_inferior_registers.  Make static.
(shnbsd_store_inferior_registers): Rename from
store_inferior_registers.  Make static.
(_initialize_shnbsd_nat): New function.
* Makefile.in (shnbsd-nat.o): Update dependencies.
* config/sh/nbsd.mh (NAT_CLIBS, NAT_FILE): Remove.
(NATDEPFILES): Remove infptrace.o and inftarg.o.  Add
inf-ptrace.o.
2006-12-15 23:57:35 +00:00
Mark Kettenis 54fe917236 Add OpenBSD/sh support.
* NEWS (New targets): Mention OpenBSD/sh.
* configure.tgt: Add sh*-*-openbsd*.
* shnbsd-tdep.c (_initialize_shnbsd_tdep): Register handler for
GDB_OSABI_OPENBSD_ELF.
* config/sh/obsd.mt: New file.
2006-12-15 23:45:04 +00:00
Mark Kettenis 1e17aef808 * ppcnbsd-tdep.c: Fix typo in comment. 2006-12-15 23:22:37 +00:00
Mark Kettenis 9c7deb13f0 * remote-fileio.c (remote_fileio_mode_to_target): Use
S_ISREG/S_ISDIR/S_ISCHR macros instead of S_IFREG/S_IFDIR/S_IFCHR.
2006-12-15 23:17:56 +00:00
Daniel Jacobowitz 0767c96d9d * breakpoint.c (insert_bp_location): Add newline to note. 2006-12-15 15:22:22 +00:00
Alan Modra f6cf9273b3 bfd/
* opncls.c (bfd_openr_iovec): Add "stat" parameter.
	(struct opncls): Add "stat" field.
	(opncls_bstat): Call vec->stat.
	* bfd-in2.h: Regenerate.
	* elf32-spu.c (spu_elf_open_builtin_lib): Adjust.
gdb/
	* spu-linux-nat.c (spu_bfd_iovec_stat): New function.
	(spu_bfd_open): Adjust bfd_openr_iovec call.
2006-12-15 04:13:37 +00:00
Jim Blandy 6f7c8fc2c5 * value.c (value_copy): Copy the full 'location' contents, instead
of assuming that copying ADDRESS will bring over everything in the
	union.
2006-12-13 22:36:48 +00:00
Ulrich Weigand f2d43c2c03 2006-12-13 Markus Deuling <deuling@de.ibm.com>
* spu-tdep.c (spu_init_vector_type): New function.
	(spu_builtin_type_vec128.): New static variable.
	(spu_register_type): Return spu_builtin_type_vec128 as default.
	(_initialize_spu_tdep): Call spu_init_vector_type.
2006-12-13 14:17:53 +00:00
Corinna Vinschen 002c07a9ff * win32-nat.c (env_sort): Remove.
(win32_create_inferior): Remove code which creates a Windows
	environment.  Use Cygwin function call instead.  Propagate
	current environment to inferior process.
2006-12-09 09:12:59 +00:00
Nick Roberts 3dca6e6038 *** empty log message *** 2006-12-08 22:05:36 +00:00
Eli Zaretskii 520b03f9e4 *** empty log message *** 2006-12-08 17:30:44 +00:00
Vladimir Prus b26ed50ddf 2006-12-08 Vladimir Prus <vladimir@codesourcery.com>
* varobj.c (varobj_create): Don't call release_value.
        (varobj_set_value): Likewise.
        (install_new_value): Call coerce_ref and release_value
        on the value. Add asserts.
2006-12-08 12:44:11 +00:00
Nick Roberts ba17f7aa4d *** empty log message *** 2006-12-08 04:09:30 +00:00
Jim Blandy 2372d65a14 2006-12-06 Jim Blandy <jimb@codesourcery.com>
* gdbtypes.c: Revert 2006-12-05 change, and explain why.
2006-12-06 20:15:19 +00:00
Andrew Stubbs fa3fd85b06 2006-12-06 Andrew Stubbs <andrew.stubbs@st.com>
* event-top.c (command_handler): On EOF, print 'quit' and run quit
	command via execute_command such that hooks and trace work.
	* utils.c (defaulted_query): On EOF, print default answer and newline.
2006-12-06 16:49:57 +00:00
Vladimir Prus 4ae4f4fb15 2006-12-06 Vladimir Prus <vladimir@codesourcery.com>
* varobj.c (cplus_value_of_child): When accessing
        base suboject, don't specially process references.
2006-12-06 09:01:50 +00:00
Adam Nemet b3d379e410 * MAINTAINERS (Write After Approval): Add myself. 2006-12-06 06:51:50 +00:00