Commit Graph

29719 Commits

Author SHA1 Message Date
Tom Tromey
87784a4754 * value.c (struct value) <modifiable, lazy, optimized_out,
initialized, stack>: Now bitfields.  Move to top.
	<reference_count>: Move earlier.
2011-12-22 19:41:59 +00:00
Tom Tromey
b19686e08b * minsyms.h: Rearrange. Document header and all functions.
* minsyms.c: Move some comments to minsyms.h.
2011-12-22 02:34:34 +00:00
gdbadmin
cbbc9a5c83 *** empty log message *** 2011-12-22 00:00:33 +00:00
Tom Tromey
c35384fbef * symtab.h: Include minsyms.h.
(prim_record_minimal_symbol, prim_record_minimal_symbol_full)
	(prim_record_minimal_symbol_and_info, msymbol_hash_iw)
	(msymbol_hash, SYMBOL_HASH_NEXT, msymbol_objfile)
	(lookup_minimal_symbol, lookup_minimal_symbol_text)
	(lookup_minimal_symbol_solib_trampoline)
	(lookup_minimal_symbol_by_pc_name, lookup_minimal_symbol_by_pc)
	(iterate_over_minimal_symbols, lookup_minimal_symbol_and_objfile)
	(lookup_minimal_symbol_by_pc_section)
	(lookup_solib_trampoline_symbol_by_pc)
	(init_minimal_symbol_collection)
	(make_cleanup_discard_minimal_symbols, install_minimal_symbols)
	(msymbols_sort): Move to minsyms.h.
	* objfiles.c (terminate_minimal_symbol_table): Move to minsyms.c.
	* minsyms.c (terminate_minimal_symbol_table): Move from
	objfiles.c.
	* minsyms.h: New file.
2011-12-21 21:51:57 +00:00
Tom Tromey
a5bd37c3ca * hppa-hpux-tdep.c (hppa64_hpux_search_dummy_call_sequence): Use
ALL_OBJFILE_MSYMBOLS.
	(hppa_hpux_find_dummy_bpaddr): Likewise.
	* jit.c (jit_object_close_impl): Use
	terminate_minimal_symbol_table.
2011-12-21 21:34:25 +00:00
Tom Tromey
0af1e9a54b * elfread.c (elf_symtab_read): Put the filename in the filename
bcache.
2011-12-21 21:30:31 +00:00
Tom Tromey
04aba06513 * symtab.h (struct minimal_symbol) <filename>: Now const. 2011-12-21 21:24:59 +00:00
Ulrich Weigand
7052e42c35 gdb/
PR tdep/12797
	* arm-tdep.c (arm_return_value): Handle complex types.

gdb/testsuite/
	PR tdep/12797
	* gdb.base/callfuncs.exp: Remove KFAIL.
2011-12-21 21:13:15 +00:00
Andreas Schwab
f16c4e8bdd * ppc-linux-nat.c (create_watchpoint_request): Only use ranged
watchpoints when supported.
2011-12-21 15:27:29 +00:00
Jan Kratochvil
4ac39b9724 gdb/
* symfile.c (objfilep): New typedef and new DEF_VEC_P.
	(reread_symbols): Remove variable reread_one, new variables
	new_objfiles, all_cleanups and ix.  Use new_objfiles instead of
	reread_one.  Push changed objfiles to new_objfiles, call
	observer_notify_new_objfile for them later.
2011-12-21 14:25:53 +00:00
Joel Brobecker
bb2f58dc41 Use symbol search name in expand_symtabs_matching_via_partial...
We are iterating over all symbols in a partial symtab that would
match a given name, so we should match the partial symbols
search name against the given name rather than using the natural
name.  In C++, that does not make a difference, but it does in
Ada, because Ada searches using the symbol encoded name...

We also update the generation of the .gdb_index file to match this
change in the search. Although technically an incompatible change,
we do not increment the gdb_index version number, because Ada is
the only language where it would make a difference - except that
this feature is not supported for Ada.

gdb/ChangeLog:

        * psymtab.c (expand_symtabs_matching_via_partial): Match
        the partial symbols using their SYMBOL_SEARCH_NAME.
        * symfile.h (struct quick_symbol_functions): Udate the
        documentation of expand_symtabs_matching.
        * dwarf2read.c (write_psymbols): Use SYMBOL_SEARCH_NAME instead
        of SYMBOL_NATURAL_NAME in index entry.
2011-12-21 07:34:09 +00:00
Joel Brobecker
53907c915d Add handling for unqualified Ada operators in linespecs
This patch enhances the linespec parser to recognize unqualified
operator names in linespecs. This allows the user to insert a breakpoint
on operator "+" as follow, for instance:

        (gdb) break "+"

Previously, it was possible to insert such a breakpoint, but one
had to fully qualify the function name. For instance:

        (gdb) break ops."+"

gdb/ChangeLog:

        * linespec.c (locate_first_half): Add handling of Ada operators
        when the current language is Ada.
2011-12-21 07:24:40 +00:00
Joel Brobecker
50f8ea949d missing check against overlay_debugging in objfiles.c
This fixes a problem where the debugger is trying to locate a minimal
symbol from its address, when the symbol is inside a section whose
VMA is different from its LMA.

We have a program that was built on ppc-elf using a linker script
such that data sections are placed in ROM, and then loaded onto RAM
at execution.  So their VMA addresses are indeed different from
their LMA address.

Unfortunately, there is one place where GDB gets slightly confused
into thinking that these data sections are overlayed, while it's
not the case here.  This show up when trying to print the list of
Ada tasks, where GDB is unable to determine their names, and thus
prints a generic `Ravenscar task' instead:

    (gdb) info tasks
       ID       TID P-ID Pri State                  Name
        1     1d580      127 Delay Sleep            Ravenscar task
        2     183f8      127 Delay Sleep            Ravenscar task
    *   3     13268      127 Runnable               Ravenscar task

We expected:

    (gdb) info tasks
       ID       TID P-ID Pri State                  Name
        1     1d580      127 Delay Sleep            environment_task
        2     183f8      127 Delay Sleep            raven2
    *   3     13268      127 Runnable               raven1

The name of the task is determined by looking up the symbol table
using the task ID, which is the address where the symbol is defined.
So, ada-tasks calls...

    msym = lookup_minimal_symbol_by_pc (task_id);

... which in turn first tries to determine the section associated
to this address (find_pc_section), which itself uses a map of sections
to find it. The map itself is recomputed every time objfiles are
loaded/changed by `update_section_map'. And `update_section_map'
relies on `insert_section_p' to determine whether the section should
be inserted in the map or not.

This is where things get interesting for us, because `insert_section_p'
simply rejects overlay sections:

  if (lma != 0 && lma != bfd_section_vma (abfd, section)
      && (bfd_get_file_flags (abfd) & BFD_IN_MEMORY) == 0)
    /* This is an overlay section.  IN_MEMORY check is needed to avoid
       discarding sections from the "system supplied DSO" (aka vdso)
       on some Linux systems (e.g. Fedora 11).  */
    return 0;

However, it shouldn't reject our section in this case, since overlay
debugging is off.  The fix is to add a check that overlay debugging
is active before rejecting the section.  This is similar to what is
done in `section_is_overlay' (which takes obj_section objects), for
instance.

gdb/Changelog:

        * objfiles.c (insert_section_p): Do not detect overlay sections
        if overlay debugging is off.
2011-12-21 07:11:52 +00:00
Joel Brobecker
9ac7f98e7c [Ada] Breakpoints on task bodies
Consider the following declaration:

    package Pck is
       task Dummy_Task is
          entry Start;
       end Dummy_Task;
    end Pck;

Inserting a breakpoint on the body of that task does not currently
work:

    (gdb) b pck.dummy_task
    "pck.dummy_task" is not a function
    Make breakpoint pending on future shared library load? (y or [n]) n

What happens here is that the compiler generates two symbols:

  (a) Symbol `pck__dummy_task' which is a *variable* referencing
      the task;

  (b) Symbol `pck__dummy_taskTKB' which is the subprogram implementing
      the body of the task.

The symbol lookup only finds the variable before of the TKB suffix in
the subprogram name. This patch fixes the problem by adjusting the
ada-lang.c:is_name_suffix routine to recognize "TKB" suffixes.  But
that's not enough, because the search in the symtab is performed via
the block dictionary, using a hashing algorithm. So, for the search
to find `pck__dummy_taskTKB', I had to modify the hashing function
to ignore TKB suffixes as well.

gdb/ChangeLog:

        * ada-lang.c (is_name_suffix): Add handling of "TKB" suffixes.
        Update function documentation.
        * dictionary.c (dict_hash): Ignore "TKB" suffixes in hash
        computation.

gdb/testsuite/ChangeLog:

        * gdb.ada/task_bp: New testcase.
2011-12-21 07:10:59 +00:00
gdbadmin
496c2508ac *** empty log message *** 2011-12-21 00:00:33 +00:00
Pedro Alves
6e012a6c38 2011-12-20 Pedro Alves <alves.ped@gmail.com>
Jan Kratochvil  <jan.kratochvil@redhat.com>

        * linux-nat.c (add_lwp): Don't call linux_nat_new_thread on the
	first LWP.
	* amd64-linux-nat.c (update_debug_registers_callback): Instantiate
	`lwp->arch_private' if NULL.
	(amd64_linux_prepare_to_resume): Do nothing if `lwp->arch_private'
	is NULL.
	* i386-linux-nat.c (update_debug_registers_callback): Instantiate
	`lwp->arch_private' if NULL.
	(i386_linux_prepare_to_resume): Do nothing if `lwp->arch_private'
	is NULL.
2011-12-20 10:40:15 +00:00
Doug Evans
87c31f0622 * python/py-auto-load.c (info_auto_load_scripts): Pass address of
scripts vector to collect_matching_scripts.
	(collect_matching_scripts): Update.
2011-12-20 04:29:35 +00:00
gdbadmin
9542d6ad01 *** empty log message *** 2011-12-20 00:00:03 +00:00
Jan Kratochvil
f6eeced03d gdb/
* symfile.c (reread_symbols): Move free_objfile_separate_debug,
	preserve_values, sym_finish and clear_objfile_data calls before BFD
	close.  Move free_objfile_separate_debug as the very first call.  New
	comment on the ordering.

gdb/testsuite/
	* gdb.base/reread.exp: If srcfile2 fails to build retry it with
	-DNO_SECTIONS.
	* gdb.base/reread2.c <!NO_SECTIONS>: New sections block.
2011-12-19 22:20:07 +00:00
Ulrich Weigand
8de7d199bb * s390-tdep.c (s390_push_dummy_call): Set addressing mode bit
in return PSWA.
2011-12-19 21:44:57 +00:00
Tom Tromey
984ac46443 * symtab.h (add_minsym_to_hash_table): Don't declare.
* minsyms.c (add_minsym_to_hash_table): Now static.
2011-12-19 16:11:14 +00:00
Jan Kratochvil
72225e1798 gdb/testsuite/
* gdb.cp/ptype-cv-cp.exp (ptype v_volatile_const_my_int): Make
	PR gcc/45997 XFAIL conditional for gcc <= 4.5.
	* gdb.python/py-type.exp (python print ttype.template_argument(2)):
	Change PR gcc/41736 to the more specific PR gcc/46955.  Make it
	conditional for gcc <= 4.5.
2011-12-19 13:42:50 +00:00
Jan Kratochvil
13ac8d2c29 gdb/doc/
* gdbint.texinfo (Testsuite): Describe KFAIL and XFAIL in Writing
	tests.

gdb/testsuite/
	* gdb.cp/ptype-cv-cp.exp (ptype v_volatile_const_my_int): Replace KFAIL
	by XFAIL.
	* gdb.cp/static-method.exp (info addr A::func())
	(list static-method.cc:xxx::(anonymous namespace)::A::func)
	(list 'static-method.cc:xxx::(anonymous namespace)::A::func')
	(list 'static-method.cc':'xxx::(anonymous namespace)::A::func')
	(list static-method.cc:'xxx::(anonymous namespace)::A::func'): Likewise.
	* gdb.cp/temargs.exp (test value of F in k2_m, test type of F in k3_m)
	(test value of F in k3_m): Likewise.
	* gdb.python/py-type.exp (python print ttype.template_argument(2)):
	Likewise.
2011-12-19 13:37:34 +00:00
Jan Kratochvil
049682ba03 gdb/testsuite/
* gdb.threads/attach-stopped.exp (continue (*: attach2 continue))
	(*: attach2 stop interrupt, *: attach2, exit leaves process sleeping):
	Remove.
	* gdb.threads/attachstop-mt.c: Remove.
	* gdb.threads/attachstop-mt.exp: Remove.
2011-12-19 10:31:43 +00:00
Joel Brobecker
828cfa8d0b try ignoring bad PLT entries in ELF symbol tables
Comment says it all:

         /* On ia64-hpux, we have discovered that the system linker
            adds undefined symbols with nonzero addresses that cannot
            be right (their address points inside the code of another
            function in the .text section).  This creates problems
            when trying to determine which symbol corresponds to
            a given address.

            We try to detect those buggy symbols by checking which
            section we think they correspond to.  Normally, PLT symbols
            are stored inside their own section, and the typical name
            for that section is ".plt".  So, if there is a ".plt"
            section, and yet the section name of our symbol does not
            start with ".plt", we ignore that symbol.  */

gdb/ChangeLog:

        * elfread.c (elf_symtab_read): Ignore undefined symbols with
        nonzero addresses if they do not correspond to a .plt section
        when one is available in the objfile.
2011-12-19 04:36:29 +00:00
gdbadmin
9a5ce6c054 *** empty log message *** 2011-12-19 00:00:32 +00:00
Jan Kratochvil
3e52c33d23 gdb/gdbserver/
* linux-low.c (linux_create_inferior): Put empty if clause for write.

	Revert:
	2011-12-18  Hui Zhu  <teawater@gmail.com>
	* linux-low.c (linux_create_inferior): Save return value to ret.
2011-12-18 20:55:08 +00:00
Hui Zhu
66f1260e72 2011-12-18 Hui Zhu <teawater@gmail.com>
* linux-low.c (linux_create_inferior): Save return value to ret.
2011-12-18 15:49:04 +00:00
gdbadmin
fd1daff702 *** empty log message *** 2011-12-18 00:00:33 +00:00
Andreas Schwab
dd274a34d2 * cp-name-parser.y (cp_merge_demangle_parse_infos): Don't use
obstack_empty_p.
2011-12-17 20:10:57 +00:00
Mark Kettenis
a3e3e961b4 * amd64obsd-tdep.c (amd64obsd_init_abi): Don't set
regset_from_core_section.
(amd64obsd_core_init_abi): New function that sets
regset_from_core_section.
(_initialize_amd64obsd_tdep): Use amd64obsd_core_init_abi for
traditional core dumps.
2011-12-17 15:45:56 +00:00
Mark Kettenis
2c9d87964d * gdb.arch/amd64-i386-address.exp: Skip on *-*-openbsd*. 2011-12-17 13:54:51 +00:00
Mark Kettenis
0dcddd8422 * amd64obsd-tdep.c (amd64obsd_sigtramp_p): Detect new signal
trampoline to be introduced in OpenBSD 5.0.
2011-12-17 12:22:06 +00:00
Jan Kratochvil
3e290cb1d1 gdb/
Fix build regression from the PR threads/10729 fix.
	* s390-nat.c (s390_insert_watchpoint, s390_remove_watchpoint): Use LP,
	not LP->PTID.
