Commit graph

212 commits

Author SHA1 Message Date
Jan Kratochvil
6e22494e50 Do not skip prologue for asm (.S) files
GDB tries to skip prologue for .S files according to .debug_line but it then
places the breakpoint to a location where it is never hit.

This is because #defines in .S files cause prologue skipping which is
completely inappropriate, for s390x:

glibc/sysdeps/unix/syscall-template.S
78:/* This is a "normal" system call stub: if there is an error,
79:   it returns -1 and sets errno.  */
80:
81:T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
82:     ret

00000000000f4210 T __select
 Line Number Statements:
  Extended opcode 2: set Address to 0xf41c8
  Advance Line by 80 to 81
  Copy
  Advance PC by 102 to 0xf422e
  Special opcode 6: advance Address by 0 to 0xf422e and Line by 1 to 82
  Special opcode 34: advance Address by 2 to 0xf4230 and Line by 1 to 83
  Advance PC by 38 to 0xf4256
  Extended opcode 1: End of Sequence
  Compilation Unit @ offset 0x28b3e0:
 <0><28b3eb>: Abbrev Number: 1 (DW_TAG_compile_unit)
    <28b3ec>   DW_AT_stmt_list   : 0x7b439
    <28b3f0>   DW_AT_low_pc	 : 0xf41c8
    <28b3f8>   DW_AT_high_pc     : 0xf4256
    <28b400>   DW_AT_name        : ../sysdeps/unix/syscall-template.S
    <28b423>   DW_AT_comp_dir    : /usr/src/debug////////glibc-2.17-c758a686/misc
    <28b452>   DW_AT_producer    : GNU AS 2.23.52.0.1
    <28b465>   DW_AT_language    : 32769        (MIPS assembler)

without debuginfo or with debuginfo and the fix - correct address:
(gdb) b select
Breakpoint 1 at 0xf4210

It is also where .dynsym+.symtab point to:
00000000000f4210 T __select
00000000000f4210 W select

with debuginfo, without the fix:
(gdb) b select
Breakpoint 1 at 0xf41c8: file ../sysdeps/unix/syscall-template.S, line 81.

One part is to behave for asm files similar way like for 'locations_valid':
  /* Symtab has been compiled with both optimizations and debug info so that
     GDB may stop skipping prologues as variables locations are valid already
     at function entry points.  */
  unsigned int locations_valid : 1;

The other part is to extend the 'locations_valid'-like functionality more.

Both minsym_found and find_function_start_sal need to be patched, otherwise
their addresses do not match and GDB regresses on ppc64:

gdb/ChangeLog
2015-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* linespec.c (minsym_found): Reset sal.PC for COMPUNIT_LOCATIONS_VALID
	and language_asm..
	* symtab.c (find_function_start_sal): Likewise.

gdb/testsuite/ChangeLog
2015-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.arch/amd64-prologue-skip.S: New file.
	* gdb.arch/amd64-prologue-skip.exp: New file.
2015-06-26 15:11:14 +02:00
Keith Seitz
32b40af94e Update comment of linespec_lexer_lex_keyword.
gdb/ChangeLog

       * linespec.c (linespec_lexer_lex_keyword): Update comment.
2015-03-23 13:32:01 -07:00
Keith Seitz
0578b14e99 Expand keyword lexing intelligence in the linespec parser.
This patch changes the heuristic the linespec lexer uses to
    detect a keyword in the input stream.

    Currently, the heuristic is: a word is a keyword if it
    1) points to a string that is a keyword
    2) is followed by a non-identifier character

    This is strictly more correct than using whitespace. For example,
    it allows constructs such as "break foo if(i == 1)". However,
    find_condition_and_thread in breakpoint.c does not support this expanded
    usage. It requires whitespace to follow the keyword.

    The proposed new heuristic is: a word is a keyword if it
    1) points to a string that is a keyword
    2) is followed by whitespace
    3) is not followed by another keyword string followed by whitespace

    This additional complexity allows constructs such as
    "break thread thread 3" and "break thread 3".  In the former case,
    the actual location is a symbol named "thread" to be set on thread #3.
    In the later case, the location is NULL, i.e., the default location,
    to be set on thread #3.

    In order to pass all the new tests added here, I've also had to add a
    new feature to parse_breakpoint_sals, which expands recognition of the
    default location to keywords other than "if", which is the only keyword
    currently permitted with the default (NULL) location, but there is no
    reason to exclude other keywords.

    Consequently, it will be possible to use "break thread 1" or
    "break task 1".

    In addition to all of this, it is now possible to remove the keyword_ok
    state from the linespec parser.

    gdb/ChangeLog

    	* breakpoint.c (parse_breakpoint_sals): Use
    	linespec_lexer_lex_keyword to ascertain if the user specified
    	a NULL location.
    	* linespec.c [IF_KEYWORD_INDEX]: Define.
    	(linespec_lexer_lex_keyword): Export.
    	(struct ls_parser) <keyword_ok>: Remove.
    	A keyword is only a keyword if not followed by another keyword.
    	(linespec_lexer_lex_one): Remove keyword_ok handling.
    	Add comment explaining why the parsing stream is not advanced
    	when a keyword is seen.
    	(parse_linespec): Remove parser->keyword_ok.
    	* linespec.h (linespec_lexer_lex_keyword): Add declaration.

    gdb/testsuite/ChangeLog

    	* gdb.linespec/keywords.c: New file.
    	* gdb.linespec/keywords.exp: New file.
2015-03-23 13:16:39 -07:00
Pedro Alves
492d29ea1c Split TRY_CATCH into TRY + CATCH
This patch splits the TRY_CATCH macro into three, so that we go from
this:

~~~
  volatile gdb_exception ex;

  TRY_CATCH (ex, RETURN_MASK_ERROR)
    {
    }
  if (ex.reason < 0)
    {
    }
~~~

to this:

~~~
  TRY
    {
    }
  CATCH (ex, RETURN_MASK_ERROR)
    {
    }
  END_CATCH
~~~

Thus, we'll be getting rid of the local volatile exception object, and
declaring the caught exception in the catch block.

This allows reimplementing TRY/CATCH in terms of C++ exceptions when
building in C++ mode, while still allowing to build GDB in C mode
(using setjmp/longjmp), as a transition step.

TBC, after this patch, is it _not_ valid to have code between the TRY
and the CATCH blocks, like:

  TRY
    {
    }

  // some code here.

  CATCH (ex, RETURN_MASK_ERROR)
    {
    }
  END_CATCH

Just like it isn't valid to do that with C++'s native try/catch.

By switching to creating the exception object inside the CATCH block
scope, we can get rid of all the explicitly allocated volatile
exception objects all over the tree, and map the CATCH block more
directly to C++'s catch blocks.

The majority of the TRY_CATCH -> TRY+CATCH+END_CATCH conversion was
done with a script, rerun from scratch at every rebase, no manual
editing involved.  After the mechanical conversion, a few places
needed manual intervention, to fix preexisting cases where we were
using the exception object outside of the TRY_CATCH block, and cases
where we were using "else" after a 'if (ex.reason) < 0)' [a CATCH
after this patch].  The result was folded into this patch so that GDB
still builds at each incremental step.

END_CATCH is necessary for two reasons:

First, because we name the exception object in the CATCH block, which
requires creating a scope, which in turn must be closed somewhere.
Declaring the exception variable in the initializer field of a for
block, like:

  #define CATCH(EXCEPTION, mask) \
    for (struct gdb_exception EXCEPTION; \
         exceptions_state_mc_catch (&EXCEPTION, MASK); \
	 EXCEPTION = exception_none)

would avoid needing END_CATCH, but alas, in C mode, we build with C90,
which doesn't allow mixed declarations and code.

Second, because when TRY/CATCH are wired to real C++ try/catch, as
long as we need to handle cleanup chains, even if there's no CATCH
block that wants to catch the exception, we need for stop at every
frame in the unwind chain and run cleanups, then rethrow.  That will
be done in END_CATCH.

After we require C++, we'll still need TRY/CATCH/END_CATCH until
cleanups are completely phased out -- TRY/CATCH in C++ mode will
save/restore the current cleanup chain, like in C mode, and END_CATCH
catches otherwise uncaugh exceptions, runs cleanups and rethrows, so
that C++ cleanups and exceptions can coexist.

IMO, this still makes the TRY/CATCH code look a bit more like a
newcomer would expect, so IMO worth it even if we weren't considering
C++.

gdb/ChangeLog.
2015-03-07  Pedro Alves  <palves@redhat.com>

	* common/common-exceptions.c (struct catcher) <exception>: No
	longer a pointer to volatile exception.  Now an exception value.
	<mask>: Delete field.
	(exceptions_state_mc_init): Remove all parameters.  Adjust.
	(exceptions_state_mc): No longer pop the catcher here.
	(exceptions_state_mc_catch): New function.
	(throw_exception): Adjust.
	* common/common-exceptions.h (exceptions_state_mc_init): Remove
	all parameters.
	(exceptions_state_mc_catch): Declare.
	(TRY_CATCH): Rename to ...
	(TRY): ... this.  Remove EXCEPTION and MASK parameters.
	(CATCH, END_CATCH): New.
	All callers adjusted.

gdb/gdbserver/ChangeLog:
2015-03-07  Pedro Alves  <palves@redhat.com>

	Adjust all callers of TRY_CATCH to use TRY/CATCH/END_CATCH
	instead.
2015-03-07 15:14:14 +00:00
Pedro Alves
7556d4a4f6 Normalize TRY_CATCH exception handling block
This normalizes some exception catch blocks that check for ex.reason
to look like this:

~~~
  volatile gdb_exception ex;

  TRY_CATCH (ex, RETURN_MASK_ALL)
    {
      ...
    }
  if (ex.reason < 0)
    {
      ...
    }
~~~

This is a preparation step for running a script that converts all
TRY_CATCH uses to look like this instead:

~~~
  TRY
    {
      ...
    }
  CATCH (ex, RETURN_MASK_ALL)
    {
      ...
    }
  END_CATCH
~~~

The motivation for that change is being able to reimplent TRY/CATCH in
terms of C++ try/catch.

This commit makes it so that:

 - no condition other than ex.reason < 0 is checked in the if
   predicate

 - there's no "else" block to check whether no exception was caught

 - there's no code between the TRY_CATCH (TRY) block and the
   'if (ex.reason < 0)' block (CATCH).

 - the exception object is no longer referred to outside the if/catch
   block.  Note the local volatile exception objects that are
   currently defined inside functions that use TRY_CATCH will
   disappear.  In cases it's more convenient to still refer to the
   exception outside the catch block, a new non-volatile local is
   added and copy to that object is made within the catch block.

The following patches should make this all clearer.

gdb/ChangeLog:
2015-03-07  Pedro Alves  <palves@redhat.com>

	* amd64-tdep.c (amd64_frame_cache, amd64_sigtramp_frame_cache)
	(amd64_epilogue_frame_cache): Normal exception handling code.
	* break-catch-throw.c (check_status_exception_catchpoint)
	(re_set_exception_catchpoint): Ditto.
	* cli/cli-interp.c (safe_execute_command):
	* cli/cli-script.c (script_from_file): Ditto.
	* compile/compile-c-symbols.c (generate_c_for_for_one_variable):
	Ditto.
	* compile/compile-object-run.c (compile_object_run): Ditto.
	* cp-abi.c (baseclass_offset): Ditto.
	* cp-valprint.c (cp_print_value): Ditto.
	* exceptions.c (catch_exceptions_with_msg):
	* frame-unwind.c (frame_unwind_try_unwinder): Ditto.
	* frame.c (get_frame_address_in_block_if_available): Ditto.
	* i386-tdep.c (i386_frame_cache, i386_epilogue_frame_cache)
	(i386_sigtramp_frame_cache): Ditto.
	* infcmd.c (post_create_inferior): Ditto.
	* linespec.c (parse_linespec, find_linespec_symbols):
	* p-valprint.c (pascal_object_print_value): Ditto.
	* parse.c (parse_expression_for_completion): Ditto.
	* python/py-finishbreakpoint.c (bpfinishpy_init): Ditto.
	* remote.c (remote_get_noisy_reply): Ditto.
	* s390-linux-tdep.c (s390_frame_unwind_cache): Ditto.
	* solib-svr4.c (solib_svr4_r_map): Ditto.
2015-03-07 14:56:43 +00:00
Gary Benson
61012eef84 New common function "startswith"
This commit introduces a new inline common function "startswith"
which takes two string arguments and returns nonzero if the first
string starts with the second.  It also updates the 295 places
where this logic was written out longhand to use the new function.

gdb/ChangeLog:

	* common/common-utils.h (startswith): New inline function.
	All places where this logic was used updated to use the above.
2015-03-06 09:42:06 +00:00
Gary Benson
276d885b57 new callback parameter expansion_notify for expand_symtabs_matching
This commit adds a new callback parameter, "expansion_notify", to the
top-level expand_symtabs_matching function and to all the vectorized
functions it defers to.  If expansion_notify is non-NULL, it will be
called every time a symbol table is expanded.

gdb/ChangeLog:

	* symfile.h (expand_symtabs_exp_notify_ftype): New typedef.
	(struct quick_symbol_functions) <expand_symtabs_matching>:
	New argument expansion_notify.  All uses updated.
	(expand_symtabs_matching): New argument expansion_notify.
	All uses updated.
	* symfile-debug.c (debug_qf_expand_symtabs_matching):
	Also print expansion notify.
	* symtab.c (expand_symtabs_matching_via_partial): Call
	expansion_notify whenever a partial symbol table is expanded.
	* dwarf2read.c (dw2_expand_symtabs_matching): Call
	expansion_notify whenever a symbol table is instantiated.
2015-01-31 14:45:26 -08:00
Joel Brobecker
32d0add0a6 Update year range in copyright notice of all files owned by the GDB project.
gdb/ChangeLog:

        Update year range in copyright notice of all files.
2015-01-01 13:32:14 +04:00
Doug Evans
08be3fe322 Replace some symbol accessor macros with functions.
gdb/ChangeLog:

	* symtab.h (SYMBOL_SYMTAB): Delete
	(SYMBOL_OBJFILE): Delete.
	(symbol_symtab, symbol_set_symtab): Declare.
	(symbol_objfile, symbol_arch): Declare.
	* symtab.c (symbol_symtab): Replaces SYMBOL_SYMTAB.  All uses updated.
	All references to symbol->symtab redirected through here.
	(symbol_set_symtab): New function.  All assignments to SYMBOL_SYMTAB
	redirected through here.
	(symbol_arch): New function.
	(symbol_objfile): New function.  Replaces SYMBOL_OBJFILE.
	All uses updated.
	* cp-namespace.c (cp_lookup_symbol_imports_or_template): Call
	symbol_arch.
	* findvar.c (default_read_var_value): Call symbol_arch.
	* guile/scm-frame.c (gdbscm_frame_block): Call symbol_objfile.
	* jv-lang.c (add_class_symtab_symbol): Call symbol_arch.
	* printcmd.c (address_info): Call symbol_arch.
	* tracepoint.c (scope_info): Call symbol_arch.
2014-12-23 07:21:10 -08:00
Mihail-Marian Nistor
87186c6a5c gdb/17394: cannot put breakpoint only in selected ASM file.
This patch fixes a problem when trying to insert a breakpoint on
a specific symbol defined in a specific file, eg:

    break foo.c:func

This currently works for files in C/C++/Ada, etc, but doesn't always
work for Asm files. Analysis of the problem showed that this related
to a limitation in gas, which does not generate debug info for functions/
symbols.  Thus, we have a symtab for the file ("info sources" shows
the file), but it contains no symbols.

When find_linespec_symbols is called in linespec_parse_basic, it calls
find_function_symbols, which uses add_matching_symbols_to_info to
collect all matching symbols.

That function does [pardon any mangled formatting]:

  for (ix = 0; VEC_iterate (symtab_ptr, info->file_symtabs, ix, elt); ++ix)
    {
      if (elt == NULL)
        {
          iterate_over_all_matching_symtabs (info->state, name, VAR_DOMAIN,
                                             collect_symbols, info,
                                             pspace, 1);
          search_minsyms_for_name (info, name, pspace);
        }
      else if (pspace == NULL || pspace == SYMTAB_PSPACE (elt))
        {
          /* Program spaces that are executing startup should have
             been filtered out earlier.  */
          gdb_assert (!SYMTAB_PSPACE (elt)->executing_startup);
          set_current_program_space (SYMTAB_PSPACE (elt));
          iterate_over_file_blocks (elt, name, VAR_DOMAIN,
                                    collect_symbols, info);
        }
    }

This iterates over the symtabs. In the failing use case, ELT is
non-NULL (points to the symtab for the .s file), so it calls
iterate_over_file_blocks. Herein is where the problem exists: it is
assumed that if NAME exists, it must exist in the given symtab -- a
reasonable assumption for "normal" (non-asm) cases. It never searches
minimal symbols (or in the global default symtab).

This patch fixes the problem by doing so. It is important to note that
iterating over minsyms is fairly expensive, so this patch only adds
that extra search if the language is language_asm and
iterate_over_file_blocks returns no symbols.

gdb/ChangeLog:
2014-12-20  Keith Seitz  <keiths@redhat.com>
            Mihail-Marian Nistor  <mihail.nistor@freescale.com>

        PR gdb/17394
        * linespec.c (struct collect_minsyms): Add new member `symtab'.
        (add_minsym): Handle cases where info.symtab is non-NULL.
        (search_minsyms_for_name): Add new parameter `symtab'.
        Handle limiting searches to a specific symtab.
        (add_matching_symtabs_to_info): Search through minimal symbols
        for language_asm files for which no new symbols are found.

gdb/testsuite/ChangeLog:
2014-12-20  Mihail-Marian Nistor  <mihail.nistor@freescale.com>

        PR gdb/17394
        * gdb.linespec/break-asm-file.c: New file.
        * gdb.linespec/break-asm-file.exp: New file.
        * gdb.linespec/break-asm-file0.s: New file.
        * gdb.linespec/break-asm-file1.s: New file.
2014-12-20 11:32:25 -05:00
Doug Evans
642a8d8067 Revert: linespec.c (iterate_name_matcher): Fix arguments to symbol_name_cmp.
This patch causes regressions in ada's operator_bp.exp test.
That's because it uses wild_match which expects arguments in
the original order.

There is still a bug here.  It's hard to see because either minsyms
save the day, or the needed symtab gets expanded before linespecs
need it because of the call to cp_canonicalize_string_no_typedefs
in linespec.c:find_linespec_symbols.
But if you disable both of those things, then the bug is visible.

bash$ ./gdb -D ./data-directory testsuite/gdb.cp/anon-ns
(gdb) b doit(void)
Function "doit(void)" not defined.

gdb/ChangeLog:

	Revert:
	PR symtab/17602
	* linespec.c (iterate_name_matcher): Fix arguments to symbol_name_cmp.
