Commit Graph

30682 Commits

Author SHA1 Message Date
gdbadmin 19e676eb2c *** empty log message *** 2012-06-21 00:00:33 +00:00
Keith Seitz 472a237988 * gdb.texinfo (GDB/MI Breakpoint Commands): Re-order options
for -break-insert and document -p.
2012-06-20 20:11:06 +00:00
Yao Qi 2678e2af1f * python/py-inferior.c: Update comments of infpy_read_memory
and infpy_write_memory.

gdb/doc:

        * gdb.texinfo (Inferiors In Python): Replace "gdb.read_memory"
        and "gdb.write_memory" with "Inferior.read_memory" and
        "Inferior.write_memory".
2012-06-20 04:02:22 +00:00
gdbadmin a62e34ed5c *** empty log message *** 2012-06-20 00:00:33 +00:00
Tom Tromey 95c391b64a PR exp/9514:
* parser-defs.h (insert_type, insert_type_address_space): Declare.
	(push_type_address_space): Remove.
	* parse.c (insert_into_type_stack): New function.
	(insert_type): Likewise.
	(insert_type_address_space): Rename from push_type_address_space.
	Insert tp_space_identifier.
	* c-exp.y (ptr_operator): New production.
	(abs_decl): Use ptr_operator.
	(space_identifier): Call insert_type_address_space.
	(ptype): Don't use const_or_volatile_or_space_identifier.
	(const_or_volatile_noopt): Call insert_type.
	(conversion_type_id, conversion_declarator): New productions.
	(operator): Use conversion_type_id.
testsuite
	* gdb.base/whatis.exp: Add tests.
2012-06-19 19:49:42 +00:00
Tom Tromey e910f0b61f * gdb.cp/m-static.cc (keepalive): New function.
(gnu_obj_1::method): Use it.
2012-06-19 15:47:02 +00:00
Doug Evans 422d65e705 * symtab.h (minimal_symbol): New member created_by_gdb.
* elfread.c (elf_symtab_read): Set created_by_gdb for @plt minsym
	created by gdb.
	* symtab.c (lookup_symbol_in_objfile_from_linkage_name): New function.
	(search_symbols): Call it instead of lookup_symbol.
	Skip symbols created by gdb.  Only scan minsyms if nfiles == 0.

	testsuite:
	* gdb.base/info-fun.exp: New file.
	* gdb.base/info-fun.c: New file.
	* gdb.base/info-fun-solib.c: New file.
2012-06-19 00:53:35 +00:00
Doug Evans 49f6c8397d * dwarf2expr.c (execute_stack_op): Handle DW_OP_GNU_const_index.
Adjust address for DW_OP_GNU_addr_index.
	* dwarf2expr.h (dwarf_expr_context): Update comment.
	* dwarf2loc.c (locexpr_describe_location_piece): New arg per_cu,
	all callers updated.  Handle TLS vars described with
	DW_OP_GNU_const_index.
	(disassemble_dwarf_expression): Handle DW_OP_GNU_addr_index
	and DW_OP_GNU_const_index.
	* dwarf2read.c (decode_locdesc): Handle DW_OP_GNU_addr_index.
2012-06-19 00:37:18 +00:00
gdbadmin a9463f3a15 *** empty log message *** 2012-06-19 00:00:03 +00:00
Doug Evans 6ac9ef80f5 * block.c (find_block_in_blockvector): Make explicit the fact that we
ignore GLOBAL_BLOCK.
2012-06-18 20:31:26 +00:00
Tom Tromey 4cd182151a * c-exp.y (operator): Remove trailing space after "delete" and
"delete[]".
2012-06-18 20:23:38 +00:00
Jan Kratochvil a9b8d892d6 gdb/
Switch i386 and derived targets to ON_STACK.
	* amd64-dicos-tdep.c (amd64_dicos_push_dummy_code): Remove.
	(amd64_dicos_init_abi): Remove its installment.
	* dicos-tdep.c (dicos_init_abi): Remove the
	set_gdbarch_call_dummy_location call.  Update the comment here.
	* i386-dicos-tdep.c (i386_dicos_push_dummy_code): Remove.
	(i386_dicos_init_abi): Remove its installment.
	* i386-tdep.c (i386_push_dummy_code): New function.
	(i386_gdbarch_init): Call set_gdbarch_call_dummy_location, install
	i386_push_dummy_code.