2011-12-17 09:43:53 +00:00
Andrey Smirnov
56934ab1ce * mi/mi-main.c (mi_cmd_list_thread_groups): Rename `optind' and
`optarg' to `oind' and `oarg', respectively(-Wshadow).
(mi_cmd_data_read_memory): Ditto.
(mi_cmd_data_read_memory_bytes): Ditto.
2011-12-17 06:14:45 +00:00
Andrey Smirnov
324478caa7 * mi/mi-getopt.c (mi_getopt): Rename optind' and optarg' to
`oind' and `oarg', respectively(-Wshadow).
(mi_valid_noargs): Ditto.
2011-12-17 06:09:54 +00:00
Andrey Smirnov
54dc829719 * mi/mi-cmd-var.c (print_varobj): Rename optind' and optarg' to
`oind' and `oarg', respectively(-Wshadow).
2011-12-17 06:06:49 +00:00
Andrey Smirnov
006292124e * mi/mi-cmd-target.c (mi_cmd_target_file_get): Rename `optind' and
`optarg' to `oind' and `oarg', respectively(-Wshadow).
(mi_cmd_target_file_put): Ditto.
(mi_cmd_target_file_delete): Ditto.
2011-12-17 06:03:21 +00:00
Andrey Smirnov
7082409d2d * mi/mi-cmd-env.c (mi_cmd_env_path): Rename `optind' and
`optarg' to `oind' and `oarg', respectively(-Wshadow).
(mi_cmd_env_dir): Ditto.
2011-12-17 05:58:27 +00:00
Andrey Smirnov
81493c6264 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Rename optind' and optarg'
to `oind' and `oarg', respectively(-Wshadow).
2011-12-17 05:53:59 +00:00
Andrey Smirnov
f8c000a26c * mi/mi-cmd-break.c (mi_cmd_break_insert): Rename `optind' and
`optparg' to `oind' and `oparg', respectively(-Wshadow).
(mi_cmd_break_watch): Ditto.
2011-12-17 05:49:34 +00:00
gdbadmin
65f63e5015 *** empty log message *** 2011-12-17 00:00:03 +00:00
Tom Tromey
07fea4b413 * linespec.c (collect_symbols): Call maybe_add_address after
calling symbol_to_sal.
	(minsym_found): Call maybe_add_address here.
	(search_minsyms_for_name): Don't call maybe_add_address.
2011-12-16 21:39:16 +00:00
Tom Tromey
39b856a4b1 * linespec.c (struct collect_info) <objfile>: Remove field.
(decode_objc): Update.
	(find_method): Update.
	(decode_variable): Update.
	(struct minsym_and_objfile): New.
	(struct collect_minsyms): New.
	(classify_mtype): New function.
	(compare_msyms): Likewise.
	(add_minsym): Likewise.
	(check_minsym): Remove.
	(search_minsyms_for_name): Sort minsyms and apply only those with
	top priority.
2011-12-16 21:35:57 +00:00
Tom Tromey
ccbac09dc1 * cli/cli-cmds.c (filter_sals): Filter out sals with NULL symtab. 2011-12-16 21:17:42 +00:00
Pedro Alves
77cce10fc2 2011-12-16 Pedro Alves <pedro@codesourcery.com>
* inf-loop.c: Include top.h.
	(inferior_event_handler): Call check_frame_language.
	* top.c (check_frame_language_change): New, factored out from ...
	(execute_command): ... this.  Use check_frame_language_change.
	* top.h (check_frame_language_change): Declare.
2011-12-16 20:29:28 +00:00
Doug Evans
f4aa210198 fix typo in previous entry 2011-12-16 20:04:35 +00:00
Doug Evans
cfd16f96e3 * boards/native-stdiogdbserver.exp: New file. 2011-12-16 20:02:05 +00:00
Pierre Muller
a961bc186c * windows-nat.c (cygwin_get_dr, cygwin_get_dr7): Add missing
prototypes.
2011-12-16 19:55:26 +00:00
Doug Evans
966be4fd6a * boards/native-gdbserver.exp: New file. 2011-12-16 19:37:47 +00:00
Doug Evans
e7b06c57d8 * linux-low.c (linux_create_inferior): If stdio connection,
redirect stdin from /dev/null, stdout to stderr.
	* remote-utils.c (remote_is_stdio): New static global.
	(remote_connection_is_stdio): New function.
	(remote_prepare): Handle stdio connection.
	(remote_open): Ditto.
	(remote_close): Don't close stdin for stdio connections.
	(read_prim,write_prim): New functions.  Replace all calls to
	read/write to these.
	* server.c (main): Watch for "-" argument.  Move call to
	remote_prepare before start_inferior.
	* server.h (STDIO_CONNECTION_NAME): New macro.
	(remote_connection_is_stdio): Declare.
2011-12-16 19:10:58 +00:00
Doug Evans
e0f9f06220 * NEWS: Add entry for stdio gdbserver.
gdbserver/
	* linux-low.c (linux_create_inferior): If stdio connection,
	redirect stdin from /dev/null, stdout to stderr.
	* remote-utils.c (remote_is_stdio): New static global.
	(remote_connection_is_stdio): New function.
	(remote_prepare): Handle stdio connection.
	(remote_open): Ditto.
	(remote_close): Don't close stdin for stdio connections.
	(read_prim,write_prim): New functions.  Replace all calls to
	read/write to these.
	* server.c (main): Watch for "-" argument.  Move call to
	remote_prepare before start_inferior.
	* server.h (STDIO_CONNECTION_NAME): New macro.
	(remote_connection_is_stdio): Declare.

	doc/
	* gdb.texinfo (Server): Document -/stdio argument to gdbserver.

	testsuite/
	* lib/gdbserver-support.exp (gdb_target_cmd): Recognize stdio
	gdbserver output.
	(gdbserver_default_get_remote_address): New function.
	(gdbserver_start): Call gdb,get_remote_address to compute argument
	to "target remote" command.
2011-12-16 19:06:38 +00:00
Doug Evans
e77616d77a * remote-utils.c (prepare_resume_reply): Remove extraneous \n
in debugging output.
2011-12-16 18:45:48 +00:00
Phil Muldoon
1c3ad6ab98 2011-12-16 Phil Muldoon <pmuldoon@redhat.com>
* ChangeLog: Fix path typo.
	* doc/ChangeLog: Ditto.
2011-12-16 16:15:46 +00:00
Phil Muldoon
80b6e7564f 2011-12-16 Phil Muldoon <pmuldoon@redhat.com>
* testsuite/gdb.python/py-function.exp: Change "on" to "full" for
	python print-stack.  Add set/show python print-stack
	off|full|message tests.

2011-12-16  Phil Muldoon  <pmuldoon@redhat.com>

	* python/python.c: Define python_excp_enums.
	(eval_python_from_control_command): Do not call gdbpy_print_stack.
	(python_command): Ditto.
	(gdbpy_print_stack): Rewrite to use new enum constants.
	(maint_set_python): Remove function.
	(maint_show_python): Ditto.
	(_initialize_python): Do not add "maint" commands.  Add "set/show
	python print-stack commands".
	* NEWS: Update to reflect removal for "maint set/show
	print-stack"

2011-12-16  Phil Muldoon  <pmuldoon@redhat.com>

	* doc/gdb.texinfo (Python Commands): Remove "maint set/show print
	stack".  Add documentation for "set/show python print-stack".
2011-12-16 15:55:40 +00:00
gdbadmin
006695fbe7 *** empty log message *** 2011-12-16 00:00:32 +00:00
Doug Evans
ef1408725d * exceptions.c (catcher_list_size): New function.
(last_message): Delete.
	(exception_messages, exception_messages_size): New static globals.
	(throw_it): Use exception_messages array to handle nested calls.
2011-12-15 22:15:36 +00:00
Tom Tromey
b5b445a33a * symfile.c (symbol_file_add_with_addrs_or_offsets): Remove bad
do_cleanups call.
2011-12-15 15:36:55 +00:00
Yao Qi
1576bd00ee gdb/testsuite/
* gdb.trace/strace.c: New
	* gdb.trace/strace.exp: New.
2011-12-15 12:43:03 +00:00
Yao Qi
8206719361 gdb/gdbserver/
* tracepoint.c: Include sys/syscall.h.
	(gdb_ust_thread): Remove preprocessor conditional.
2011-12-15 12:40:03 +00:00
gdbadmin
9d4d36a73f *** empty log message *** 2011-12-15 00:00:33 +00:00
Doug Evans
0b6cb71e50 * defs.h (wait_to_die_with_timeout): Declare.
* utils.c: #include "gdb_wait.h".
	(sigalrm_handler, wait_to_die_with_timeout): New functions.
	* ser-pipe.c: Don't #include "gdb_wait.h".
	(pipe_close): Give child a chance to die on its own after closing
	its stdin before SIGTERM'ing it.
2011-12-14 20:53:57 +00:00
Joel Brobecker
afaabefa90 Fix latest ChangeLog entry (forgot to give credit to reporter) 2011-12-14 20:27:47 +00:00
Joel Brobecker
6475f2fe1c fix uninitialized field in ada-lang.c (struct match_data)
Field found_sym in add_nonlocal_symbols's struct match_data is
used uninitialized.  Rather than adding the initialization of
this field (to zero), we set the entire structure to zero first,
and then set the fields that need to be initialized to non-zero
next.

gdb/ChangeLog:

        * ada-lang.c (add_nonlocal_symbols): Initialize data to
        all zeros.  Remove setting of data.arg_sym to NULL.
2011-12-14 20:24:59 +00:00
Tom Tromey
d6a0f6e0c7 * gdb.dwarf2/dw2-inline-param.exp: Log the objcopy command. 2011-12-14 19:59:25 +00:00
Doug Evans
31015e1de0 * lib/gdb.exp (gdb_start_cmd): Fix error return value. 2011-12-14 19:50:18 +00:00
Doug Evans
8d5b6c2b0a Fix typo in "Changes since ...". 2011-12-14 18:55:12 +00:00
Pedro Alves
82bfbe7eff 2011-12-14 Pedro Alves <pedro@codesourcery.com>
* linux-low.c (linux_detach_one_lwp): Call
	the_low_target.prepare_to_resume before detaching.
2011-12-14 17:33:24 +00:00
Pedro Alves
7b50312ad6 gdb/
2011-12-14  Pedro Alves  <pedro@codesourcery.com>

	PR threads/10729

	* linux-nat.c (linux_nat_new_thread): Change parameter to an lwp
	pointer.
	(linux_nat_prepare_to_resume): New global.
	(lwp_free): New.
	(purge_lwp_list): Use it.
	(add_lwp): Call linux_nat_new_thread even on the first LWP.
	Adjust to interface change.
	(delete_lwp): Call lwp_free instead of xfree.
	(detach_callback, linux_nat_detach, resume_lwp, linux_nat_resume)
	(linux_handle_syscall_trap, linux_handle_extended_wait)
	(linux_nat_filter_event, resume_stopped_resumed_lwps): Call
	linux_nat_prepare_to_resume before resuming.
	(linux_stop_lwp): New.
	(linux_nat_set_new_thread): Adjust.
	(linux_nat_set_prepare_to_resume): New.
	* linux-nat.h (struct arch_lwp_info): Forward declare.
	(struct lwp_info) <arch_private>: New field.
	(linux_stop_lwp): Declare.
	(linux_nat_set_new_thread): Adjust.
	(linux_nat_set_prepare_to_resume): New.

	* i386-nat.c (DR_NADDR, DR_STATUS, DR_CONTROL)
	(struct i386_debug_reg_state): Move to i386-nat.h.
	(dr_mirror): Comment.
	(i386_debug_reg_state): New.
	(i386_update_inferior_debug_regs): Simplify.
	(i386_stopped_data_address): Use the debug register state from the
	inferior, not from the local cache.
	* i386-nat.h (struct i386_dr_low_type): Delete reset_addr and
	unset_status fields.  New get_addr and get_control fields.
	(DR_FIRSTADDR, DR_LASTADDR, DR_CONTROL): Moved from i386-nat.c.
	(DR_NADDR, DR_STATUS): New.
	(struct i386_debug_reg_state): Moved from i386-nat.c.

	* amd64-linux-nat.c (struct arch_lwp_info): New.
	(amd64_linux_dr): Delete global.
	(amd64_linux_dr_get_addr): New.
	(amd64_linux_dr_get_control): New.
	(amd64_linux_dr_unset_status): Delete.
	(amd64_linux_dr_set_addr): Reimplement.
	(amd64_linux_dr_reset_addr): Delete.
	(update_debug_registers_callback): New.
	(amd64_linux_dr_set_control): Reimplement.
	(amd64_linux_dr_set_addr): Reimplement.
	(amd64_linux_prepare_to_resume): New.
	(amd64_linux_new_thread): Change parameter to an lwp pointer.
	Reimplement.
	(_initialize_amd64_linux_nat): No longer install
	i386_dr_low.reset_addr and i386_dr_low.unset_status.  Install
	amd64_linux_dr_get_control as i386_dr_low.get_control.  Install
	amd64_linux_dr_get_addr as i386_dr_low.get_addr.  Install
	amd64_linux_prepare_to_resume.
	* i386-linux-nat.c (DR_FIRSTADDR, DR_LASTADDR, DR_STATUS)
	(DR_CONTROL): Delete.
	(struct arch_lwp_info): New.
	(i386_linux_dr): Delete global.
	(i386_linux_dr_set_control): Reimplement.
	(i386_linux_dr_get_addr): New.
	(i386_linux_dr_set_addr): Reimplement.
	(i386_linux_dr_get_control): New.
	(update_debug_registers_callback): New.
	(i386_linux_dr_unset_status): Delete.
	(i386_linux_dr_set_addr): Reimplement.
	(i386_linux_prepare_to_resume): New.
	(i386_linux_new_thread): Change parameter to an lwp pointer.
	Reimplement.
	(_initialize_i386_linux_nat): No longer install
	i386_dr_low.reset_addr and i386_dr_low.unset_status.  Install
	i386_linux_dr_get_control as i386_dr_low.get_control.  Install
	i386_linux_dr_get_addr as i386_dr_low.get_addr.  Install
	i386_linux_prepare_to_resume.

	* arm-linux-nat.c (arm_linux_new_thread): Change parameter to an
	lwp pointer.  Adjust.
	* ia64-linux-nat.c (ia64_linux_new_thread): Likewise.
	* mips-linux-nat.c (mips_linux_new_thread): Likewise.
	* ppc-linux-nat.c (ppc_linux_new_thread): Likewise.
	* s390-nat.c (s390_fix_watch_points): Likewise.

	* i386-darwin-nat.c (DR_FIRSTADDR, DR_LASTADDR, DR_STATUS)
	(DR_CONTROL): Delete.
	(i386_darwin_dr_reset_addr): Delete.
	(i386_darwin_dr_get_addr): New.
	(i386_darwin_dr_get_control): New.
	* go32-nat.c
	(go32_get_dr7, go32_get_dr): New.
	(init_go32_ops): No longer install i386_dr_low.reset_addr.
	Install go32_get_dr7 as i386_dr_low.get_control.  Install
	go32_get_dr as i386_dr_low.get_addr.
	* i386bsd-nat.c (i386bsd_dr_get): New.
	(i386bsd_dr_reset_addr): Delete.
	(i386bsd_dr_get_addr): New.
	(i386bsd_dr_get_status): Use i386bsd_dr_get.
	(i386bsd_dr_get_control): New.
	* i386bsd-nat.h (i386bsd_dr_reset_addr): Delete.
	(i386bsd_dr_get_addr): New.
	(i386bsd_dr_get_control): New.
	* i386fbsd-nat.c (_initialize_i386fbsd_nat): No longer install
	i386_dr_low.reset_addr and i386_dr_low.unset_status.  Install
	i386bsd_dr_get_control as i386_dr_low.get_control.  Install
	i386bsd_dr_get_addr as i386_dr_low.get_addr.
	* windows-nat.c (init_windows_ops): No longer install
	i386_dr_low.reset_addr and i386_dr_low.unset_status.  Install
	cygwin_get_dr7 as i386_dr_low.get_control.  Install cygwin_get_dr
	as i386_dr_low.get_addr.
	(cygwin_get_dr): New.
	(cygwin_get_dr7): New.

gdb/testsuite/
2011-12-14  Pedro Alves  <pedro@codesourcery.com>

	PR threads/10729

	* gdb.mi/watch-nonstop.c: New file.
 	* gdb.mi/mi-watch-nonstop.exp: New file.
2011-12-14 17:20:32 +00:00
Doug Evans
1963ff9682 Add PR gdb/8367 to basenames-may-differ patch. 2011-12-14 16:05:59 +00:00
Doug Evans
37acd67cf7 Add PR # 7200 to: Make "!" an alias for "shell". 2011-12-14 15:31:55 +00:00
Pedro Alves
dd110abf04 2011-12-14 Pedro Alves <pedro@codesourcery.com>
* ia64-tdep.c (ia64_memory_remove_breakpoint): Use
	target_write_raw_memory.
	* m32r-tdep.c (m32r_memory_remove_breakpoint): Use
	target_write_raw_memory.
	* microblaze-linux-tdep.c
	(microblaze_linux_memory_remove_breakpoint): Use
	target_write_raw_memory.
	* ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Use
	target_write_raw_memory.
2011-12-14 14:55:27 +00:00
Pedro Alves
2fb860fcbc 2011-12-14 Pedro Alves <pedro@codesourcery.com>
* gdb.texinfo (Implementing a Remote Stub): Explain that you
	should transfer control to the stub in the startup code instead of
	in main.  Mention the need to get past the initial breakpoint.
2011-12-14 14:46:24 +00:00
Joel Brobecker
ad32032e2e Make decode_line_internal static.
gdb/ChangeLog:

	* linespec.c (decode_line_internal): Make static.
2011-12-14 14:34:59 +00:00
Yao Qi
d14c4eb729 gdb/
* breakpoint.c (create_breakpoint): Set canonical.addr_string
	for static tracepoint.
2011-12-14 07:56:59 +00:00
Yao Qi
712c65750b gdb/gdbserver/
* tracepoint.c (gdb_ust_thread): Don't ignore return value
	of write.
2011-12-14 07:47:15 +00:00
Yao Qi
d54d1edf1a 2011-12-14 Yao Qi <yao@codesourcery.com>
* i386-low.c (i386_low_stopped_data_address): Initialize local
	variable `control'.