2014-12-05 01:04:07 -08:00
Doug Evans
29f0c3b7b2 PR symtab/17602
gdb/ChangeLog:

	PR symtab/17602
	* linespec.c (iterate_name_matcher): Fix arguments to symbol_name_cmp.

gdb/testsuite/ChangeLog:

        PR symtab/17602
	* gdb.cp/anon-ns.cc: Move guts of this file to ...
	* gdb.cp/anon-ns-2.cc: ... here.  New file.
	* gdb.cp/anon-ns.exp: Update.
2014-12-02 16:40:38 -08:00
Doug Evans
43f3e411c4 Split struct symtab into two: struct symtab and compunit_symtab.
Currently "symtabs" in gdb are stored as a single linked list of
struct symtab that contains both symbol symtabs (the blockvectors)
and file symtabs (the linetables).

This has led to confusion, bugs, and performance issues.

This patch is conceptually very simple: split struct symtab into
two pieces: one part containing things common across the entire
compilation unit, and one part containing things specific to each
source file.

Example.
For the case of a program built out of these files:

foo.c
  foo1.h
  foo2.h
bar.c
  foo1.h
  bar.h

Today we have a single list of struct symtabs:

objfile -> foo.c -> foo1.h -> foo2.h -> bar.c -> foo1.h -> bar.h -> NULL

where "->" means the "next" pointer in struct symtab.

With this patch, that turns into:

objfile -> foo.c(cu) -> bar.c(cu) -> NULL
            |            |
            v            v
           foo.c        bar.c
            |            |
            v            v
           foo1.h       foo1.h
            |            |
            v            v
           foo2.h       bar.h
            |            |
            v            v
           NULL         NULL

where "foo.c(cu)" and "bar.c(cu)" are struct compunit_symtab objects,
and the files foo.c, etc. are struct symtab objects.

So now, for example, when we want to iterate over all blockvectors
we can now just iterate over the compunit_symtab list.

Plus a lot of the data that was either unused or replicated for each
symtab in a compilation unit now lives in struct compunit_symtab.
E.g., the objfile pointer, the producer string, etc.
I thought of moving "language" out of struct symtab but there is
logic to try to compute the language based on previously seen files,
and I think that's best left as is for now.
With my standard monster benchmark with -readnow (which I can't actually
do, but based on my calculations), whereas today the list requires
77MB to store all the struct symtabs, it now only requires 37MB.
A modest space savings given the gigabytes needed for all the debug info,
etc.  Still, it's nice.  Plus, whereas today we create a copy of dirname
for each source file symtab in a compilation unit, we now only create one
for the compunit.

So this patch is basically just a data structure reorg,
I don't expect significant performance improvements from it.

Notes:

1) A followup patch can do a similar split for struct partial_symtab.
I have left that until after I get the changes I want in to
better utilize .gdb_index (it may affect how we do partial syms).

2) Another followup patch *could* rename struct symtab.
The term "symtab" is ambiguous and has been a source of confusion.
In this patch I'm leaving it alone, calling it the "historical" name
of "filetabs", which is what they are now: just the file-name + line-table.

gdb/ChangeLog:

	Split struct symtab into two: struct symtab and compunit_symtab.
	* amd64-tdep.c (amd64_skip_xmm_prologue): Fetch producer from compunit.
	* block.c (blockvector_for_pc_sect): Change "struct symtab *" argument
	to "struct compunit_symtab *".  All callers updated.
	(set_block_compunit_symtab): Renamed from set_block_symtab.  Change
	"struct symtab *" argument to "struct compunit_symtab *".
	All callers updated.
	(get_block_compunit_symtab): Renamed from get_block_symtab.  Change
	result to "struct compunit_symtab *".  All callers updated.
	(find_iterator_compunit_symtab): Renamed from find_iterator_symtab.
	Change result to "struct compunit_symtab *".  All callers updated.
	* block.h (struct global_block) <compunit_symtab>: Renamed from symtab.
	hange type to "struct compunit_symtab *".  All uses updated.
	(struct block_iterator) <d.compunit_symtab>: Renamed from "d.symtab".
	Change type to "struct compunit_symtab *".  All uses updated.
	* buildsym.c (struct buildsym_compunit): New struct.
	(subfiles, buildsym_compdir, buildsym_objfile, main_subfile): Delete.
	(buildsym_compunit): New static global.
	(finish_block_internal): Update to fetch objfile from
	buildsym_compunit.
	(make_blockvector): Delete objfile argument.
	(start_subfile): Rewrite to use buildsym_compunit.  Don't initialize
	debugformat, producer.
	(start_buildsym_compunit): New function.
	(free_buildsym_compunit): Renamed from free_subfiles_list.
	All callers updated.
	(patch_subfile_names): Rewrite to use buildsym_compunit.
	(get_compunit_symtab): New function.
	(get_macro_table): Delete argument comp_dir.  All callers updated.
	(start_symtab): Change result to "struct compunit_symtab *".
	All callers updated.  Create the subfile of the main source file.
	(watch_main_source_file_lossage): Rewrite to use buildsym_compunit.
	(reset_symtab_globals): Update.
	(end_symtab_get_static_block): Update to use buildsym_compunit.
	(end_symtab_without_blockvector): Rewrite.
	(end_symtab_with_blockvector): Change result to
	"struct compunit_symtab *".  All callers updated.
	Update to use buildsym_compunit.  Don't set symtab->dirname,
	instead set it in the compunit.
	Explicitly make sure main symtab is first in its list.
	Set debugformat, producer, blockvector, block_line_section, and
	macrotable in the compunit.
	(end_symtab_from_static_block): Change result to
	"struct compunit_symtab *".  All callers updated.
	(end_symtab, end_expandable_symtab): Ditto.
	(set_missing_symtab): Change symtab argument to
	"struct compunit_symtab *".  All callers updated.
	(augment_type_symtab): Ditto.
	(record_debugformat): Update to use buildsym_compunit.
	(record_producer): Update to use buildsym_compunit.
	* buildsym.h (struct subfile) <dirname>: Delete.
	<producer, debugformat>: Delete.
	<buildsym_compunit>: New member.
	(get_compunit_symtab): Declare.
	* dwarf2read.c (struct type_unit_group) <compunit_symtab>: Renamed
	from primary_symtab.  Change type to "struct compunit_symtab *".
	All uses updated.
	(dwarf2_start_symtab): Change result to "struct compunit_symtab *".
	All callers updated.
	(dwarf_decode_macros): Delete comp_dir argument.  All callers updated.
	(struct dwarf2_per_cu_quick_data) <compunit_symtab>: Renamed from
	symtab.  Change type to "struct compunit_symtab *".  All uses updated.
	(dw2_instantiate_symtab): Change result to "struct compunit_symtab *".
	All callers updated.
	(dw2_find_last_source_symtab): Ditto.
	(dw2_lookup_symbol): Ditto.
	(recursively_find_pc_sect_compunit_symtab): Renamed from
	recursively_find_pc_sect_symtab.  Change result to
	"struct compunit_symtab *".  All callers updated.
	(dw2_find_pc_sect_compunit_symtab): Renamed from
	dw2_find_pc_sect_symtab.  Change result to
	"struct compunit_symtab *".  All callers updated.
	(get_compunit_symtab): Renamed from get_symtab.  Change result to
	"struct compunit_symtab *".  All callers updated.
	(recursively_compute_inclusions): Change type of immediate_parent
	argument to "struct compunit_symtab *".  All callers updated.
	(compute_compunit_symtab_includes): Renamed from
	compute_symtab_includes.  All callers updated.  Rewrite to compute
	includes of compunit_symtabs and not symtabs.
	(process_full_comp_unit): Update to work with struct compunit_symtab.
	(process_full_type_unit): Ditto.
	(dwarf_decode_lines_1): Delete argument comp_dir.  All callers updated.
	(dwarf_decode_lines): Remove special case handling of main subfile.
	(macro_start_file): Delete argument comp_dir.  All callers updated.
	(dwarf_decode_macro_bytes): Ditto.
	* guile/scm-block.c (bkscm_print_block_syms_progress_smob): Update to
	use struct compunit_symtab.
	* i386-tdep.c (i386_skip_prologue): Fetch producer from compunit.
	* jit.c (finalize_symtab): Build compunit_symtab.
	* jv-lang.c (get_java_class_symtab): Change result to
	"struct compunit_symtab *".  All callers updated.
	* macroscope.c (sal_macro_scope): Fetch macro table from compunit.
	* macrotab.c (struct macro_table) <compunit_symtab>: Renamed from
	comp_dir.  Change type to "struct compunit_symtab *".
	All uses updated.
	(new_macro_table): Change comp_dir argument to cust,
	"struct compunit_symtab *".  All callers updated.
	* maint.c (struct cmd_stats) <nr_compunit_symtabs>: Renamed from
	nr_primary_symtabs.  All uses updated.
	(count_symtabs_and_blocks): Update to handle compunits.
	(report_command_stats): Update output, "primary symtabs" renamed to
	"compunits".
	* mdebugread.c (new_symtab): Change result to
	"struct compunit_symtab *".  All callers updated.
	(parse_procedure): Change type of search_symtab argument to
	"struct compunit_symtab *".  All callers updated.
	* objfiles.c (objfile_relocate1): Loop over blockvectors in a
	separate loop.
	* objfiles.h (struct objfile) <compunit_symtabs>: Renamed from
	symtabs.  Change type to "struct compunit_symtab *".  All uses updated.
	(ALL_OBJFILE_FILETABS): Renamed from ALL_OBJFILE_SYMTABS.
	All uses updated.
	(ALL_OBJFILE_COMPUNITS): Renamed from ALL_OBJFILE_PRIMARY_SYMTABS.
	All uses updated.
	(ALL_FILETABS): Renamed from ALL_SYMTABS.  All uses updated.
	(ALL_COMPUNITS): Renamed from ALL_PRIMARY_SYMTABS.  All uses updated.
	* psympriv.h (struct partial_symtab) <compunit_symtab>: Renamed from
	symtab.  Change type to "struct compunit_symtab *".  All uses updated.
	* psymtab.c (psymtab_to_symtab): Change result type to
	"struct compunit_symtab *".  All callers updated.
	(find_pc_sect_compunit_symtab_from_partial): Renamed from
	find_pc_sect_symtab_from_partial.  Change result type to
	"struct compunit_symtab *".  All callers updated.
	(lookup_symbol_aux_psymtabs): Change result type to
	"struct compunit_symtab *".  All callers updated.
	(find_last_source_symtab_from_partial): Ditto.
	* python/py-symtab.c (stpy_get_producer): Fetch producer from compunit.
	* source.c (forget_cached_source_info_for_objfile): Fetch debugformat
	and macro_table from compunit.
	* symfile-debug.c (debug_qf_find_last_source_symtab): Change result
	type to "struct compunit_symtab *".  All callers updated.
	(debug_qf_lookup_symbol): Ditto.
	(debug_qf_find_pc_sect_compunit_symtab): Renamed from
	debug_qf_find_pc_sect_symtab, change result type to
	"struct compunit_symtab *".  All callers updated.
	* symfile.c (allocate_symtab): Delete objfile argument.
	New argument cust.
	(allocate_compunit_symtab): New function.
	(add_compunit_symtab_to_objfile): New function.
	* symfile.h (struct quick_symbol_functions) <lookup_symbol>:
	Change result type to "struct compunit_symtab *".  All uses updated.
	<find_pc_sect_compunit_symtab>: Renamed from find_pc_sect_symtab.
	Change result type to "struct compunit_symtab *".  All uses updated.
	* symmisc.c (print_objfile_statistics): Compute blockvector count in
	separate loop.
	(dump_symtab_1): Update test for primary source symtab.
	(maintenance_info_symtabs): Update to handle compunit symtabs.
	(maintenance_check_symtabs): Ditto.
	* symtab.c (set_primary_symtab): Delete.
	(compunit_primary_filetab): New function.
	(compunit_language): New function.
	(iterate_over_some_symtabs): Change type of arguments "first",
	"after_last" to "struct compunit_symtab *".  All callers updated.
	Update to loop over symtabs in each compunit.
	(error_in_psymtab_expansion): Rename symtab argument to cust,
	and change type to "struct compunit_symtab *".  All callers updated.
	(find_pc_sect_compunit_symtab): Renamed from find_pc_sect_symtab.
	Change result type to "struct compunit_symtab *".  All callers updated.
	(find_pc_compunit_symtab): Renamed from find_pc_symtab.
	Change result type to "struct compunit_symtab *".  All callers updated.
	(find_pc_sect_line): Only loop over symtabs within selected compunit
	instead of all symtabs in the objfile.
	* symtab.h (struct symtab) <blockvector>: Moved to compunit_symtab.
	<compunit_symtab> New member.
	<block_line_section>: Moved to compunit_symtab.
	<locations_valid>: Ditto.
	<epilogue_unwind_valid>: Ditto.
	<macro_table>: Ditto.
	<dirname>: Ditto.
	<debugformat>: Ditto.
	<producer>: Ditto.
	<objfile>: Ditto.
	<call_site_htab>: Ditto.
	<includes>: Ditto.
	<user>: Ditto.
	<primary>: Delete
	(SYMTAB_COMPUNIT): New macro.
	(SYMTAB_BLOCKVECTOR): Update definition.
	(SYMTAB_OBJFILE): Update definition.
	(SYMTAB_DIRNAME): Update definition.
	(struct compunit_symtab): New type.  Common members among all source
	symtabs within a compilation unit moved here.  All uses updated.
	(COMPUNIT_OBJFILE): New macro.
	(COMPUNIT_FILETABS): New macro.
	(COMPUNIT_DEBUGFORMAT): New macro.
	(COMPUNIT_PRODUCER): New macro.
	(COMPUNIT_DIRNAME): New macro.
	(COMPUNIT_BLOCKVECTOR): New macro.
	(COMPUNIT_BLOCK_LINE_SECTION): New macro.
	(COMPUNIT_LOCATIONS_VALID): New macro.
	(COMPUNIT_EPILOGUE_UNWIND_VALID): New macro.
	(COMPUNIT_CALL_SITE_HTAB): New macro.
	(COMPUNIT_MACRO_TABLE): New macro.
	(ALL_COMPUNIT_FILETABS): New macro.
	(compunit_symtab_ptr): New typedef.
	(DEF_VEC_P (compunit_symtab_ptr)): New vector type.

gdb/testsuite/ChangeLog:

	* gdb.base/maint.exp: Update expected output.
2014-11-20 07:47:44 -08:00
Doug Evans
439247b656 symtab.h (SYMTAB_BLOCKVECTOR): Renamed from BLOCKVECTOR. All uses updated.
gdb/ChangeLog:

	* symtab.h (SYMTAB_BLOCKVECTOR): Renamed from BLOCKVECTOR.  All uses
	updated.
2014-11-18 09:41:45 -08:00
Gary Benson
c765fdb902 Remove spurious exceptions.h inclusions
defs.h includes utils.h, and utils.h includes exceptions.h.  All GDB
.c files include defs.h as their first line, so no file other than
utils.h needs to include exceptions.h.  This commit removes all such
inclusions.

gdb/ChangeLog:

	* ada-lang.c: Do not include exceptions.h.
	* ada-valprint.c: Likewise.
	* amd64-tdep.c: Likewise.
	* auto-load.c: Likewise.
	* block.c: Likewise.
	* break-catch-throw.c: Likewise.
	* breakpoint.c: Likewise.
	* btrace.c: Likewise.
	* c-lang.c: Likewise.
	* cli/cli-cmds.c: Likewise.
	* cli/cli-interp.c: Likewise.
	* cli/cli-script.c: Likewise.
	* completer.c: Likewise.
	* corefile.c: Likewise.
	* corelow.c: Likewise.
	* cp-abi.c: Likewise.
	* cp-support.c: Likewise.
	* cp-valprint.c: Likewise.
	* darwin-nat.c: Likewise.
	* dwarf2-frame-tailcall.c: Likewise.
	* dwarf2-frame.c: Likewise.
	* dwarf2loc.c: Likewise.
	* dwarf2read.c: Likewise.
	* eval.c: Likewise.
	* event-loop.c: Likewise.
	* event-top.c: Likewise.
	* f-valprint.c: Likewise.
	* frame-unwind.c: Likewise.
	* frame.c: Likewise.
	* gdbtypes.c: Likewise.
	* gnu-v2-abi.c: Likewise.
	* gnu-v3-abi.c: Likewise.
	* guile/scm-auto-load.c: Likewise.
	* guile/scm-breakpoint.c: Likewise.
	* guile/scm-cmd.c: Likewise.
	* guile/scm-frame.c: Likewise.
	* guile/scm-lazy-string.c: Likewise.
	* guile/scm-param.c: Likewise.
	* guile/scm-symbol.c: Likewise.
	* guile/scm-type.c: Likewise.
	* hppa-hpux-tdep.c: Likewise.
	* i386-tdep.c: Likewise.
	* inf-loop.c: Likewise.
	* infcall.c: Likewise.
	* infcmd.c: Likewise.
	* infrun.c: Likewise.
	* interps.c: Likewise.
	* interps.h: Likewise.
	* jit.c: Likewise.
	* linespec.c: Likewise.
	* linux-nat.c: Likewise.
	* linux-thread-db.c: Likewise.
	* m32r-rom.c: Likewise.
	* main.c: Likewise.
	* memory-map.c: Likewise.
	* mi/mi-cmd-break.c: Likewise.
	* mi/mi-cmd-stack.c: Likewise.
	* mi/mi-interp.c: Likewise.
	* mi/mi-main.c: Likewise.
	* monitor.c: Likewise.
	* nto-procfs.c: Likewise.
	* objc-lang.c: Likewise.
	* p-valprint.c: Likewise.
	* parse.c: Likewise.
	* ppc-linux-tdep.c: Likewise.
	* printcmd.c: Likewise.
	* probe.c: Likewise.
	* python/py-auto-load.c: Likewise.
	* python/py-breakpoint.c: Likewise.
	* python/py-cmd.c: Likewise.
	* python/py-finishbreakpoint.c: Likewise.
	* python/py-frame.c: Likewise.
	* python/py-framefilter.c: Likewise.
	* python/py-function.c: Likewise.
	* python/py-gdb-readline.c: Likewise.
	* python/py-inferior.c: Likewise.
	* python/py-infthread.c: Likewise.
	* python/py-lazy-string.c: Likewise.
	* python/py-linetable.c: Likewise.
	* python/py-param.c: Likewise.
	* python/py-prettyprint.c: Likewise.
	* python/py-symbol.c: Likewise.
	* python/py-type.c: Likewise.
	* python/py-value.c: Likewise.
	* python/python-internal.h: Likewise.
	* python/python.c: Likewise.
	* record-btrace.c: Likewise.
	* record-full.c: Likewise.
	* regcache.c: Likewise.
	* remote-fileio.c: Likewise.
	* remote-mips.c: Likewise.
	* remote.c: Likewise.
	* rs6000-aix-tdep.c: Likewise.
	* rs6000-nat.c: Likewise.
	* skip.c: Likewise.
	* solib-darwin.c: Likewise.
	* solib-dsbt.c: Likewise.
	* solib-frv.c: Likewise.
	* solib-ia64-hpux.c: Likewise.
	* solib-spu.c: Likewise.
	* solib-svr4.c: Likewise.
	* solib.c: Likewise.
	* spu-tdep.c: Likewise.
	* stack.c: Likewise.
	* stap-probe.c: Likewise.
	* symfile-mem.c: Likewise.
	* symmisc.c: Likewise.
	* target.c: Likewise.
	* thread.c: Likewise.
	* top.c: Likewise.
	* tracepoint.c: Likewise.
	* tui/tui-interp.c: Likewise.
	* typeprint.c: Likewise.
	* utils.c: Likewise.
	* valarith.c: Likewise.
	* valops.c: Likewise.
	* valprint.c: Likewise.
	* value.c: Likewise.
	* varobj.c: Likewise.
	* windows-nat.c: Likewise.
	* xml-support.c: Likewise.
