summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/Src/TextureDecoder.cpp
diff options
context:
space:
mode:
authornakeee <nakeee@gmail.com>2009-01-14 13:00:25 +0000
committernakeee <nakeee@gmail.com>2009-01-14 13:00:25 +0000
commit87e6f0b18c3421231ccd33938e32b43e1b5657a3 (patch)
treebe905aba65183b9e7a92afb991d01f24fec42363 /Source/Core/VideoCommon/Src/TextureDecoder.cpp
parentb252be40cf361c7c9caad0e450b5b6cdbafb0abe (diff)
ifdefed the sse3 code just to make sure
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1869 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/VideoCommon/Src/TextureDecoder.cpp')
-rw-r--r--Source/Core/VideoCommon/Src/TextureDecoder.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/Core/VideoCommon/Src/TextureDecoder.cpp b/Source/Core/VideoCommon/Src/TextureDecoder.cpp
index a9e1234935..de8e383f91 100644
--- a/Source/Core/VideoCommon/Src/TextureDecoder.cpp
+++ b/Source/Core/VideoCommon/Src/TextureDecoder.cpp
@@ -21,8 +21,9 @@
#include "TextureDecoder.h"
#include "LookUpTables.h"
#include <emmintrin.h>
+#ifdef __SSSE3__
#include <tmmintrin.h>
-
+#endif
//Uncomment this to enable Texture Format ID overlays
#define OVERLAY_TEXFMT
@@ -186,10 +187,11 @@ inline void decodebytesI4(u32 *dst, const u8 *src)
}
}
-inline void sseDecodebytesI4(u32* dst, const __m128i* sseSrc, int height,
+inline void sseDecodebytesI4(u8* dst, const __m128i* sseSrc, int height,
int width) {
__m128i* sseDst;
+#ifdef __SSSE3__
// SSSE3 variant
if(cpu_info.bSSSE3) {
@@ -241,7 +243,7 @@ inline void sseDecodebytesI4(u32* dst, const __m128i* sseSrc, int height,
return;
}
-
+#endif
__m128i Lmask = _mm_set1_epi8 (0x0F);
__m128i Hmask = _mm_set1_epi8 (0xF0);
@@ -507,7 +509,7 @@ PC_TexFormat TexDecoder_Decode(u8 *dst, const u8 *src, int width, int height, in
return PC_TEX_FMT_BGRA32;
case GX_TF_I4:
{
- sseDecodebytesI4((u32 *)dst, (const __m128i *)src, height,
+ sseDecodebytesI4(dst, (const __m128i *)src, height,
width);
/* Old non-SSE way