2011-12-14 07:41:06 +00:00
gdbadmin
93995a1655 *** empty log message *** 2011-12-14 00:00:02 +00:00
Pedro Alves
924437bc13 gdb/doc/
2011-12-13  Pedro Alves  <pedro@codesourcery.com>

	* gdb.texinfo (Implementing a Remote Stub): Explain that you
	should transfer control to the stub in the startup code instead of
	in main.  Mention the need to get past the initial breakpoint.

gdb/testsuite/
2011-12-13  Pedro Alves  <pedro@codesourcery.com>
	    Doug Evans  <dje@google.com>

	* lib/gdb.exp (gdb_run_cmd, runto_main, gdb_compile)
	(clean_restart): Remove references to the gdb_stub target board
	variable.
	(gdb_step_for_stub): Delete.

	* gdb.base/annota1.exp: Remove all references to [target_info
	exists gdb_stub], gdb_step_for_stub and usestubs.
	* gdb.base/annota3.exp: Ditto.
	* gdb.base/async.exp: Ditto.
	* gdb.base/break.exp: Ditto.
	* gdb.base/code-expr.exp: Ditto.
	* gdb.base/commands.exp: Ditto.
	* gdb.base/completion.exp: Ditto.
	* gdb.base/condbreak.exp: Ditto.
	* gdb.base/consecutive.exp: Ditto.
	* gdb.base/cvexpr.exp: Ditto.
	* gdb.base/define.exp: Ditto.
	* gdb.base/display.exp: Ditto.
	* gdb.base/ena-dis-br.exp: Ditto.
	* gdb.base/environ.exp: Ditto.
	* gdb.base/gnu-ifunc.exp: Ditto.
	* gdb.base/maint.exp: Ditto.
	* gdb.base/pending.exp: Ditto.
	* gdb.base/sect-cmd.exp: Ditto.
	* gdb.base/sepdebug.exp: Ditto.
	* gdb.base/unload.exp: Ditto.
	* gdb.base/watchpoint-solib.exp: Ditto.
	* gdb.cp/annota2.exp: Ditto.
	* gdb.cp/annota3.exp: Ditto.
	* gdb.dwarf2/dw2-inline-param.exp: Ditto.
	* gdb.hp/gdb.compat/xdb1.exp: Ditto.
	* gdb.mi/mi-pending.exp: Ditto.
	* gdb.trace/circ.exp: Ditto.
	* gdb.cp/ovldbreak.exp: Ditto.  Adjust expected line numbers.
	* gdb.base/list.exp: Ditto.

	* gdb.base/all-types.c: Remove all calls to set_debug_traps and
	breakpoint function and all references to the usestubs macro.
	* gdb.base/exprs.c: Ditto.
	* gdb.base/freebpcmd.c: Ditto.
	* gdb.base/bitfields.c: Ditto.
	* gdb.base/bitfields2.c: Ditto.
	* gdb.base/break.c: Ditto.
	* gdb.base/call-sc.c: Ditto.
	* gdb.base/call-signals.c: Ditto.
	* gdb.base/callfuncs.c: Ditto.
	* gdb.base/charset.c: Ditto.
	* gdb.base/consecutive.c: Ditto.
	* gdb.base/constvars.c: Ditto.
	* gdb.base/funcargs.c: Ditto.
	* gdb.base/int-type.c: Ditto.
	* gdb.base/interrupt.c: Ditto.
	* gdb.base/langs0.c: Ditto.
	* gdb.base/list0.c: Ditto.
	* gdb.base/mips_pro.c: Ditto.
	* gdb.base/miscexprs.c: Ditto.
	* gdb.base/nodebug.c: Ditto.
	* gdb.base/opaque0.c: Ditto.
	* gdb.base/pointers.c: Ditto.
	* gdb.base/printcmds.c: Ditto.
	* gdb.base/ptype.c: Ditto.
	* gdb.base/recurse.c: Ditto.
	* gdb.base/reread1.c: Ditto.
	* gdb.base/reread2.c: Ditto.
	* gdb.base/restore.c: Ditto.
	* gdb.base/return.c: Ditto.
	* gdb.base/run.c: Ditto.
	* gdb.base/scope0.c: Ditto.
	* gdb.base/sepdebug.c: Ditto.
	* gdb.base/setshow.c: Ditto.
	* gdb.base/setvar.c: Ditto.
	* gdb.base/sigall.c: Ditto.
	* gdb.base/signals.c: Ditto.
	* gdb.base/structs.c: Ditto.
	* gdb.base/structs2.c: Ditto.
	* gdb.base/testenv.c: Ditto.
	* gdb.base/twice.c: Ditto.
	* gdb.base/unwindonsignal.c: Ditto.
	* gdb.base/watchpoint.c: Ditto.
	* gdb.base/watchpoints.c: Ditto.
	* gdb.base/whatis.c: Ditto.
	* gdb.cp/classes.cc: Ditto.
	* gdb.cp/cplusfuncs.cc: Ditto.
	* gdb.cp/derivation.cc: Ditto.
	* gdb.cp/formatted-ref.cc: Ditto.
	* gdb.cp/misc.cc: Ditto.
	* gdb.cp/overload.cc: Ditto.
	* gdb.cp/ovldbreak.cc: Ditto.
	* gdb.cp/ref-params.cc: Ditto.
	* gdb.cp/ref-types.cc: Ditto.
	* gdb.cp/templates.cc: Ditto.
	* gdb.cp/virtfunc.cc: Ditto.
	* gdb.hp/gdb.aCC/run.c: Ditto.
	* gdb.hp/gdb.base-hp/callfwmall.c: Ditto.
	* gdb.hp/gdb.compat/xdb0.c: Ditto.
	* gdb.reverse/consecutive-reverse.c: Ditto.
	* gdb.reverse/sigall-reverse.c: Ditto.
	* gdb.reverse/until-reverse.c: Ditto.
	* gdb.reverse/watch-reverse.c: Ditto.
	* gdb.trace/actions.c: Ditto.
	* gdb.trace/circ.c: Ditto.
	* gdb.trace/collection.c: Ditto.
2011-12-13 17:22:11 +00:00
Pedro Alves
6210a125f8 2011-12-13 Pedro Alves <pedro@codesourcery.com>
PR remote/13492

	* i386-low.c (i386_low_stopped_data_address): Avoid fetching
	DR_CONTROL unless necessary.  Extend comments.
	* linux-x86-low.c (x86_linux_prepare_to_resume): Don't write to
	DR0-3 if not used.  If any watchpoint was set, clear DR_STATUS.
2011-12-13 16:11:26 +00:00
Pedro Alves
fabde4854c 2011-12-13 Pedro Alves <pedro@codesourcery.com>
* gdb.base/watchpoint.c (struct foo2, foo2, struct foo4, foo4)
	(func6, func7): New.
	(main): Call func6 and func7.
	* gdb.base/watchpoint.exp (test_wide_location_1)
	(test_wide_location_2): New.
	(top level): Re-enable hardware watchpoints if necessary.  Call
	test_wide_location_1 and test_wide_location_2.
2011-12-13 16:05:24 +00:00
Joel Brobecker
8837a20f4f Create new section in NEWS for next release branch
gdb/ChangeLog:

        * NEWS: Create a new section for the next release branch.
        Rename the section of the current branch, now that it has
        been cut.
2011-12-13 13:36:38 +00:00
gdbadmin
25564b6672 Record GDB 7.4 branch creation. Bump version number to 7.4.50.20111213-cvs. 2011-12-13 13:06:15 +00:00
Yao Qi
2ece82445d 2011-12-13 Yao Qi <yao@codesourcery.com>
* tracepoint.c (trace_buffer_alloc): Replace magic numbers with
	macros.
	(upload_fast_traceframes, upload_fast_traceframes): Likewise.
2011-12-13 01:26:56 +00:00
gdbadmin
8a40f88195 *** empty log message *** 2011-12-13 00:00:02 +00:00
Yao Qi
ff7d1690b4 2011-12-11 Yao Qi <yao@codesourcery.com>
* gdb.trace/status-stop.exp: Skip it if target doesn't support trace.
2011-12-12 02:11:45 +00:00
gdbadmin
b5de74e22e *** empty log message *** 2011-12-12 00:00:03 +00:00
Joel Brobecker
7dda8cff78 [Ada] improve message when cannot insert Ada exception catchpoint.
gdb/ChangeLog:

        * ada-lang.c (ada_exception_support_info_sniffer): Improve
        error message.
2011-12-11 17:38:17 +00:00
Joel Brobecker
3eecfa5559 [Ada] Make the exception_support_info data per inferior.
The ada-lang module was using a static global called "exception_info"
for all inferiors.  But each inferior might be different, and thus
this patch makes this data per-inferior.

gdb/ChangeLog:

        * ada-lang.c (struct ada_inferior_data) [exception_info]:
        New field.
        (exception_info): Delete.
        (ada_exception_support_info_sniffer): Get exception_support_info
        data from our per-inferior data.  Adjust code accordingly.
        (ada_unhandled_exception_name_addr_from_raise): Likewise.
        (ada_exception_name_addr_1, ada_exception_sym_name): Ditto.
        (ada_executable_changed_observer): Delete.
        (_initialize_ada_language): Remove call to
        observer_attach_executable_changed.
2011-12-11 17:37:56 +00:00
Joel Brobecker
a6af7abe5d Warn if missing debug info for Ada exception catchpoints
This patch should help the user understand why the debugger is not
able to insert Ada exception catchpoints when the Ada runtime was
stripped of debugging info, as is often the case on many GNU/Linux
distros:

    (gdb) catch exception
    Your Ada runtime appears to be missing some debugging information.
    Cannot insert Ada exception catchpoint in this configuration.

gdb/ChangeLog:

        * ada-lang.c (ada_has_this_exception_support): Raise an error
        if we could find the Ada exception hook in the Ada runtime,
        but no debugging info for that hook.

gdb/testsuite/ChangeLog:

        * gdb.ada/catch_ex.exp, gdb.ada/mi_catch_ex.exp: Adjust
        expected output for unsupported case.
2011-12-11 17:36:10 +00:00
Joel Brobecker
f17011e0cd Ada exception catchpoint support cleanup.
This patch cleans up a bit the way we detect which type of runtime
the program uses with respect to Ada exceptions. It also removes
an unnecessary check in ada_exception_sal which is already performed
by ada_exception_support_info_sniffer.

Some of the changes are preparation work for detecting the situation
where the Ada runtime is found, but lacking debugging info.

gdb/ChangeLog:

        * ada-lang.c (ada_has_this_exception_support): New function,
        extracted out of ada_exception_sal and ada_exception_sal.
        (ada_exception_support_info_sniffer): Simplify by using
        ada_has_this_exception_support.
        (ada_exception_sal): Replace unnecessary checks by assertions.
        Minor simplifications.
2011-12-11 17:35:34 +00:00
Andrey Smirnov
d3fbdd8686 * breakpoint.c (update_global_location_list): Remove nested
definition of `b'(-Wshadow).
2011-12-11 03:04:45 +00:00
Andrey Smirnov
eacd795a56 * breakpoint.c (insert_breakpoint_locations): Rename `error' to
`error_flag'(-Wshadow).
2011-12-11 02:53:28 +00:00
Andrey Smirnov
ad13d8dfa3 * bfd-target.c (target_bfd_reopen): Rename `bfd' to
`abfd'(-Wshadow).
2011-12-11 02:46:54 +00:00
Andrey Smirnov
917793afae * annotate.c (annotate_array_section_begin): Rename `index' to
`idx'(-Wshadow).
2011-12-11 02:44:15 +00:00
Andrey Smirnov
d48ebb5b06 * amd64-tdep.c (amd64_get_unused_input_int_reg): Rename `index' to
`idx'(-Wshadow).
2011-12-11 02:41:31 +00:00
Andrey Smirnov
9ed936ec47 * amd64-linux-tdep.c (amd64_canonicalize_syscall): Rename
`syscall' to `syscall_number'(-Wshadow).
2011-12-11 02:34:26 +00:00
Andrey Smirnov
a35ddb4476 * ada-lang.c (remove_extra_symbols): Rename `remove' to
`remove_p'(-Wshadow).
2011-12-11 02:31:04 +00:00
Andrey Smirnov
e5e61bd728 * ada-exp.y (write_var_or_type): Rename nested `renaming' to
`ren_sym'(-Wshadow).
2011-12-11 02:27:24 +00:00
gdbadmin
cc337c3c0a *** empty log message *** 2011-12-11 00:00:32 +00:00
Doug Evans
b0df02fd80 * dwarf2read.c (dwarf2_per_cu_data): Rename debug_type_section to
debug_types_section.  All uses updated.
	(partial_read_comp_unit_head): Rename parameter is_debug_type_section
	to is_debug_types_section.