2012-06-18 17:31:34 +00:00
Jan Kratochvil e2e4d78b22 gdb/
Remove stale dummy frames.
	* breakpoint.c: Include dummy-frame.h.
	(longjmp_breakpoint_ops): New variable.
	(update_breakpoints_after_exec, breakpoint_init_inferior): Delete also
	bp_longjmp_call_dummy.
	(bpstat_what, bptype_string, print_one_breakpoint_location)
	(init_bp_location): Support bp_longjmp_call_dummy.
	(set_longjmp_breakpoint): Use longjmp_breakpoint_ops.  Comment why.
	(set_longjmp_breakpoint_for_call_dummy)
	(check_longjmp_breakpoint_for_call_dummy, longjmp_bkpt_dtor): New
	functions.
	(initialize_breakpoint_ops): Initialize longjmp_breakpoint_ops.
	* breakpoint.h (enum bptype): New item bp_longjmp_call_dummy.  Delete
	FIXME comment and extend the other comment for bp_call_dummy.
	(set_longjmp_breakpoint_for_call_dummy)
	(check_longjmp_breakpoint_for_call_dummy): New declarations.
	* dummy-frame.c: Include gdbthread.h.
	(pop_dummy_frame_bpt): New function.
	(pop_dummy_frame): Call pop_dummy_frame_bpt.
	(dummy_frame_discard): New function.
	(cleanup_dummy_frames): Update the comment about longjmps.
	* dummy-frame.h (dummy_frame_discard): New declaration.
	* gdbthread.h (struct thread_info): Extend initiating_frame comment.
	* infcall.c (call_function_by_hand): New variable longjmp_b.  Call
	set_longjmp_breakpoint_for_call_dummy.  Chain its breakpoints with BPT.
	* infrun.c (handle_inferior_event) <BPSTAT_WHAT_CLEAR_LONGJMP_RESUME>:
	Add case 4 comment.  Call check_longjmp_breakpoint_for_call_dummy and
	keep_going if IS_LONGJMP and there is no other reason to stop.

gdb/testsuite/
	Remove stale dummy frames.
	* gdb.base/call-signal-resume.exp (maintenance print dummy-frames)
	(maintenance info breakpoints): New tests.
	* gdb.base/stale-infcall.c: New file.
	* gdb.base/stale-infcall.exp: New file.
2012-06-18 17:28:38 +00:00
Tom Tromey 09d5912c6f 2012-06-18 Greta Yorsh <Greta.Yorsh@arm.com>
* remote-sim.c (sim_command_completer): Initialize
	variable 'result'.
2012-06-18 15:36:09 +00:00
gdbadmin 0962ddd7cc *** empty log message *** 2012-06-18 00:00:32 +00:00
Jan Kratochvil 1788b2d3be gdb/
* dwarf2expr.c (execute_stack_op): Support DW_OP_GNU_parameter_ref.
	* dwarf2loc.c (call_site_parameter_matches): Support
	CALL_SITE_PARAMETER_PARAM_OFFSET.
	(needs_dwarf_reg_entry_value): Push stub value.
	* dwarf2read.c (read_call_site_scope): New variable origin.  Support
	CALL_SITE_PARAMETER_PARAM_OFFSET and its DW_AT_abstract_origin.
	* gdbtypes.h (enum call_site_parameter_kind): New item
	CALL_SITE_PARAMETER_PARAM_OFFSET.
	(struct call_site.parameter.u): New field param_offset.