2014-10-08 09:33:22 +01:00
Tom Tromey
3977b71f1d constify struct block in some places
This makes some spots in gdb, particularly general_symbol_info, use a
"const struct block", then fixes the fallout.

The justification is that, ordinarily, blocks ought to be readonly.
Note though that we can't add "const" in the blockvector due to block
relocation.  This can be done once blocks are made independent of the
program space.

2014-06-18  Tom Tromey  <tromey@redhat.com>

	* varobj.c (varobj_create): Update.
	* valops.c (value_of_this): Update.
	* tracepoint.c (add_local_symbols, scope_info): Update.
	* symtab.h (struct general_symbol_info) <block>: Now const.
	* symtab.c (skip_prologue_sal)
	(default_make_symbol_completion_list_break_on)
	(skip_prologue_using_sal): Update.
	* stack.h (iterate_over_block_locals)
	(iterate_over_block_local_vars): Update.
	* stack.c (print_frame_args): Update.
	(iterate_over_block_locals, iterate_over_block_local_vars): Make
	parameter const.
	(get_selected_block): Make return type const.
	* python/py-frame.c (frapy_block): Update.
	* python/py-block.c (gdbpy_block_for_pc): Update.
	* p-exp.y (%union) <bval>: Now const.
	* mi/mi-cmd-stack.c (list_args_or_locals): Update.
	* mdebugread.c (mylookup_symbol, parse_procedure): Update.
	* m2-exp.y (%union) <bval>: Now const.
	* linespec.c (get_current_search_block): Make return type const.
	(create_sals_line_offset, find_label_symbols): Update.
	* inline-frame.c (inline_frame_sniffer, skip_inline_frames):
	Update.
	(block_starting_point_at): Make "block" const.
	* infrun.c (insert_exception_resume_breakpoint): Make "b" const.
	(check_exception_resume): Update.
	* guile/scm-frame.c (gdbscm_frame_block): Update.
	* guile/scm-block.c (gdbscm_lookup_block): Update.
	* frame.h (get_frame_block): Update.
	(get_selected_block): Make return type const.
	* frame.c (frame_id_inner): Update.
	* f-valprint.c (info_common_command_for_block)
	(info_common_command): Update.
	* dwarf2loc.c (dwarf2_find_location_expression)
	(dwarf_expr_frame_base, dwarf2_compile_expr_to_ax)
	(locexpr_describe_location_piece): Update.
	* c-exp.y (%union) <bval>: Now const.
	* breakpoint.c (resolve_sal_pc): Update.
	* blockframe.c (get_frame_block):Make return type const.
	(get_pc_function_start, get_frame_function, find_pc_sect_function)
	(block_innermost_frame): Update.
	* block.h (blockvector_for_pc, blockvector_for_pc_sect)
	(block_for_pc, block_for_pc_sect): Update.
	* block.c (blockvector_for_pc_sect, blockvector_for_pc): Make
	'pblock' const.
	(block_for_pc_sect, block_for_pc): Make return type const.
	* ax-gdb.c (gen_expr): Update.
	* alpha-mdebug-tdep.c (find_proc_desc): Update.
	* ada-lang.c (ada_read_renaming_var_value): Make 'block' const.
	(ada_make_symbol_completion_list, ada_add_exceptions_from_frame)
	(ada_read_var_value): Update.
	* ada-exp.y (struct name_info) <block>: Now const.
	(%union): Likewise.
	(block_lookup): Constify.
2014-06-18 08:16:52 -06:00
Keith Seitz
c888a17da5 Fix a dangling cleanup in linspec_parse_basic.
2014-05-05  Keith Seitz  <keiths@redhat.com>

	* linespec.c (linespec_parse_basic): Run cleanups if a convenience
	variable or history value is successfully parsed.

2014-05-05  Keith Seitz  <keiths@redhat.com>

	* gdb.linespec/ls-dollar.exp: Add test for linespec
	file:convenience_variable.
2014-05-05 13:43:31 -07:00
Tom Tromey
77e371c079 start change to progspace independence
This patch starts changing minimal symbols to be independent of the
program space.

Specifically, it adds a new objfile parameter to MSYMBOL_VALUE_ADDRESS
and changes all the code to use it.  This is needed so we can change
gdb to apply the section offset when a minsym's address is computed,
as opposed to baking the offsets into the symbol itself.

A few spots still need the unrelocated address.  For these, we
introduce MSYMBOL_VALUE_RAW_ADDRESS.

As a convenience, we also add the new macro BMSYMBOL_VALUE_ADDRESS,
which computes the address of a bound minimal symbol.  This just does
the obvious thing with the fields.

Note that this change does not actually enable program space
independence.  That requires more changes to gdb.  However, to ensure
that these changes compile properly, this patch does add the needed
section lookup code to MSYMBOL_VALUE_ADDRESS -- it just ensures it has
no effect at runtime by multiplying the offset by 0.

2014-02-26  Tom Tromey  <tromey@redhat.com>

	* ada-lang.c (ada_main_name): Update.
	(ada_add_standard_exceptions): Update.
	* ada-tasks.c (ada_tasks_inferior_data_sniffer): Update.
	* aix-thread.c (pdc_symbol_addrs, pd_enable): Update.
	* arm-tdep.c (skip_prologue_function, arm_skip_stub): Update.
	* auxv.c (ld_so_xfer_auxv): Update.
	* avr-tdep.c (avr_scan_prologue): Update.
	* ax-gdb.c (gen_var_ref): Update.
	* blockframe.c (get_pc_function_start)
	(find_pc_partial_function_gnu_ifunc): Update.
	* breakpoint.c (create_overlay_event_breakpoint)
	(create_longjmp_master_breakpoint)
	(create_std_terminate_master_breakpoint)
	(create_exception_master_breakpoint): Update.
	* bsd-uthread.c (bsd_uthread_lookup_address): Update.
	* c-valprint.c (c_val_print): Update.
	* coff-pe-read.c (add_pe_forwarded_sym): Update.
	* common/agent.c (agent_look_up_symbols): Update.
	* dbxread.c (find_stab_function_addr, end_psymtab): Update.
	* dwarf2loc.c (call_site_to_target_addr): Update.
	* dwarf2read.c (dw2_find_pc_sect_symtab): Update.
	* elfread.c (elf_gnu_ifunc_record_cache)
	(elf_gnu_ifunc_resolve_by_got): Update.
	* findvar.c (default_read_var_value): Update.
	* frame.c (inside_main_func): Update.
	* frv-tdep.c (frv_frame_this_id): Update.
	* glibc-tdep.c (glibc_skip_solib_resolver): Update.
	* gnu-v3-abi.c (gnuv3_get_typeid, gnuv3_skip_trampoline):
	Update.
	* hppa-hpux-tdep.c (hppa64_hpux_search_dummy_call_sequence)
	(hppa_hpux_find_dummy_bpaddr): Update.
	* hppa-tdep.c (hppa_symbol_address): Update.
	* infcmd.c (until_next_command): Update.
	* jit.c (jit_read_descriptor, jit_breakpoint_re_set_internal):
	Update.
	* linespec.c (minsym_found, add_minsym): Update.
	* linux-nat.c (get_signo): Update.
	* linux-thread-db.c (inferior_has_bug): Update.
	* m32c-tdep.c (m32c_return_value)
	(m32c_m16c_address_to_pointer): Update.
	* m32r-tdep.c (m32r_frame_this_id): Update.
	* m68hc11-tdep.c (m68hc11_get_register_info): Update.
	* machoread.c (macho_resolve_oso_sym_with_minsym): Update.
	* maint.c (maintenance_translate_address): Update.
	* minsyms.c (lookup_minimal_symbol_by_pc_name): Update.
	(frob_address): New function.
	(lookup_minimal_symbol_by_pc_section_1): Use raw addresses,
	frob_address.  Rename parameter to "pc_in".
	(compare_minimal_symbols, compact_minimal_symbols): Use raw
	addresses.
	(find_solib_trampoline_target, minimal_symbol_upper_bound):
	Update.
	* mips-linux-tdep.c (mips_linux_skip_resolver): Update.
	* mips-tdep.c (mips_skip_pic_trampoline_code): Update.
	* objc-lang.c (find_objc_msgsend): Update.
	* objfiles.c (objfile_relocate1): Update.
	* obsd-tdep.c (obsd_skip_solib_resolver): Update.
	* p-valprint.c (pascal_val_print): Update.
	* parse.c (write_exp_msymbol): Update.
	* ppc-linux-tdep.c (ppc_linux_spe_context_lookup)
	(ppc_elfv2_skip_entrypoint): Update.
	* ppc-sysv-tdep.c (convert_code_addr_to_desc_addr): Update.
	* printcmd.c (build_address_symbolic, msym_info)
	(address_info): Update.
	* proc-service.c (ps_pglobal_lookup): Update.
	* psymtab.c (find_pc_sect_psymtab_closer)
	(find_pc_sect_psymtab, find_pc_sect_symtab_from_partial):
	Change msymbol parameter to bound_minimal_symbol.
	* ravenscar-thread.c (get_running_thread_id): Update.
	* remote.c (remote_check_symbols): Update.
	* sh64-tdep.c (sh64_elf_make_msymbol_special): Use raw
	address.
	* sol2-tdep.c (sol2_skip_solib_resolver): Update.
	* solib-dsbt.c (lm_base): Update.
	* solib-frv.c (lm_base, main_got): Update.
	* solib-irix.c (locate_base): Update.
	* solib-som.c (som_solib_create_inferior_hook)
	(link_map_start): Update.
	* solib-spu.c (spu_enable_break, ocl_enable_break): Update.
	* solib-svr4.c (elf_locate_base, enable_break): Update.
	* spu-tdep.c (spu_get_overlay_table, spu_catch_start)
	(flush_ea_cache): Update.
	* stabsread.c (define_symbol, scan_file_globals): Update.
	* stack.c (find_frame_funname): Update.
	* symfile-debug.c (debug_qf_expand_symtabs_matching)
	(debug_qf_find_pc_sect_symtab): Update.
	* symfile.c (simple_read_overlay_table)
	(simple_overlay_update): Update.
	* symfile.h (struct quick_symbol_functions)
	<find_pc_sect_symtab>: Change type of msymbol to
	bound_minimal_symbol.
	* symmisc.c (dump_msymbols): Update.
	* symtab.c (find_pc_sect_symtab_via_partial)
	(find_pc_sect_psymtab, find_pc_sect_line, skip_prologue_sal)
	(search_symbols, print_msymbol_info): Update.
	* symtab.h (MSYMBOL_VALUE_RAW_ADDRESS): New macro.
	(MSYMBOL_VALUE_ADDRESS): Redefine.
	(BMSYMBOL_VALUE_ADDRESS): New macro.
	* tracepoint.c (scope_info): Update.
	* tui/tui-disasm.c (tui_find_disassembly_address)
	(tui_get_begin_asm_address): Update.
	* valops.c (find_function_in_inferior): Update.
	* value.c (value_static_field, value_fn_field): Update.
2014-02-26 12:11:17 -07:00
Tom Tromey
efd66ac669 change minsym representation
In a later patch we're going to change the minimal symbol address
calculation to apply section offsets at the point of use.  To make it
simpler to catch potential problem spots, this patch changes the
representation of minimal symbols and introduces new
minimal-symbol-specific variants of the various accessors.  This is
necessary because it would be excessively ambitious to try to convert
all the symbol types at once.

The core of this change is just renaming a field in minimal_symbol;
the rest is just a fairly mechanical rewording.

2014-02-26  Tom Tromey  <tromey@redhat.com>

	* symtab.h (struct minimal_symbol) <mginfo>: Rename from ginfo.
	(MSYMBOL_VALUE, MSYMBOL_VALUE_ADDRESS, MSYMBOL_VALUE_BYTES)
	(MSYMBOL_BLOCK_VALUE, MSYMBOL_VALUE_CHAIN, MSYMBOL_LANGUAGE)
	(MSYMBOL_SECTION, MSYMBOL_OBJ_SECTION, MSYMBOL_NATURAL_NAME)
	(MSYMBOL_LINKAGE_NAME, MSYMBOL_PRINT_NAME, MSYMBOL_DEMANGLED_NAME)
	(MSYMBOL_SET_LANGUAGE, MSYMBOL_SEARCH_NAME)
	(MSYMBOL_MATCHES_SEARCH_NAME, MSYMBOL_SET_NAMES): New macros.
	* ada-lang.c (ada_main_name): Update.
	(ada_lookup_simple_minsym): Update.
	(ada_make_symbol_completion_list): Update.
	(ada_add_standard_exceptions): Update.
	* ada-tasks.c (read_atcb, ada_tasks_inferior_data_sniffer): Update.
	* aix-thread.c (pdc_symbol_addrs, pd_enable): Update.
	* amd64-windows-tdep.c (amd64_skip_main_prologue): Update.
	* arm-tdep.c (skip_prologue_function): Update.
	(arm_skip_stack_protector, arm_skip_stub): Update.
	* arm-wince-tdep.c (arm_pe_skip_trampoline_code): Update.
	(arm_wince_skip_main_prologue): Update.
	* auxv.c (ld_so_xfer_auxv): Update.
	* avr-tdep.c (avr_scan_prologue): Update.
	* ax-gdb.c (gen_var_ref): Update.
	* block.c (call_site_for_pc): Update.
	* blockframe.c (get_pc_function_start): Update.
	(find_pc_partial_function_gnu_ifunc): Update.
	* breakpoint.c (create_overlay_event_breakpoint): Update.
	(create_longjmp_master_breakpoint): Update.
	(create_std_terminate_master_breakpoint): Update.
	(create_exception_master_breakpoint): Update.
	(resolve_sal_pc): Update.
	* bsd-uthread.c (bsd_uthread_lookup_address): Update.
	* btrace.c (ftrace_print_function_name, ftrace_function_switched):
	Update.
	* c-valprint.c (c_val_print): Update.
	* coff-pe-read.c (add_pe_forwarded_sym): Update.
	* coffread.c (coff_symfile_read): Update.
	* common/agent.c (agent_look_up_symbols): Update.
	* dbxread.c (find_stab_function_addr): Update.
	(end_psymtab): Update.
	* dwarf2loc.c (call_site_to_target_addr): Update.
	(func_verify_no_selftailcall): Update.
	(tailcall_dump): Update.
	(call_site_find_chain_1): Update.
	(dwarf_expr_reg_to_entry_parameter): Update.
	* elfread.c (elf_gnu_ifunc_record_cache): Update.
	(elf_gnu_ifunc_resolve_by_got): Update.
	* f-valprint.c (info_common_command): Update.
	* findvar.c (read_var_value): Update.
	* frame.c (get_prev_frame_1): Update.
	(inside_main_func): Update.
	* frv-tdep.c (frv_skip_main_prologue): Update.
	(frv_frame_this_id): Update.
	* glibc-tdep.c (glibc_skip_solib_resolver): Update.
	* gnu-v2-abi.c (gnuv2_value_rtti_type): Update.
	* gnu-v3-abi.c (gnuv3_rtti_type): Update.
	(gnuv3_skip_trampoline): Update.
	* hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline): Update.
	(hppa64_hpux_in_solib_call_trampoline): Update.
	(hppa_hpux_skip_trampoline_code): Update.
	(hppa64_hpux_search_dummy_call_sequence): Update.
	(hppa_hpux_find_import_stub_for_addr): Update.
	(hppa_hpux_find_dummy_bpaddr): Update.
	* hppa-tdep.c (hppa_symbol_address)
	(hppa_lookup_stub_minimal_symbol): Update.
	* i386-tdep.c (i386_skip_main_prologue): Update.
	(i386_pe_skip_trampoline_code): Update.
	* ia64-tdep.c (ia64_convert_from_func_ptr_addr): Update.
	* infcall.c (get_function_name): Update.
	* infcmd.c (until_next_command): Update.
	* jit.c (jit_breakpoint_re_set_internal): Update.
	(jit_inferior_init): Update.
	* linespec.c (minsym_found): Update.
	(add_minsym): Update.
	* linux-fork.c (info_checkpoints_command): Update.
	* linux-nat.c (get_signo): Update.
	* linux-thread-db.c (inferior_has_bug): Update.
	* m32c-tdep.c (m32c_return_value): Update.
	(m32c_m16c_address_to_pointer): Update.
	(m32c_m16c_pointer_to_address): Update.
	* m32r-tdep.c (m32r_frame_this_id): Update.
	* m68hc11-tdep.c (m68hc11_get_register_info): Update.
	* machoread.c (macho_resolve_oso_sym_with_minsym): Update.
	* maint.c (maintenance_translate_address): Update.
	* minsyms.c (add_minsym_to_hash_table): Update.
	(add_minsym_to_demangled_hash_table): Update.
	(msymbol_objfile): Update.
	(lookup_minimal_symbol): Update.
	(iterate_over_minimal_symbols): Update.
	(lookup_minimal_symbol_text): Update.
	(lookup_minimal_symbol_by_pc_name): Update.
	(lookup_minimal_symbol_solib_trampoline): Update.
	(lookup_minimal_symbol_by_pc_section_1): Update.
	(lookup_minimal_symbol_and_objfile): Update.
	(prim_record_minimal_symbol_full): Update.
	(compare_minimal_symbols): Update.
	(compact_minimal_symbols): Update.
	(build_minimal_symbol_hash_tables): Update.
	(install_minimal_symbols): Update.
	(terminate_minimal_symbol_table): Update.
	(find_solib_trampoline_target): Update.
	(minimal_symbol_upper_bound): Update.
	* mips-linux-tdep.c (mips_linux_skip_resolver): Update.
	* mips-tdep.c (mips_stub_frame_sniffer): Update.
	(mips_skip_pic_trampoline_code): Update.
	* msp430-tdep.c (msp430_skip_trampoline_code): Update.
	* objc-lang.c (selectors_info): Update.
	(classes_info): Update.
	(find_methods): Update.
	(find_imps): Update.
	(find_objc_msgsend): Update.
	* objfiles.c (objfile_relocate1): Update.
	* objfiles.h (ALL_OBJFILE_MSYMBOLS): Update.
	* obsd-tdep.c (obsd_skip_solib_resolver): Update.
	* p-valprint.c (pascal_val_print): Update.
	* parse.c (write_exp_msymbol): Update.
	* ppc-linux-tdep.c (powerpc_linux_in_dynsym_resolve_code)
	(ppc_linux_spe_context_lookup, ppc_elfv2_skip_entrypoint): Update.
	* ppc-sysv-tdep.c (convert_code_addr_to_desc_addr): Update.
	* printcmd.c (build_address_symbolic): Update.
	(sym_info): Update.
	(address_info): Update.
	* proc-service.c (ps_pglobal_lookup): Update.
	* psymtab.c (find_pc_sect_psymtab_closer): Update.
	(find_pc_sect_psymtab): Update.
	* python/py-framefilter.c (py_print_frame): Update.
	* ravenscar-thread.c (get_running_thread_id): Update.
	* record-btrace.c (btrace_call_history, btrace_get_bfun_name):
	Update.
	* remote.c (remote_check_symbols): Update.
	* rs6000-tdep.c (rs6000_skip_main_prologue): Update.
	(rs6000_skip_trampoline_code): Update.
	* sh64-tdep.c (sh64_elf_make_msymbol_special): Update.
	* sol2-tdep.c (sol2_skip_solib_resolver): Update.
	* solib-dsbt.c (lm_base): Update.
	* solib-frv.c (lm_base): Update.
	(main_got): Update.
	* solib-irix.c (locate_base): Update.
	* solib-som.c (som_solib_create_inferior_hook): Update.
	(som_solib_desire_dynamic_linker_symbols): Update.
	(link_map_start): Update.
	* solib-spu.c (spu_enable_break): Update.
	(ocl_enable_break): Update.
	* solib-svr4.c (elf_locate_base): Update.
	(enable_break): Update.
	* spu-tdep.c (spu_get_overlay_table): Update.
	(spu_catch_start): Update.
	(flush_ea_cache): Update.
	* stabsread.c (define_symbol): Update.
	(scan_file_globals): Update.
	* stack.c (find_frame_funname): Update.
	(frame_info): Update.
	* symfile.c (simple_read_overlay_table): Update.
	(simple_overlay_update): Update.
	* symmisc.c (dump_msymbols): Update.
	* symtab.c (fixup_section): Update.
	(find_pc_sect_line): Update.
	(skip_prologue_sal): Update.
	(search_symbols): Update.
	(print_msymbol_info): Update.
	(rbreak_command): Update.
	(MCOMPLETION_LIST_ADD_SYMBOL): New macro.
	(completion_list_objc_symbol): Update.
	(default_make_symbol_completion_list_break_on): Update.
	* tracepoint.c (scope_info): Update.
	* tui/tui-disasm.c (tui_find_disassembly_address): Update.
	(tui_get_begin_asm_address): Update.
	* valops.c (find_function_in_inferior): Update.
	* value.c (value_static_field): Update.
	(value_fn_field): Update.