2011-12-10 23:57:40 +00:00
Jan Kratochvil
61638e15c5 gdb/testsuite/
PR testsuite/12649
	* gdb.trace/ftrace.exp (test_fast_tracepoints): Import gdb_prompt.
	Protect gdb_test_multiple by final $gdb_prompt match.
2011-12-10 23:05:08 +00:00
Doug Evans
d200ab1e84 * python/py-auto-load.c (source_section_scripts): Call xfree
instead of free.
2011-12-10 22:51:47 +00:00
Jan Kratochvil
0a00efc364 gdb/testsuite/
* gdb.cp/static-method.exp (have_gcc_45682_fixed, info addr A::func()):
	New variable, new test.
	(list static-method.cc:xxx::(anonymous namespace)::A::func)
	(list 'static-method.cc:xxx::(anonymous namespace)::A::func')
	(list 'static-method.cc':'xxx::(anonymous namespace)::A::func')
	(list static-method.cc:'xxx::(anonymous namespace)::A::func'): KFAIL
	them if HAVE_GCC_45682_FIXED is not set.
2011-12-10 15:58:14 +00:00
Yao Qi
4511b1ba87 2011-12-10 Hui Zhu <teawater@gmail.com>
Yao Qi  <yao@codesourcery.com>

	* tracepoint.c (start_tracing): Clear `inserted' flag.

2011-12-10  Yao Qi  <yao@codesourcery.com>

	* gdb.trace/status-stop.exp: New.
	* gdb.trace/status-stop.c: New.
2011-12-10 15:16:35 +00:00
Hui Zhu
df5a4bd3a5 2011-12-10 Hui Zhu <teawater@gmail.com>
* tracepoint.c (create_tsv_from_upload): Change sprintf to xstrprintf.
2011-12-10 09:41:19 +00:00
Andrey Smirnov
1afeeb75f2 * breakpoint.c (bp_loc_is_permanent): Rename `brk' to
`bpoint'(-Wshadow).
2011-12-10 00:22:56 +00:00
Andrey Smirnov
80e1d41794 * breakpoint.c (update_static_tracepoint): Rename nested `sal' and
`marker' variables to `sal2' and `tpmarker' respectively
(-Wshadow).
2011-12-10 00:15:54 +00:00
gdbadmin
20d6b87c2b *** empty log message *** 2011-12-10 00:00:03 +00:00
Andrew Pinski
04ca3c2272 2011-12-09 Andrew Pinski <apinski@cavium.com>
* linespec.c (hash_address_entry): Use iterative_hash_object on each
	field rather than the struct itself.
2011-12-09 19:22:31 +00:00
Tom Tromey
8a2c437bd9 * breakpoint.c (compare_breakpoints): New function.
(clear_command): Remove duplicate breakpoints.  Properly clean
	up.
2011-12-09 18:40:46 +00:00
Jan Kratochvil
27949e7316 gdb/testsuite/
* gdb.reverse/until-precsave.exp (run to end of main) Extend the
	timeout.
2011-12-09 17:36:02 +00:00
gdbadmin
f80bef4e07 *** empty log message *** 2011-12-09 00:00:32 +00:00
Maciej W. Rozycki
280711e76c * mips-tdep.c (mips_skip_mips16_trampoline_code): Sign-extend
address chunks retrieved from decoded lui/addiu pairs.
2011-12-08 19:03:24 +00:00
Maciej W. Rozycki
4c2051c6c9 * mips-tdep.c (extended_offset): Correct calculation.
(unpack_mips16): Correct bitfield positions used for extraction
	of the immediate argument; fix sign-extension of same.
	(extended_mips16_next_pc): Correct B instruction's offset
	calculation.  Correct register decoding of the BEQZ and BNEZ
	as well as jump-register instructions.  Handle compact jumps.
2011-12-08 18:55:48 +00:00
Tom Tromey
ff011ed785 * objfiles.h (struct objfile): Remove obsolete comment.
* objfiles.c (build_objfile_section_table): Remove obsolete
	comment.
2011-12-08 18:08:12 +00:00
Tom Tromey
d8ea793193 * gdb.cp/ovsrch.exp (test_class): Correctly use "a_param" in
condition.
2011-12-08 15:31:20 +00:00
Jan Kratochvil
784867a51b gdb/gdbserver/
* linux-low.c (linux_kill): Skip PTRACE_KILL if LWP does not exist.
	Print new debug message for such case.
2011-12-08 10:28:58 +00:00
Stan Shebs
7cd3876c8a * MAINTAINERS (Responsible Maintainers): Add Yao Qi as
maintainer of the tic6x target.
2011-12-08 01:15:36 +00:00
gdbadmin
027bc4e874 *** empty log message *** 2011-12-08 00:00:03 +00:00
Maciej W. Rozycki
c7195df2f5 Fix ChangeLog typo. 2011-12-07 21:45:12 +00:00
Stan Shebs
1cc310d2dd * gdb.trace/tfind.exp: Update for output changes. 2011-12-07 21:24:05 +00:00
Ulrich Weigand
35f73cfc81 * arm-tdep.h (arm_deal_with_atomic_sequence): Add prototype.
* arm-tdep.c (thumb_deal_with_atomic_sequence_raw): New function.
	(arm_deal_with_atomic_sequence_raw): Likewise.
	(arm_deal_with_atomic_sequence): Likewise.
	(arm_software_single_step): Call it.
	* arm-linux-tdep.c (arm_linux_software_single_step): Likewise.
2011-12-07 20:53:08 +00:00
Pedro Alves
d482a87555 2011-12-07 Pedro Alves <pedro@codesourcery.com>
* gdb.ada/catch_ex.exp: Skip as unsupported if "catch exception"
	throws "Cannot insert catchpoints in this configuration".
	* gdb.ada/mi_catch_ex.exp: Likewise.
2011-12-07 15:00:34 +00:00
Ulrich Weigand
94eae614f4 * s390-tdep.c: Replace "Linux" by "GNU/Linux" in comments
where appropriate.
	* s390-tdep.h: Likewise.
2011-12-07 13:31:05 +00:00
Tristan Gingold
13b8d0c64f 2011-12-07 Tristan Gingold <gingold@adacore.com>
* machoread.c (macho_symtab_read): Do not consider N_OPT as
	a debugging stab.  Improve complaint message.
2011-12-07 09:11:25 +00:00
Maciej W. Rozycki
5436df9582 * mips-tdep.c (mips32_scan_prologue): Only update the immediate
load adjustment if still within the prologue.
2011-12-07 00:17:23 +00:00
gdbadmin
c3cd48691a *** empty log message *** 2011-12-07 00:00:03 +00:00
Maciej W. Rozycki
040dff2af8 * mips-tdep.c (mips32_next_pc): Fix floating point condition
code mask.
2011-12-06 23:49:56 +00:00
Maciej W. Rozycki
754d7c7860 * mips-tdep.c (deal_with_atomic_sequence): Fix the handling
of BLTZ* and BGEZ* instructions.
2011-12-06 23:36:58 +00:00
Jan Kratochvil
6bf36717da gdb/gdbserver/
Fix overlapping memcpy.
	* mem-break.c (set_raw_breakpoint_at): New variable buf.  Use it for
	the read_inferior_memory transfer.
	(delete_fast_tracepoint_jump): New variable buf.  Use it for the
	write_inferior_memory transfer.
	(set_fast_tracepoint_jump): New variable buf.  Use it for the
	read_inferior_memory and write_inferior_memory transfers.
	(uninsert_fast_tracepoint_jumps_at, reinsert_fast_tracepoint_jumps_at)
	(delete_raw_breakpoint, uninsert_raw_breakpoint): New variable buf.
	Use it for the write_inferior_memory transfer.
	(check_mem_read, check_mem_write): New gdb_asserts for overlapping
	buffers.
2011-12-06 23:29:47 +00:00
Maciej W. Rozycki
91912e4d08 * mips-tdep.c (mips_pc_is_mips16): Reverse the order of checks
performed to determine whether an address refers to standard
	MIPS or MIPS16 code.
	(mips16_next_pc): Use mips_pc_is_mips16 instead of
	is_mips16_addr.
2011-12-06 23:19:43 +00:00
Maciej W. Rozycki
5027555691 * linux-low.c (fetch_register, store_register): Make code
consistent, fix formatting.
2011-12-06 23:09:08 +00:00
Maciej W. Rozycki
7325beb467 * linux-low.c (usr_store_inferior_registers): Factor out code
to handle individual registers into...
	(store_register): ... this new function.
2011-12-06 23:00:15 +00:00
Pedro Alves
f0ba3972e9 2011-12-06 Pedro Alves <pedro@codesourcery.com>
gdb/
	* breakpoint.c (breakpoint_restore_shadows): Rename to ...
	(breakpoint_xfer_memory): ... this.  Change prototype.  Handle
	memory writes too.
	* breakpoint.h (breakpoint_restore_shadows): Delete.
	(breakpoint_xfer_memory): Declare.
	* mem-break.c (default_memory_insert_breakpoint)
	(default_memory_remove_breakpoint): Use target_write_raw_memory.
	(memory_xfer_partial): Rename to ...
	(memory_xfer_partial_1): ... this.  Don't mask out breakpoints
	here.
	(memory_xfer_partial): New.
	(target_write_raw_memory): New.
	* target.h (target_write_raw_memory): New.

	gdb/testsuite/
	* gdb.base/break-always.exp: Test changing memory at addresses
	with breakpoints inserted.
2011-12-06 20:03:14 +00:00
Doug Evans
31aba06f31 * linespec.c (decode_dollar): Avoid "may be used uninitialized" warning. 2011-12-06 19:57:47 +00:00
Tom Tromey
f8eba3c616 the "ambiguous linespec" series
gdb
2011-12-06  Joel Brobecker  <brobecker@acacore.com>

        * language.h (struct language_defn): Add new component
        la_symbol_name_compare.
        * symfile.h (struct quick_symbol_functions): Update the profile
        of parameter "name_matcher" for the expand_symtabs_matching
        method.  Update the documentation accordingly.
        * ada-lang.h (ada_name_for_lookup): Add declaration.
        * ada-lang.c (ada_name_for_lookup): New function, extracted out
        from ada_iterate_over_symbols.
        (ada_iterate_over_symbols): Do not encode symbol name anymore.
        (ada_expand_partial_symbol_name): Adjust profile.
        (ada_language_defn): Add value for la_symbol_name_compare field.
        * linespec.c: #include "ada-lang.h".
        (iterate_name_matcher): Add language parameter. Replace call
        to strcmp_iw by call to language->la_symbol_name_compare.
        (decode_variable): Encode COPY if current language is Ada.
        * dwarf2read.c (dw2_expand_symtabs_matching): Adjust profile
        of name_matcher parameter.  Adjust call to name_matcher.
        * psymtab.c (expand_symtabs_matching_via_partial): Likewise.
        (expand_partial_symbol_names): Update profile of parameter "fun".
        * psymtab.h (expand_partial_symbol_names): Update profile of
        parameter "fun".
        * symtab.c (demangle_for_lookup): Update function documentation.
        (search_symbols_name_matches): Add language parameter.
        (expand_partial_symbol_name): Likewise.
        * c-lang.c (c_language_defn, cplus_language_defn)
        (asm_language_defn, minimal_language_defn): Add value for
        la_symbol_name_compare field.
        * d-lang.c (d_language_defn): Likewise.
        * f-lang.c (f_language_defn): Ditto.
        * jv-lang.c (java_language_defn): Ditto.
        * m2-lang.c (m2_language_defn): Ditto.
        * objc-lang.c (objc_language_defn): Ditto.
        * opencl-lang.c (opencl_language_defn): Ditto.
        * p-lang.c (pascal_language_defn): Ditto.
        * language.c (unknown_language_defn, auto_language_defn)
        (local_language_defn): Ditto.

2011-12-06  Tom Tromey  <tromey@redhat.com>

	* linespec.c (iterate_over_all_matching_symtabs): Use
	LA_ITERATE_OVER_SYMBOLS.
	(lookup_prefix_sym, add_matching_symbols_to_info): Likewise.
	(find_function_symbols, decode_variable): Remove Ada special
	case.
	* language.h (struct language_defn) <la_iterate_over_symbols>: New
	field.
	(LA_ITERATE_OVER_SYMBOLS): New macro.
	* language.c (unknown_language_defn, auto_language_defn)
	(local_language_defn): Update.
	* c-lang.c (c_language_defn, cplus_language_defn)
	(asm_language_defn, minimal_language_defn): Update.
	* d-lang.c (d_language_defn): Update.
	* f-lang.c (f_language_defn): Update.
	* jv-lang.c (java_language_defn): Update.
	* m2-lang.c (m2_language_defn): Update.
	* objc-lang.c (objc_language_defn): Update.
	* opencl-lang.c (opencl_language_defn): Update.
	* p-lang.c (pascal_language_defn): Update.
	* ada-lang.c (ada_iterate_over_symbols): New function.
	(ada_language_defn): Update.

