public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* [GCC 4.2 Project] Section Anchor Optimisations
@ 2005-08-09  9:10 Richard Sandiford
  0 siblings, 0 replies; only message in thread
From: Richard Sandiford @ 2005-08-09  9:10 UTC (permalink / raw)
  To: gcc

Summary:

    This optimisation will allow GCC to access more than one object from
    the same symbolic address. For example, suppose a section contains
    two variables x and y, and x and y are close together. The
    optimisation will create a common anchor point -- let's call it A --
    and allow both x and y to be accessed from A.

    The optimisation will of course be subject to the usual binding
    rules and will need to be aware of special cases like mergeable
    constants.

    At the moment, GCC makes no assumptions about the relative positions
    of static variables and constants, writing them out in a
    more-or-less arbitrary order. A major part of the project will
    therefore be to assign specific positions to objects and to write
    them out appropriately.

    The new infrastructure will also allow GCC to reorder objects within
    a section. Such a reordering might try to reduce the number of
    anchors or improve cache locality. However, this aspect of the
    project will be open-ended and isn't going to be part of the initial
    patch.

Full details here:

    http://gcc.gnu.org/wiki/Section%20Anchor%20Optimisations

Richard

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

only message in thread, other threads:[~2005-08-09  9:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-08-09  9:10 [GCC 4.2 Project] Section Anchor Optimisations Richard Sandiford

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).