From 215c6b19f7c2980447212ccd2e5d491fc937d4c8 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Fri, 17 Aug 2007 06:41:20 +0000 Subject: [PATCH] Enabled SSE2 intrinsics --- VisualC/SDL/SDL.vcproj | 4 ++-- configure.in | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/VisualC/SDL/SDL.vcproj b/VisualC/SDL/SDL.vcproj index 1b0e9d1c6..8797ec595 100644 --- a/VisualC/SDL/SDL.vcproj +++ b/VisualC/SDL/SDL.vcproj @@ -47,7 +47,7 @@ Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\include" - PreprocessorDefinitions="_DEBUG;_WINDOWS;_WIN32_WINNT=0x0400;__MMX__;__3dNOW__;__SSE__" + PreprocessorDefinitions="_DEBUG;_WINDOWS;_WIN32_WINNT=0x0400;__MMX__;__3dNOW__;__SSE__;__SSE2__" RuntimeLibrary="2" BufferSecurityCheck="false" UsePrecompiledHeader="0" @@ -145,7 +145,7 @@ InlineFunctionExpansion="1" EnableIntrinsicFunctions="false" AdditionalIncludeDirectories="..\..\include" - PreprocessorDefinitions="NDEBUG;_WINDOWS;_WIN32_WINNT=0x0400;__MMX__;__3dNOW__;__SSE__" + PreprocessorDefinitions="NDEBUG;_WINDOWS;_WIN32_WINNT=0x0400;__MMX__;__3dNOW__;__SSE__;__SSE2__" StringPooling="true" RuntimeLibrary="2" BufferSecurityCheck="false" diff --git a/configure.in b/configure.in index 262beee9c..bb40c729d 100644 --- a/configure.in +++ b/configure.in @@ -356,6 +356,32 @@ AC_HELP_STRING([--enable-sse], [use SSE assembly routines [[default=yes]]]), fi fi + AC_ARG_ENABLE(sse2, +AC_HELP_STRING([--enable-sse2], [use SSE2 assembly routines [[default=yes]]]), + , enable_sse2=yes) + if test x$enable_sse2 = xyes; then + save_CFLAGS="$CFLAGS" + have_gcc_sse2=no + AC_MSG_CHECKING(for GCC -msse2 option) + sse2_CFLAGS="-msse2" + CFLAGS="$save_CFLAGS $sse2_CFLAGS" + + AC_TRY_COMPILE([ + #include + #ifndef __SSE2__ + #error Assembler CPP flag not enabled + #endif + ],[ + ],[ + have_gcc_sse2=yes + ]) + AC_MSG_RESULT($have_gcc_sse2) + + if test x$have_gcc_sse2 = xyes; then + EXTRA_CFLAGS="$EXTRA_CFLAGS $sse2_CFLAGS" + fi + fi + AC_ARG_ENABLE(altivec, AC_HELP_STRING([--enable-altivec], [use Altivec assembly routines [[default=yes]]]), , enable_altivec=yes)