Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Commit

Permalink
Browse files Browse the repository at this point in the history
Default SSE2 off on iX86, since gcc will use it for floating point op…
…erations

even if -mfpmath=387 is set.  Grr...
  • Loading branch information
slouken committed Dec 7, 2008
1 parent c490852 commit fd59d05
Showing 1 changed file with 26 additions and 26 deletions.
52 changes: 26 additions & 26 deletions configure.in
Expand Up @@ -285,6 +285,30 @@ AC_HELP_STRING([--enable-assembly], [Enable assembly routines [[default=yes]]]),
if test x$enable_assembly = xyes; then
AC_DEFINE(SDL_ASSEMBLY_ROUTINES)

# Make sure that we don't generate floating point code that would
# cause illegal instruction exceptions on older processors
case "$host" in
*-*-darwin*)
# Don't need to worry about Apple hardware, it's all SSE capable
default_ssemath=yes
;;
*64-*-*)
# x86 64-bit architectures all have SSE instructions
default_ssemath=yes
;;
*)
default_ssemath=no
;;
esac
AC_ARG_ENABLE(ssemath,
AC_HELP_STRING([--enable-ssemath], [Allow GCC to use SSE floating point math [[default=no]]]),
, enable_ssemath=$default_ssemath)
if test x$enable_ssemath = xno; then
if test x$have_gcc_sse = xyes -o x$have_gcc_sse2 = xyes; then
EXTRA_CFLAGS="$EXTRA_CFLAGS -mfpmath=387"
fi
fi

dnl Check for various instruction support
AC_ARG_ENABLE(mmx,
AC_HELP_STRING([--enable-mmx], [use MMX assembly routines [[default=yes]]]),
Expand Down Expand Up @@ -368,8 +392,8 @@ AC_HELP_STRING([--enable-sse], [use SSE assembly routines [[default=yes]]]),
fi

AC_ARG_ENABLE(sse2,
AC_HELP_STRING([--enable-sse2], [use SSE2 assembly routines [[default=yes]]]),
, enable_sse2=yes)
AC_HELP_STRING([--enable-sse2], [use SSE2 assembly routines [[default=no]]]),
, enable_sse2=$default_ssemath)
if test x$enable_sse2 = xyes; then
save_CFLAGS="$CFLAGS"
have_gcc_sse2=no
Expand All @@ -394,30 +418,6 @@ AC_HELP_STRING([--enable-sse2], [use SSE2 assembly routines [[default=yes]]]),
fi
fi

# Make sure that we don't generate floating point code that would
# cause illegal instruction exceptions on older processors
case "$host" in
*-*-darwin*)
# Don't need to worry about Apple hardware, it's all SSE capable
default_ssemath=yes
;;
*64-*-*)
# x86 64-bit architectures all have SSE instructions
default_ssemath=yes
;;
*)
default_ssemath=no
;;
esac
AC_ARG_ENABLE(ssemath,
AC_HELP_STRING([--enable-ssemath], [Allow GCC to use SSE floating point math [[default=no]]]),
, enable_ssemath=$default_ssemath)
if test x$enable_ssemath = xno; then
if test x$have_gcc_sse = xyes -o x$have_gcc_sse2 = xyes; then
EXTRA_CFLAGS="$EXTRA_CFLAGS -mfpmath=387"
fi
fi

AC_ARG_ENABLE(altivec,
AC_HELP_STRING([--enable-altivec], [use Altivec assembly routines [[default=yes]]]),
, enable_altivec=yes)
Expand Down

0 comments on commit fd59d05

Please sign in to comment.