2014-02-26 12:11:16 -07:00
Joel Brobecker
ecd75fc8ee Update Copyright year range in all files maintained by GDB. 2014-01-01 07:54:24 +04:00
Sterling Augustine
e617b0692b 2013-12-17 Sterling Augustine <saugustine@google.com>
* linespec.c (add_sal_to_sals): Use "<unknown>" when a symbol
	isn't found.
2013-12-23 15:14:39 -08:00
Keith Seitz
d7561cbbf2 Constification of parse_linespec and fallout:
https://sourceware.org/ml/gdb-patches/2013-09/msg01017.html
https://sourceware.org/ml/gdb-patches/2013-09/msg01018.html
https://sourceware.org/ml/gdb-patches/2013-09/msg01019.html
https://sourceware.org/ml/gdb-patches/2013-09/msg01020.html
2013-10-02 00:46:07 +00:00
Tom Tromey
f60e2d5c2a (clh 9) 2013-09-23 18:07:46 +00:00
Tom Tromey
df6d544176 move gdbarch object from objfile to per-BFD
This moves the "gdbarch" field from the objfile into the BFD.

This field's value is derived from the BFD and is immutable over the
lifetime of the BFD.  This makes it a reasonable candidate for pushing
into the per-BFD object.

This is part of the long-term objfile splitting project.  In the long
run I think this patch will make it simpler to moves types from the
objfile to the per-BFD object; but the patch makes sense as a minor
cleanup by itself.

Built and regtested on x86-64 Fedora 18.

	* cp-namespace.c (cp_lookup_symbol_imports_or_template): Use
	get_objfile_arch.
	* elfread.c (elf_rel_plt_read, elf_gnu_ifunc_record_cache)
	(elf_gnu_ifunc_resolve_by_got): Use get_objfile_arch.
	* jit.c (jit_object_close_impl): Update.
	* jv-lang.c (get_dynamics_objfile): Update.
	* linespec.c (add_minsym): Use get_dynamics_objfile.
	* objfiles.c (get_objfile_bfd_data): Initialize 'gdbarch' field.
	(allocate_objfile): Don't initialize 'gdbarch' field.
	(get_objfile_arch): Update.
	* objfiles.h (struct objfile_per_bfd_storage) <gdbarch>: New field,
	moved from...
	(struct objfile) <gdbarch>: ... here.  Remove.
	* stap-probe.c (stap_can_evaluate_probe_arguments): Use
	get_objfile_arch.
	* symfile.c (init_entry_point_info): Use get_objfile_arch.
2013-08-20 15:04:51 +00:00
Ali Anwar
b4013987b6 ? .deps
? Makefile
? ada-exp.c
? ada-lex.c
? build-gnulib
? c-exp.c
? config.cache
? config.h
? config.log
? config.status
? cp-name-parser.c
? f-exp.c
? gcore
? gdb
? gdb-gdb.gdb
? go-exp.c
? init.c
? jit-reader.h
? jv-exp.c
? m2-exp.c
? observer.h
? observer.inc
? p-exp.c
? stamp-h
? stamp-xml
? version.c
? xml-builtin.c
? data-directory/Makefile
? data-directory/python
? data-directory/stamp-python
? data-directory/stamp-syscalls
? data-directory/stamp-system-gdbinit
? data-directory/syscalls
? data-directory/system-gdbinit
? doc/Makefile
? gdbserver/.deps
? gdbserver/Makefile
? gdbserver/build-gnulib-gdbserver
? gdbserver/config.cache
? gdbserver/config.h
? gdbserver/config.log
? gdbserver/config.status
? gdbserver/gdbreplay
? gdbserver/gdbserver
? gdbserver/i386-avx-linux.c
? gdbserver/i386-linux.c
? gdbserver/i386-mmx-linux.c
? gdbserver/stamp-h
? gdbserver/stamp-xml
? gdbserver/version.c
? gdbserver/xml-builtin.c
? testsuite/Makefile
? testsuite/config.log
? testsuite/config.status
? testsuite/gdb.log
? testsuite/gdb.sum
? testsuite/site.exp
? testsuite/gdb.ada/Makefile
? testsuite/gdb.arch/Makefile
? testsuite/gdb.asm/Makefile
? testsuite/gdb.base/Makefile
? testsuite/gdb.btrace/Makefile
? testsuite/gdb.cell/Makefile
? testsuite/gdb.cp/Makefile
? testsuite/gdb.disasm/Makefile
? testsuite/gdb.dwarf2/Makefile
? testsuite/gdb.fortran/Makefile
? testsuite/gdb.go/Makefile
? testsuite/gdb.hp/Makefile
? testsuite/gdb.hp/gdb.aCC/Makefile
? testsuite/gdb.hp/gdb.base-hp/Makefile
? testsuite/gdb.hp/gdb.compat/Makefile
? testsuite/gdb.hp/gdb.defects/Makefile
? testsuite/gdb.hp/gdb.objdbg/Makefile
? testsuite/gdb.java/Makefile
? testsuite/gdb.linespec/Makefile
? testsuite/gdb.mi/Makefile
? testsuite/gdb.modula2/Makefile
? testsuite/gdb.multi/Makefile
? testsuite/gdb.objc/Makefile
? testsuite/gdb.opencl/Makefile
? testsuite/gdb.opt/Makefile
? testsuite/gdb.pascal/Makefile
? testsuite/gdb.python/Makefile
? testsuite/gdb.reverse/Makefile
? testsuite/gdb.server/Makefile
? testsuite/gdb.stabs/Makefile
? testsuite/gdb.threads/Makefile
? testsuite/gdb.threads/threadapply
? testsuite/gdb.trace/Makefile
? testsuite/gdb.xml/Makefile

RCS file: /cvs/src/src/gdb/.dir-locals.el,v
Working file: .dir-locals.el
head: 1.2
branch:
locks: strict
access list:
symbolic names:
	gdb_7_6-2013-04-26-release: 1.2
	gdb_7_6-branch: 1.2.0.2
	gdb_7_6-2013-03-12-branchpoint: 1.2
	gdb_7_5_1-2012-11-29-release: 1.1
	gdb_7_5-2012-08-17-release: 1.1
	gdb_7_5-branch: 1.1.0.2
	gdb_7_5-2012-07-18-branchpoint: 1.1
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2013/01/01 06:32:34;  author: brobecke;  state: Exp;  lines: +1 -1
Update years in copyright notice for the GDB files.

Two modifications:
  1. The addition of 2013 to the copyright year range for every file;
  2. The use of a single year range, instead of potentially multiple
     year ranges, as approved by the FSF.
----------------------------
revision 1.1
date: 2012/03/28 17:35:38;  author: tromey;  state: Exp;
	* .dir-locals.el: New file.
=============================================================================

RCS file: /cvs/src/src/gdb/.gitignore,v
Working file: .gitignore
head: 1.5
branch:
locks: strict
access list:
symbolic names:
	gdb_7_6-2013-04-26-release: 1.4
	gdb_7_6-branch: 1.4.0.2
	gdb_7_6-2013-03-12-branchpoint: 1.4
	gdb_7_5_1-2012-11-29-release: 1.3
	gdb_7_5-2012-08-17-release: 1.3
	gdb_7_5-branch: 1.3.0.2
	gdb_7_5-2012-07-18-branchpoint: 1.3
	gdb_7_4_1-2012-04-26-release: 1.1
	gdb_7_4-2012-01-24-release: 1.1
	gdb_7_4-branch: 1.1.0.4
	gdb_7_4-2011-12-13-branchpoint: 1.1
	gdb_7_3_1-2011-09-04-release: 1.1
	gdb_7_3-2011-07-26-release: 1.1
	gdb_7_3-branch: 1.1.0.2
	gdb_7_3-2011-04-01-branchpoint: 1.1
keyword substitution: kv
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.5
date: 2013/06/17 04:39:15;  author: vapier;  state: Exp;  lines: +1 -0
gdb: ignore generated gcore
----------------------------
revision 1.4
date: 2012/08/13 15:43:59;  author: vapier;  state: Exp;  lines: +1 -0
gdb: ignore generated go-exp.c
----------------------------
revision 1.3
date: 2012/03/21 04:53:29;  author: vapier;  state: Exp;  lines: +2 -0
gdb: update gitignore
----------------------------
revision 1.2
date: 2012/01/02 02:28:56;  author: jkratoch;  state: Exp;  lines: +0 -1
gdb/
	Remove the gdbtui binary.
	* .gitignore (/gdbtui): Remove.
	* Makefile.in (TUI): Remove.
	(SUBDIR_TUI_OBS): Remove tui-main.o.
	(SUBDIR_TUI_SRCS): Remove tui/tui-main.c.
	(all-tui, install-tui, uninstall-tui, $(TUI)$(EXEEXT), clean-tui)
	(tui-main.o): Remove.
	(all_object_files): Remove tui-main.o.
	* NEWS: New note for the gdbtui removal.
	* configure: Rebuilt.
	* configure.ac: No longer add all-tui, clean-tui, install-tui and
	uninstall-tui to CONFIG_ALL, CONFIG_CLEAN, CONFIG_INSTALL and
	CONFIG_UNINSTALL respectively.
	* gdb.c (main): Remove args.interpreter_p initialization.
	* main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
	* main.h (struct captured_main_args): Remove interpreter_p.
	* tui/tui-main.c: Remove.

gdb/doc/
	Remove the gdbtui binary.
	* all-cfg.texi (GDBTUI): Remove.
	* gdb.texinfo (Mode Options): Remove the GDBTUI reference.
	(TUI): Remove GDBTUI pindex.  Remove the GDBTUI reference.
	* gdbint.texinfo (Testsuite): Replace `gdbtui' by `gdb -tui'.
----------------------------
revision 1.1
date: 2011/03/29 18:21:32;  author: vapier;  state: Exp;
gdb: start a gitignore

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
=============================================================================