gdb/testsuite/
	* gdb.arch/amd64-entry-value-param.S: New file.
	* gdb.arch/amd64-entry-value-param.c: New file.
	* gdb.arch/amd64-entry-value-param.exp: New file.
2012-06-17 19:53:52 +00:00
Jan Kratochvil 24c5c679cb gdb/
Code cleanup: Generalize call_site.parameter key.
	* dwarf2expr.c (execute_stack_op) <DW_OP_GNU_entry_value>: Remove
	variable dwarf_reg.  New variable kind_u.  Update parameters to
	push_dwarf_reg_entry_value.
	(ctx_no_push_dwarf_reg_entry_value): Update parameters.
	* dwarf2expr.h (enum call_site_parameter_kind)
	(union call_site_parameter_u): Forward declarations.
	(struct dwarf_expr_context_funcs): Update parameters and their
	description for push_dwarf_reg_entry_value.
	(ctx_no_push_dwarf_reg_entry_value): Update parameters.
	* dwarf2loc.c (call_site_parameter_matches): New function.
	(dwarf_expr_reg_to_entry_parameter): Update parameters and their
	description.  Use call_site_parameter_matches.
	(dwarf_expr_push_dwarf_reg_entry_value, value_of_dwarf_reg_entry):
	Update parameters and their description.
	(value_of_dwarf_block_entry): Remove variables dwarf_reg and fb_offset.
	New variable kind_u.  Adjust the caller for updated parameters.
	(needs_dwarf_reg_entry_value): Update parameters.
	* dwarf2read.c (read_call_site_scope): New variable loc.  Use it
	instead of attr.  Update for the changed fields of struct
	call_site_parameter.
	* gdbtypes.h: Include dwarf2expr.h.
	(enum call_site_parameter_kind): New.
	(struct call_site.parameter): New field kind.  Wrap dwarf_reg and
	fb_offset into new union u.
2012-06-17 19:50:53 +00:00
gdbadmin c5753f6406 *** empty log message *** 2012-06-17 00:00:32 +00:00
H.J. Lu ac142d9655 Add and use amd64_x32_analyze_stack_align
* amd64-tdep.c (amd64_x32_analyze_stack_align): New function.
	(amd64_analyze_prologue): Call amd64_x32_analyze_stack_align
	for x32.