2011-12-06  Tom Tromey  <tromey@redhat.com>
	    Joel Brobecker  <brobecker@acacore.com>

	PR breakpoints/13105, PR objc/8341, PR objc/8343, PR objc/8366,
	PR objc/8535, PR breakpoints/11657, PR breakpoints/11970,
	PR breakpoints/12023, PR breakpoints/12334, PR breakpoints/12856,
	PR shlibs/8929, PR shlibs/7393:
	* python/py-type.c (compare_maybe_null_strings): Rename from
	compare_strings.
	(check_types_equal): Update.
	* utils.c (compare_strings): New function.
	* tui/tui-winsource.c (tui_update_breakpoint_info): Update for
	location changes.
	* tracepoint.c (scope_info): Update.
	(trace_find_line_command): Use DECODE_LINE_FUNFIRSTLINE.
	* symtab.h (iterate_over_minimal_symbols)
	(iterate_over_some_symtabs, iterate_over_symtabs)
	(find_pcs_for_symtab_line, iterate_over_symbols)
	(demangle_for_lookup): Declare.
	(expand_line_sal): Remove.
	* symtab.c (iterate_over_some_symtabs, iterate_over_symtabs)
	(lookup_symtab_callback): New functions.
	(lookup_symtab): Rewrite.
	(demangle_for_lookup): New function, extract from
	lookup_symbol_in_language.
	(lookup_symbol_in_language): Use it.
	(iterate_over_symbols): New function.
	(find_line_symtab): Update.
	(find_pcs_for_symtab_line): New functions.
	(find_line_common): Add 'start' argument.
	(decode_line_spec): Update.  Change argument to 'flags', change
	interpretation.
	(append_expanded_sal): Remove.
	(append_exact_match_to_sals): Remove.
	(expand_line_sal): Remove.
	* symfile.h (struct quick_symbol_functions) <lookup_symtab>:
	Remove.
	<map_symtabs_matching_filename>: New field.
	* stack.c (func_command): Only look in the current program space.
	Use DECODE_LINE_FUNFIRSTLINE.
	* source.c (line_info): Set pspace on sal.  Check program space in
	the loop.  Use DECODE_LINE_LIST_MODE.
	(select_source_symtab): Use DECODE_LINE_FUNFIRSTLINE.
	* solib-target.c: Remove DEF_VEC_I(CORE_ADDR).
	* python/python.c (gdbpy_decode_line): Update.
	* psymtab.c (partial_map_expand_apply): New function.
	(partial_map_symtabs_matching_filename): Rename from
	lookup_partial_symbol.  Update arguments.
	(lookup_symtab_via_partial_symtab): Remove.
	(psym_functions): Update.
	* objc-lang.h (parse_selector, parse_method): Don't declare.
	(find_imps): Update.
	* objc-lang.c (parse_selector, parse_method): Now static.
	(find_methods): Change arguments.  Fill in a vector of symbol
	names.
	(uniquify_strings): New function.
	(find_imps): Change arguments.
	* minsyms.c (iterate_over_minimal_symbols): New function.
	* linespec.h (enum decode_line_flags): New.
	(struct linespec_sals): New.
	(struct linespec_result) <canonical>: Remove.
	<pre_expanded, addr_string, sals>: New fields.
	(destroy_linespec_result, make_cleanup_destroy_linespec_result)
	(decode_line_full): Declare.
	(decode_line_1): Update.
	* linespec.c (struct address_entry, struct linespec_state, struct
	collect_info): New types.
	(add_sal_to_sals_basic, add_sal_to_sals, hash_address_entry)
	(eq_address_entry, maybe_add_address): New functions.
	(total_number_of_methods): Remove.
	(iterate_name_matcher, iterate_over_all_matching_symtabs): New
	functions.
	(find_methods): Change arguments.  Don't canonicalize input.
	Simplify logic.
	(add_matching_methods, add_constructors)
	(build_canonical_line_spec): Remove.
	(filter_results, convert_results_to_lsals): New functions.
	(decode_line_2): Change arguments.  Rewrite for new data
	structures.
	(decode_line_internal): Rename from decode_line_1.  Change
	arguments.  Add cleanups.  Update for new data structures.
	(linespec_state_constructor, linespec_state_destructor)
	(decode_line_full, decode_line_1): New functions.
	(decode_indirect): Change arguments.  Update.
	(locate_first_half): Use skip_spaces.
	(decode_objc): Change arguments.  Update for new data structures.
	Simplify logic.
	(decode_compound): Change arguments.  Add cleanups.  Remove
	fallback code, replace with error.
	(struct decode_compound_collector): New type.
	(collect_one_symbol): New function.
	(lookup_prefix_sym): Change arguments.  Update.
	(compare_symbol_name, add_all_symbol_names_from_pspace)
	(find_superclass_methods ): New functions.
	(find_method): Rewrite.
	(struct symtab_collector): New type.
	(add_symtabs_to_list, collect_symtabs_from_filename): New
	functions.
	(symtabs_from_filename): Change API.  Rename from
	symtab_from_filename.
	(collect_function_symbols): New function.
	(find_function_symbols): Change API.  Rename from
	find_function_symbol.  Rewrite.
	(decode_all_digits): Change arguments.  Rewrite.
	(decode_dollar): Change arguments.  Use decode_variable.
	(decode_label): Change arguments.  Rewrite.
	(collect_symbols): New function.
	(minsym_found): Change arguments.  Rewrite.
	(check_minsym, search_minsyms_for_name)
	(add_matching_symbols_to_info): New function.
	(decode_variable): Change arguments.  Iterate over all symbols.
	(symbol_found): Remove.
	(symbol_to_sal): New function.
	(init_linespec_result, destroy_linespec_result)
	(cleanup_linespec_result, make_cleanup_destroy_linespec_result):
	New functions.
	(decode_digits_list_mode, decode_digits_ordinary): New functions.
	* dwarf2read.c (dw2_map_expand_apply): New function.
	(dw2_map_symtabs_matching_filename): Rename from
	dw2_lookup_symtab.  Change arguments.
	(dwarf2_gdb_index_functions): Update.
	* dwarf2loc.c: Remove DEF_VEC_I(CORE_ADDR).
	* defs.h (compare_strings): Declare.
	* cli/cli-cmds.c (compare_strings): Move to utils.c.
	(edit_command, list_command): Use DECODE_LINE_LIST_MODE.  Call
	filter_sals.
	(compare_symtabs, filter_sals): New functions.
	* breakpoint.h (struct bp_location) <line_number, source_file>:
	New fields.
	(struct breakpoint) <line_number, source_file>: Remove.
	<filter>: New field.
	* breakpoint.c (print_breakpoint_location, init_raw_breakpoint)
	(momentary_breakpoint_from_master, add_location_to_breakpoint):
	Update for changes to locations.
	(init_breakpoint_sal): Add 'filter' argument.  Set 'filter' on
	breakpoint.
	(create_breakpoint_sal): Add 'filter' argument.
	(remove_sal, expand_line_sal_maybe): Remove.
	(create_breakpoints_sal): Remove 'sals' argument.  Handle
	pre-expanded sals and the filter.
	(parse_breakpoint_sals): Use decode_line_full.
	(check_fast_tracepoint_sals): Use get_sal_arch.
	(create_breakpoint): Create a linespec_sals.  Update.
	(break_range_command): Use decode_line_full.  Update.
	(until_break_command): Update.
	(clear_command): Update match conditions for linespec.c changes.
	Use DECODE_LINE_LIST_MODE.
	(say_where): Update for changes to locations.
	(bp_location_dtor): Free 'source_file'.
	(base_breakpoint_dtor): Free 'filter'.  Don't free 'source_file'.
	(update_static_tracepoint): Update for changes to locations.
	(update_breakpoint_locations): Disable ranged breakpoint if too
	many locations match.  Update.
	(addr_string_to_sals): Use decode_line_full.  Resolve all sal
	PCs.
	(breakpoint_re_set_default): Don't call expand_line_sal_maybe.
	(decode_line_spec_1): Update.  Change argument name to 'flags',
	change interpretation.
	* block.h (block_containing_function): Declare.
	* block.c (block_containing_function): New function.
	* skip.c (skip_function_command): Update.
	(skip_re_set): Update.
	* infcmd.c (jump_command): Use DECODE_LINE_FUNFIRSTLINE.
	* mi/mi-main.c (mi_cmd_trace_find): Use DECODE_LINE_FUNFIRSTLINE.
	* NEWS: Add entry.

2011-12-06  Tom Tromey  <tromey@redhat.com>

	* elfread.c (elf_gnu_ifunc_resolver_return_stop): Allow
	breakpoint's pspace to be NULL.
	* breakpoint.h (struct breakpoint) <pspace>: Update comment.
	* breakpoint.c (init_raw_breakpoint): Conditionally set
	breakpoint's pspace.
	(init_breakpoint_sal): Don't set breakpoint's pspace.
	(prepare_re_set_context): Conditionally switch program space.
	(addr_string_to_sals): Check executing_startup on location's
	program space.

2011-12-06  Tom Tromey  <tromey@redhat.com>

	* breakpoint.h (enum enable_state) <bp_startup_disabled>: Remove.
	* breakpoint.c (should_be_inserted): Explicitly check if program
	space is executing startup.
	(describe_other_breakpoints): Update.
	(disable_breakpoints_before_startup): Change executing_startup
	earlier.  Remove loop.
	(enable_breakpoints_after_startup): Likewise.
	(init_breakpoint_sal): Don't use bp_startup_disabled.
	(create_breakpoint): Don't use bp_startup_disabled.
	(update_global_location_list): Use should_be_inserted.
	(bkpt_re_set): Update.
gdb/testsuite
2011-12-06  Joel Brobecker  <brobecker@acacore.com>

        * gdb.ada/fullname_bp.exp: Add tests for other valid linespecs
        involving a fully qualified function name.

2011-12-06  Tom Tromey  <tromey@redhat.com>

	* gdb.ada/homonym.exp: Add three breakpoint tests.

2011-12-06  Tom Tromey  <tromey@redhat.com>

	* gdb.base/solib-weak.exp (do_test): Remove kfail.
	* gdb.trace/tracecmd.exp: Disable pending breakpoints earlier.
	* gdb.objc/objcdecode.exp: Update for output changes.
	* gdb.linespec/linespec.exp: New file.
	* gdb.linespec/lspec.cc: New file.
	* gdb.linespec/lspec.h: New file.
	* gdb.linespec/body.h: New file.
	* gdb.linespec/base/two/thefile.cc: New file.
	* gdb.linespec/base/one/thefile.cc: New file.
	* gdb.linespec/Makefile.in: New file.
	* gdb.cp/templates.exp (test_template_breakpoints): Update for
	output changes.
	* gdb.cp/re-set-overloaded.exp: Remove kfail.
	* gdb.cp/ovldbreak.exp: Update for output changes.  "all" test now
	makes one breakpoint.
	* gdb.cp/method2.exp (test_break): Update for output changes.
	* gdb.cp/mb-templates.exp: Update for output changes.
	* gdb.cp/mb-inline.exp: Update for output changes.
	* gdb.cp/mb-ctor.exp: Update for output changes.
	* gdb.cp/ovsrch.exp: Use fully-qualified names.
	* gdb.base/solib-symbol.exp: Run to main later.  Breakpoint now
	has multiple matches.
	* gdb.base/sepdebug.exp: Disable pending breakpoints.  Update for
	error message change.
	* gdb.base/list.exp (test_list_filename_and_number): Update for
	error message change.
	* gdb.base/break.exp: Disable pending breakpoints.  Update for
	output changes.
	* configure.ac: Add gdb.linespec.
	* configure: Rebuild.
	* Makefile.in (ALL_SUBDIRS): Add gdb.linespec.
gdb/doc
2011-12-06  Tom Tromey  <tromey@redhat.com>

	* gdb.texinfo (Set Breaks): Update for new behavior.
2011-12-06 18:54:43 +00:00
Tom Tromey
75c8c9d72c * python/lib/gdb/command/pretty_printers.py
(InfoPrettyPrinter.invoke1): Remove extra double quote.
2011-12-06 17:38:53 +00:00
Tom Tromey
7376e45089 * NEWS: Add MI news. 2011-12-06 14:27:39 +00:00
Ulrich Weigand
c642a43456 ChangeLog:
* s390-tdep.h (S390_ORIG_R2_REGNUM): Define.
	(S390_LAST_BREAK_REGNUM): Likewise.
	(S390_SYSTEM_CALL_REGNUM): Likewise.
	(S390_NUM_REGS): Update.

	(s390_regmap_last_break): Add declaration.
	(s390x_regmap_last_break): Likewise.
	(s390_regmap_system_call): Likewise.

	(tdesc_s390_linux32v1): Add declaration.
	(tdesc_s390_linux32v2): Likewise.
	(tdesc_s390_linux64v1): Likewise.
	(tdesc_s390_linux64v2): Likewise.
	(tdesc_s390x_linux64v1): Likewise.
	(tdesc_s390x_linux64v2): Likewise.

	* s390-tdep.c: Include new target description files
	"features/s390-linux32v1.c", "features/s390-linux32v2.c",
	"features/s390-linux64v1.c", "features/s390-linux64v2.c",
	"features/s390x-linux64v1.c", and "features/s390x-linux64v2.c".
	(s390_cannot_store_register): New function.
	(s390_write_pc): Likewise.
	(s390_dwarf_regmap): Add fields for new registers.
	(s390_regmap_gregset): Likewise.
	(s390x_regmap_gregset): Likewise.
	(s390_regmap_fpregset): Likewise.
	(s390_regmap_upper): Likewise.
	(s390_regmap_last_break): New variable.
	(s390x_regmap_last_break): Likewise.
	(s390_regmap_system_call): Likewise.
	(s390_last_break_regset): Likewise.
	(s390x_last_break_regset): Likewise.
	(s390_system_call_regset): Likewise.
	(s390_upper_regset_sections): Rename to ...
	(s390_linux64_regset_sections): ... this.
	(s390_linux32_regset_sections): New variable.
	(s390x_linux64_regset_sections): Likewise.
	(s390_linux32v1_regset_sections): Likewise.
	(s390_linux32v2_regset_sections): Likewise.
	(s390_linux64v1_regset_sections): Likewise.
	(s390_linux64v2_regset_sections): Likewise.
	(s390x_linux64v1_regset_sections): Likewise.
	(s390x_linux64v2_regset_sections): Likewise.
	(s390_regset_from_core_section): Handle .reg-s390-last-break and
	.reg-s390-system-call core file sections.
	(s390_core_read_description): Check for presence of
	.reg-s390-last-break and .reg-s390-system-call core file
	sections and return appropriate target description.
	(s390_gdbarch_init): Detect Linux-specific registers "orig_r2",
	"last_break" and "system_call" in target description.  Install
	appropriate gdbarch_core_regset_sections array.
	Call set_gdbarch_cannot_store_register and set_gdbarch_write_pc.
	(_initialize_s390_tdep): Initialize additional target descriptions.

	* s390-nat.c: Include "elf/common.h".
	(PTRACE_GETREGSET, PTRACE_SETREGSET): Define if undefined.
	(have_regset_last_break): New static variable.
	(have_regset_system_call): Likewise.
	(s390_native_supply): Handle S390_ORIG_R2_REGNUM.
	(s390_native_collect): Likewise.
	(fetch_regset, store_regset, check_regset): New functions.
	(s390_linux_fetch_inferior_registers): Handle S390_LAST_BREAK_REGNUM
	and S390_SYSTEM_CALL_REGNUM.
	(s390_linux_store_inferior_registers): Likewise.
	(s390_read_description): Check for presence of NT_S390_LAST_BREAK
	and NT_S390_SYSTEM_CALL regsets and use appropriate description.

	* features/Makefile (WHICH): Add s390-linux32v1, s390-linux64v1,
	s390x-linux64v1, s390-linux32v2, s390-linux64v2, and s390x-linux64v2.
	(s390-linux32v1-expedite): Define.
	(s390-linux32v2-expedite): Likewise.
	(s390-linux64v1-expedite): Likewise.
	(s390-linux64v2-expedite): Likewise.
	(s390x-linux64v1-expedite): Likewise.
	(s390x-linux64v2-expedite): Likewise.

	* features/s390-linux32.xml: Add orig_r2 register.
	* features/s390-linux64.xml: Likewise.
	* features/s390x-linux64.xml: Likewise.
	* features/s390-linux32v1.xml: New file.
	* features/s390-linux32v2.xml: Likewise.
	* features/s390-linux64v1.xml: Likewise.
	* features/s390-linux64v2.xml: Likewise.
	* features/s390x-linux64v1.xml: Likewise.
	* features/s390x-linux64v2.xml: Likewise.

	* features/s390-linux32.c: Regenerate.
	* features/s390-linux64.c: Likewise.
	* features/s390x-linux64.c: Likewise.
	* features/s390-linux32v1.c: New generated file.
	* features/s390-linux32v2.c: Likewise.
	* features/s390-linux64v1.c: Likewise.
	* features/s390-linux64v2.c: Likewise.
	* features/s390x-linux64v1.c: Likewise.
	* features/s390x-linux64v2.c: Likewise.

	* regformats/s390-linux32.dat: Regenerate.
	* regformats/s390-linux64.dat: Regenerate.
	* regformats/s390x-linux64.dat: Regenerate.
	* regformats/s390-linux32v1.dat: New generated file.
	* regformats/s390-linux32v2.dat: Likewise.
	* regformats/s390-linux64v1.dat: Likewise.
	* regformats/s390-linux64v2.dat: Likewise.
	* regformats/s390x-linux64v1.dat: Likewise.
	* regformats/s390x-linux64v2.dat: Likewise.

