public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM]  tromey/static-link-fix: reverse-20080717-branchpoint-12989-g719dfb1
@ 2013-03-01 15:30 tromey
  0 siblings, 0 replies; only message in thread
From: tromey @ 2013-03-01 15:30 UTC (permalink / raw)
  To: archer-commits

The branch, tromey/static-link-fix has been created
        at  719dfb16b9b918b4b3f66818417e75b386fcc53b (commit)

- Log -----------------------------------------------------------------
commit 719dfb16b9b918b4b3f66818417e75b386fcc53b
Author: Tom Tromey <tromey@redhat.com>
Date:   Fri Mar 1 08:30:15 2013 -0700

    add README.archer

commit a83fe35bc94fc0b2a11b9f36cd7c283a88fce0c0
Author: Tom Tromey <tromey@redhat.com>
Date:   Wed Jul 11 07:26:21 2012 -0600

    Fix PR 8300
    
    This fixes PR 8300 -- variables in nested functions don't properly work.
    
    This needs:
    
    * A GCC bug fix, PR 53927
    * The new 'frame_base' fields should be moved into the _block
      struct variants -- there is no need to clutter all locexpr batons
      with this, just the function ones
    * A test for a multiply-nested function
    * A way to reject accesses to outer functions when the inner
      function does not have DW_AT_static_link, and a test case for this.
      GCC won't emit DW_AT_static_link if the inner function doesn't
      actually use outer function variables.
    * See whether we can remove block_innermost_frame_for_variable
      and use the same logic for all callers; it seems likely

commit 430d0d0ccc8002425cc7da4e61358159d20f2cc7
Author: Tom Tromey <tromey@redhat.com>
Date:   Tue Jul 10 13:47:56 2012 -0600

    write the block in c-exp.y
    
    This writes the found block to a simple variable expression.
    The comment there is unclear as to why this was not done previously.
    
    This regresses tls.exp and dw-op-call.exp, but I think they
    are written incorrectly.
    
    Well... maybe not tls.exp.

commit 2cf4e7eff4e789f2a1c15fc535f729668ad72557
Author: Tom Tromey <tromey@redhat.com>
Date:   Mon Jul 9 10:21:59 2012 -0600

    Remove symbol::aux_value
    
    After the previous patch, the symbol's value field and its aux_value
    field are mutually exclusive: any given symbol uses one or the other,
    but never both.
    
    So, this patch removes aux_value.  This saves one pointer per symbol.
    
    Built and regtested on x86-64 Fedora 16.
    
    	* symtab.h (struct general_symbol_info) <value.aux_value>:
    	New field.
    	(SYMBOL_LOCATION_BATON): Redefine.  Move earlier.
    	(struct symbol) <aux_value>: Remove.

commit aab701adf8e0ad364d24deed79de362c51d49d7c
Author: Tom Tromey <tromey@redhat.com>
Date:   Mon Jul 9 10:18:26 2012 -0600

    Allow SYMBOL_BLOCK_VALUE to be indirected
    
    Currently the DWARF reader uses both a symbol's
    general_symbol_info.value.block field and its aux_value field
    for some function symbols.
    
    However, in the case where the function has computed ops, this is
    redundant.  We could instead just hang all the information off
    general_symbol_info.value.
    
    This patch makes the first step in that direction, by letting
    SYMBOL_BLOCK_VALUE indirect depending on the symbol.  It also changes
    the DWARF reader to use this.
    
    	* dwarf2loc.c (dwarf_expr_frame_base_1): Recognize new
    	symbol_ops values.
    	(locexpr_get_block_field, loclist_get_block_field): New
    	functions.
    	(dwarf2_locexpr_block_funcs, dwarf2_loclist_block_funcs): New
    	globals.
    	* dwarf2loc.h (struct dwarf2_locexpr_block_baton): New.
    	(struct dwarf2_loclist_block_baton): New.
    	(dwarf2_locexpr_block_funcs, dwarf2_loclist_block_funcs):
    	Declare.
    	* dwarf2read.c (read_func_scope): Remove comment.  Update call
    	to dwarf2_symbol_mark_computed.
    	(var_decode_location): Update.
    	(dwarf2_symbol_mark_computed): Add 'need_block_field'
    	argument.
    	* symtab.c (get_symbol_block_location): New function.
    	* symtab.h (get_symbol_block_location): Declare.
    	(SYMBOL_BLOCK_VALUE): Redefine.
    	(struct symbol_computed_ops) <get_block_field>: New field.

commit b6633d4cff583316cdc87a441204cb0921cc78d2
Author: Tom Tromey <tromey@redhat.com>
Date:   Mon Jul 9 10:00:58 2012 -0600

    Remove some FIXME comments
    
    This removes some outdated FIXME comments.
    
    The original design seems promising:
    
        http://sourceware.org/ml/gdb-patches/2003-11/msg00154.html
    
    ... though not fully described.  Maybe the intent was to implement it
    by adding the index->ops mapping to the symtab.  Or, maybe a global
    table was intended, with different symbol readers using different
    parts of the index space.
    
    However, since that time, SYMBOL_REGISTER_OPS was added.  This seems
    to invalidate the earlier design:
    
        http://sourceware.org/ml/gdb-patches/2009-05/msg00420.html
    
    It does seem to me that 'address_class' is a moderately confused
    concept; or at least that LOC_COMPUTED is.
    
    Nevertheless, I think that since only negative progress has been made
    on this front in the last 8 years, it is best to zap the comments and
    continue on with what we have.  If someone wants to revamp this area,
    the comments are not likely to help anyhow.
    
    	* ax-gdb.c (gen_var_ref): Remove comment.
    	* findvar.c (symbol_read_needs_frame): Remove comment.
    	(default_read_var_value): Likewise.
    	* printcmd.c (address_info): Remove comment.

-----------------------------------------------------------------------


hooks/post-receive
--
Repository for Project Archer.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-03-01 15:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-01 15:30 [SCM] tromey/static-link-fix: reverse-20080717-branchpoint-12989-g719dfb1 tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).