[coreboot] New patch to review for coreboot: 05f4b03 Use -mno-sse to prevent overzealous gcc optimizations

Stefan Reinauer (stefan.reinauer@coreboot.org) gerrit at coreboot.org
Fri Mar 2 23:01:49 CET 2012

Stefan Reinauer (stefan.reinauer at coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/694


commit 05f4b03fb64999ba373fe61256f358e5371bf8ae
Author: Stefan Reinauer <reinauer at chromium.org>
Date:   Thu Jun 23 17:12:08 2011 -0700

    Use -mno-sse to prevent overzealous gcc optimizations
    The offending part that made coreboot crash with some toolchains
    was that gcc emits SSE instructions but coreboot did not enable SSE at
    that point.
    Since the gain for coreboot using SSE instructions is not measurable,
    let's not use SSE instructions rather than enabling SSE early on.
    One rationale behind this is that other parts of coreboot, like the
    SMM handler would need fixing because the XMM registers are not saved
    on SMM entry. Thus keep it simple.
    Change-Id: I14f0942f300085767ece44cec570fb15c761e88d
    Signed-off-by: Stefan Reinauer <reinauer at google.com>
 util/xcompile/xcompile |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile
index 4926394..f5d43d0 100644
--- a/util/xcompile/xcompile
+++ b/util/xcompile/xcompile
@@ -84,6 +84,10 @@ testcc "$CC" "$CFLAGS-Wl,--build-id=none " && CFLAGS="$CFLAGS-Wl,--build-id=none
 # now:
 testcc "$CC" "$CFLAGS-Wno-unused-but-set-variable " && \
 	       CFLAGS="$CFLAGS-Wno-unused-but-set-variable "
+# Use bfd linker instead of gold if available:
+testcc "$CC" "$CFLAGS-fuse-ld=bfd " && CFLAGS="$CFLAGS-fuse-ld=bfd " && LINKER_SUFFIX='.bfd'
+# Prevent SSE instructions sneaking in:
+testcc "$CC" "$CFLAGS-mno-sse " && CFLAGS="$CFLAGS-mno-sse "
 if which gcc 2>/dev/null >/dev/null; then

More information about the coreboot mailing list