RCS file: /cvs/src/src/gdb/CONTRIBUTE,v
Working file: CONTRIBUTE
head: 1.13
branch:
locks: strict
access list:
symbolic names:
	gdb_7_6-2013-04-26-release: 1.13
	gdb_7_6-branch: 1.13.0.4
	gdb_7_6-2013-03-12-branchpoint: 1.13
	gdb_7_5_1-2012-11-29-release: 1.13
	gdb_7_5-2012-08-17-release: 1.13
	gdb_7_5-branch: 1.13.0.2
	gdb_7_5-2012-07-18-branchpoint: 1.13
	gdb_7_4_1-2012-04-26-release: 1.12
	gdb_7_4-2012-01-24-release: 1.12
	gdb_7_4-branch: 1.12.0.10
	gdb_7_4-2011-12-13-branchpoint: 1.12
	gdb_7_3_1-2011-09-04-release: 1.12
	gdb_7_3-2011-07-26-release: 1.12
	gdb_7_3-branch: 1.12.0.8
	gdb_7_3-2011-04-01-branchpoint: 1.12
	gdb_7_2-2010-09-02-release: 1.12
	gdb_7_2-branch: 1.12.0.6
	gdb_7_2-2010-07-07-branchpoint: 1.12
	gdb_7_1-2010-03-18-release: 1.12
	gdb_7_1-branch: 1.12.0.4
	gdb_7_1-2010-02-18-branchpoint: 1.12
	gdb_7_0_1-2009-12-22-release: 1.12
	gdb_7_0-2009-10-06-release: 1.12
	gdb_7_0-branch: 1.12.0.2
	gdb_7_0-2009-09-16-branchpoint: 1.12
	arc-sim-20090309: 1.9
	msnyder-checkpoint-072509-branch: 1.11.0.2
	msnyder-checkpoint-072509-branchpoint: 1.11
	arc-insight_6_8-branch: 1.9.0.16
	arc-insight_6_8-branchpoint: 1.9
	insight_6_8-branch: 1.9.0.14
	insight_6_8-branchpoint: 1.9
	reverse-20081226-branch: 1.10.0.4
	reverse-20081226-branchpoint: 1.10
	multiprocess-20081120-branch: 1.10.0.2
	multiprocess-20081120-branchpoint: 1.10
	reverse-20080930-branch: 1.9.0.12
	reverse-20080930-branchpoint: 1.9
	reverse-20080717-branch: 1.9.0.10
	reverse-20080717-branchpoint: 1.9
	msnyder-reverse-20080609-branch: 1.9.0.8
	msnyder-reverse-20080609-branchpoint: 1.9
	drow-reverse-20070409-branch: 1.9.0.6
	drow-reverse-20070409-branchpoint: 1.9
	gdb_6_8-2008-03-27-release: 1.9
	gdb_6_8-branch: 1.9.0.4
	gdb_6_8-2008-02-26-branchpoint: 1.9
	gdb_6_7_1-2007-10-29-release: 1.9
	gdb_6_7-2007-10-10-release: 1.9
	gdb_6_7-branch: 1.9.0.2
	gdb_6_7-2007-09-07-branchpoint: 1.9
	insight_6_6-20070208-release: 1.8
	gdb_6_6-2006-12-18-release: 1.8
	gdb_6_6-branch: 1.8.0.106
	gdb_6_6-2006-11-15-branchpoint: 1.8
	insight_6_5-20061003-release: 1.8
	gdb-csl-symbian-6_4_50_20060226-12: 1.8
	gdb-csl-sourcerygxx-3_4_4-25: 1.8
	nickrob-async-20060828-mergepoint: 1.8
	gdb-csl-symbian-6_4_50_20060226-11: 1.8
	gdb-csl-sourcerygxx-4_1-17: 1.8
	gdb-csl-20060226-branch-local-2: 1.8
	gdb-csl-sourcerygxx-4_1-14: 1.8
	gdb-csl-sourcerygxx-4_1-13: 1.8
	gdb-csl-sourcerygxx-4_1-12: 1.8
	gdb-csl-sourcerygxx-3_4_4-21: 1.8
	gdb_6_5-20060621-release: 1.8
	gdb-csl-sourcerygxx-4_1-9: 1.8
	gdb-csl-sourcerygxx-4_1-8: 1.8
	gdb-csl-sourcerygxx-4_1-7: 1.8
	gdb-csl-arm-2006q1-6: 1.8
	gdb-csl-sourcerygxx-4_1-6: 1.8
	gdb-csl-symbian-6_4_50_20060226-10: 1.8
	gdb-csl-symbian-6_4_50_20060226-9: 1.8
	gdb-csl-symbian-6_4_50_20060226-8: 1.8
	gdb-csl-coldfire-4_1-11: 1.8
	gdb-csl-sourcerygxx-3_4_4-19: 1.8
	gdb-csl-coldfire-4_1-10: 1.8
	gdb_6_5-branch: 1.8.0.104
	gdb_6_5-2006-05-14-branchpoint: 1.8
	gdb-csl-sourcerygxx-4_1-5: 1.8
	nickrob-async-20060513-branch: 1.8.0.102
	nickrob-async-20060513-branchpoint: 1.8
	gdb-csl-sourcerygxx-4_1-4: 1.8
	msnyder-reverse-20060502-branch: 1.8.0.100
	msnyder-reverse-20060502-branchpoint: 1.8
	gdb-csl-morpho-4_1-4: 1.8
	gdb-csl-sourcerygxx-3_4_4-17: 1.8
	readline_5_1-import-branch: 1.8.0.98
	readline_5_1-import-branchpoint: 1.8
	gdb-csl-20060226-branch-merge-to-csl-symbian-1: 1.8
	gdb-csl-symbian-20060226-branch: 1.8.0.96
	gdb-csl-symbian-20060226-branchpoint: 1.8
	gdb-csl-20060226-branch-merge-to-csl-local-1: 1.8
	msnyder-reverse-20060331-branch: 1.8.0.94
	msnyder-reverse-20060331-branchpoint: 1.8
	gdb-csl-available-20060303-branch: 1.8.0.92
	gdb-csl-available-20060303-branchpoint: 1.8
	gdb-csl-20060226-branch: 1.8.0.90
	gdb-csl-20060226-branchpoint: 1.8
	gdb_6_4-20051202-release: 1.8
	msnyder-fork-checkpoint-branch: 1.8.0.88
	msnyder-fork-checkpoint-branchpoint: 1.8
	gdb-csl-gxxpro-6_3-branch: 1.8.0.86
	gdb-csl-gxxpro-6_3-branchpoint: 1.8
	gdb_6_4-branch: 1.8.0.84
	gdb_6_4-2005-11-01-branchpoint: 1.8
	gdb-csl-arm-20051020-branch: 1.8.0.82
	gdb-csl-arm-20051020-branchpoint: 1.8
	msnyder-tracepoint-checkpoint-branch: 1.8.0.80
	msnyder-tracepoint-checkpoint-branchpoint: 1.8
	gdb-csl-arm-20050325-2005-q1b: 1.8
	gdb-csl-arm-20050325-2005-q1a: 1.8
	csl-arm-20050325-branch: 1.8.0.78
	csl-arm-20050325-branchpoint: 1.8
	gdb-post-i18n-errorwarning-20050211: 1.8
	gdb-pre-i18n-errorwarning-20050211: 1.8
	gdb_6_3-20041109-release: 1.8
	gdb_6_3-branch: 1.8.0.74
	gdb_6_3-20041019-branchpoint: 1.8
	drow_intercu-merge-20040921: 1.8
	drow_intercu-merge-20040915: 1.8
	jimb-gdb_6_2-e500-branch: 1.8.0.76
	jimb-gdb_6_2-e500-branchpoint: 1.8
	gdb_6_2-20040730-release: 1.8
	gdb_6_2-branch: 1.8.0.72
	gdb_6_2-2004-07-10-gmt-branchpoint: 1.8
	gdb_6_1_1-20040616-release: 1.8
	gdb_6_1-2004-04-05-release: 1.8
	drow_intercu-merge-20040402: 1.8
	drow_intercu-merge-20040327: 1.8
	ezannoni_pie-20040323-branch: 1.8.0.70
	ezannoni_pie-20040323-branchpoint: 1.8
	cagney_tramp-20040321-mergepoint: 1.8
	cagney_tramp-20040309-branch: 1.8.0.68
	cagney_tramp-20040309-branchpoint: 1.8
	gdb_6_1-branch: 1.8.0.66
	gdb_6_1-2004-03-01-gmt-branchpoint: 1.8
	drow_intercu-20040221-branch: 1.8.0.64
	drow_intercu-20040221-branchpoint: 1.8
	cagney_bfdfile-20040213-branch: 1.8.0.62
	cagney_bfdfile-20040213-branchpoint: 1.8
	drow-cplus-merge-20040208: 1.8
	carlton_dictionary-20040126-merge: 1.8
	cagney_bigcore-20040122-branch: 1.8.0.60
	cagney_bigcore-20040122-branchpoint: 1.8
	drow-cplus-merge-20040113: 1.8
	drow-cplus-merge-20031224: 1.8
	drow-cplus-merge-20031220: 1.8
	carlton_dictionary-20031215-merge: 1.8
	drow-cplus-merge-20031214: 1.8
	carlton-dictionary-20031111-merge: 1.8
	gdb_6_0-2003-10-04-release: 1.8
	kettenis_sparc-20030918-branch: 1.8.0.58
	kettenis_sparc-20030918-branchpoint: 1.8
	carlton_dictionary-20030917-merge: 1.8
	ezannoni_pie-20030916-branchpoint: 1.8
	ezannoni_pie-20030916-branch: 1.8.0.56
	cagney_x86i386-20030821-branch: 1.8.0.54
	cagney_x86i386-20030821-branchpoint: 1.8
	carlton_dictionary-20030805-merge: 1.8
	carlton_dictionary-20030627-merge: 1.8
	gdb_6_0-branch: 1.8.0.52
	gdb_6_0-2003-06-23-branchpoint: 1.8
	jimb-ppc64-linux-20030613-branch: 1.8.0.50
	jimb-ppc64-linux-20030613-branchpoint: 1.8
	cagney_convert-20030606-branch: 1.8.0.48
	cagney_convert-20030606-branchpoint: 1.8
	cagney_writestrings-20030508-branch: 1.8.0.46
	cagney_writestrings-20030508-branchpoint: 1.8
	jimb-ppc64-linux-20030528-branch: 1.8.0.44
	jimb-ppc64-linux-20030528-branchpoint: 1.8
	carlton_dictionary-20030523-merge: 1.8
	cagney_fileio-20030521-branch: 1.8.0.42
	cagney_fileio-20030521-branchpoint: 1.8
	kettenis_i386newframe-20030517-mergepoint: 1.8
	jimb-ppc64-linux-20030509-branch: 1.8.0.40
	jimb-ppc64-linux-20030509-branchpoint: 1.8
	kettenis_i386newframe-20030504-mergepoint: 1.8
	carlton_dictionary-20030430-merge: 1.8
	kettenis_i386newframe-20030419-branch: 1.8.0.38
	kettenis_i386newframe-20030419-branchpoint: 1.8
	carlton_dictionary-20030416-merge: 1.8
	cagney_frameaddr-20030409-mergepoint: 1.8
	kettenis_i386newframe-20030406-branch: 1.8.0.36
	kettenis_i386newframe-20030406-branchpoint: 1.8
	cagney_frameaddr-20030403-branchpoint: 1.8
	cagney_frameaddr-20030403-branch: 1.8.0.34
	cagney_framebase-20030330-mergepoint: 1.8
	cagney_framebase-20030326-branch: 1.8.0.32
	cagney_framebase-20030326-branchpoint: 1.8
	cagney_lazyid-20030317-branch: 1.8.0.30
	cagney_lazyid-20030317-branchpoint: 1.8
	kettenis-i386newframe-20030316-mergepoint: 1.8
	offbyone-20030313-branch: 1.8.0.28
	offbyone-20030313-branchpoint: 1.8
	kettenis-i386newframe-20030308-branch: 1.8.0.26
	kettenis-i386newframe-20030308-branchpoint: 1.8
	carlton_dictionary-20030305-merge: 1.8
	cagney_offbyone-20030303-branch: 1.8.0.24
	cagney_offbyone-20030303-branchpoint: 1.8
	carlton_dictionary-20030207-merge: 1.8
	interps-20030203-mergepoint: 1.8
	interps-20030202-branch: 1.8.0.22
	interps-20030202-branchpoint: 1.8
	cagney-unwind-20030108-branch: 1.8.0.20
	cagney-unwind-20030108-branchpoint: 1.8
	carlton_dictionary-20021223-merge: 1.8
	gdb_5_3-2002-12-12-release: 1.8
	carlton_dictionary-20021115-merge: 1.8
	kseitz_interps-20021105-merge: 1.8
	kseitz_interps-20021103-merge: 1.8
	drow-cplus-merge-20021020: 1.8
	drow-cplus-merge-20021025: 1.8
	carlton_dictionary-20021025-merge: 1.8
	carlton_dictionary-20021011-merge: 1.8
	drow-cplus-branch: 1.8.0.18
	drow-cplus-branchpoint: 1.8
	kseitz_interps-20020930-merge: 1.8
	carlton_dictionary-20020927-merge: 1.8
	carlton_dictionary-branch: 1.8.0.16
	carlton_dictionary-20020920-branchpoint: 1.8
	gdb_5_3-branch: 1.8.0.14
	gdb_5_3-2002-09-04-branchpoint: 1.8
	kseitz_interps-20020829-merge: 1.8
	cagney_sysregs-20020825-branch: 1.8.0.12
	cagney_sysregs-20020825-branchpoint: 1.8
	readline_4_3-import-branch: 1.8.0.10
	readline_4_3-import-branchpoint: 1.8
	gdb_5_2_1-2002-07-23-release: 1.8
	kseitz_interps-20020528-branch: 1.8.0.8
	kseitz_interps-20020528-branchpoint: 1.8
	cagney_regbuf-20020515-branch: 1.8.0.6
	cagney_regbuf-20020515-branchpoint: 1.8
	jimb-macro-020506-branch: 1.8.0.4
	jimb-macro-020506-branchpoint: 1.8
	gdb_5_2-2002-04-29-release: 1.8
	gdb_5_2-branch: 1.8.0.2
	gdb_5_2-2002-03-03-branchpoint: 1.8
	gdb_5_1_1-2002-01-24-release: 1.5.4.1
	gdb_5_1_0_1-2002-01-03-release: 1.5.4.1
	cygnus_cvs_20020108_pre: 1.6
	gdb_5_1_0_1-2002-01-03-branchpoint: 1.5.4.1
	gdb_5_1_0_1-2002-01-03-branch: 1.5.4.1.0.4
	gdb_5_1-2001-11-21-release: 1.5.4.1
	gdb_s390-2001-09-26-branch: 1.5.4.1.0.2
	gdb_s390-2001-09-26-branchpoint: 1.5.4.1
	gdb_5_1-2001-07-29-branch: 1.5.0.4
	gdb_5_1-2001-07-29-branchpoint: 1.5
	dberlin-typesystem-branch: 1.5.0.2
	dberlin-typesystem-branchpoint: 1.5
	gdb-post-ptid_t-2001-05-03: 1.5
	gdb-pre-ptid_t-2001-05-03: 1.5
	insight-precleanup-2001-01-01: 1.2
	gdb-post-protoization-2000-07-29: 1.2
	gdb-pre-protoization-2000-07-29: 1.2
	gdb-premipsmulti-2000-06-06-branch: 1.2.0.4
	gdb-premipsmulti-2000-06-06-branchpoint: 1.2
	gdb-post-params-removal-2000-06-04: 1.2
	gdb-pre-params-removal-2000-06-04: 1.2
	gdb-post-params-removal-2000-05-28: 1.2
	gdb-pre-params-removal-2000-05-28: 1.2
	gdb_5_0-2000-05-19-release: 1.2
	gdb_4_18_2-2000-05-18-release: 1.2
	gdb_4_95_1-2000-05-11-snapshot: 1.2
	gdb_4_95_0-2000-04-27-snapshot: 1.2
	gdb_5_0-2000-04-10-branch: 1.2.0.2
	gdb_5_0-2000-04-10-branchpoint: 1.2
keyword substitution: kv
total revisions: 14;	selected revisions: 14
description:
----------------------------
revision 1.13
date: 2012/04/25 07:08:07;  author: sivachandra;  state: Exp;  lines: +3 -3
2012-04-25  Siva Chandra Reddy  <sivachandra@google.com>

	* CONTRIBUTE: Use unified diff instead of context diff when
	generating patches.
----------------------------
revision 1.12
date: 2009/08/22 17:08:09;  author: rwild;  state: Exp;  lines: +1 -1
Cleanups after the update to Autoconf 2.64, Automake 1.11.

/:
	* README-maintainer-mode: Point directly to upstream locations
	for autoconf, automake, libtool, gettext, instead of copies on
	sources.redhat.com.  Document required versions.
	* configure.ac: Do not substitute datarootdir, htmldir,
	pdfdir, docdir.  Do not process --with-datarootdir,
	--with-htmldir, --with-pdfdir, --with-docdir.
	* configure: Regenerate.

gdb/:
	* CONTRIBUTE: Bump documented Autoconf version.
	* configure.ac: Do not substitute datarootdir, htmldir,
	pdfdir, docdir.  Do not process --with-datarootdir,
	--with-htmldir, --with-pdfdir, --with-docdir.
	* configure: Regenerate.

gdb/doc/:
	* gdbint.texinfo (Releasing GDB): Point to
	README-maintainer-mode file for required autoconf version.
	* configure.ac: Do not substitute datarootdir, htmldir,
	pdfdir, docdir.  Do not process --with-datarootdir,
	--with-htmldir, --with-pdfdir, --with-docdir.
	* configure: Regenerate.

gprof/:
	* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(install-pdf-recursive, html__strip_dir, install-html)
	(install-html-am, install-html-recursive): Remove.
	* Makefile.in: Regenerate.

opcodes/:
	* Makefile.am (install-pdf, install-html): Remove.
	* Makefile.in: Regenerate.

gas/:
	* Makefile.am (install-pdf, install-pdf-recursive, install-html)
	(install-html-recursive): Remove.
	* Makefile.in: Regenerate.
	* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(html__strip_dir, install-html, install-html-am): Remove.
	* doc/Makefile.in: Regenerate.

ld/:
	* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(install-pdf-recursive, html__strip_dir, install-html)
	(install-html-am, install-html-recursive): Remove.
	* Makefile.in: Regenerate.

binutils/:
	* Makefile.am (install-pdf, install-pdf-recursive, install-html)
	(install-html-recursive): Remove.
	* Makefile.in: Regenerate.
	* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(html__strip_dir, install-html, install-html-am): Remove.
	* doc/Makefile.in: Regenerate.

bfd/:
	* Makefile.am (datarootdir, docdir, htmldor, pdfdir)
	(install-pdf, install-pdf-recursive, install-html)
	(install-html-recursive): Remove.
	* Makefile.in: Regenerate.

bfd/doc/:
	* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(html__strip_dir, install-html, install-html-am): Remove.
	* Makefile.in: Regenerate.
----------------------------
revision 1.11
date: 2009/01/09 04:46:22;  author: brobecke;  state: Exp;  lines: +2 -1
        * CONTRIBUTE: Minor reformatting.
----------------------------
revision 1.10
date: 2008/10/27 17:41:57;  author: palves;  state: Exp;  lines: +3 -3
	* CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
	2.13 and configure.in.
----------------------------
revision 1.9
date: 2007/01/04 20:28:38;  author: drow;  state: Exp;  lines: +1 -1
	* CONTRIBUTE: Use sourceware.org.
----------------------------
revision 1.8
date: 2002/02/23 20:36:48;  author: cagney;  state: Exp;  lines: +1 -1
From 2002-02-19 Paul Eggert <eggert@twinsun.com>:
* Makefile.in (VER): Change "head -1" to "sed q", since POSIX
1003.1-2001 no longer allows "head -1".
* gdb/Makefile.in (version.c): Likewise.
* gdb/doc/Makefile.in (GDBvn.texi): Likewise.
* gdb/CONTRIBUTE: Change "diff -c3" to "diff -c", which is
equivalent.  POSIX 1003.1-2001 no longer allows "diff -c3".
----------------------------
revision 1.7
date: 2002/01/13 16:16:58;  author: cagney;  state: Exp;  lines: +1 -1
From 2002-01-09 John Marshall <johnm@falch.net>:
* CONTRIBUTE, README, TODO: Change sourceware.cygnus.com to
sources.redhat.com, and tweak some related URLs which had
suffered from linkrot.
----------------------------
revision 1.6
date: 2001/09/26 20:52:56;  author: cagney;  state: Exp;  lines: +19 -49
* CONTRIBUTE: Update.
----------------------------
revision 1.5
date: 2001/03/03 03:23:50;  author: cagney;  state: Exp;  lines: +6 -2
branches:  1.5.4;
Change convention to ``Fix PR gdb/NNNN''
----------------------------
revision 1.4
date: 2001/02/23 22:20:38;  author: cagney;  state: Exp;  lines: +9 -0
Mention how to cite GDB problem reports.
----------------------------
revision 1.3
date: 2001/02/23 22:09:30;  author: cagney;  state: Exp;  lines: +7 -0
Mention gdbarch.sh and to not submit gdbarch.[ch].
----------------------------
revision 1.2
date: 2000/03/01 08:33:47;  author: cagney;  state: Exp;  lines: +7 -0
Note that there is no need to send configure.in patches.
----------------------------
revision 1.1
date: 2000/02/13 00:22:01;  author: cagney;  state: Exp;
Explain how to contribute to GDB.
----------------------------
revision 1.5.4.1
date: 2001/09/26 20:53:27;  author: cagney;  state: Exp;  lines: +19 -49
* CONTRIBUTE: Update.
=============================================================================

