From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wolfgang Denk Date: Fri, 29 Nov 2013 07:14:13 +0100 Subject: [U-Boot] [PATCH] arm: New stack pointer is already aligned In-Reply-To: <1385580930-9830-1-git-send-email-trini@ti.com> References: <1385580930-9830-1-git-send-email-trini@ti.com> Message-ID: <20131129061413.52BD4380401@gemini.denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > Signed-off-by: Tom Rini > --- > 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. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de Madness takes its toll. Please have exact change.