[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <alpine.LFD.2.00.1010061553350.3107@xanadu.home>
Date: Wed, 06 Oct 2010 16:05:25 -0400 (EDT)
From: Nicolas Pitre <nico@...xnic.net>
To: Daniel Walker <dwalker@...eaurora.org>
Cc: Stephen Boyd <sboyd@...eaurora.org>,
Russell King <linux@....linux.org.uk>,
Kevin Hilman <khilman@...prootsystems.com>,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org,
Saravana Kannan <skannan@...eaurora.org>,
Santosh Shilimkar <santosh.shilimkar@...com>,
Colin Cross <ccross@...roid.com>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH 1/3] [ARM] Translate delay.S into (mostly) C
On Wed, 6 Oct 2010, Daniel Walker wrote:
> On Wed, 2010-10-06 at 11:30 -0700, Stephen Boyd wrote:
> > Is there some way to force GCC to do what I want (interleave the
> > functions)? It seems happy to inline them and then optimize the
> > register
> > usage and instruction ordering. Perhaps that is OK though and we're
> > wasting our time trying to be conservative in code size.
You could use the noinline qualifier from <linux/compiler.h> with those
functions you don't want inlined.
> Is it possible to do all this in assembly ? Can't you have the default
> implementation using this assembly with different function names, then
> just set the assembly function names in C code someplace?
That weould be my preference too. Being in assembly means that this
code is unlikely to change with different optimization levels and/or gcc
versions which would otherwise require different calibration values.
Relying on stable calibration is necessary for the lpj kernel cmdline
parameter to have some meaning.
Nicolas
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists