From: Tom Rini <trini@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] arm: New stack pointer is already aligned
Date: Mon, 13 Jan 2014 08:40:19 -0500 [thread overview]
Message-ID: <20140113134019.GF5181@bill-the-cat> (raw)
In-Reply-To: <20140113100750.10a3be2e@lilith>
On Mon, Jan 13, 2014 at 10:07:50AM +0100, Albert ARIBAUD wrote:
> Hi Wolfgang,
>
> On Fri, 29 Nov 2013 07:14:13 +0100, Wolfgang Denk <wd@denx.de> wrote:
>
> > Dear Tom Rini,
> >
> > In message <1385580930-9830-1-git-send-email-trini@ti.com> you wrote:
> > > The code in arch/arm/lib/board.c::board_init_f that sets
> > > gd->start_addr_sp has already make sure we're 8-byte aligned, so we
> > > don't need to do that again.
> > >
> > > Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
> > > Signed-off-by: Tom Rini <trini@ti.com>
> > > ---
> > > arch/arm/lib/crt0.S | 1 -
> > > 1 file changed, 1 deletion(-)
> > >
> > > diff --git a/arch/arm/lib/crt0.S b/arch/arm/lib/crt0.S
> > > index ac54b93..6b5ec01 100644
> > > --- a/arch/arm/lib/crt0.S
> > > +++ b/arch/arm/lib/crt0.S
> > > @@ -82,7 +82,6 @@ ENTRY(_main)
> > > */
> > >
> > > ldr sp, [r9, #GD_START_ADDR_SP] /* sp = gd->start_addr_sp */
> > > - bic sp, sp, #7 /* 8-byte alignment for ABI compliance */
> > > ldr r9, [r9, #GD_BD] /* r9 = gd->bd */
> > > sub r9, r9, #GD_SIZE /* new GD is below bd */
> >
> > I recommend to keep this instruction. It's just a bit of defensive
> > programming, and removing it does not save any measurable amount of
> > memory footprint nor execution time.
>
> I would even go further: it is the setting of SP in C code which
> should not be kept. I doubt the C specification mentions what should /
> might happen when changing the stack pointer on the fly in code which
> might need the stack at any point.
I'm fine with dropping this patch (I noticed as I was tracing something
else). But please note that in C we're just setting gd->start_addr_sp
and aligning it there, we don't modify sp at all until the snippet of
asm above.
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20140113/45d38bdc/attachment.pgp>
prev parent reply other threads:[~2014-01-13 13:40 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-27 19:35 [U-Boot] [PATCH] arm: New stack pointer is already aligned Tom Rini
2013-11-29 6:14 ` Wolfgang Denk
2014-01-13 9:07 ` Albert ARIBAUD
2014-01-13 13:40 ` Tom Rini [this message]
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=20140113134019.GF5181@bill-the-cat \
--to=trini@ti.com \
--cc=u-boot@lists.denx.de \
/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