Commit graph

25731 commits

Author SHA1 Message Date
Tom Tromey
edf3d5f3f8 gdb
PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
	* valops.c (search_struct_field): Compute nbases after calling
	CHECK_TYPEDEF.
	(check_field): Call CHECK_TYPEDEF.
	* cp-valprint.c (cp_print_value): Pass correct address to
	baseclass_offset.  Fix check for virtual base past the end of the
	object.  Don't offset address passed to cp_print_value_fields or
	apply_val_pretty_printer.
	(cp_print_value_fields): Fix call to val_print.
	(cp_print_value_fields_rtti): New function.
	* c-valprint.c (c_val_print): Use cp_print_value_fields_rtti.
	* p-valprint.c (pascal_object_print_value_fields): Fix call to
	val_print.
	* python/py-prettyprint.c (apply_val_pretty_printer): Add embedded
	offset to address.
	* language.h (struct language_defn) <la_val_print>: Document.
	* c-lang.h (cp_print_value_fields_rtti): Declare.
gdb/testsuite
	PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
	* gdb.cp/virtbase.cc: New file.
	* gdb.cp/virtbase.exp: New file.
	* gdb.cp/userdef.exp: Allow 'struct' or 'class'.
2010-02-02 16:45:17 +00:00
Joel Brobecker
0718675c76 gdbserver crash when running 32bits exes on x64 Windows.
* inferiors.c (find_inferior): Add function documentation.
        (unloaded_dll): Handle the case where the unloaded dll has not
        been previously registered in the dll list.
