diff options
| author | Soren Jorvang <soren.jorvang@gmail.com> | 2010-07-31 14:40:01 +0000 |
|---|---|---|
| committer | Soren Jorvang <soren.jorvang@gmail.com> | 2010-07-31 14:40:01 +0000 |
| commit | 824b509d2e1b1d9964b7011174d6de0375eb350f (patch) | |
| tree | c76e42e5e10c7ec70be3987768b85a1764ccbd06 /Source/Core/VideoCommon/Src/TextureDecoder.cpp | |
| parent | 840bd3613f43534c8697b6cef771edc08dbd266c (diff) | |
Make the SSE3.1 VideoCommon code available in GCC builds.
The GCC model for extended instructions like these is that you compile
with -msse3 etc. These affect code generation for whole compilation units,
so the idea is that you have a separate .c file for each instruction set
class and then indirect to the desired one at runtime.
Without e.g. -msse4.1, the GCC built-ins used by <foointrin.h> are not
available. However, in our specific case of compiling with -msse2 and
wanting to use SSE3.1 code, enough built-ins are available that we only
need to provide a little hack for pshufb.
Upgrading this to also use SSE4.1 instructions doesn't appear feasible
without a lot of undesirable duplication of GCC built-in functions and
headers, so we'd probably have to move to the GCC model of separate
source files for that.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6014 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/VideoCommon/Src/TextureDecoder.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/Src/TextureDecoder.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/Source/Core/VideoCommon/Src/TextureDecoder.cpp b/Source/Core/VideoCommon/Src/TextureDecoder.cpp index 509def5a74..0414c0e9fb 100644 --- a/Source/Core/VideoCommon/Src/TextureDecoder.cpp +++ b/Source/Core/VideoCommon/Src/TextureDecoder.cpp @@ -15,14 +15,6 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ -#include <cmath> - -#if _M_SSE >= 0x401 -#include <smmintrin.h> -#elif _M_SSE >= 0x301 -#include <tmmintrin.h> -#endif - #include "Common.h" //#include "VideoCommon.h" // to get debug logs @@ -37,6 +29,14 @@ #include "LookUpTables.h" +#include <cmath> + +#if _M_SSE >= 0x401 +#include <smmintrin.h> +#elif _M_SSE >= 0x301 +#include <tmmintrin.h> +#endif + bool TexFmt_Overlay_Enable=false; bool TexFmt_Overlay_Center=false; |