RCS file: /cvs/src/src/gdb/COPYING,v
Working file: COPYING
head: 1.3
branch:
locks: strict
access list:
symbolic names:
	gdb_7_6-2013-04-26-release: 1.3
	gdb_7_6-branch: 1.3.0.12
	gdb_7_6-2013-03-12-branchpoint: 1.3
	gdb_7_5_1-2012-11-29-release: 1.3
	gdb_7_5-2012-08-17-release: 1.3
	gdb_7_5-branch: 1.3.0.10
	gdb_7_5-2012-07-18-branchpoint: 1.3
	gdb_7_4_1-2012-04-26-release: 1.3
	gdb_7_4-2012-01-24-release: 1.3
	gdb_7_4-branch: 1.3.0.8
	gdb_7_4-2011-12-13-branchpoint: 1.3
	gdb_7_3_1-2011-09-04-release: 1.3
	gdb_7_3-2011-07-26-release: 1.3
	gdb_7_3-branch: 1.3.0.6
	gdb_7_3-2011-04-01-branchpoint: 1.3
	gdb_7_2-2010-09-02-release: 1.3
	gdb_7_2-branch: 1.3.0.4
	gdb_7_2-2010-07-07-branchpoint: 1.3
	gdb_7_1-2010-03-18-release: 1.3
	gdb_7_1-branch: 1.3.0.2
	gdb_7_1-2010-02-18-branchpoint: 1.3
	gdb_7_0_1-2009-12-22-release: 1.2.42.1
	gdb_7_0-2009-10-06-release: 1.2
	gdb_7_0-branch: 1.2.0.42
	gdb_7_0-2009-09-16-branchpoint: 1.2
	arc-sim-20090309: 1.2
	msnyder-checkpoint-072509-branch: 1.2.0.40
	msnyder-checkpoint-072509-branchpoint: 1.2
	arc-insight_6_8-branch: 1.2.0.38
	arc-insight_6_8-branchpoint: 1.2
	insight_6_8-branch: 1.2.0.36
	insight_6_8-branchpoint: 1.2
	reverse-20081226-branch: 1.2.0.34
	reverse-20081226-branchpoint: 1.2
	multiprocess-20081120-branch: 1.2.0.32
	multiprocess-20081120-branchpoint: 1.2
	reverse-20080930-branch: 1.2.0.30
	reverse-20080930-branchpoint: 1.2
	reverse-20080717-branch: 1.2.0.28
	reverse-20080717-branchpoint: 1.2
	msnyder-reverse-20080609-branch: 1.2.0.26
	msnyder-reverse-20080609-branchpoint: 1.2
	drow-reverse-20070409-branch: 1.2.0.24
	drow-reverse-20070409-branchpoint: 1.2
	gdb_6_8-2008-03-27-release: 1.2
	gdb_6_8-branch: 1.2.0.22
	gdb_6_8-2008-02-26-branchpoint: 1.2
	gdb_6_7_1-2007-10-29-release: 1.2
	gdb_6_7-2007-10-10-release: 1.2
	gdb_6_7-branch: 1.2.0.20
	gdb_6_7-2007-09-07-branchpoint: 1.2
	insight_6_6-20070208-release: 1.2
	gdb_6_6-2006-12-18-release: 1.2
	gdb_6_6-branch: 1.2.0.18
	gdb_6_6-2006-11-15-branchpoint: 1.2
	insight_6_5-20061003-release: 1.2
	gdb-csl-symbian-6_4_50_20060226-12: 1.2
	gdb-csl-sourcerygxx-3_4_4-25: 1.1.1.1
	nickrob-async-20060828-mergepoint: 1.2
	gdb-csl-symbian-6_4_50_20060226-11: 1.2
	gdb-csl-sourcerygxx-4_1-17: 1.2
	gdb-csl-20060226-branch-local-2: 1.2
	gdb-csl-sourcerygxx-4_1-14: 1.2
	gdb-csl-sourcerygxx-4_1-13: 1.2
	gdb-csl-sourcerygxx-4_1-12: 1.2
	gdb-csl-sourcerygxx-3_4_4-21: 1.2
	gdb_6_5-20060621-release: 1.2
	gdb-csl-sourcerygxx-4_1-9: 1.2
	gdb-csl-sourcerygxx-4_1-8: 1.2
	gdb-csl-sourcerygxx-4_1-7: 1.2
	gdb-csl-arm-2006q1-6: 1.2
	gdb-csl-sourcerygxx-4_1-6: 1.2
	gdb-csl-symbian-6_4_50_20060226-10: 1.2
	gdb-csl-symbian-6_4_50_20060226-9: 1.2
	gdb-csl-symbian-6_4_50_20060226-8: 1.2
	gdb-csl-coldfire-4_1-11: 1.2
	gdb-csl-sourcerygxx-3_4_4-19: 1.2
	gdb-csl-coldfire-4_1-10: 1.2
	gdb_6_5-branch: 1.2.0.16
	gdb_6_5-2006-05-14-branchpoint: 1.2
	gdb-csl-sourcerygxx-4_1-5: 1.2
	nickrob-async-20060513-branch: 1.2.0.14
	nickrob-async-20060513-branchpoint: 1.2
	gdb-csl-sourcerygxx-4_1-4: 1.2
	msnyder-reverse-20060502-branch: 1.2.0.12
	msnyder-reverse-20060502-branchpoint: 1.2
	gdb-csl-morpho-4_1-4: 1.2
	gdb-csl-sourcerygxx-3_4_4-17: 1.2
	readline_5_1-import-branch: 1.2.0.10
	readline_5_1-import-branchpoint: 1.2
	gdb-csl-20060226-branch-merge-to-csl-symbian-1: 1.2
	gdb-csl-symbian-20060226-branch: 1.2.0.8
	gdb-csl-symbian-20060226-branchpoint: 1.2
	gdb-csl-20060226-branch-merge-to-csl-local-1: 1.2
	msnyder-reverse-20060331-branch: 1.2.0.6
	msnyder-reverse-20060331-branchpoint: 1.2
	gdb-csl-available-20060303-branch: 1.2.0.4
	gdb-csl-available-20060303-branchpoint: 1.2
	gdb-csl-20060226-branch: 1.2.0.2
	gdb-csl-20060226-branchpoint: 1.2
	gdb_6_4-20051202-release: 1.1.1.1
	msnyder-fork-checkpoint-branch: 1.1.1.1.0.102
	msnyder-fork-checkpoint-branchpoint: 1.1.1.1
	gdb-csl-gxxpro-6_3-branch: 1.1.1.1.0.100
	gdb-csl-gxxpro-6_3-branchpoint: 1.1.1.1
	gdb_6_4-branch: 1.1.1.1.0.98
	gdb_6_4-2005-11-01-branchpoint: 1.1.1.1
	gdb-csl-arm-20051020-branch: 1.1.1.1.0.96
	gdb-csl-arm-20051020-branchpoint: 1.1.1.1
	msnyder-tracepoint-checkpoint-branch: 1.1.1.1.0.94
	msnyder-tracepoint-checkpoint-branchpoint: 1.1.1.1
	gdb-csl-arm-20050325-2005-q1b: 1.1.1.1
	gdb-csl-arm-20050325-2005-q1a: 1.1.1.1
	csl-arm-20050325-branch: 1.1.1.1.0.92
	csl-arm-20050325-branchpoint: 1.1.1.1
	gdb-post-i18n-errorwarning-20050211: 1.1.1.1
	gdb-pre-i18n-errorwarning-20050211: 1.1.1.1
	gdb_6_3-20041109-release: 1.1.1.1
	gdb_6_3-branch: 1.1.1.1.0.88
	gdb_6_3-20041019-branchpoint: 1.1.1.1
	drow_intercu-merge-20040921: 1.1.1.1
	drow_intercu-merge-20040915: 1.1.1.1
	jimb-gdb_6_2-e500-branch: 1.1.1.1.0.90
	jimb-gdb_6_2-e500-branchpoint: 1.1.1.1
	gdb_6_2-20040730-release: 1.1.1.1
	gdb_6_2-branch: 1.1.1.1.0.86
	gdb_6_2-2004-07-10-gmt-branchpoint: 1.1.1.1
	gdb_6_1_1-20040616-release: 1.1.1.1
	gdb_6_1-2004-04-05-release: 1.1.1.1
	drow_intercu-merge-20040402: 1.1.1.1
	drow_intercu-merge-20040327: 1.1.1.1
	ezannoni_pie-20040323-branch: 1.1.1.1.0.84
	ezannoni_pie-20040323-branchpoint: 1.1.1.1
	cagney_tramp-20040321-mergepoint: 1.1.1.1
	cagney_tramp-20040309-branch: 1.1.1.1.0.82
	cagney_tramp-20040309-branchpoint: 1.1.1.1
	gdb_6_1-branch: 1.1.1.1.0.80
	gdb_6_1-2004-03-01-gmt-branchpoint: 1.1.1.1
	drow_intercu-20040221-branch: 1.1.1.1.0.78
	drow_intercu-20040221-branchpoint: 1.1.1.1
	cagney_bfdfile-20040213-branch: 1.1.1.1.0.76
	cagney_bfdfile-20040213-branchpoint: 1.1.1.1
	drow-cplus-merge-20040208: 1.1.1.1
	carlton_dictionary-20040126-merge: 1.1.1.1
	cagney_bigcore-20040122-branch: 1.1.1.1.0.74
	cagney_bigcore-20040122-branchpoint: 1.1.1.1
	drow-cplus-merge-20040113: 1.1.1.1
	drow-cplus-merge-20031224: 1.1.1.1
	drow-cplus-merge-20031220: 1.1.1.1
	carlton_dictionary-20031215-merge: 1.1.1.1
	drow-cplus-merge-20031214: 1.1.1.1
	carlton-dictionary-20031111-merge: 1.1.1.1
	gdb_6_0-2003-10-04-release: 1.1.1.1
	kettenis_sparc-20030918-branch: 1.1.1.1.0.72
	kettenis_sparc-20030918-branchpoint: 1.1.1.1
	carlton_dictionary-20030917-merge: 1.1.1.1
	ezannoni_pie-20030916-branchpoint: 1.1.1.1
	ezannoni_pie-20030916-branch: 1.1.1.1.0.70
	cagney_x86i386-20030821-branch: 1.1.1.1.0.68
	cagney_x86i386-20030821-branchpoint: 1.1.1.1
	carlton_dictionary-20030805-merge: 1.1.1.1
	carlton_dictionary-20030627-merge: 1.1.1.1
	gdb_6_0-branch: 1.1.1.1.0.66
	gdb_6_0-2003-06-23-branchpoint: 1.1.1.1
	jimb-ppc64-linux-20030613-branch: 1.1.1.1.0.64
	jimb-ppc64-linux-20030613-branchpoint: 1.1.1.1
	cagney_convert-20030606-branch: 1.1.1.1.0.62
	cagney_convert-20030606-branchpoint: 1.1.1.1
	cagney_writestrings-20030508-branch: 1.1.1.1.0.60
	cagney_writestrings-20030508-branchpoint: 1.1.1.1
	jimb-ppc64-linux-20030528-branch: 1.1.1.1.0.58
	jimb-ppc64-linux-20030528-branchpoint: 1.1.1.1
	carlton_dictionary-20030523-merge: 1.1.1.1
	cagney_fileio-20030521-branch: 1.1.1.1.0.56
	cagney_fileio-20030521-branchpoint: 1.1.1.1
	kettenis_i386newframe-20030517-mergepoint: 1.1.1.1
	jimb-ppc64-linux-20030509-branch: 1.1.1.1.0.54
	jimb-ppc64-linux-20030509-branchpoint: 1.1.1.1
	kettenis_i386newframe-20030504-mergepoint: 1.1.1.1
	carlton_dictionary-20030430-merge: 1.1.1.1
	kettenis_i386newframe-20030419-branch: 1.1.1.1.0.52
	kettenis_i386newframe-20030419-branchpoint: 1.1.1.1
	carlton_dictionary-20030416-merge: 1.1.1.1
	cagney_frameaddr-20030409-mergepoint: 1.1.1.1
	kettenis_i386newframe-20030406-branch: 1.1.1.1.0.50
	kettenis_i386newframe-20030406-branchpoint: 1.1.1.1
	cagney_frameaddr-20030403-branchpoint: 1.1.1.1
	cagney_frameaddr-20030403-branch: 1.1.1.1.0.48
	cagney_framebase-20030330-mergepoint: 1.1.1.1
	cagney_framebase-20030326-branch: 1.1.1.1.0.46
	cagney_framebase-20030326-branchpoint: 1.1.1.1
	cagney_lazyid-20030317-branch: 1.1.1.1.0.44
	cagney_lazyid-20030317-branchpoint: 1.1.1.1
	kettenis-i386newframe-20030316-mergepoint: 1.1.1.1
	offbyone-20030313-branch: 1.1.1.1.0.42
	offbyone-20030313-branchpoint: 1.1.1.1
	kettenis-i386newframe-20030308-branch: 1.1.1.1.0.40
	kettenis-i386newframe-20030308-branchpoint: 1.1.1.1
	carlton_dictionary-20030305-merge: 1.1.1.1
	cagney_offbyone-20030303-branch: 1.1.1.1.0.38
	cagney_offbyone-20030303-branchpoint: 1.1.1.1
	carlton_dictionary-20030207-merge: 1.1.1.1
	interps-20030203-mergepoint: 1.1.1.1
	interps-20030202-branch: 1.1.1.1.0.36
	interps-20030202-branchpoint: 1.1.1.1
	cagney-unwind-20030108-branch: 1.1.1.1.0.34
	cagney-unwind-20030108-branchpoint: 1.1.1.1
	carlton_dictionary-20021223-merge: 1.1.1.1
	gdb_5_3-2002-12-12-release: 1.1.1.1
	carlton_dictionary-20021115-merge: 1.1.1.1
	kseitz_interps-20021105-merge: 1.1.1.1
	kseitz_interps-20021103-merge: 1.1.1.1
	drow-cplus-merge-20021020: 1.1.1.1
	drow-cplus-merge-20021025: 1.1.1.1
	carlton_dictionary-20021025-merge: 1.1.1.1
	carlton_dictionary-20021011-merge: 1.1.1.1
	drow-cplus-branch: 1.1.1.1.0.32
	drow-cplus-branchpoint: 1.1.1.1
	kseitz_interps-20020930-merge: 1.1.1.1
	carlton_dictionary-20020927-merge: 1.1.1.1
	carlton_dictionary-branch: 1.1.1.1.0.30
	carlton_dictionary-20020920-branchpoint: 1.1.1.1
	gdb_5_3-branch: 1.1.1.1.0.28
	gdb_5_3-2002-09-04-branchpoint: 1.1.1.1
	kseitz_interps-20020829-merge: 1.1.1.1
	cagney_sysregs-20020825-branch: 1.1.1.1.0.26
	cagney_sysregs-20020825-branchpoint: 1.1.1.1
	readline_4_3-import-branch: 1.1.1.1.0.24
	readline_4_3-import-branchpoint: 1.1.1.1
	gdb_5_2_1-2002-07-23-release: 1.1.1.1
	kseitz_interps-20020528-branch: 1.1.1.1.0.22
	kseitz_interps-20020528-branchpoint: 1.1.1.1
	cagney_regbuf-20020515-branch: 1.1.1.1.0.20
	cagney_regbuf-20020515-branchpoint: 1.1.1.1
	jimb-macro-020506-branch: 1.1.1.1.0.18
	jimb-macro-020506-branchpoint: 1.1.1.1
	gdb_5_2-2002-04-29-release: 1.1.1.1
	gdb_5_2-branch: 1.1.1.1.0.16
	gdb_5_2-2002-03-03-branchpoint: 1.1.1.1
	gdb_5_1_1-2002-01-24-release: 1.1.1.1
	gdb_5_1_0_1-2002-01-03-release: 1.1.1.1
	cygnus_cvs_20020108_pre: 1.1.1.1
	gdb_5_1_0_1-2002-01-03-branchpoint: 1.1.1.1
	gdb_5_1_0_1-2002-01-03-branch: 1.1.1.1.0.14
	gdb_5_1-2001-11-21-release: 1.1.1.1
	gdb_s390-2001-09-26-branch: 1.1.1.1.0.12
	gdb_s390-2001-09-26-branchpoint: 1.1.1.1
	gdb_5_1-2001-07-29-branch: 1.1.1.1.0.10
	gdb_5_1-2001-07-29-branchpoint: 1.1.1.1
	dberlin-typesystem-branch: 1.1.1.1.0.8
	dberlin-typesystem-branchpoint: 1.1.1.1
	gdb-post-ptid_t-2001-05-03: 1.1.1.1
	gdb-pre-ptid_t-2001-05-03: 1.1.1.1
	insight-precleanup-2001-01-01: 1.1.1.1
	gdb-post-protoization-2000-07-29: 1.1.1.1
	gdb-pre-protoization-2000-07-29: 1.1.1.1
	gdb-premipsmulti-2000-06-06-branch: 1.1.1.1.0.6
	gdb-premipsmulti-2000-06-06-branchpoint: 1.1.1.1
	gdb-post-params-removal-2000-06-04: 1.1.1.1
	gdb-pre-params-removal-2000-06-04: 1.1.1.1
	gdb-post-params-removal-2000-05-28: 1.1.1.1
	gdb-pre-params-removal-2000-05-28: 1.1.1.1
	gdb_5_0-2000-05-19-release: 1.1.1.1
	gdb_4_18_2-2000-05-18-release: 1.1.1.1
	gdb_4_95_1-2000-05-11-snapshot: 1.1.1.1
	gdb_4_95_0-2000-04-27-snapshot: 1.1.1.1
	gdb_5_0-2000-04-10-branch: 1.1.1.1.0.4
	gdb_5_0-2000-04-10-branchpoint: 1.1.1.1
	repo-unification-2000-02-06: 1.1.1.1
	insight-2000-02-04: 1.1.1.1
	gdb-2000-02-04: 1.1.1.1
	gdb-2000-02-02: 1.1.1.1
	gdb-2000-02-01: 1.1.1.1
	gdb-2000-01-31: 1.1.1.1
	gdb-2000-01-26: 1.1.1.1
	gdb-2000-01-24: 1.1.1.1
	gdb-2000-01-17: 1.1.1.1
	gdb-2000-01-10: 1.1.1.1
	gdb-2000-01-05: 1.1.1.1
	gdb-1999-12-21: 1.1.1.1
	gdb-1999-12-13: 1.1.1.1
	gdb-1999-12-07: 1.1.1.1
	gdb-1999-12-06: 1.1.1.1
	gdb-1999-11-16: 1.1.1.1
	gdb-1999-11-08: 1.1.1.1
	gdb-1999-11-01: 1.1.1.1
	gdb-1999-10-25: 1.1.1.1
	gdb-1999-10-18: 1.1.1.1
	gdb-1999-10-11: 1.1.1.1
	gdb-1999-10-04: 1.1.1.1
	gdb-1999-09-28: 1.1.1.1
	gdb-1999-09-21: 1.1.1.1
	gdb-1999-09-13: 1.1.1.1
	gdb-1999-09-08: 1.1.1.1
	gdb-1999-08-30: 1.1.1.1
	gdb-1999-08-23: 1.1.1.1
	gdb-1999-08-16: 1.1.1.1
	gdb-1999-08-09: 1.1.1.1
	gdb-1999-08-02: 1.1.1.1
	gdb-1999-07-26: 1.1.1.1
	gdb-1999-07-19: 1.1.1.1
	gdb-1999-07-12: 1.1.1.1
	gdb-post-reformat-19990707: 1.1.1.1
	gdb-1999-07-07-post-reformat-snapshot: 1.1.1.1
	gdb-pre-reformat-19990707: 1.1.1.1
	gdb-1999-07-07: 1.1.1.1
	gdb-1999-07-05: 1.1.1.1
	gdb-1999-06-28: 1.1.1.1
	gdb-1999-06-21: 1.1.1.1
	gdb-1999-06-14: 1.1.1.1
	gdb-1999-06-07: 1.1.1.1
	gdb-1999-06-01: 1.1.1.1
	gdb-4_18-branch: 1.1.1.1.0.2
	gdb-4_18-release: 1.1.1.1
	gdb-1999-05-25: 1.1.1.1
	gdb-1999-05-19: 1.1.1.1
	gdb-1999-05-10: 1.1.1.1
	gdb-19990504: 1.1.1.1
	gdb-19990422: 1.1.1.1
	SNAPSHOT: 1.1.1
	gdb-4_18: 1.1.1.1
	GDB_4_18: 1.1.1
keyword substitution: o
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.3
date: 2009/12/21 07:40:04;  author: brobecke;  state: Exp;  lines: +624 -292
        * COPYING: Update to GPL version 3.
