OpenGL and OpenCL are NOT related! (Committed here are some scons fixes)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4349 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
XTra.KrazzY
2009-09-30 12:58:02 +00:00
parent ffe12ec752
commit 4499444a86
3 changed files with 26 additions and 20 deletions

View File

@ -46,21 +46,24 @@ struct sDecoders
cl_kernel kernel; // compute kernel
const char **cKernel;
};
const char *Kernel = "\n" \
"__kernel void Decode( __local unsigned char *dst, __local const unsigned char *src, \n" \
" int width, int height) \n" \
" int id = get_global_id(0); \n" \
" for (int xy = 0; xy < height*width; xy += 4)"
" for (int iy = 0; iy < 4; iy++, src += 8)"
" {"
" u16 *ptr = (u16 *)dst + ((xy / width) + iy) * width + (xy % width);"
" u16 *s = (u16 *)src;"
" for(int j = 0; j < 4; j++)"
" *ptr++ = Common::swap16(*s++);"
" }" \
const char *Kernel = " \
__kernel void Decode(__local unsigned char *dst, \
__local const unsigned char *src, \
int width, int height) \
{ \
int id = get_global_id(0); \
for (int xy = 0; xy < height*width; xy += 4) \
for (int iy = 0; iy < 4; iy++, src += 8) { \
u16 *ptr = (u16 *)dst + ((xy / width) + iy) * \
width + (xy % width); \
u16 *s = (u16 *)src; \
for(int j = 0; j < 4; j++) \
*ptr++ = Common::swap16(*s++); \
}
}";
sDecoders Decoders[] = { {NULL, NULL, &Kernel},
};
bool Inited = false;
// TODO: Deinit (clRelease...)

View File

@ -21,7 +21,7 @@
#include "CPUDetect.h"
#include "TextureDecoder.h"
#ifdef HAVE_OPENCL
#if defined(HAVE_OPENCL) && HAVE_OPENCL
#include "OpenCL/TextureDecoder.h"
#endif
@ -581,11 +581,11 @@ void TexDecoder_SetTexFmtOverlayOptions(bool enable, bool center)
PC_TexFormat TexDecoder_Decode(u8 *dst, const u8 *src, int width, int height, int texformat, int tlutaddr, int tlutfmt)
{
#ifdef HAVE_OPENCL
#if defined(HAVE_OPENCL) && HAVE_OPENCL
PC_TexFormat retval = TexDecoder_Decode_OpenCL(dst, src, width, height, texformat, tlutaddr, tlutfmt);
#else
#else
PC_TexFormat retval = TexDecoder_Decode_real(dst,src,width,height,texformat,tlutaddr,tlutfmt);
#endif
#endif
if ((!TexFmt_Overlay_Enable)|| (retval == PC_TEX_FMT_NONE))
return retval;