gdbserver/ChangeLog:

	* Makefile.in (s390-linux32v1.o, s390-linux32v1.c): New rules.
	(s390-linux32v2.o, s390-linux32v2.c): Likewise.
	(s390-linux64v1.o, s390-linux64v1.c): Likewise.
	(s390-linux64v2.o, s390-linux64v2.c): Likewise.
	(s390x-linux64v1.o, s390x-linux64v1.c): Likewise.
	(s390x-linux64v2.o, s390x-linux64v2.c): Likewise.
	* configure.srv [s390*-*-linux*] (srv_regobj): Add new objects.
	(srv_xmlfiles): Add new XML files.

	* linux-s390-low.c: Include "elf/common.h", <sys/ptrace.h>,
	and <sys/uio.h>.
	(PTRACE_GETREGSET, PTRACE_SETREGSET): Define if undefined.
	(init_registers_s390_linux32v1): Add prototype.
	(init_registers_s390_linux32v2): Likewise.
	(init_registers_s390_linux64v1): Likewise.
	(init_registers_s390_linux64v2): Likewise.
	(init_registers_s390x_linux64v1): Likewise.
	(init_registers_s390x_linux64v2): Likewise.
	(s390_num_regs): Increment to 52.
	(s390_regmap): Add orig_r2 register.
	(s390_num_regs_3264): Increment to 68.
	(s390_regmap_3264): Add orig_r2 register.
	(s390_collect_ptrace_register): Handle orig_r2 register.
	(s390_supply_ptrace_register): Likewise.
	(s390_fill_last_break): New function.
	(s390_store_last_break): Likewise.
	(s390_fill_system_call): New function.
	(s390_store_system_call): Likewise.
	(target_regsets): Handle NT_S390_LAST_BREAK and NT_S390_SYSTEM_CALL
	register sets.
	(s390_check_regset): New function.
	(s390_arch_setup): Check for presence of NT_S390_LAST_BREAK and
	NT_S390_SYSTEM_CALL regsets and use appropriate description.
	Update target_regsets for available register sets.

testsuite/ChangeLog:

	* gdb.base/callfuncs.exp (fetch_all_registers): Filter out read-only
	last_break register on s390*-*-* targets.
2011-12-06 14:14:50 +00:00
Joel Brobecker
b18003d168 fix incorrect assumption in gdb.ada/watch_arg
The testcase is assuming that the parameter being watched isn't being
modified. But the way the test program is written, this is not true
at all.  So this changes fixes the code to still reference the variable,
but in a way that does not modify its value.

gdb/testsuite:

        * gdb.ada/watch_arg/pck.ads, gdb.ada/watch_arg/pck.adb: New files.
        * gdb.ada/watch_arg/watch.adb: Adjust code to avoid modification
        of parameter X in procedure Foo.
2011-12-06 14:00:37 +00:00
gdbadmin
751d39ba78 *** empty log message *** 2011-12-06 00:00:32 +00:00
Stan Shebs
fe96589c7e * gdb.trace/tfind.exp: Update help string matches. 2011-12-05 23:32:52 +00:00
Pedro Alves
336060f3b7 2011-12-05 Pedro Alves <pedro@codesourcery.com>
* linux-nat.c (resume_stopped_resumed_lwps): Call
	registers_changed.
2011-12-05 18:49:49 +00:00
Jan Kratochvil
1820ab4711 gdb/testsuite/
* gdb.server/ext-run.exp (get process list): Accept also systemd
	as PID 1.
2011-12-05 18:27:44 +00:00
Pedro Alves
049e32d3aa * breakpoint.c: Include record.h.
(breakpoints_always_inserted_mode): Return false when the record
	target is in use.
2011-12-05 16:57:30 +00:00
Pedro Alves
5c03c7f9ac Not 2012 yet... 2011-12-05 14:20:06 +00:00
Pedro Alves
482950ed19 2012-12-05 Pedro Alves <pedro@codesourcery.com>
* amd64-linux-nat.c (amd64_linux_dr_get): Remove FIXME comment.
	Reinstate perror_with_name call on ptrace error.  Remove #if 0.
	* i386-linux-nat.c (i386_linux_dr_get): Likewise.
	* i386bsd-nat.c (i386bsd_dr_get_status): Likewise.
2011-12-05 14:16:50 +00:00
Andrey Smirnov
fbbd034ec5 * breakpoint.c (init_breakpoint_sal): Remove nested definitions of
`i'(-Wshadow).
2011-12-05 04:10:47 +00:00
Andrey Smirnov
12747160cd * bcache.c (bcache): Rename bcache' to cache'(-Wshadow). 2011-12-05 03:58:23 +00:00
Andrey Smirnov
a5ff835628 * amd64-tdep.c (amd64_push_dummy_call): Remove nested definition
of `tdep'(-Wshadow).
2011-12-05 03:48:29 +00:00
gdbadmin
1850f7144d *** empty log message *** 2011-12-05 00:00:02 +00:00
gdbadmin
f12d5bdba8 *** empty log message *** 2011-12-04 00:00:03 +00:00
Jan Kratochvil
e11ac3a350 gdb/testsuite/
* gdb.base/break-entry.exp: Move the target use_gdb_stub test before
	starting GDB.
	* gdb.base/default.exp: Replace target use_gdb_stub checks by global
	$use_gdb_stub.
	* gdb.base/display.exp: Likewise.
	* gdb.base/ending-run.exp: Likewise.
	* gdb.base/list.exp (test_listsize): Likewise.
	* gdb.base/setshow.exp: Likewise.
	* gdb.base/valgrind-db-attach.exp: Set global use_gdb_stub to 1.
	* lib/gdb.exp (gdb_run_cmd, gdb_start_cmd): Replace target use_gdb_stub
	check by global $use_gdb_stub.
	(gdb_test_multiple): Forbid run, start or attach for !$use_gdb_stub.
	(default_gdb_start): Set global use_gdb_stub from target use_gdb_stub.
	(default_gdb_init): Unset global $use_gdb_stub.
	(gdb_continue_to_end, rerun_to_main): Replace target use_gdb_stub check
	by global $use_gdb_stub.
	* lib/gdbserver-support.exp: Extend comments for set_board_info
	gdb_protocol and gdb,socketport.
	(gdbserver_start_extended): Set global gdbserver_protocol and
	gdbserver_gdbport.  Clear global use_gdb_stub.
	* lib/mi-support.exp (default_mi_gdb_start): Set global use_gdb_stub
	from target use_gdb_stub.
	(mi_run_cmd): Replace target use_gdb_stub check by global $use_gdb_stub.
2011-12-03 20:20:29 +00:00
Jan Kratochvil
93f2a35e10 gdb/
Fix compilation --without-expat.
	* solib-svr4.c (svr4_free_so, svr4_free_library_list): Move them here
	from ...
	[HAVE_LIBEXPAT] (svr4_free_so, svr4_free_library_list): ... here.
2011-12-03 18:32:29 +00:00
Doug Evans
1d41d75cb6 * lib/gdb.exp (gdb_run_cmd, gdb_start_cmd, run_to_main): Add comments.
(gdb_step_for_stub): Add comments.
2011-12-03 18:01:50 +00:00
gdbadmin
03cf8d5f08 *** empty log message *** 2011-12-03 00:00:02 +00:00
Maciej W. Rozycki
d6d7a51a33 * lib/gdb.exp (gdb_expect): Pass all the exception conditions up
to the caller.
	(gdb_test_multiple): Likewise.
2011-12-02 23:58:01 +00:00
Jan Kratochvil
05acf27496 gdb/testsuite/
Fix gdb.mi/mi-solib.exp without system debug info installed.
	* lib/mi-support.exp (mi_expect_stop): Accept FILE also for `from'
	expect attribute, return 0 for it.  Update comments.
2011-12-02 22:35:17 +00:00
Jan Kratochvil
2268b414f4 gdb/
* Makefile.in (XMLFILES): Add library-list-svr4.dtd.
	* features/library-list-svr4.dtd: New file.
	* remote.c (PACKET_qXfer_libraries_svr4): New.
	(remote_protocol_features): new entry for PACKET_qXfer_libraries_svr4.
	(remote_xfer_partial): Handle TARGET_OBJECT_LIBRARIES_SVR4.
	* solib-svr4.c (struct svr4_library_list): New.
	[HAVE_LIBEXPAT]: Include xml-support.h.
	[HAVE_LIBEXPAT] (svr4_library_list_start_library)
	[HAVE_LIBEXPAT] (svr4_library_list_start_list, svr4_library_attributes)
	[HAVE_LIBEXPAT] (svr4_library_list_children)
	[HAVE_LIBEXPAT] (svr4_library_list_attributes)
	[HAVE_LIBEXPAT] (svr4_library_list_elements, svr4_parse_libraries)
	[HAVE_LIBEXPAT] (svr4_current_sos_via_xfer_libraries)
	[!HAVE_LIBEXPAT] (svr4_current_sos_via_xfer_libraries): New.
	(svr4_read_so_list): Extend the corruption message by addresses.
	(svr4_current_sos): New variable library_list, call
	svr4_current_sos_via_xfer_libraries.
	* target.h (enum target_object): New TARGET_OBJECT_LIBRARIES_SVR4.

gdb/gdbserver/
	* linux-low.c (get_phdr_phnum_from_proc_auxv, get_dynamic, get_r_debug)
	(read_one_ptr, struct link_map_offsets, linux_qxfer_libraries_svr4):
	New.
	(struct linux_target_ops): Install linux_qxfer_libraries_svr4.
	* linux-low.h (struct process_info_private): New member r_debug.
	* server.c (handle_qxfer_libraries): Call
	the_target->qxfer_libraries_svr4.
	(handle_qxfer_libraries_svr4): New function.
	(qxfer_packets): New entry "libraries-svr4".
	(handle_query): Check QXFER_LIBRARIES_SVR4 and report libraries-svr4.
	* target.h (struct target_ops): New member qxfer_libraries_svr4.
	* remote.c (remote_xfer_partial): Call add_packet_config_cmd for
	PACKET_qXfer_libraries_svr4.

gdb/doc/
	* gdb.texinfo (Requirements, Remote Protocol): Reference also `Library
	List Format for SVR4 Targets'.
	(General Query Packets): New item qXfer:libraries-svr4:read.
	(Library List Format for SVR4 Targets): New node.

gdb/testsuite/
	* gdb.base/solib-corrupted.exp: Suppress test on is_remote target.
	(corrupted list): Adjust the expectation.
2011-12-02 22:26:54 +00:00
Jan Kratochvil
585861ead5 gdb/
PR threads/13448
	* dwarf2read.c (decode_locdesc): Handle DW_OP_const8u.
	For DW_OP_GNU_push_tls_address increment the value, new comment for it.

gdb/testsuite/
	PR threads/13448
	* gdb.dwarf2/dw2-var-zero-addr.S: New file.
	* gdb.dwarf2/dw2-var-zero-addr.exp: New file.
	* gdb.threads/tls-var-main.c: New file.
	* gdb.threads/tls-var.c: New file.
	* gdb.threads/tls-var.exp: New file.
2011-12-02 17:01:20 +00:00
Jan Kratochvil
968643aaa9 gdb/testsuite/
PR testsuite/12649
	* gdb.trace/collection.exp (gdb_collect_return_test): Import gdb_prompt.
	Protect gdb_test_multiple by final $gdb_prompt match.
	* gdb.trace/tspeed.exp (gdb_fast_trace_speed_test): Likewise.
	* gdb.trace/tstatus.exp (run_trace_experiment): Likewise.
	(test_tracepoints): Likewise.
2011-12-02 12:43:29 +00:00
Jan Kratochvil
9750bca92c gdb/
PR breakpoints/13346
	* dwarf2read.c (process_psymtab_comp_unit): Set
	PSYMTABS_ADDRMAP_SUPPORTED.
	* psympriv.h (struct partial_symtab): Comment textlow and texthigh
	validity.  New field psymtabs_addrmap_supported.
	* psymtab.c (find_pc_sect_psymtab_closer): New gdb_assert on
	psymtabs_addrmap_supported.
	(find_pc_sect_psymtab): Do not fallback to TEXTLOW and TEXTHIGH for
	!PSYMTABS_ADDRMAP_SUPPORTED.
	(dump_psymtab, maintenance_info_psymtabs): Print also
	psymtabs_addrmap_supported.

gdb/testsuite/
	PR breakpoints/13346
	* gdb.dwarf2/dw2-objfile-overlap-inner.S: New file.
	* gdb.dwarf2/dw2-objfile-overlap-outer.S: New file.
	* gdb.dwarf2/dw2-objfile-overlap.exp: New file.
2011-12-02 01:28:55 +00:00
Doug Evans
f28c316a0b * python/py-type.c (type_object_methods): Fix "array" doc string. 2011-12-02 00:27:48 +00:00
gdbadmin
4bbe523348 *** empty log message *** 2011-12-02 00:00:03 +00:00
Joel Brobecker
ac1349b75a Make sure all types in gdb.ada/homonym testcase are used...
Otherwise, the compiler does not generate any debug info for them.
This fixes 3 FAILs:

    FAIL: gdb.ada/homonym.exp: ptype local_type_subtype at BREAK_1
    FAIL: gdb.ada/homonym.exp: ptype int_type at BREAK_1
    FAIL: gdb.ada/homonym.exp: ptype local_type_subtype at BREAK_2

gdb/testsuite/ChangeLog:

        * gdb.ada/homonym/pck.ads, gdb.ada/homonym/pck.adb: New files.
        * gdb.ada/homonym/homonym.adb: For use of all types defined
        locally inside both Get_Value subprograms.
2011-12-01 23:16:44 +00:00
Jan Kratochvil
26d44fafef gdb/testsuite/
Fix racy FAILs.
	* gdb.base/foll-exec.exp (zap_session): Use gdb_test_no_output instead
	of send_gdb.
2011-12-01 22:06:45 +00:00
Tom Tromey
ae6f0d5b5a * gdb.texinfo (Writing a Pretty-Printer): Use append method, not
add.
2011-12-01 20:27:28 +00:00
Andrew Burgess
fc0ae648aa http://sourceware.org/ml/gdb-patches/2011-11/msg00778.html
* source.c (print_source_lines_base): Fix missing braces on else clause
leading to additional output.
2011-12-01 10:37:06 +00:00
gdbadmin
a7e0bc41a1 *** empty log message *** 2011-12-01 00:00:03 +00:00
Ulrich Weigand
d6db1fabcc ChangeLog:
* s390-nat.c (SUBOFF): Remove.
	(s390_native_supply, s390_native_collect): New functions.
	(supply_gregset, supply_fpregset): Use s390_native_supply.
	(fill_gregset, fill_fpregset): Use s390_native_collect.

	* s390-tdep.c (s390_pseudo_register_reggroup_p): Update comment.
	(s390_unwind_pseudo_register): New function.
	(s390_prologue_frame_unwind_cache): Unwind PSW address and mask
	registers instead of PC and CC.
	(s390_backchain_frame_unwind_cache): Likewise.
	(s390_sigtramp_frame_unwind_cache): Do not unwind PC, CC, or
	full GPR pseudos.
	(s390_trad_frame_prev_register): New function.
	(s390_frame_prev_register): Use it.
	(s390_sigtramp_frame_prev_register): Likewise.
	(s390_dwarf2_prev_register): Use s390_unwind_pseudo_register.
	(s390_dwarf2_frame_init_reg): Unwind PSW address and mask.  Use
	special callback to unwind any pseudo.

	* features/s390-core32.xml: Add pswm/pswa to save/restore group.
	* features/s390-core64.xml: Likewise.
	* features/s390x-core64.xml: Likewise.
	* features/s390-linux32.c: Regenerate.
	* features/s390-linux64.c: Likewise.
	* features/s390x-linux64.c: Likewise.

