ramstage: Align stack to 16 bytes

Some SSE instructions could take 128bit memory operands from
stack.

AGESA vendorcode was always built with SSE enabled, but until
now stack alignment was not known to cause major issues. Seems
like GCC-6.3 more likely emits instructions that depend on the
16 byte alignment of stack.

Change-Id: Iea3de54f20ff242105bce5a5edbbd76b04c0116c
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/18823
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
Kyösti Mälkki 2017-03-15 08:07:22 +02:00 committed by Martin Roth
parent 85e81dfa6d
commit 4796c32ad6
1 changed files with 2 additions and 0 deletions

View File

@ -110,6 +110,8 @@ _start:
*/ */
post_code(POST_PRE_HARDWAREMAIN) /* post fe */ post_code(POST_PRE_HARDWAREMAIN) /* post fe */
andl $0xFFFFFFF0, %esp
#if CONFIG_GDB_WAIT #if CONFIG_GDB_WAIT
call gdb_hw_init call gdb_hw_init
call gdb_stub_breakpoint call gdb_stub_breakpoint