2010-02-02 04:24:26 +00:00
gdbadmin
54c4e2c2dc *** empty log message *** 2010-02-02 00:00:33 +00:00
Jan Kratochvil
e4b7f41c57 gdb/
PR libc/11214:
	* linux-low.c (linux_tracefork_child) [!(__UCLIBC__ && HAS_NOMMU)]: New.
	(linux_test_for_tracefork): Move `stack' into [__UCLIBC__ && HAS_NOMMU].
	(linux_test_for_tracefork) [!(__UCLIBC__ && HAS_NOMMU)]: New.

gdb/testsuite/
	PR libc/11214:
	* gdb.threads/current-lwp-dead.c: Include features.h.
	(HAS_NOMMU): New.
	(fn, main): Move CLONE_VM into [__UCLIBC__ && HAS_NOMMU].
2010-02-01 20:19:06 +00:00
Daniel Jacobowitz
7618e12bcb * i386-tdep.c (i386_frame_cache): Assume valid anonymous
functions use a frame pointer.
2010-02-01 19:46:46 +00:00
Jan Kratochvil
b381ea14bd gdb/
* solib-svr4.c (scan_dyntag): New variable dyn_addr.  Replace gdb_assert
	by a conditional setting DYN_ADDR.  Use DYN_ADDR.
	* config/djgpp/fnchange.lst: Add translations for
	symbol-without-target_section.exp and symbol-without-target_section.c.

gdb/testsuite/
	* gdb.base/symbol-without-target_section.exp,
	gdb.base/symbol-without-target_section.c: New.
2010-02-01 19:27:55 +00:00
Daniel Jacobowitz
c593ac0e23 * gdb.base/bigcore.exp: Reset increased timeout.
* gdb.base/interrupt.exp: Match unexpected gdb prompt.
2010-02-01 17:51:18 +00:00
Daniel Jacobowitz
db25f29d62 * gdb.base/gcore.exp (capture_command_output): Use
gdb_test_multiple.
2010-02-01 17:15:36 +00:00
Daniel Jacobowitz
0e05dfcb73 * gdbarch.sh: Set LANG and LC_ALL to C, not c.
(remote_breakpoint_for_pc): Correct invalid_p check.
	* gdbarch.c: Regenerated.
2010-02-01 16:57:01 +00:00
Daniel Jacobowitz
f9d67f435f * arm-tdep.c (arm_find_mapping_symbol): New function, from
arm_pc_is_thumb.
	(arm_pc_is_thumb): Use arm_find_mapping_symbol.
	(extend_buffer_earlier): New function.
	(MAX_IT_BLOCK_PREFIX, IT_SCAN_THRESHOLD): New constants.
	(arm_adjust_breakpoint_address): New function.
	(arm_gdbarch_init): Register arm_adjust_breakpoint_address.

	testsuite/
	* gdb.arch/thumb2-it.S (it_breakpoints): New function.
	* gdb.arch/thumb2-it.exp (test_it_break): New function.
	(Top level): Call it.
2010-02-01 16:16:30 +00:00
Daniel Jacobowitz
177321bd85 * arm-linux-tdep.c (arm_linux_thumb2_be_breakpoint)
(arm_linux_thumb2_le_breakpoint): New constants.
	(arm_linux_init_abi): Set thumb2_breakpoint and
	thumb2_breakpoint_size.
	* arm-tdep.c (thumb_insn_size, thumb_advance_itstate): New functions.
	(thumb_get_next_pc): Add a comment.  Rename IT to ITSTATE.
	Implement support for single stepping through IT blocks if
	a 32-bit Thumb breakpoint instruction is available.
	(arm_breakpoint_from_pc): If a 32-bit Thumb breakpoint instruction
	is available, use it when needed.
	(arm_remote_breakpoint_from_pc): New function.
	(arm_gdbarch_init): Register arm_remote_breakpoint_from_pc.
	* arm-tdep.h (struct gdbarch_tdep): Correct thumb_breakpoint
	comment.  Add thumb2_breakpoint and thumb2_breakpoint_size.

	gdbserver/
	* linux-arm-low.c (thumb_breakpoint_len): Delete.
	(thumb2_breakpoint): New.
	(arm_breakpoint_at): Check for Thumb-2 breakpoints.

	testsuite/
	* gdb.arch/thumb2-it.S, gdb.arch/thumb2-it.exp: New files.
2010-02-01 16:13:17 +00:00
Daniel Jacobowitz
a1dcb23a28 * arch-utils.c (default_remote_breakpoint_from_pc): New function.
* arch-utils.h (default_remote_breakpoint_from_pc): Declare.
	* gdbarch.c, gdbarch.h: Regenerated.
	* gdbarch.sh (remote_breakpoint_from_pc): New architecture method.
	* remote.c (remote_insert_breakpoint, remote_insert_hw_breakpoint): Use
	gdbarch_remote_breakpoint_from_pc.

	doc/
	* gdb.texinfo (Architecture-Specific Protocol Details): New section.
	Document ARM breakpoint types.
	(Register Packet Format): Move into the new section.
	(Packets): Describe the KIND argument for Z0, z0, Z1, and z1 packets.
2010-02-01 16:09:22 +00:00
gdbadmin
89b402421c *** empty log message *** 2010-02-01 00:00:33 +00:00
gdbadmin
20336e48a0 *** empty log message *** 2010-01-31 00:00:02 +00:00
gdbadmin
04258814fc *** empty log message *** 2010-01-30 00:00:03 +00:00
Daniel Jacobowitz
2b00904856 * infrun.c (prepare_to_proceed): Handle other signals which might
match a breakpoint.
	(handle_inferior_event): Move the check for unusual breakpoint
	signals earlier.

	gdbserver/
	* linux-low.c (get_stop_pc): Check for SIGTRAP.
	(linux_wait_for_event_1): Handle SIGILL and SIGSEGV as possible
	breakpoints.
2010-01-29 15:40:22 +00:00
Daniel Jacobowitz
97f2ed50d0 * gdb.base/call-strs.exp, gdb.base/default.exp,
gdb.base/ending-run.exp, gdb.base/finish.exp, gdb.base/funcargs.exp,
	gdb.base/huge.exp, gdb.base/nodebug.exp, gdb.base/ptype.exp,
	gdb.base/restore.exp, gdb.base/return.exp, gdb.base/setvar.exp,
	gdb.base/watchpoints.exp, gdb.threads/gcore-thread.exp,
	gdb.base/watchpoint-solib.exp: Save and restore timeout.
	* gdb.base/ending-run.exp: Correct restore of timeout.
	* gdb.base/page.exp: Remove unnecessary timeout setting.
2010-01-29 15:38:38 +00:00
Joel Brobecker
e4e2711a4a amd64 - function returning record with field straddling 2 registers
gdb/ChangeLog:

        From Paul Hilfinger  <hilfinger@adacore.com>
        * amd64-tdep.c (amd_classify_aggregate): Handle the case of
        a record of length <= 16 in which a field straddles the two
        eightbytes.

gdb/testsuite/ChangeLog:

        * gdb.ada/rec_return: New testcase.
2010-01-29 14:39:04 +00:00
Joel Brobecker
cba6fab54a Implement return values on amd64-windows.
* amd64-windows-tdep.c: #include gdbcore.h and regcache.h.
        (amd64_windows_return_value): New function.
        (amd64_windows_init_abi): Call set_gdbarch_return_value with
        amd64_windows_return_value.
2010-01-29 05:29:21 +00:00
Joel Brobecker
3af6ddfec6 amd64-windows: 32 bytes allocated on stack by caller for integer parameter registers
* i386-tdep.h (struct gdbarch_tdep): Add new field
        integer_param_regs_saved_in_caller_frame.
        * amd64-windows-tdep.c (amd64_windows_init_abi): Set
        tdep->integer_param_regs_saved_in_caller_frame to 1.
        * amd64-tdep.c (amd64_push_dummy_call): Allocate some memory on
        stack if tdep->integer_param_regs_saved_in_caller_frame is set.
2010-01-29 05:27:36 +00:00
Joel Brobecker
4966b6c228 Add summary line to the second to last entry. 2010-01-29 05:23:37 +00:00
Joel Brobecker
80d19a0621 amd64-windows: memory args passed by pointer during function calls.
* i386-tdep.h (gdbarch_tdep): Add field memory_args_by_pointer.
        * amd64-tdep.c (amd64_push_arguments): Add handling of architectures
        where tdep->memory_args_by_pointer is non-zero.
        * amd64-windows-tdep.c (amd64_windows_init_abi): Set
        tdep->memory_args_by_pointer to 1.
2010-01-29 05:21:55 +00:00
Joel Brobecker
ba581dc13b amd64: Integer parameters in function calls on Windows.
gdb/ChangeLog:

        * i386-tdep.h (enum amd64_reg_class): New, moved here from
        amd64-tdep.c.
        (struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
        call_dummy_integer_regs, and classify.
        * amd64-tdep.h (amd64_classify): Add declaration.
        * amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
        (amd64_reg_class): Delete, moved to i386-tdep.h.
        (amd64_classify): Make non-static.  Move declaration to amd64-tdep.h.
        Replace call to amd64_classify by call to tdep->classify.
        (amd64_push_arguments): Get the list of registers to use for
        passing integer parameters from the gdbarch tdep structure,
        rather than using a hardcoded one.  Replace calls to amd64_classify
        by calls to tdep->classify.
        (amd64_push_dummy_call): Get the register number used for
        the "hidden" argument from tdep->call_dummy_integer_regs.
        (amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
        and tdep->call_dummy_integer_regs.  Set tdep->classify.
        * amd64-windows-tdep.c: Add include of gdbtypes.h.
        (amd64_windows_dummy_call_integer_regs): New static global.
        (amd64_windows_classify): New function.
        (amd64_windows_init_abi): Initialize tdep->call_dummy_num_integer_regs
        tdep->call_dummy_integer_regs and tdep->classify.

gdb/testsuite/ChangeLog:

        * gdb.ada/call_pn: New testcase.
2010-01-29 05:19:23 +00:00
gdbadmin
18c2a94fb0 *** empty log message *** 2010-01-29 00:00:33 +00:00
Daniel Jacobowitz
4ea95be9cd * gdb.mi/mi-nonstop.exp (mi_nonstop_resume): New function.
(Top level): Use it to resume.
	* lib/mi-support.exp (mi_send_resuming_command_raw): Recognize
	the Thumb mode displaced stepping error as unsupported.
2010-01-28 22:14:12 +00:00
Daniel Jacobowitz
d37346f037 * regcache.c (regcache_xmalloc): Add aspace argument. Use it
for the new regcache.  All callers updated.
	(regcache_cpy, regcache_cpy_no_passthrough): Do not set aspace here.
	(get_thread_arch_regcache): Do not set aspace here.
	* regcache.h (regcache_xmalloc): Update declaration.

	* frame.c, infcall.c, ppc-linux-tdep.c: Calls to
	regcache_xmalloc updated.
2010-01-28 22:07:58 +00:00
Sami Wagiaalla
df83a9bf8b 2010-01-28 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/nsusing.exp: Added more tests.
    * gdb.cp/nsrecurs.exp: Ditto.
    * gdb.cp/nsusing.cc: Added test functions.
    * gdb.cp/nsrecurs.cc: Ditto.
2010-01-28 17:58:02 +00:00
Joel Brobecker
7434dadd5d Another -Wunused-function error in procfs.c (sparc-solaris)
* procfs.c (insert_dbx_link_breakpoint): Delete declaration.  Move up.
        Only define if SYS_syssgi is defined.
        (remove_dbx_link_breakpoint): Delete declaration.  Move up.
        (dbx_link_addr, insert_dbx_link_bpt_in_file)
        (insert_dbx_link_bpt_in_region): Move up.  Only define if SYS_syssgi
        is itself defined.
2010-01-28 08:19:29 +00:00
gdbadmin
3c9177f193 *** empty log message *** 2010-01-28 00:00:03 +00:00
Jan Kratochvil
40b27cdc59 gdb/testsuite/
* gdb.base/break-interp.exp: Use [file tail $filename] to omit any
	absolute directory pathnames in gdb.sum file.
2010-01-27 20:53:22 +00:00
Christopher Faylor
16d905e2be * windows-nat.c (windows_initialization_done): New variable.
(get_windows_debug_event): Issue error when process dies before completely
initializing.
(do_initial_windows_stuff): Set flag to indicate when we are done with the
initial steps of attaching to the child.
2010-01-27 19:57:54 +00:00
Sami Wagiaalla
de958931bc 2010-01-27 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/namespace-using.exp: Rename to nsusing.exp.
	* gdb.cp/namespace-using.cc: Rename to nsusing.cc.
2010-01-27 18:04:57 +00:00
Doug Evans
4c7dcb841c * solib-svr4.c (solib_break_names): Add __dl_rtld_db_dlactivity. 2010-01-27 00:32:09 +00:00
Jan Kratochvil
cd55e50ffc gdb/
* symtab.h (struct symbol <symtab>): New comment on NULL values.
2010-01-27 00:15:59 +00:00
gdbadmin
aa0bf128e1 *** empty log message *** 2010-01-27 00:00:03 +00:00
Doug Evans
99cc78aa47 * breakpoint.c (bpstat_stop_status): Delete useless code. 2010-01-26 23:56:53 +00:00
Jan Kratochvil
52334bf503 gdb/
* printcmd.c (display_uses_solib_p): Remove variable section.  Access
	objfile via SYMBOL_SYMTAB.
2010-01-26 23:40:13 +00:00
Tom Tromey
708ead4e05 gdb
PR exp/7643:
	* eval.c (evaluate_subexp_for_address) <UNOP_IND>: Call
	coerce_array on result.
gdb/testsuite
	PR exp/7643:
	* gdb.base/printcmds.exp (test_print_string_constants): Remove
	setup_kfail.
2010-01-26 16:53:44 +00:00
Sami Wagiaalla
b14e635ec4 2010-01-14 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/nsrecurs.exp: New test.
	* gdb.cp/nsrecurs.cc: New test program.
	* gdb.cp/nsstress.exp: New test.
	* gdb.cp/nsstress.cc: New test program.
	* gdb.cp/nsdecl.exp: New test.
	* gdb.cp/nsdecl.cc: New test program.


 2010-01-26  Sami Wagiaalla  <swagiaal@redhat.com>

	* cp-namespace.c (cp_lookup_symbol_namespace): Added
	search_parent argument.
	(cp_add_using): Initialize 'searched' field.
	(reset_directive_searched): New function.
	* cp-support.h: Add 'searched' field to using_direct struct.
	(cp_lookup_symbol_imports): Ditto.
	* cp-namespace.c (cp_lookup_symbol_imports): Ditto.
	Perform recursive search.
	Implement non parent search.
	* valops.c (value_maybe_namespace_elt): Updated.
2010-01-26 16:47:35 +00:00
Sami Wagiaalla
8540c487c6 2010-01-26 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/namespace-using.exp: Add test for printing of namespaces
	imported into file scope.
	Marked test as xfail.
	* gdb.cp/namespace-using.cc (marker5): New function.
	* gdb.cp/shadow.exp: New test.
	* gdb.cp/shadow.cc: New test program.
	* gdb.cp/nsimport.exp: New test.
	* gdb.cp/nsimport.cc: New test program.

2010-01-26  Sami Wagiaalla  <swagiaal@redhat.com>

	PR gdb/10929:
	* dwarf2read.c (read_lexical_block_scope): Create blocks for
	scopes which contain using directives even if they contain no
	declarations.
	* symtab.c (lookup_symbol_aux): Pass lowest level block to
	la_lookup_symbol_nonlocal.
	* cp-namespace.c (cp_lookup_symbol_nonlocal): call
	cp_lookup_symbol_namespace.
	(cp_lookup_symbol_namespace): Perform an import lookup at every
	block level.
	(cp_lookup_symbol_imports): New function.
	(cp_lookup_symbol_in_namespace): New function.
2010-01-26 15:48:25 +00:00
gdbadmin
2daab8689d *** empty log message *** 2010-01-26 00:00:03 +00:00
Tom Tromey
421d5d99a3 gdb
PR gdb/11049:
	* c-valprint.c (c_val_print): Fix test of extract_unsigned_integer
	result.
gdb/testsuite
	PR gdb/11049:
	* gdb.base/printcmds.exp (test_print_typedef_arrays): Add test
	with "set print null-stop on".
2010-01-25 19:31:24 +00:00
Rainer Orth
6bcc772dec * configure.ac: Only use host_os part when disabling TUI on osf.
Use test to check variables, prefix strings with x.
	* configure: Regenerate.

	* solib-osf.c (osf_current_sos): Initialize tail.
2010-01-25 13:22:02 +00:00
Tristan Gingold
1c1238a5e8 2010-01-25 gingold <gingold@adacore.com>
* windows-nat.c (windows_continue): Use %x to print thread id.
        (get_windows_debug_event): Ditto.
2010-01-25 10:54:58 +00:00
gdbadmin
ea6f8917d7 *** empty log message *** 2010-01-25 00:00:02 +00:00
Jan Kratochvil
691f8dc187 gdb/testsuite/
* gdb.arch/i386-bp_permanent.exp (Disassemble function '$function'):
	Adjust it for DISASSEMBLY_OMIT_FNAME.
2010-01-24 04:29:32 +00:00
gdbadmin
cd46f81be7 *** empty log message *** 2010-01-24 00:00:33 +00:00
gdbadmin
767acc28c1 *** empty log message *** 2010-01-23 00:00:03 +00:00
Tom Tromey
0b92b5bb46 gdb
PR symtab/11199:
	* dwarf2read.c (quirk_gcc_member_function_pointer): Change return
	type and arguments.  Use smash_to_methodptr_type.
	(read_structure_type): Call quirk_gcc_member_function_pointer
	later.
	* gdbtypes.h (smash_to_methodptr_type): Declare.
	* gdbtypes.c (smash_to_methodptr_type): New function.
	(lookup_methodptr_type): Use it.
gdb/testsuite
2010-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>

	PR symtab/11199:
	* gdb.dwarf2/member-ptr-forwardref.exp,
	gdb.dwarf2/member-ptr-forwardref.S: New.
2010-01-22 17:06:49 +00:00
gdbadmin
466f643cd9 *** empty log message *** 2010-01-22 00:00:33 +00:00