gdbserver/ChangeLog:

	* linux-s390-low.c (s390_collect_ptrace_register): Fully convert
	PSW address/mask between 8-byte and 16-byte formats.
	(s390_supply_ptrace_register): Likewise.
	(s390_get_pc, s390_set_pc): 4-byte PSW address always includes
	basic addressing mode bit.
2011-11-30 16:06:55 +00:00
Ulrich Weigand
1dd635acb8 * s390-tdep.c (s390_gdbarch_init): Call set_gdbarch_get_siginfo_type. 2011-11-30 08:26:46 +00:00
Ulrich Weigand
0161e4b928 * s390-tdep.c (s390_displaced_step_fixup): Fix processing of LARL
instruction.  Add more diagnostic output.
2011-11-30 08:26:06 +00:00
Ulrich Weigand
514f64256c * gdb.base/testenv.exp: Skip on remote targets. Unset global
environment variable after test completed.
2011-11-30 08:25:17 +00:00
Ulrich Weigand
4255c8d248 * gdb.base/solib-nodir.exp: Skip if remote target.
* gdb.base/gdb.fortran.exp: Use shlib= flag when linking main
	application.  Call gdb_load_shlibs.
	* gdb.mi/mi-solib.exp: Use mi_load_shlibs instead of gdb_load_shlibs.
2011-11-30 08:24:32 +00:00
gdbadmin
2e2a012404 *** empty log message *** 2011-11-30 00:00:03 +00:00
Joel Brobecker
a35ad96ac8 New gdb.base/infoline.exp testcase.
gdb/testsuite/ChangeLog:

        * gdb.base/infoline.c, gdb.base/infoline.exp: New files.
2011-11-29 16:59:45 +00:00
Andrey Smirnov
0c36327f08 * MAINTAINERS (Write After Approval): Add myself to the list. 2011-11-29 10:26:23 +00:00
Sanjoy Das
b4264740b3 gdb/
* jit.c (add_objfile_entry, jit_reader_try_read_symtab)
	(jit_bfd_try_read_symtab): Fix comments.
2011-11-29 08:30:29 +00:00
DJ Delorie
87326c782a [sim]
* configure.tgt: Add rl78 support.
* configure: Regenerate.
* rl78: New directory.
* MAINTAINERS: Add myself as RL78 maintainer.
[gdb]
* NEWS: Mention RL78 simulator.
2011-11-29 03:49:09 +00:00
Joel Brobecker
1e3a8f45c5 Further fix the documentation in struct quick_symbol_functions
gdb/ChangeLog:

        * symfile.h (struct quick_symbol_functions): Fix the documentation
        of field map_matching_symbols, as symbols are sorted using
        strcmp_iw_ordered, not strcmp_iw.
2011-11-29 01:09:23 +00:00
Joel Brobecker
265e52c36a Update documentation in struct quick_symbol_functions
Paul sent me this documentiion update when I asked him a question
about compare_names in ada-lang.c.

gdb/ChangeLog:

        * symfile.h (struct quick_symbol_functions): Update the
        documentation for field map_matching_symbols.
2011-11-29 01:01:02 +00:00
Joel Brobecker
1a1d551388 wrong value returned by ada-lang.c:compare_names
The ada-lang.c:compare_names function returns the wrong value
when the first string starts with the same contents as the second
string, followed by '_' and then some characters that do not make
a symbol name suffix.  For instance:

    string1 = "generics__test_generics__instance__print"
    string2 = "generics__test_generics"

In that case, compare_names (string1, string2) return -1, when
clearly, string1 is greater than string2.

A consequence of this problem is that GDB may fail to lookup
"generics.test_generics" from our partial symtabs, because
partial symbols are ordered by strcmp_iw_ordered:

    (gdb) b generics.test_generics
    Function "generics.test_generics" not defined.
    Make breakpoint pending on future shared library load? (y or [n])

gdb/ChangeLog:

        * ada-lang.c (compare_names): Fix wrong return value in case
        string1 starts with the same contents as string2, followed
        by an underscore that do not start a symbol name suffix.

gdb/testsuite/ChangeLog:

        * gdb.ada/fullname_bp: New testcase.
2011-11-29 01:00:52 +00:00
gdbadmin
8ee00506e1 *** empty log message *** 2011-11-29 00:00:03 +00:00
Phil Muldoon
5d9c59954f 2011-11-28 Phil Muldoon <pmuldoon@redhat.com>
PR python/13369
	PR python/13374

	* python/python.c (gdbpy_decode_line): Do not acquire GIL.
	* python/py-inferior.c (inferior_to_inferior_object): Ditto.
	* python/py-value.c (valpy_nonzero): Use TRY_CATCH to catch GDB
	exceptions.
	* python/py-type.c (typy_strip_typedefs): Ditto.
	(typy_legacy_template_argument): Ditto.
	* python/py-inferior.c (inferior_to_inferior_object): Ditto.
	* python/py-breakpoint.c (bppy_set_ignore_count): Ditto.
2011-11-28 15:49:43 +00:00
gdbadmin
641c924047 *** empty log message *** 2011-11-28 00:00:32 +00:00
Joel Brobecker
2bf50f6ff3 remove use of sprintf_vma in remote_get_tracepoint_status
This function takes a VMA and was forcing us to perform a cast to
compile without warning on one platform. Except that the cast caused
a warning on sparc-solaris.  This patch fixes the problem by using
phex_nz instead.

gdb/ChangeLog:

        * remote.c (remote_get_tracepoint_status): Delete addrbuf
        local variable.  Avoid use of sprintf_vma.
2011-11-27 17:39:30 +00:00
Sanjoy Das
744ab88c49 gdb/
Fix regression in jit.exp.
	* jit.c (jit_reader_try_read_symtab, jit_bfd_try_read_symtab)
	(jit_register_code): Set the jit_objfile_data field to the correct
	value.
2011-11-27 14:26:09 +00:00
gdbadmin
ce2b66b296 *** empty log message *** 2011-11-27 00:00:03 +00:00
gdbadmin
6d0b91163b *** empty log message *** 2011-11-26 00:00:03 +00:00
Jan Kratochvil
fb0aec578b gdb/testsuite/
Code cleanup.
	* gdb.reverse/i386-sse-reverse.exp (continue to end of sse4_test):
	Convert send_gdb and gdb_expect to gdb_test_multiple.