----------------------------
revision 1.2
date: 2005/12/17 22:33:58;  author: eliz;  state: Exp;  lines: +4 -2
branches:  1.2.42;

	* breakpoint.c:
	* arm-tdep.c:
	* ia64-tdep.c:
	* i386-tdep.c:
	* hpread.c:
	* hppa-tdep.c:
	* hppa-hpux-tdep.c:
	* gnu-nat.c:
	* gdbtypes.c:
	* gdbarch.h:
	* gdbarch.c:
	* eval.c:
	* dwarf2read.c:
	* dbxread.c:
	* copying:
	* symfile.c:
	* stabsread.c:
	* sh64-tdep.c:
	* sh-tdep.c:
	* s390-tdep.c:
	* rs6000-tdep.c:
	* remote.c:
	* remote-mips.c:
	* mips-tdep.c:
	* mdebugread.c:
	* linux-nat.c:
	* infrun.c:
	* xcoffread.c:
	* win32-nat.c:
	* valops.c:
	* utils.c:
	* tracepoint.c:
	* target.c:
	* symtab.c:
	* c-exp.y:
	* ada-valprint.c:
	* ada-typeprint.c:
	* ada-lex.l:
	* ada-lang.h:
	* ada-lang.c:
	* ada-exp.y:
	* alphafbsd-tdep.c:
	* alphabsd-tdep.h:
	* alphabsd-tdep.c:
	* alphabsd-nat.c:
	* alpha-tdep.h:
	* alpha-tdep.c:
	* alpha-osf1-tdep.c:
	* alpha-nat.c:
	* alpha-mdebug-tdep.c:
	* alpha-linux-tdep.c:
	* alpha-linux-nat.c:
	* aix-thread.c:
	* abug-rom.c:
	* arch-utils.c:
	* annotate.h:
	* annotate.c:
	* amd64obsd-tdep.c:
	* amd64obsd-nat.c:
	* amd64nbsd-tdep.c:
	* amd64nbsd-nat.c:
	* amd64fbsd-tdep.c:
	* amd64fbsd-nat.c:
	* amd64bsd-nat.c:
	* amd64-tdep.h:
	* amd64-tdep.c:
	* amd64-sol2-tdep.c:
	* amd64-nat.h:
	* amd64-nat.c:
	* amd64-linux-tdep.c:
	* amd64-linux-nat.c:
	* alphanbsd-tdep.c:
	* block.h:
	* block.c:
	* bfd-target.h:
	* bfd-target.c:
	* bcache.h:
	* bcache.c:
	* ax.h:
	* ax-general.c:
	* ax-gdb.h:
	* ax-gdb.c:
	* avr-tdep.c:
	* auxv.h:
	* auxv.c:
	* armnbsd-tdep.c:
	* armnbsd-nat.c:
	* arm-tdep.h:
	* arm-linux-nat.c:
	* arch-utils.h:
	* charset.c:
	* call-cmds.h:
	* c-valprint.c:
	* c-typeprint.c:
	* c-lang.h:
	* c-lang.c:
	* buildsym.h:
	* buildsym.c:
	* bsd-uthread.h:
	* bsd-uthread.c:
	* bsd-kvm.h:
	* bsd-kvm.c:
	* breakpoint.h:
	* core-regset.c:
	* core-aout.c:
	* completer.h:
	* completer.c:
	* complaints.h:
	* complaints.c:
	* command.h:
	* coffread.c:
	* coff-solib.h:
	* coff-solib.c:
	* coff-pe-read.h:
	* coff-pe-read.c:
	* cli-out.h:
	* cli-out.c:
	* charset.h:
	* dink32-rom.c:
	* dictionary.h:
	* dictionary.c:
	* demangle.c:
	* defs.h:
	* dcache.h:
	* dcache.c:
	* d10v-tdep.c:
	* cpu32bug-rom.c:
	* cp-valprint.c:
	* cp-support.h:
	* cp-support.c:
	* cp-namespace.c:
	* cp-abi.h:
	* cp-abi.c:
	* corelow.c:
	* corefile.c:
	* environ.c:
	* elfread.c:
	* dwarfread.c:
	* dwarf2loc.c:
	* dwarf2expr.h:
	* dwarf2expr.c:
	* dwarf2-frame.h:
	* dwarf2-frame.c:
	* dve3900-rom.c:
	* dummy-frame.h:
	* dummy-frame.c:
	* dsrec.c:
	* doublest.h:
	* doublest.c:
	* disasm.h:
	* disasm.c:
	* fork-child.c:
	* findvar.c:
	* fbsd-nat.h:
	* fbsd-nat.c:
	* f-valprint.c:
	* f-typeprint.c:
	* f-lang.h:
	* f-lang.c:
	* expression.h:
	* expprint.c:
	* exec.h:
	* exec.c:
	* exceptions.h:
	* exceptions.c:
	* event-top.h:
	* event-top.c:
	* event-loop.h:
	* event-loop.c:
	* gdb.c:
	* gdb-stabs.h:
	* gdb-events.h:
	* gdb-events.c:
	* gcore.c:
	* frv-tdep.h:
	* frv-tdep.c:
	* frv-linux-tdep.c:
	* frame.h:
	* frame.c:
	* frame-unwind.h:
	* frame-unwind.c:
	* frame-base.h:
	* frame-base.c:
	* gdb_vfork.h:
	* gdb_thread_db.h:
	* gdb_string.h:
	* gdb_stat.h:
	* gdb_regex.h:
	* gdb_ptrace.h:
	* gdb_proc_service.h:
	* gdb_obstack.h:
	* gdb_locale.h:
	* gdb_dirent.h:
	* gdb_curses.h:
	* gdb_assert.h:
	* gdbarch.sh:
	* gdb.h:
	* hpux-thread.c:
	* hppabsd-nat.c:
	* hppa-tdep.h:
	* hpacc-abi.c:
	* h8300-tdep.c:
	* gregset.h:
	* go32-nat.c:
	* gnu-v3-abi.c:
	* gnu-v2-abi.h:
	* gnu-v2-abi.c:
	* gnu-nat.h:
	* glibc-tdep.c:
	* gdbtypes.h:
	* gdbcore.h:
	* gdbcmd.h:
	* i386nbsd-tdep.c:
	* i386nbsd-nat.c:
	* i386gnu-tdep.c:
	* i386gnu-nat.c:
	* i386fbsd-tdep.c:
	* i386fbsd-nat.c:
	* i386bsd-tdep.c:
	* i386bsd-nat.h:
	* i386bsd-nat.c:
	* i386-tdep.h:
	* i386-sol2-nat.c:
	* i386-nto-tdep.c:
	* i386-nat.c:
	* i386-linux-tdep.h:
	* i386-linux-tdep.c:
	* i386-linux-nat.c:
	* i386-cygwin-tdep.c:
	* inf-ttrace.c:
	* inf-ptrace.h:
	* inf-ptrace.c:
	* inf-loop.h:
	* inf-loop.c:
	* inf-child.h:
	* inf-child.c:
	* ia64-tdep.h:
	* ia64-linux-nat.c:
	* i387-tdep.h:
	* i387-tdep.c:
	* i386v4-nat.c:
	* i386v-nat.c:
	* i386obsd-tdep.c:
	* i386obsd-nat.c:
	* kod.c:
	* jv-valprint.c:
	* jv-typeprint.c:
	* jv-lang.h:
	* jv-lang.c:
	* irix5-nat.c:
	* iq2000-tdep.c:
	* interps.h:
	* interps.c:
	* inftarg.c:
	* inflow.h:
	* inflow.c:
	* inferior.h:
	* infcmd.c:
	* infcall.h:
	* infcall.c:
	* inf-ttrace.h:
	* m32r-tdep.h:
	* m32r-tdep.c:
	* m32r-rom.c:
	* m32r-linux-tdep.c:
	* m32r-linux-nat.c:
	* m2-valprint.c:
	* m2-typeprint.c:
	* m2-lang.h:
	* m2-lang.c:
	* lynx-nat.c:
	* linux-thread-db.c:
	* linux-nat.h:
	* linespec.c:
	* libunwind-frame.h:
	* libunwind-frame.c:
	* language.h:
	* language.c:
	* macroexp.c:
	* macrocmd.c:
	* m88kbsd-nat.c:
	* m88k-tdep.h:
	* m88k-tdep.c:
	* m68klinux-tdep.c:
	* m68klinux-nat.c:
	* m68kbsd-tdep.c:
	* m68kbsd-nat.c:
	* m68k-tdep.h:
	* m68k-tdep.c:
	* mips-linux-nat.c:
	* mips-irix-tdep.c:
	* minsyms.c:
	* memattr.h:
	* memattr.c:
	* mem-break.c:
	* mdebugread.h:
	* main.h:
	* main.c:
	* macrotab.h:
	* macrotab.c:
	* macroscope.h:
	* macroscope.c:
	* macroexp.h:
	* nbsd-tdep.c:
	* mt-tdep.c:
	* monitor.h:
	* monitor.c:
	* mn10300-tdep.h:
	* mn10300-tdep.c:
	* mn10300-linux-tdep.c:
	* mipsv4-nat.c:
	* mipsread.c:
	* mipsnbsd-tdep.h:
	* mipsnbsd-tdep.c:
	* mipsnbsd-nat.c:
	* mips64obsd-tdep.c:
	* mips64obsd-nat.c:
	* mips-tdep.h:
	* mips-mdebug-tdep.c:
	* mips-linux-tdep.c:
	* osabi.h:
	* osabi.c:
	* ocd.h:
	* ocd.c:
	* observer.c:
	* objfiles.h:
	* objfiles.c:
	* objc-lang.h:
	* objc-lang.c:
	* objc-exp.y:
	* nto-tdep.h:
	* nto-tdep.c:
	* nto-procfs.c:
	* nlmread.c:
	* nbsd-tdep.h:
	* ppcobsd-tdep.c:
	* ppcobsd-nat.c:
	* ppcnbsd-tdep.h:
	* ppcnbsd-tdep.c:
	* ppcnbsd-nat.c:
	* ppcbug-rom.c:
	* ppc-tdep.h:
	* ppc-sysv-tdep.c:
	* ppc-linux-tdep.c:
	* ppc-linux-nat.c:
	* ppc-bdm.c:
	* parser-defs.h:
	* parse.c:
	* p-valprint.c:
	* p-typeprint.c:
	* p-lang.h:
	* p-lang.c:
	* remote-fileio.h:
	* remote-fileio.c:
	* remote-est.c:
	* remote-e7000.c:
	* regset.h:
	* regset.c:
	* reggroups.h:
	* reggroups.c:
	* regcache.h:
	* regcache.c:
	* proc-why.c:
	* proc-service.c:
	* proc-events.c:
	* printcmd.c:
	* ppcobsd-tdep.h:
	* sentinel-frame.h:
	* sentinel-frame.c:
	* scm-valprint.c:
	* scm-tags.h:
	* scm-lang.h:
	* scm-lang.c:
	* scm-exp.c:
	* s390-tdep.h:
	* rom68k-rom.c:
	* remote.h:
	* remote-utils.c:
	* remote-st.c:
	* remote-sim.c:
	* remote-sds.c:
	* remote-rdp.c:
	* remote-rdi.c:
	* remote-hms.c:
	* sim-regno.h:
	* shnbsd-tdep.h:
	* shnbsd-tdep.c:
	* shnbsd-nat.c:
	* sh-tdep.h:
	* serial.h:
	* serial.c:
	* ser-unix.h:
	* ser-unix.c:
	* ser-tcp.c:
	* ser-pipe.c:
	* ser-go32.c:
	* ser-e7kpc.c:
	* ser-base.h:
	* ser-base.c:
	* solib.c:
	* solib-svr4.h:
	* solib-svr4.c:
	* solib-sunos.c:
	* solib-som.h:
	* solib-som.c:
	* solib-pa64.h:
	* solib-pa64.c:
	* solib-osf.c:
	* solib-null.c:
	* solib-legacy.c:
	* solib-irix.c:
	* solib-frv.c:
	* solib-aix5.c:
	* sol-thread.c:
	* sparc64-linux-tdep.c:
	* sparc64-linux-nat.c:
	* sparc-tdep.h:
	* sparc-tdep.c:
	* sparc-sol2-tdep.c:
	* sparc-sol2-nat.c:
	* sparc-nat.h:
	* sparc-nat.c:
	* sparc-linux-tdep.c:
	* sparc-linux-nat.c:
	* source.h:
	* source.c:
	* somread.c:
	* solist.h:
	* solib.h:
	* std-regs.c:
	* stack.h:
	* stack.c:
	* stabsread.h:
	* sparcobsd-tdep.c:
	* sparcnbsd-tdep.c:
	* sparcnbsd-nat.c:
	* sparc64obsd-tdep.c:
	* sparc64nbsd-tdep.c:
	* sparc64nbsd-nat.c:
	* sparc64fbsd-tdep.c:
	* sparc64fbsd-nat.c:
	* sparc64-tdep.h:
	* sparc64-tdep.c:
	* sparc64-sol2-tdep.c:
	* sparc64-nat.c:
	* ui-file.c:
	* typeprint.h:
	* typeprint.c:
	* tramp-frame.h:
	* tramp-frame.c:
	* trad-frame.h:
	* trad-frame.c:
	* tracepoint.h:
	* top.c:
	* tobs.inc:
	* thread.c:
	* terminal.h:
	* target.h:
	* symfile.h:
	* stop-gdb.c:
	* vaxbsd-nat.c:
	* vax-tdep.h:
	* vax-tdep.c:
	* vax-nat.c:
	* varobj.h:
	* varobj.c:
	* value.h:
	* value.c:
	* valprint.h:
	* valprint.c:
	* v850-tdep.c:
	* uw-thread.c:
	* user-regs.c:
	* ui-out.h:
	* ui-out.c:
	* ui-file.h:
	* xcoffsolib.h:
	* xcoffsolib.c:
	* wrapper.c:
	* wince.c:
	* wince-stub.h:
	* wince-stub.c:
	* vaxobsd-tdep.c:
	* vaxnbsd-tdep.c:
	* gdb_gcore.sh:
	* copying.c:
	* configure.ac:
	* aclocal.m4:
	* acinclude.m4:
	* reply_mig_hack.awk:
	* observer.sh:
	* gdb_mbuild.sh:
	* arm-linux-tdep.c:
	* blockframe.c:
	* dbug-rom.c:
	* environ.h:
	* dwarf2loc.h:
	* gdb-events.sh:
	* glibc-tdep.h:
	* gdb_wait.h:
	* gdbthread.h:
	* i386-sol2-tdep.c:
	* hppabsd-tdep.c:
	* hppa-linux-nat.c:
	* hppa-hpux-nat.c:
	* ia64-linux-tdep.c:
	* infptrace.c:
	* linespec.h:
	* maint.c:
	* mips-mdebug-tdep.h:
	* remote-m32r-sdi.c:
	* s390-nat.c:
	* rs6000-nat.c:
	* remote-utils.h:
	* sh3-rom.c:
	* sh-linux-tdep.c:
	* top.h:
	* symtab.h:
	* symmisc.c:
	* symfile-mem.c:
	* srec.h:
	* user-regs.h:
	* version.h:
	* valarith.c:
	* xstormy16-tdep.c:
	* wrapper.h:
	* Makefile.in:
	* f-exp.y:
	* cris-tdep.c:
	* cp-name-parser.y:
	* procfs.c:
	* proc-utils.h:
	* proc-flags.c:
	* proc-api.c:
	* p-exp.y:
	* m68hc11-tdep.c:
	* m2-exp.y:
	* kod.h:
	* kod-cisco.c:
	* jv-exp.y:
	* hppa-linux-tdep.c: Add (c) after Copyright.  Update the FSF
	address.
----------------------------
revision 1.1
date: 1999/04/16 01:33:57;  author: shebs;  state: Exp;
branches:  1.1.1;
Initial revision
----------------------------
revision 1.1.1.1
date: 1999/04/16 01:33:57;  author: shebs;  state: Exp;  lines: +0 -0
Initial creation of sourceware repository
----------------------------
revision 1.2.42.1
date: 2009/12/21 07:43:55;  author: brobecke;  state: Exp;  lines: +624 -292
        * COPYING: Update to GPL version 3.
=============================================================================

RCS file: /cvs/src/src/gdb/ChangeLog,v
Working file: ChangeLog
head: 1.15798
branch:
locks: strict
access list:
symbolic names:
	gdb_7_6-2013-04-26-release: 1.15260.2.48
	gdb_7_6-branch: 1.15260.0.2
	gdb_7_6-2013-03-12-branchpoint: 1.15260
	gdb_7_5_1-2012-11-29-release: 1.14469.2.40
	gdb_7_5-2012-08-17-release: 1.14469.2.23
	gdb_7_5-branch: 1.14469.0.2
	gdb_7_5-2012-07-18-branchpoint: 1.14469
	gdb_7_4_1-2012-04-26-release: 1.13614.2.54
	gdb_7_4-2012-01-24-release: 1.13614.2.42
	gdb_7_4-branch: 1.13614.0.2
	gdb_7_4-2011-12-13-branchpoint: 1.13614
	gdb_7_3_1-2011-09-04-release: 1.12887.2.70
	gdb_7_3-2011-07-26-release: 1.12887.2.64
	gdb_7_3-branch: 1.12887.0.2
	gdb_7_3-2011-04-01-branchpoint: 1.12887
	gdb_7_2-2010-09-02-release: 1.11973.2.42
	gdb_7_2-branch: 1.11973.0.2
	gdb_7_2-2010-07-07-branchpoint: 1.11973
	gdb_7_1-2010-03-18-release: 1.11378.2.33
	gdb_7_1-branch: 1.11378.0.2
	gdb_7_1-2010-02-18-branchpoint: 1.11378
	gdb_7_0_1-2009-12-22-release: 1.10874.2.60
	gdb_7_0-2009-10-06-release: 1.10874.2.46
	gdb_7_0-branch: 1.10874.0.2
	gdb_7_0-2009-09-16-branchpoint: 1.10874
	arc-sim-20090309: 1.9174.2.17.4.1
	msnyder-checkpoint-072509-branch: 1.10747.0.2
	msnyder-checkpoint-072509-branchpoint: 1.10747
	arc-insight_6_8-branch: 1.9174.2.17.0.4
	arc-insight_6_8-branchpoint: 1.9174.2.17
	insight_6_8-branch: 1.9174.2.17.0.2
	insight_6_8-branchpoint: 1.9174.2.17
	reverse-20081226-branch: 1.10052.0.2
	reverse-20081226-branchpoint: 1.10052
	multiprocess-20081120-branch: 1.9991.0.2
	multiprocess-20081120-branchpoint: 1.9991
	reverse-20080930-branch: 1.9859.0.2
	reverse-20080930-branchpoint: 1.9859
	reverse-20080717-branch: 1.9579.0.2
	reverse-20080717-branchpoint: 1.9579
	msnyder-reverse-20080609-branch: 1.9466.0.2
	msnyder-reverse-20080609-branchpoint: 1.9466
	drow-reverse-20070409-branch: 1.8264.0.2
	drow-reverse-20070409-branchpoint: 1.8264
	gdb_6_8-2008-03-27-release: 1.9174.2.17
	gdb_6_8-branch: 1.9174.0.2
	gdb_6_8-2008-02-26-branchpoint: 1.9174
	gdb_6_7_1-2007-10-29-release: 1.8684.2.30
	gdb_6_7-2007-10-10-release: 1.8684.2.19
	gdb_6_7-branch: 1.8684.0.2
	gdb_6_7-2007-09-07-branchpoint: 1.8684
	insight_6_6-20070208-release: 1.7962.2.20
	gdb_6_6-2006-12-18-release: 1.7962.2.19
	gdb_6_6-branch: 1.7962.0.2
	gdb_6_6-2006-11-15-branchpoint: 1.7962
	insight_6_5-20061003-release: 1.7738.2.19
	gdb-csl-symbian-6_4_50_20060226-12: 1.7617.2.2
	gdb-csl-sourcerygxx-3_4_4-25: 1.7432
	nickrob-async-20060828-mergepoint: 1.7891
	gdb-csl-symbian-6_4_50_20060226-11: 1.7617.2.2
