public inbox for
help / color / mirror / Atom feed
Subject: [SCM]  tromey/static-link-fix: reverse-20080717-branchpoint-12989-g719dfb1
Date: Fri, 01 Mar 2013 15:30:00 -0000	[thread overview]
Message-ID: <> (raw)

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

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

    add README.archer

commit a83fe35bc94fc0b2a11b9f36cd7c283a88fce0c0
Author: Tom Tromey <>
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 <>
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 <>
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 <>
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
    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
    	(dwarf2_locexpr_block_funcs, dwarf2_loclist_block_funcs): New
    	* dwarf2loc.h (struct dwarf2_locexpr_block_baton): New.
    	(struct dwarf2_loclist_block_baton): New.
    	(dwarf2_locexpr_block_funcs, dwarf2_loclist_block_funcs):
    	* 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'
    	* 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 <>
Date:   Mon Jul 9 10:00:58 2012 -0600

    Remove some FIXME comments
    This removes some outdated FIXME comments.
    The original design seems promising:
    ... 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:
    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.


Repository for Project Archer.

                 reply	other threads:[~2013-03-01 15:30 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).