public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Andrew Haley <aph@redhat.com>
To: Carrot Wei <carrot@google.com>
Cc: gcc@gcc.gnu.org, Richard Earnshaw <rearnsha@arm.com>,
	        Paul Brook <paul@codesourcery.com>,
	nickc@redhat.com
Subject: Re: Where can I put the optimization of got for arm back end at?
Date: Thu, 01 Apr 2010 18:11:00 -0000	[thread overview]
Message-ID: <4BB4E1A1.4050000@redhat.com> (raw)
In-Reply-To: <7587b291003280745o651a9c61ia1abae6707832526@mail.gmail.com>

On 28/03/10 15:45, Carrot Wei wrote:
> Hi
> 
> The detailed description of the optimization is at
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43129. This is an ARM
> specific optimization.
> 
> This optimization uses one less register (the register hold the GOT
> base), to get this beneficial the ideal place for it should be before
> register allocation.
> 
> Usually expand pass generates instructions to load global variable's
> address from GOT entry for each access of the global variable. Later
> cse/gcse passes can remove many of them. In order to precisely model
> the cost, this optimization should be put after some cse/gcse passes.
> 
> So what is the best place for this optimization? Is there any existed
> pass can be enhanced with this optimization? Or should I add a new
> pass?

The obvious place is machine-dependent reorg, which is a very late pass.

Andrew.

  reply	other threads:[~2010-04-01 18:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-28 21:00 Carrot Wei
2010-04-01 18:11 ` Andrew Haley [this message]
2010-04-01 20:31   ` Steven Bosscher
2010-04-02  4:06     ` Carrot Wei
     [not found]       ` <l2z5885251a1004050624h1237ec10z2a0bf34b7ba91d2c@mail.gmail.com>
2010-04-06 13:38         ` Carrot Wei

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:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

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

  git send-email \
    --in-reply-to=4BB4E1A1.4050000@redhat.com \
    --to=aph@redhat.com \
    --cc=carrot@google.com \
    --cc=gcc@gcc.gnu.org \
    --cc=nickc@redhat.com \
    --cc=paul@codesourcery.com \
    --cc=rearnsha@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

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