2011-11-25 23:53:45 +00:00
Jan Kratochvil
50b4ddf832 gdb/testsuite/
PR testsuite/12649
	* gdb.reverse/i386-sse-reverse.exp (continue to end of sse_test #2):
	Wrap send_gdb into a new gdb_test.
2011-11-25 23:50:15 +00:00
Jan Kratochvil
2376d946fa gdb/testsuite/
* gdb.base/jit-so.exp (one_jit_test): Add testcase name to log message.
2011-11-25 23:26:15 +00:00
Ulrich Weigand
46ad3598b7 2011-11-25  Uros Bizjak  <ubizjak@gmail.com>
* alpha-tdep.c (br_opcode): New.
	(ldl_l_opcode, ldq_l_opcode, stl_c_opcode, stq_c_opcode): Ditto.
	(alpha_deal_with_atomic_sequence): New function.
	(alpha_gdbarch_init): Handle single stepping of atomic sequences
	with alpha_deal_with_atomic_sequence.
2011-11-25 17:05:42 +00:00
Stan Shebs
242f5f1ced 2011-11-24 Stan Shebs <stan@codesourcery.com>
* tracepoint.c (cmd_qtstatus): Use plongest instead of %llx.
2011-11-25 04:41:15 +00:00
gdbadmin
f2ce354f2f *** empty log message *** 2011-11-25 00:00:03 +00:00
Tristan Gingold
e4c5f296b4 2011-11-24 Tristan Gingold <gingold@adacore.com>
* machoread.c (oso_el): Remove num_Sections, symbols, offsets
	fields.  Add oso_sym, end_sym and nbr_syms.
	(macho_register_oso): Change interface.
	(macho_symtab_add_minsym): New function.
	(macho_symtab_read): Rewritten.
	(get_archive_prefix_len): Remove trailing blanks.
	(oso_el_compare_name): Add comment.
	(struct macho_sym_hash_entry): New structure.
	(macho_relocate_common_syms): Remove.
	(macho_sym_hash_newfunc): New function.
	(macho_resolve_oso_sym_with_minsym): Likewise.
	(macho_add_oso_symfile): Rewritten.
	(macho_symfile_read_all_oso): Remove trailing blanks.
	Adjust code to free oso vector.
	(macho_symfile_read): Likewise.
	Move code to initialize minimal symbol
2011-11-24 16:26:25 +00:00
Maciej W. Rozycki
130854dfe4 * mips-tdep.c (extended_offset): Fix formatting. 2011-11-24 15:56:25 +00:00
gdbadmin
cdedd3feb4 *** empty log message *** 2011-11-24 00:00:03 +00:00
Keith Seitz
1eec78bdad * lib/mi-support.exp (varobj_tree): New namespace and procs.
(mi_varobj_tree_test_children_callback): New proc.
	(mi_walk_varobj_tree): New proc.
2011-11-23 21:02:55 +00:00
Doug Evans
3d7bb9d9ca * dwarf2read.c (dw2_lookup_symtab): Add comment.
(dw2_expand_symtabs_with_filename): Ditto.
	(dw2_expand_symtabs_matching): Ditto.
	(dw2_map_symbol_filenames): Ditto.
2011-11-23 19:55:42 +00:00
Joel Brobecker
1fbf5ada2f Minor reformatting in ada-lang.c:assign_aggregate
No code change.

gdb/ChangeLog:

        From Andrey Smirnov <andrew.smirnov@gmail.com>:
        * ada-lang.c (assign_aggregate): Minor reformatting.
2011-11-23 19:54:18 +00:00
Joel Brobecker
d984108d93 fix -Wshadow warning inside ada-lang.c:assign_aggregate
gdb/ChangeLog:

        From Andrey Smirnov <andrew.smirnov@gmail.com>:
        * ada-lang.c (assign_aggregate): Remove declaration of local
        variable `i' which is shadowing another variable with the same
        name declared in the outer scope.
2011-11-23 19:54:08 +00:00
Joel Brobecker
18af828477 ada-lang.c: Rename function base_type into get_base_type
This avoids shadowing issues with variables named base_type.

gdb/ChangeLog:

        * ada-lang.c (get_base_type): Renames base_type.  Adjust all
        calls throughout this file.
2011-11-23 19:21:12 +00:00
Joel Brobecker
1fc7b5d725 Fix compilation error in gdb-dlfcn.c (on Windows)
gdb/ChangeLog:

        * gdb-dlfcn.c (gdb_dlopen): Add missing coma in call to
        FormatMessage.
2011-11-23 17:24:03 +00:00
gdbadmin
67be10ef8f *** empty log message *** 2011-11-23 00:00:32 +00:00
Tom Tromey
36dfb11c8b gdb
PR mi/8444:
	* mi/mi-common.h (EXEC_ASYNC_SOLIB_EVENT, EXEC_ASYNC_FORK)
	(EXEC_ASYNC_VFORK, EXEC_ASYNC_SYSCALL_ENTRY)
	(EXEC_ASYNC_SYSCALL_RETURN, EXEC_ASYNC_EXEC): New constants.
	* mi/mi-common.c (async_reason_string_lookup): Add new reasons.
	* breakpoint.c (print_it_catch_fork, print_it_catch_vfork)
	(print_it_catch_syscall, print_it_catch_exec)
	(internal_bkpt_print_it): Use ui_out.  Emit stop reason.
	(bpstat_print): Add 'kind' argument.  Handle
	TARGET_WAITKIND_LOADED.
	* infrun.c (normal_stop): Update for bpstat_print change.  Don't
	handle TARGET_WAITKIND_LOADED here.
	* breakpoint.h (bpstat_print): Update.
gdb/testsuite
	* lib/mi-support.exp (mi_run_cmd_full): Rename from mi_run_cmd.
	Add "use_mi_command" argument.
	(mi_run_cmd, mi_run_with_cli): New procs.
	* gdb.mi/solib-lib.c: New file.
	* gdb.mi/solib-main.c: New file.
	* gdb.mi/mi-solib.exp: New file.
gdb/doc
	* gdb.texinfo (GDB/MI Async Records): Document new *stopped
	reasons.
2011-11-22 21:25:19 +00:00
Tom Tromey
5bd6aa8357 * mi/mi-interp.c (mi_on_normal_stop): Call bpstat_print. 2011-11-22 21:21:54 +00:00
Tom Tromey
f5afdc187d * mi/mi-common.c (_initialize_gdb_mi_common): Remove.
Use static_assert to check the size of
	async_reason_string_lookup.
	* common/gdb_assert.h (static_assert): New macro.
2011-11-22 21:18:38 +00:00
Alan Modra
a3769e0c79 * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Correct branch
destination calculation.  Don't expect >> to sign extend.  Don't
	add a break if branch lands inside the sequence anywhere.
2011-11-22 08:19:16 +00:00
gdbadmin
ae1d1a5355 *** empty log message *** 2011-11-22 00:00:03 +00:00
Keith Seitz
56767571cc * gdb.mi/mi-var-display.exp: Remove XFAIL for c_variable-7.51,
-var-evaluate-expression of an enumeration and fix expected result.
	* gdb.mi/mi2-varvdisplay.exp: Likewise.
2011-11-21 21:53:50 +00:00
Doug Evans
0e965dd0b2 * gdb.cp/nextoverthrow.exp: Skip test if debug info for
_Unwind_DebugHook is missing.
2011-11-21 17:34:17 +00:00
Kwok Yeung
8443c2073b 2011-11-21 Kwok Cheung Yeung <kcy@codesourcery.com>
* osdata.c (info_osdata_command): Rename nprocs to nrows.  Handle
        the case where osdata->items is empty.  Rename column names to a
        canonical form to avoid problems with unusual column names.
2011-11-21 16:54:28 +00:00
Yao Qi
97643830b8 gdb/
* MAINTAINERS (Write After Approval): Keep list in alphabetical order.
2011-11-21 02:58:40 +00:00
Stan Shebs
7f767d1066 Fix a 32-bit compile error in the previous checkin 2011-11-21 00:43:48 +00:00
gdbadmin
786d380067 *** empty log message *** 2011-11-21 00:00:03 +00:00
Stan Shebs
f196051f5e * NEWS: Mention tracepoint additions.
* breakpoint.h (struct tracepoint): New field traceframe_usage.
	* breakpoint.c (print_one_breakpoint_location): Identify
	tracepoints as such when reporting hit counts, report
	trace buffer usage.
	(create_tracepoint_from_upload): Copy status info.
	* tracepoint.h (struct trace_status): Rename error_desc to stop_desc,
	add fields user_name, notes, start_time, stop_time.
	(struct uploaded_tp): Add fields hit_count, traceframe_usage.
	* tracepoint.c (trace_user): New global.
	(trace_notes): New global.
	(trace_stop_notes): New global.
	(start_tracing): Add argument and trace note handling.
	(stop_tracing): Ditto.
	(trace_start_command): Add notes argument.
	(trace_stop_command): Ditto.
	(trace_status_command): Report additional status info.
	(trace_status_mi): Similarly.
	(trace_save): Update, record tracepoint status.
	(set_disconnected_tracing): Call target method directly.
	(send_disconnected_tracing_value): Remove.
	(set_trace_user): New function.
	(set_trace_notes): New function.
	(set_trace_stop_notes): New function.
	(parse_trace_status): Handle additional status.
	(parse_tracepoint_status): New function.
	(parse_tracepoint_definition): Call it.
	(tfile_get_tracepoint_status): New function.
	(init_tfile_ops): Use it.
	(_initialize_tracepoint): Add new setshows.
	* target.h (struct target_ops): New methods to_get_tracepoint_status
	and to_set_trace_notes.
	(target_get_tracepoint_status): New macro.
	(target_set_trace_notes): New macro.
	* target.c (update_current_target): Add new methods.
	* remote.c (remote_get_tracepoint_status): New function.
	(remote_set_trace_notes): New function.
	(init_remote_ops): Add them.
	* mi/mi-main.c (mi_cmd_trace_start): Add argument to call.
	(mi_cmd_trace_stop): Ditto.

	* tracepoint.c (struct tracepoint): New field traceframe_usage.
	(tracing_start_time): New global.
	(tracing_stop_time): New global.
	(tracing_user_name): New global.
	(tracing_notes): New global.
	(tracing_stop_note): New global.
	(cmd_qtstart): Set traceframe_usage, start_time.
	(stop_tracing): Set stop_time.
	(cmd_qtstatus): Report additional status.
	(cmd_qtp): New function.
	(handle_tracepoint_query): Call it.
	(cmd_qtnotes): New function.
	(handle_tracepoint_general_set): Call it.
	(get_timestamp): Rename from tsv_get_timestamp.

	* gdb.texinfo (Starting and Stopping Trace Experiments): Document
	note-related options and variables.
	(Tracepoint Packets): Document packet changes.

	* gdb.trace/tstatus.exp: New.
	* gdb.trace/actions.c: Include string.h.
2011-11-20 23:59:49 +00:00
Sanjoy Das
f85b53f80e gdb/doc/
* gdb.texinfo (JIT Interface): Add documentation on writing and
	usind JIT debug info readers.
	(Custom Debug Info, Using JIT Debug Info Readers, Writing JIT
	Debug Info Readers): New nodes.
2011-11-20 09:20:59 +00:00
Sanjoy Das
3623dc3afb gdb/
* jit.c: Include regcache.h.
	(jit_gdbarch_data, jit_frame_unwind): New static variables.
	(jit_unwind_reg_set_impl, free_reg_value_impl)
	(jit_unwind_reg_get_impl, jit_frame_sniffer)
	(jit_frame_unwind_stop_reason, jit_frame_this_id)
	(jit_frame_prev_register, jit_dealloc_cache)
	(jit_prepend_unwinder, jit_gdbarch_data_init): New functions.
	(jit_inferior_init): Prepend (new) pseudo unwinder by calling
	jit_prepend_unwinder.
	(_initialize_jit): Register new gdbarch data jit_gdbarch_data.
2011-11-20 09:18:48 +00:00
Sanjoy Das
1825a88da1 gdb/
* jit.c: Include block.h, dictionary.h and frame-unwind.h.
	(add_objfile_entry, jit_target_read_impl, jit_object_open_impl)
	(jit_symtab_open_impl, compare_block, jit_block_open_impl)
	(jit_symtab_line_mapping_add_impl, jit_symtab_close_impl)
	(finalize_symtab, jit_object_close_impl)
	(jit_reader_try_read_symtab, jit_bfd_try_read_symtab)
	(free_objfile_data): New functions.
	(_initialize_jit): Register jit_objfile_data with a proper cleanup
	function.
2011-11-20 09:14:45 +00:00
Sanjoy Das
784c47ee81 gdb/
* jit.c: Include gdb-dlfcn.h.
	(loaded_jit_reader, reader_init_fn_sym): New static variables.
	(jit_reader_load, jit_reader_load_command)
	(jit_reader_unload_command): New functions.
	(_initialize_jit): Add commands "jit-reader-load" and
	"jit-reader-unload".
2011-11-20 09:09:56 +00:00
Sanjoy Das
a2d08b9eeb gdb/
* Makefile.in: Add gdb-dlfcn.c and gdb-dlfcn.h to build system.
	* config.in: Add new #define HAVE_LIBDL.
	* configure.ac: Add check for -ldl.
	* configure: Re-generated by autoconf.
	* gdb-dlfcn.c: New file.
	* gdb-dlfcn.h: New file.
2011-11-20 08:59:56 +00:00
Sanjoy Das
b8e0a31cb5 gdb/
* config.in: Add new #defines: JIT_READER_DIR and
	JIT_READER_DIR_RELOCATABLE.
	* configure.ac: New GDB directory entry for jit-reader-dir.
	* configure: Re-generated by autoconf.
	* jit.c: New static variable: const char *jit_reader_dir.
	(_initialize_jit): Relocate jit_reader_dir.
2011-11-20 08:53:25 +00:00
Sanjoy Das
f997c38354 gdb/
* Makefile.in: Add jit-reader.h as a header.  Have it installed in
	$(includedir)/gdb.
	* configure.ac: Generate a correct value for TARGET_PTR for
	jit-reader.h.  Tell configure to generate jit-reader.h from
	jit-reader.in.
	* configure: Re-generated by autoconf.
	* jit-reader.in: New file.
	* jit.c: Include jit-reader.h.
2011-11-20 08:30:59 +00:00
Sanjoy Das
dc8c0494f2 gdb/
* MAINTAINERS (Write After Approval): Add myself to the list.
2011-11-20 08:09:52 +00:00
gdbadmin
12a0339399 *** empty log message *** 2011-11-20 00:00:32 +00:00
gdbadmin
9b8fcf90e1 *** empty log message *** 2011-11-19 00:00:03 +00:00
Ulrich Weigand
01efb93640 * findvar.c (read_frame_register_value): Respect value_offset
of the register value.  Remove big-endian special case.
2011-11-18 20:03:42 +00:00
Tom Tromey
732f3f122e PR build/7196:
* remote.c (putpkt_for_catch_errors): New function.
	(remote_kill): Use it.
2011-11-18 15:38:58 +00:00
Yao Qi
bfccc43c12 gdb/
* breakpoint.c (create_breakpoint): Produce query message according to
	breakpoint's type.
	Allocate tracepoint per correct type.
	Don't check SALs for pending fast tracepoints.
	* tracepoint.c (process_tracepoint_on_disconnect): New.
	(disconnect_tracing): Call process_tracepoint_on_disconnect.

gdb/doc/
	* gdb.texinfo (Create and Delete Tracepoints): Mention pending
	tracepoint.

gdb/testsuite/
	* gdb.trace/pending.exp: New.
	* gdb.trace/pending.c: New.
	* gdb.trace/pendshr1.c: New.
	* gdb.trace/pendshr2.c: New.
	* gdb.trace/change-loc.exp (tracepoint_change_loc_1): Check one
	tracepoint location becomes pending.
	(tracepoint_change_loc_2): New.
2011-11-18 01:21:35 +00:00
Yao Qi
3ea46bff73 * breakpoint.c (install_breakpoint): Add one more parameter so that
update_global_location_list is called conditionally.
	(create_fork_vfork_event_catchpoint): Update.
	(create_syscall_event_catchpoint): Update.
	(create_breakpoint_sal): Update.
	(create_breakpoint_sal): Update. Call do_cleanups before
	install_breakpoint.
	* ada-lang.c (create_ada_exception_catchpoint): Update.
	* breakpoint.h (install_breakpoint): Update declaration.
2011-11-18 01:03:51 +00:00
gdbadmin
bb8ed79b6a *** empty log message *** 2011-11-18 00:00:03 +00:00
gdbadmin
715e99ef38 *** empty log message *** 2011-11-17 00:00:03 +00:00
Ulrich Weigand
598cfb7174 * spu-tdep.c (spu_return_value): Fix handling of
TYPE_CALLING_CONVENTION annotation.
2011-11-16 18:30:09 +00:00
Ulrich Weigand
caf4328c57 * skip.c (skip_function_command): Work around uninitialized
variable warning.
2011-11-16 18:29:34 +00:00
David S. Miller
73cd8ab132 * lib/gdb.exp (can_single_step_to_signal_handler): Return zero when
target is sparc*-*-linux*
2011-11-16 18:16:27 +00:00
David S. Miller
2b54dda2fa * utils.c (report_command_stats): Cast delta_wall_time 'tv_sec' and
'tv_usec' to long for printf since these fields have a type which
	varies.
2011-11-16 18:14:53 +00:00
gdbadmin
e3631f0d29 *** empty log message *** 2011-11-16 00:00:03 +00:00
Doug Evans
93bf33fd99 * buildsym.c (add_symbol_to_list): Delete outdated comment. 2011-11-15 23:12:30 +00:00
Pierre Muller
8de33dc288 Obvious: Fix error in name of concerned macro ETIMEDOUT 2011-11-15 22:04:43 +00:00
Paul Koning
7742673004 * gdb.python/py-type.exp: New testcases for exceptions on scalar types 2011-11-15 21:17:40 +00:00
Paul Koning
9cc10fd150 * python/py-type.c (typy_get_composite): New function.
(typy_nonzero): New function.
(typy_values): Rename from typy_fields.
(typy_fields): New function.
(typy_length): Raise exception if not struct, union, or enum type.
(typy_getitem): Ditto.
(typy_has_key): Ditto.
(typy_make_iter): Ditto.
2011-11-15 21:17:04 +00:00
Doug Evans
c011a4f469 * NEWS: Mention new parameter basenames-may-differ.
* dwarf2read.c (dw2_lookup_symtab): Avoid calling gdb_realpath if
	! basenames_may_differ.
	* psymtab.c (lookup_partial_symtab): Ditto.
	* symtab.c (lookup_symtab): Ditto.
	(basenames_may_differ): New global.
	(_initialize_symtab): New parameter basenames-may-differ.
	* symtab.h (basenames_may_differ): Declare.

	doc/
	* gdb.texinfo (Files): Document basenames-may-differ.
2011-11-15 17:40:02 +00:00
Luis Machado
865ecab4b2 2011-11-15 Pedro Alves <pedro@codesourcery.com>
Luis Machado  <lgustavo@codesourcery.com>

	* auxv.c: Include observer.h.
	(auxv_inferior_data_cleanup): New.
	(invalidate_auxv_cache_inf): New.
	(invalidate_auxv_cache): New.
	(get_auxv_inferior_data): New.
	(auxv_inferior_data): New static global.
	(auxv_info): New structure.
	(target_auxv_search): Use get_auxv_inferior_data instead of
	target_read_alloc and don't free cached buffers.
	(fprint_target_auxv): Likewise
	(_initialize_auxv): Register per-inferior auxv cache and register
	observers to invalidate auxv cache when needed.
2011-11-15 13:17:05 +00:00
Doug Evans
ed59ded5eb Make "!" an alias for "shell".
* NEWS: Add mention.
	* cli/cli-cmds.c (init_cli_cmds): Remove xdb_commands condition on
	adding "!" command, always add it.
	* cli/cli-decode.c (find_command_name_length): Recognize "!" as a
	command of length one.

	doc/
	* gdb.texinfo (Shell Commands): Document "!".

	testsuite/
	* gdb.base/shell.exp: New file.
2011-11-15 05:06:35 +00:00
Yao Qi
3ccd4ac6d3 Fix broken changelog entry. 2011-11-15 01:07:44 +00:00
gdbadmin
43ecc66e5d *** empty log message *** 2011-11-15 00:00:03 +00:00
Stan Shebs
405f8e9499 2011-11-14 Stan Shebs <stan@codesourcery.com>
Kwok Cheung Yeung  <kcy@codesourcery.com>

	* NEWS: Document shorter fast tracepoints and qTMinFTPILen packet.
	* i386-tdep.c (i386_fast_tracepoint_valid_at): Query target for
	the minimum instruction size for fast tracepoints.
	* target.h (struct target_ops): Add new method
	to_get_min_fast_tracepoint_insn_len.
	(target_get_min_fast_tracepoint_insn_len): New.
	* target.c (update_current_target): Set up new target operation.
	* remote.c (remote_write_bytes_aux): Fix typo.
	(remote_get_min_fast_tracepoint_insn_len): New.
	(init_remote_ops): Initialize new field.

	* gdb.texinfo (Create and Delete Tracepoints): Describe what is
	needed to get shorter fast tracepoints.
	(Tracepoint Packets): Document new qTMinFTPILen packet.

	* linux-x86-low.c (small_jump_insn): New.
	(i386_install_fast_tracepoint_jump_pad): Add arguments for
	trampoline and error message, build a trampoline and issue a small
	jump instruction to it.
	(x86_install_fast_tracepoint_jump_pad): Add arguments for
	trampoline and error message.
	(x86_get_min_fast_tracepoint_insn_len): New.
	(the_low_target): Add call to x86_get_min_fast_tracepoint_insn_len.
	* linux-low.h (struct linux_target_ops): Add arguments to
	install_fast_tracepoint_jump_pad operation, add new operation.
	* linux-low.c (linux_install_fast_tracepoint_jump_pad): Add
	arguments.
	(linux_get_min_fast_tracepoint_insn_len): New function.
	(linux_target_op): Add new operation.
	* tracepoint.c (gdb_trampoline_buffer): New IPA variable.
	(gdb_trampoline_buffer_end): Ditto.
	(gdb_trampoline_buffer_error): Ditto.
	(struct ipa_sym_addresses): Add fields for new IPA variables.
	(symbol_list): Add entries for new IPA variables.
	(struct tracepoint): Add fields to hold the address range of the
	trampoline used by the tracepoint.
	(trampoline_buffer_head): New static variable.
	(trampoline_buffer_tail): Ditto.
	(claim_trampoline_space): New function.
	(have_fast_tracepoint_trampoline_buffer): New function.
	(clone_fast_tracepoint): Fill in trampoline fields of tracepoint
	structure.
	(install_fast_tracepoint): Ditto, also add error buffer argument.
	(cmd_qtminftpilen): New function.
	(handle_tracepoint_query): Add response to qTMinFTPILen packet.
	(fast_tracepoint_from_trampoline_address): New function.
	(fast_tracepoint_collecting): Handle trampoline as part of jump
	pad space.
	(set_trampoline_buffer_space): New function.
	(initialize_tracepoint): Initialize new IPA variables.
	* target.h (struct target_ops): Add arguments to
	install_fast_tracepoint_jump_pad operation, add new
	get_min_fast_tracepoint_insn_len operation.
	(target_get_min_fast_tracepoint_insn_len): New.
	(install_fast_tracepoint_jump_pad): Add arguments.
	* server.h (IPA_BUFSIZ): Define.
	* linux-i386-ipa.c: Include extra header files.
	(initialize_fast_tracepoint_trampoline_buffer): New function.
	(initialize_low_tracepoint): Call it.
	* server.h (set_trampoline_buffer_space): Declare.
	(claim_trampoline_space): Ditto.
	(have_fast_tracepoint_trampoline_buffer): Ditto.

	* gdb.trace/ftrace.c: New.
	* gdb.trace/ftrace.exp: New.
2011-11-14 20:07:25 +00:00
Tom Tromey
3e05895e9e * tracepoint.c (encode_actions_1): Use the location's gdbarch.
(encode_actions): Likewise.
2011-11-14 16:10:18 +00:00