2012-06-16 15:20:22 +00:00
H.J. Lu ba224c70dd Support x32 siginfo
* amd64-linux-nat.c (compat_x32_clock_t): New.
	(compat_x32_siginfo_t): Likewise.
	(compat_x32_siginfo_from_siginfo): Likewise.
	(siginfo_from_compat_x32_siginfo): Likewise.
	(amd64_linux_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
	and siginfo_from_compat_x32_siginfo for x32.
2012-06-16 15:18:18 +00:00
Hui Zhu 7ecbc8255e 2012-06-15 Hui Zhu <hui_zhu@mentor.com>
* tracepoint.c (tfile_xfer_partial): Add a lseek.
2012-06-16 15:07:35 +00:00
H.J. Lu 233dfcf06d Check bits_per_word instead of gdbarch_ptr_bit
* amd64-linux-nat.c (ps_get_thread_area): Check bits_per_word
	instead of gdbarch_ptr_bit.
	* amd64-nat.c (amd64_native_gregset_reg_offset): Likewise.
	(amd64_supply_native_gregset): Likewise.
	(amd64_collect_native_gregset): Likewise.
	* amd64-tdep.c (amd64_supply_fxsave): Likewise.
	(amd64_supply_xsave): Likewise.
	(amd64_collect_fxsave): Likewise.
	(amd64_collect_xsave): Likewise.
2012-06-16 13:28:06 +00:00
H.J. Lu 6da38f42ff Check DS segment register for x32 process
* amd64-linux-nat.c (AMD64_LINUX_X32_DS): New.
	(amd64_linux_read_description): Check DS segment register for
	x32 process.
2012-06-16 13:26:37 +00:00
gdbadmin 8469f797b7 *** empty log message *** 2012-06-16 00:00:33 +00:00
Tom Tromey 663b969e68 * dwarf2read.c (dw2_find_symbol_file): Unconditionally use
init_cutu_and_read_dies.
testsuite
	* gdb.cp/namespace.exp: Add "show lang" test.
2012-06-15 16:19:02 +00:00
Iain Sandoe 8e09ad05ed gdb/testsuite:
* gdb.base/list.exp (test_listsize): Remove $use_gdb_stub special
	case. (top level): Use gdb_file_cmd instead of gdb_load.
2012-06-15 14:43:00 +00:00
Iain Sandoe d6f0502793 * MAINTAINERS (Write After Approval): Add myself to the list. 2012-06-15 14:41:26 +00:00
Tom Tromey 6598ed07eb * valops.c (value_find_oload_method_list): Now static.
* value.h (value_find_oload_method_list): Don't declare.
2012-06-15 14:38:30 +00:00
Tom Tromey 2b214ea697 * valops.c (find_overload_match): Use value_ind. 2012-06-15 14:35:33 +00:00
Eli Zaretskii 984359d2e1 Fix Texinfo usage issues. From Patrice Dumas <pertusus@free.fr>.
* gdb.texinfo (Summary): Add a link to "Free Documentation".
	(Free Documentation): Add @node line.
	(Continuing and Stepping) <advance location>: Use @item instead of
	@itemx.
	(Reverse Execution) <set exec-direction reverse>: Use @item instead of
	@itemx.
	(Embedded Processors): Put the link to "PA" to its correct place,
	according to document structure.
	(Python API): Put the link to "Lazy Strings In Python" to its
	correct place.
	(Index): Use @@ in @tex block to get a literal @.

	* gdbint.texinfo: Fix the @subtitle line.

	* stabs.texinfo (Top): Put the link to "Symbol Types Index" to its
	correct place.
2012-06-15 09:21:37 +00:00
Maciej W. Rozycki a210c23822 * infrun.c (handle_inferior_event): Correct indentation. 2012-06-15 08:50:29 +00:00
gdbadmin 7bf8492a84 *** empty log message *** 2012-06-15 00:00:02 +00:00
Doug Evans 3771a44cf0 * dwarf2loc.c (debug_loc_kind): Add DEBUG_LOC_START_LENGTH.
(DEBUG_LOC_START_END): Renamed from DEBUG_LOC_NORMAL.
	All uses updated.
	(decode_debug_loc_dwo_addresses): New arg "byte_order".  All callers
	updated.  Handle DEBUG_LOC_START_LENGTH.
	(dwarf2_find_location_expression): Handle DEBUG_LOC_START_LENGTH.
	(loclist_describe_location): Ditto.
2012-06-14 22:56:47 +00:00
Maciej W. Rozycki 1c5a993ebd PR backtrace/13866
* infrun.c (handle_inferior_event): Re-fetch frame and gdbarch
	after hiding inline functions.
2012-06-14 21:15:19 +00:00
Joel Brobecker 0b1554650e Fix copy/paste error in _initialize_inf_ttrace's advance declaration.
gdb/ChangeLog:

        * inf-ttrace.c (_initialize_hppa_hpux_nat): Rename into
        _initialize_inf_ttrace.
2012-06-14 18:21:31 +00:00
Joel Brobecker 45717bacbd Rename ia64-hpux-nat.c:_initialize_hppa_hpux_nat...
... into _initialize_ia64_hpux_nat. Looks like a harmless but
unfortunate copy/paste error.

gdb/ChangeLog:

        * ia64-hpux-nat.c (_initialize_ia64_hpux_nat): Renames
        _initialize_hppa_hpux_nat.
2012-06-14 18:19:40 +00:00
Joel Brobecker 3437086597 Fix invalid profile for command-completer in remote-sim.c
The profile of command completers has been change to returna VEC
of char_ptr.  Most completers were updated, except the one in
remote-sim.c.

Unfortunately, to make things a little more difficult, the meat of
the completer is actually implemented in the sim, were VECs are not
available.  This patch thus translates the returned array into a VEC,
and then returns that VEC.

gdb/ChangeLog:

        * remote-sim.c (sim_command_completer): Change type of return
        value to "VEC (char_ptr) *".  Adjust implementation accordingly.
2012-06-14 18:17:37 +00:00
gdbadmin dc408eb31d *** empty log message *** 2012-06-14 00:00:03 +00:00
Jan Kratochvil f85e18ee6c gdb/testsuite/
PR tdep/14222
	* gdb.arch/i386-sse-stack-align.S: New file.
	* gdb.arch/i386-sse-stack-align.c: New file.
	* gdb.arch/i386-sse-stack-align.exp: New file.
2012-06-13 21:31:06 +00:00
Mark Kettenis 284c5a60c3 PR tdep/14222
* i386-tdep.c (i386_push_dummy_call): Unconditionally align the
        stack on a 16-byte boundary.
2012-06-13 21:21:25 +00:00
Tom Tromey 2535757a2b 2012-06-13 Kaushik Srenevasan <kaushik@twitter.com>
* jit.c (finalize_symtab): Set function's return type to 'void' by
	default.
2012-06-13 21:16:49 +00:00
Mark Kettenis 5a83521a3c * amd64-linux-tdep.c (amd64_linux_init_abi_common): New function.
Move bits common to both the classic LP64 and the new x32 ILP32
        ABI here.
        (amd64_linux_init_abi): Call amd64_linux_init_abi_common.
        (amd64_x32_linux_init_abi): New function.
        (_initialize_amd64_linux_tdep): Register osabi for bfd_mach_x64_32
        subtype.
2012-06-13 20:36:48 +00:00
Mark Kettenis fff4548bff H.J. Lu <hongjiu.lu@intel.com>
* i386-tdep.h (i386_pseudo_register_name): New prototype.
* i386-tdep.c (i386_pseudo_register_name): Make public.
* amd64-tdep.h (amd64_x32_init_abi): New prototype.
* amd64-tdep.c (amd64_dword_names): Add "eip".
(amd64_x32_pseudo_register_type): New function
(amd64_x32_init_abi): New function.
2012-06-13 20:29:15 +00:00
Jan Kratochvil dd80ea3c31 gdb/
PR build/14003
	* inferior.h (struct inferior_suspend_state): Comment out.
	(struct inferior): Comment out the field suspend.
	* infrun.c (struct infcall_suspend_state): Comment out the field
	inferior_suspend.
	(save_infcall_suspend_state, restore_infcall_suspend_state): Comment
	out its assignment.
2012-06-13 18:15:05 +00:00
Keith Seitz f3b5e28044 PR breakpoints/13798 and mi/11541
* gdb.linespec/ls-errs.exp: Add a few more tests for
	filenames with spaces and colons.
2012-06-13 18:06:07 +00:00
Jan Kratochvil 50af5481d5 gdb/
PR c++/14177 - Fix parsing TYPENAME:: in parentheses.
	* c-exp.y (classify_inner_name): Remove caller assumptions in the
	function comment.  Return ERROR for unresolved cases.  Implement
	returning proper NAME.
	(yylex): Accept also NAME from classify_inner_name.
	* cp-namespace.c (cp_lookup_nested_type): Rename to ...
	(cp_lookup_nested_symbol): ... here.  Return any found symbol, not just
	LOC_TYPEDEF type.
	* cp-support.h (cp_lookup_nested_type): Update its declaration.

gdb/testsuite/
	PR c++/14177 - Fix parsing TYPENAME:: in parentheses.
	* gdb.cp/cpexprs.cc (class CV, CV::i, ATTRIBUTE_USED, CV_f): New.
	(test_function): Call CV_f.
	* gdb.cp/cpexprs.exp (p 'CV::m(int)', p CV::m(int))
	(p 'CV::m(int) const', p CV::m(int) const, p 'CV::m(int) volatile')
	(p CV::m(int) volatile, p 'CV::m(int) const volatile')
	(p CV::m(int) const volatile, p CV_f(int), p CV_f(CV::t))
	(p CV_f(CV::i)): New tests.
2012-06-13 16:10:10 +00:00
Tom Tromey d55637df69 * breakpoint.c (condition_completer): New function.
(_initialize_breakpoint): Use it.
	* value.c (complete_internalvar): New function.
	* value.h (complete_internalvar): Declare.
testsuite
	* gdb.base/condbreak.exp: Add tests for "condition" completion.
2012-06-13 15:50:22 +00:00
Tom Tromey 49c4e619f8 * ada-lang.c (ada_make_symbol_completion_list): Return a VEC.
* breakpoint.c (catch_syscall_completer): Return a VEC.
	* cli/cli-cmds.c (complete_command): Update.
	* cli/cli-decode.c (complete_on_cmdlist): Return a VEC.
	(complete_on_enum): Likewise.
	* command.h: Include gdb_vecs.h.
	(completer_ftype): Change return type.
	(complete_on_cmdlist, complete_on_enum): Likewise.
	* completer.c (noop_completer, filename_completer)
	(location_completer): Return a VEC.
	(add_struct_fields): Remove 'nextp' argument.  Change 'output'
	to a VEC.
	(expression_completer, complete_line_internal, complete_line)
	(command_completer): Return a VEC.
	(gdb_completion_word_break_characters, line_completion_function):
	Update.
	* completer.h: Include gdb_vecs.h.
	(complete_line, noop_completer, filename_completer)
	(expression_completer, location_completer, command_completer):
	Update.
	* f-lang.c (f_word_break_characters): Return a VEC.
	* interps.c (interpreter_completer): Return a VEC.
	* language.h (struct language_defn)
	<la_make_symbol_completion_list>: Return a VEC.
	* python/py-cmd.c (cmdpy_completer): Return a VEC.
	* symtab.c (free_completion_list): Take a VEC.
	(return_val_size, return_val_index): Remove.
	(return_val): Now a VEC.
	(completion_list_add_name): Update.
	(default_make_symbol_completion_list_break_on)
	(default_make_symbol_completion_list, make_symbol_completion_list)
	(make_symbol_completion_list_fn, make_file_symbol_completion_list):
	Return a VEC.
	(add_filename_to_list): Update.
	(struct add_partial_filename_data) <list_used, list_alloced>: Remove.
	<list>: Now a VEC.
	(maybe_add_partial_symtab_filename): Update.
	(make_source_files_completion_list): Return a VEC.
	* symtab.h (default_make_symbol_completion_list_break_on)
	(default_make_symbol_completion_list, make_symbol_completion_list)
	(make_symbol_completion_list_fn, make_file_symbol_completion_list)
	(make_source_files_completion_list): Update.
2012-06-13 15:47:16 +00:00
Tom Tromey 625e8578d7 * breakpoint.c (add_catch_command): Use completer_ftype.
* breakpoint.h: Include command.h.
	(add_catch_command): Use completer_ftype.
	* cli/cli-decode.c (set_cmd_completer): Use completer_ftype.
	* cli/cli-decode.h (struct cmd_list_element) <completer>:
	Use completer_ftype.
	* command.h (completer_ftype): New typedef.
	(set_cmd_completer): Use it.
	* python/py-cmd.c (struct cmdpy_completer) <completer>: Use
	completer_ftype.
2012-06-13 15:41:24 +00:00
Pedro Alves 5eb3b0622d 2012-06-13 Pedro Alves <palves@redhat.com>
Partial revert of previous change.

	* serial.c (scb_base): New global.
	(serial_for_fd): New.
	(serial_open, serial_fdopen_ops): Link new serial in open serials
	chain.
	(do_serial_close): Unlink serial from the open serials chain.
2012-06-13 11:06:52 +00:00