2013-08-12 11:54:04 +00:00
Tom Tromey
fdbb204be9 also filter label symbols
The bug here is that, with dwz -m, a function (and a label) appear in
both a PU and a CU when running cplabel.exp.  So, a breakpoint gets
two locations:

    (gdb) break foo::bar:to_the_top
    Breakpoint 2 at 0x400503: foo::bar:to_the_top. (2 locations)

What is especially wacky is that both locations are at the same place:

    (gdb) info b
    Num     Type           Disp Enb Address            What
    1       breakpoint     keep y   <MULTIPLE>
    1.1                         y     0x000000000040051c foo::bar:get_out_of_here
    1.2                         y     0x000000000040051c foo::bar:get_out_of_here

This happens due to the weird way we run "dwz -m".
It's unclear to me that this would ever happen for real code.

While I think this borders on "diminishing returns" territory, the fix
is pretty straightforward: use the existing address-filtering function
in linespec to also filter when looking at labels.

Built and regtested (both ways) on x86-64 Fedora 18.

	* linespec.c (convert_linespec_to_sals): Use maybe_add_address
	when adding label symbols.
2013-08-07 19:52:16 +00:00
Doug Evans
ec94af8326 Further workarounds for binutils/15021.
* dwarf2read.c (recursively_compute_inclusions): Change type of result
	parameter to VEC (symtab_ptr) **.  New parameter all_type_symtabs.
	Watch for duplicate symtabs coming from type units.
	(compute_symtab_includes): Update call to
	recursively_compute_inclusions. Build vector of included symtabs
	instead of per_cus.
	* symtab.h (symtab_ptr): New typedef.
	(DEF_VEC_P (symtab_ptr)): New VEC type.
	* linespec.c (symtab_p): Delete.  All uses updated to use symtab_ptr
	instead.
2013-08-01 23:35:04 +00:00
Tom Tromey
e61727abf0 fix linespec bug noticed by the checker
This fixes a linespec bug noticed by the cleanup checker.

find_linespec_symbols did this:

  cleanup = demangle_for_lookup (name, state->language->la_language,
				 &lookup_name);
[...]
      cleanup = make_cleanup (xfree, canon);

But this is wrong, as it makes a subsequent call to do_cleanups not
clean up all the local state.

	* linespec.c (find_linespec_symbols): Don't reassign to 'cleanup'.
2013-05-30 16:57:38 +00:00
Jan Kratochvil
e93ba63057 gdb/
* linespec.c (convert_linespec_to_sals): New comment for
	SOURCE_FILENAME assignment.
2013-05-14 20:41:45 +00:00
Tom Tromey
e27d198cc4 PR symtab/8424:
* blockframe.c (find_pc_partial_function_gnu_ifunc): Check
	SYMBOL_SECTION, not SYMBOL_OBJ_SECTION.
	* breakpoint.c (resolve_sal_pc): Update.
	* elfread.c (elf_gnu_ifunc_record_cache): Update.
	* findvar.c (struct minsym_lookup_data) <objfile>: New field.
	(minsym_lookup_iterator_cb): Use it.
	(default_read_var_value): Update.
	* hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline):
	Update.
	* infcmd.c (jump_command): Update.
	* linespec.c (minsym_found): Update.
	* maint.c (maintenance_translate_address): Update.
	* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Update.
	(prim_record_minimal_symbol_full): Don't set SYMBOL_OBJ_SECTION.
	* parse.c (write_exp_msymbol): Update.
	* printcmd.c (address_info): Update.
	* psymtab.c (find_pc_sect_psymbol): Update.
	(fixup_psymbol_section): Check SYMBOL_SECTION, not
	SYMBOL_OBJ_SECTION.
	(add_psymbol_to_bcache): Correctly initialize SYMBOL_SECTION.
	Don't initialize SYMBOL_OBJ_SECTION.
	* spu-tdep.c (spu_catch_start): Update.
	* stabsread.c (define_symbol): Don't set SYMBOL_SECTION.
	* symmisc.c (dump_msymbols, print_symbol): Update.
	* symtab.c (fixup_section): Don't set 'obj_section'.  Change
	how fallback section is computed.
	(fixup_symbol_section): Update.
	(find_pc_sect_symtab, find_function_start_sal, skip_prologue_sal):
	Update.
	(allocate_symbol, initialize_symbol, allocate_template_symbol):
	Initialize SYMBOL_SECTION.
	* symtab.h (struct general_symbol_info) <section>: Update comment.
	<obj_section>: Remove.
	(SYMBOL_OBJ_SECTION): Add 'objfile' argument.  Rewrite.
	(SYMBOL_OBJFILE): New macro.
2013-04-08 20:18:11 +00:00
Keith Seitz
bbc13ae3db * ada-lang.c (ada_read_renaming_var_value): Pass const
pointer to expression string to parse_exp_1.
	(create_excep_cond_exprs): Likewise.
	* ax-gdb.c (agent_eval_command_one): Likewise.
	(maint_agent_printf_command): Likewise.
	Constify much of the string handling/parsing.
	* breakpoint.c (set_breakpoint_condition): Pass const
	pointer to expression string to parse_exp_1.
	(update_watchpoint): Likewise.
	(parse_cmd_to_aexpr): Constify string handling.
	Pass const pointer to parse_exp_1.
	(init_breakpoint_sal): Pass const pointer to parse_exp_1.
	(find_condition_and_thread): Likewise.
	Make TOK const.
	(watch_command_1): Make "arg" const.
	Constify string handling.
	Copy the expression string instead of changing the input
	string.
	(update_breakpoint_location): Pass const pointer to
	parse_exp_1.
	* eval.c (parse_and_eval_address): Make "exp" const.
	(parse_to_comma_and_eval): Make "expp" const.
	(parse_and_eval): Make "exp" const.
	* expression.h (parse_expression): Make argument const.
	(parse_exp_1): Make first argument const.
	* findcmd.c (parse_find_args): Treat "args" as const.
	* linespec.c (parse_linespec): Pass const pointer to
	linespec_expression_to_pc.
	(linespec_expression_to_pc): Make "exp_ptr" const.
	* parse.c (parse_exp_1): Make "stringptr" const.
	Make a copy of the expression to pass to parse_exp_in_context until
	this whole interface can be constified.
	(parse_expression): Make "string" const.
	* printcmd.c (ui_printf): Treat "arg" as const.
	Handle const strings.
	* tracepoint.c (validate_actionline): Pass const pointer to
	all calls to parse_exp_1.
	(encode_actions_1): Likewise.
	* value.h (parse_to_comma_and_eval): Make argument const.
	(parse_and_eval_address): Likewise.
	(parse_and_eval): Likewise.
	* varobj.c (varobj_create): Pass const pointer to parse_exp_1.
	(varobj_set_value): Likewise.
	* cli/cli-cmds.c (disassemble_command): Treat "arg" as const and
	constify string handling.
	Pass const pointers to parse_and_eval_address and
	parse_to_comman_and_eval.
	* cli/cli-utils.c (skip_to_space): Rename to ...
	(skip_to_space_const): ... this. Handle const strings.
	* cli/cli-utils.h (skip_to_space): Turn into macro which invokes
	skip_to_space_const.
	(skip_to_space_const): Declare.
	* common/format.c (parse_format_string): Make "arg" const.
	Handle const strings.
	* common/format.h (parse_format_string): Make "arg" const.
	* gdbserver/ax.c (ax_printf): Make "format" const.
	* python/python.c (gdbpy_parse_and_eval): Do not make a copy
	of the expression string.
2013-03-12 17:39:45 +00:00
Doug Evans
cc81e1c673 * linespec.c (find_linespec_symbols): Call find_function_symbols
first, and then call lookup_prefix_sym/find_method.
2013-03-11 18:24:59 +00:00
Pierre Muller
e482a1a770 * linespec.c (get_current_search_block): ARI fix, use (void)
for empty parameter list.
2013-03-06 11:05:55 +00:00
Doug Evans
4eeaa230f4 * ada-lang.c (ada_lookup_symbol_list_worker): New function, contents
of old ada_lookup_symbol_list.  In !full_search case, don't
	search superblocks.
	(ada_lookup_symbol_list): Delete arg full_search, all callers
	updated.  Call ada_lookup_symbol_list_worker.
	(ada_iterate_over_symbols): Call ada_lookup_symbol_list_worker.
	* ada-lang.h (ada_lookup_symbol_list): Update.
	* language.h (language_defn): Update comment for
	la_iterate_over_symbols.
	* linespec.c (iterate_over_file_blocks): New function.
	(iterate_over_all_matching_symtabs): Call it.
	(lookup_prefix_sym): Ditto.
	(get_current_search_block): New function.
	(get_search_block): Delete.
	(find_label_symbols): Call get_current_search_block.
	(add_matching_symbols_to_info): Call iterate_over_file_blocks.
	* symtab.c (iterate_over_symbols): Don't search superblocks.
2013-03-05 21:15:34 +00:00
Jan Kratochvil
f6f99966e9 gdb/
* linespec.c (decode_line_2): Fix duplicate request off by two message.
2013-03-04 19:38:02 +00:00
Jan Kratochvil
33f448b11e gdb/
* linespec.c (struct linespec_canonical_name): New.
	(struct linespec_state): Change canonical_names type to it.
	(add_sal_to_sals): Change variable canonical_name to canonical.  Change
	xrealloc element size.  Initialize the different CANONICAL fields.
	(canonical_to_fullform): New.
	(filter_results): Use it.  Add variables canonical, fullform and
	cleanup.
	(struct decode_line_2_item, decode_line_2_compare_items): New.
	(decode_line_2): Remove variables iter and item_names, add variables
	items and items_count.  Modify the code for these new variables.

gdb/testsuite/
	* gdb.linespec/base/one/thefile.cc (twodup): New.
	(m): Call it.
	* gdb.linespec/base/two/thefile.cc (dupname): New.
	(n): Call it.
	* gdb.linespec/break-ask.exp: New file.
	* gdb.linespec/lspec.cc (body_elsewhere): New comment marker.
2013-03-04 19:30:28 +00:00
Jan Kratochvil
05cba821ad gdb/
* ada-lang.c (user_select_syms): Replace symtab->filename refererences
	by symtab_to_filename_for_display calls.
	* breakpoint.c (print_breakpoint_location, resolve_sal_pc): Likewise.
	(clear_command): New variable sal_fullname, initialize it.  Replace
	compare_filenames_for_search by filename_cmp with sal_fullname.
	(say_where, update_static_tracepoint): Replace symtab->filename
	refererences by symtab_to_filename_for_display calls.
	* cli/cli-cmds.c (edit_command, list_command, ambiguous_line_spec):
	Likewise.
	* dwarf2read.c: Include source.h.
	(fixup_go_packaging): Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.
	* linespec.c (add_sal_to_sals): Rename variable filename to fullname.
	Replace symtab->filename refererences by symtab_to_filename_for_display
	calls.
	(create_sals_line_offset, convert_linespec_to_sals): New variable
	fullname, initialize it, replace symtab->filename reference by the
	variable.
	* linux-fork.c: Include source.h.
	(info_checkpoints_command): Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.
	* macroscope.c (sal_macro_scope): Replace symtab->filename refererences
	by symtab_to_filename_for_display calls.
	* mdebugread.c: Include source.h.
	(psymtab_to_symtab_1): Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.
	* mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file)
	(mi_cmd_file_list_exec_source_files): Likewise.
	* printcmd.c: Include source.h.
	(build_address_symbolic): Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.
	* psymtab.c (partial_map_symtabs_matching_filename)
	(read_psymtabs_with_fullname): Call compare_filenames_for_search also
	with psymtab_to_fullname.
	* python/py-symtab.c (stpy_str): Replace symtab->filename refererences
	by symtab_to_filename_for_display calls.
	(stpy_get_filename): New variable filename, initialize it, use instead
	of symtab->filename refererences.
	(salpy_str): Make variable filename const char *.  Replace
	symtab->filename refererences by symtab_to_filename_for_display calls.
	* skip.c: Include source.h and filenames.h.
	(skip_file_command): Remove const from the symtab variable.  Replace
	symtab->filename refererences by symtab_to_fullname call.
	(function_name_is_marked_for_skip): New variables searched_for_fullname
	and fullname.  Use them to search also with symtab's fullname.
	* source.c (find_source_lines): Replace symtab->filename refererences
	by symtab_to_filename_for_display calls.
	(print_source_lines_base): New variable filename, use it instead of
	symtab->filename.  Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.
	(line_info, forward_search_command): Replace symtab->filename
	refererences by symtab_to_filename_for_display calls.
	(reverse_search_command): Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.  New variable filename for it.
	* stack.c (frame_info): Likewise.
	* symmisc.c: Include source.h.
	(dump_objfile, dump_symtab_1, maintenance_print_symbols)
	(maintenance_info_symtabs): Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.
	* symtab.c (iterate_over_some_symtabs): Call
	compare_filenames_for_search also with symtab_to_fullname.
	(lookup_symbol_aux_quick, basic_lookup_transparent_type_quick): Replace
	symtab->filename refererences by symtab_to_filename_for_display calls.
	(find_line_symtab): Replace symtab->filename refererences by
	symtab_to_filename_for_display calls.
	(file_matches): Replace filename_cmp by compare_filenames_for_search.
	(print_symbol_info): Make the last parameter const char *.  New
	variable s_filename.  Use it in the function.
	(symtab_symbol_info): Make the last_filename variable const char *.
	Replace symtab->filename refererences by symtab_to_filename_for_display
	calls.
	(rbreak_command): New variable fullname.  Use it.  Replace
	symtab->filename refererence by symtab_to_filename_for_display call.
	* tracepoint.c (set_traceframe_context, trace_find_line_command)
	(print_one_static_tracepoint_marker): Replace symtab->filename
	refererences by symtab_to_filename_for_display calls.
	* tui/tui-source.c (tui_set_source_content): New variables filename and
	s_filename.  Replace symtab->filename refererences by this variable.
	Replace other symtab->filename refererences by
	symtab_to_filename_for_display calls.
2013-02-03 16:13:31 +00:00
Doug Evans
b1ae631a1e * linespec.c (find_linespec_symbols): Make static. 2013-01-23 20:07:39 +00:00
Joel Brobecker
28e7fd6234 Update years in copyright notice for the GDB files.
Two modifications:
  1. The addition of 2013 to the copyright year range for every file;
  2. The use of a single year range, instead of potentially multiple
     year ranges, as approved by the FSF.
2013-01-01 06:33:28 +00:00
Jan Kratochvil
4e04028d95 gdb/
Code cleanup.
	* dwarf2read.c (fixup_go_packaging): Do not check symtab->FILENAME for
	NULL.
	* linespec.c (add_sal_to_sals): Likewise.
	* psympriv.h (allocate_psymtab): Add ATTRIBUTE_NONNULL.
	* stack.c (print_frame): Do not check symtab->FILENAME for NULL.
	* symfile.h (allocate_symtab): Add ATTRIBUTE_NONNULL.
	* symtab.h (struct symtab): Add comment it is never NULL for filename.
	* tracepoint.c (set_traceframe_context): Do not check symtab->FILENAME
	for NULL.
	* tui/tui-source.c (tui_set_source_content): Likewise.
2012-12-24 19:42:16 +00:00
Keith Seitz
cf4ded82d0 * breakpoint.c (clear_command): Add cleanup for
sals.sals if an argument is given.

	* linespec.c (parse_linespec): Do cleanups after
	parsing a convenience variable.
2012-11-10 20:25:56 +00:00
Doug Evans
7c09e5a0f7 PR breakpoints/14643.
* linespec.c (struct ls_parser): New member keyword_ok.
	(linespec_lexer_lex_string): Add comment.
	(linespec_lexer_lex_one): Ignore keywords if it's the wrong place
	for one.
	(parse_linespec): Set keyword_ok.

	testsuite/
	* gdb.linespec/ls-errs.exp: Change tests of "b if|task|thread".
	* gdb.linespec/thread.c: New file.
	* gdb.linespec/thread.exp: New file.
2012-10-11 16:12:05 +00:00
Joel Brobecker
2e47c6caff Small typo in comment inside create_sals_line_offset
gdb/ChangeLog:

        * linespec.c (create_sals_line_offset): Fix typo in comment.
2012-09-25 12:22:54 +00:00
Joel Brobecker
4ae24af054 wrong language used when re-setting breakpoint
The debugger sometimes fails to re-set a breakpoint as follow,
causing it to become disabled:

    (gdb) b nested_sub
    Breakpoint 1 at 0x401cec: file foo.adb, line 7.
    (gdb) b do_nothing
    Breakpoint 2 at 0x401cdc: file pck.adb, line 4.
    (gdb) run
    Starting program: /[...]/foo
    Error in re-setting breakpoint 1: Function "nested_sub" not defined.

    Breakpoint 2, pck.do_nothing () at pck.adb:4
    4             null;

This only happens on machines where the debug-file-directory is
a valid directory name.

The reason behind the error is that the linespec code that re-sets
the breakpoints uses the current_language global when iterating
over a symtab's symbols. However, the that global gets switched from
Ada to C during the startup phase, probably as a side-effect of stopping
in some system code for which debugging info is available. The fix
is to make sure that we use the correct language.

gdb/ChangeLog:

        * linespec.c (iterate_over_all_matching_symtabs): Use the correct
        language when iterating over symbols.

gdb/testsuite/ChangeLog:

        * gdb.ada/bp_reset: New testcase.
2012-09-18 16:52:19 +00:00
Sergio Durigan Junior
bad7670a0e 2012-08-10 Sergio Durigan Junior <sergiodj@redhat.com>
* linespec.c (find_methods): Remove unused variables `i1' and
	`name_len'.
	(decode_line_full): Likewise for `arg_start'.
2012-08-11 00:20:18 +00:00
Keith Seitz
eff9c3e636 * linespec.c (linespec_lex_number): A number followed
by quotes is a valid number, too.

	* gdb.linespec/ls-errs.exp: Check some quote-enclosed
	linespecs.
2012-07-30 17:45:37 +00:00
Keith Seitz
dd3818c82c * linespec.c (linespec_lexer_lex_number): The input
is also a valid number if the next character is a comma
	or colon.
2012-07-26 16:22:48 +00:00
Hui Zhu
d7cbec71c9 2012-07-25 Hui Zhu <hui_zhu@mentor.com>
* linespec.c (linespec_lexer_lex_number): Update comments,
	change the return and add check to make sure the input is
	the decimal numbers.
	(linespec_lexer_lex_one): If linespec_lexer_lex_number return
	false, call linespec_lexer_lex_string.
2012-07-25 12:26:27 +00:00
Keith Seitz
64b92e45d3 * linespec.c (convert_linespec_to_sal): Don't add
any symbols to the result vector if symbol_to_sal
	returns zero.
2012-07-23 20:40:07 +00:00
Keith Seitz
0f5f4ffe7a * linespec.c (decode_objc): Record the function name
in the linespec.
2012-07-23 20:31:34 +00:00