Commit graph

3035 commits

Author SHA1 Message Date
Tim Angus
aa76adf490 * Android's InputStream::skip is apparently buggy, so instead read into a dummy buffer 2011-10-14 17:29:49 +01:00
Ryan C. Gordon
116a6faf2f Implement GL_GetProcAddress() for Android.
Fixes Bugzilla #1290.

Thanks to Gabriel Jacobo for the patch!

--HG--
extra : rebase_source : 80bd6c922b4e9c74582cc85d62462d87431315bd
2011-10-13 01:30:01 -04:00
Ryan C. Gordon
62176df129 Added support for multitouch on Android.
Fixes Bugzilla #1294.

Thanks to Gabriel Jacobo for the patch!
2011-10-13 01:21:35 -04:00
Ryan C. Gordon
bc13816375 Fixed a whole slew of compiler warnings that -Wall exposed. 2011-10-13 01:08:30 -04:00
Ryan C. Gordon
cf1adee2e4 Make sure window->driverdata is set before we might need it.
Thanks to Mako_energy for the fix!
2011-10-12 20:01:09 -04:00
Ryan C. Gordon
f2923fca25 Commit updated generated C code. 2011-10-11 22:42:54 -04:00
Ryan C. Gordon
cc8e8dea00 Fixed compiler warning for unused variable in generated C code. 2011-10-11 22:35:19 -04:00
Ryan C. Gordon
aac491ccac Fixed perl string escaping thing. 2011-10-11 22:34:52 -04:00
Ryan C. Gordon
d328ee7f5b Disable thread naming on Windows for now.
We need the C runtime, which we don't link against, for __try/__except.
2011-10-02 00:59:11 -04:00
Ryan C. Gordon
e07d7980cd Patched to compile on Mac OS X (I think). 2011-10-02 00:49:52 -04:00
Ryan C. Gordon
3d8f0392c1 Further patched to compile on Windows. 2011-10-02 00:43:56 -04:00
Ryan C. Gordon
18cd3d30c7 Patched to compile on Windows. 2011-10-02 00:36:18 -04:00
Ryan C. Gordon
0863dee582 1.3 API CHANGE: Add support for naming threads.
--HG--
extra : rebase_source : ae532d4b4d68ef86de0fc2cb6794a622e0841bce
2011-10-02 00:29:16 -04:00
Sam Lantinga
dead491b27 Fixed to compile with pedantic C 2011-09-27 23:16:04 -04:00
Sam Lantinga
e934e97c76 ============================================================ 2011-09-27 23:15:01 -04:00
Sam Lantinga
afe3250552 ============================================================ 2011-09-27 23:14:16 -04:00
Ryan C. Gordon
131470867d Replaced a sanity check with an SDL_assert(). 2011-09-21 02:42:25 -04:00
Ryan C. Gordon
081fbdf242 Don't call pthread_exit(), returning from RunThread() is equivalent. 2011-09-20 17:48:29 -04:00
Ryan C. Gordon
596099f2c0 Simplified Windows RunThread().
Removed checks for things that are always true, free unneeded struct before
 calling thread entry point, instead of after thread completes.
2011-09-20 17:42:58 -04:00
Ryan C. Gordon
82283b7279 Implemented x86 and x86-64 spinlock inline asm.
Favor it over Mac OS X API for Intel systems (but not GCC atomic intrinsics).

This might get us a little further on Cygwin builds, too.
2011-09-18 03:19:41 -04:00
Ryan C. Gordon
6fcfc35b50 Use an actual #error instead of a bogus symbol if there's no spinlock support. 2011-09-18 02:55:45 -04:00
Ryan C. Gordon
f369e4fa7c Patched to compile on some platforms. 2011-09-18 02:09:20 -04:00
Andreas Schiffler
1694584d77 Add special cases for empty rectangles in SDL_Rect functions 2011-09-17 22:35:57 -07:00
Ryan C. Gordon
a90884b482 Removed some FIXMEs (Nathan's changes were, in fact, correct). 2011-09-15 23:55:36 -04:00
Ryan C. Gordon
99f00f09bd Merged Nathan Heisey's Haiku work into the main SDL 1.3 branch.
This was a Google Summer of Code 2011 project, sponsored by the Haiku project.

We thank Nathan and the other Haiku developers for their support!
2011-09-15 23:51:07 -04:00
Ryan C. Gordon
15c4fb2a9d Clean up the win32 compiler warnings for SDL threads, in the 1.3 branch.
--HG--
extra : rebase_source : 420916ed06d79e2d3c1d50e5fb40314ac7d94d85
2011-09-12 13:36:38 -04:00
Andreas Schiffler
b1185bef03 Fix regression introducted by added parameter check in SDL_EnclosePoints. Add special case to speedup when no result was requested. 2011-09-12 09:00:01 -07:00
Ryan C. Gordon
d7cb5c41ca More work on cleaning out compiler warnings.
--HG--
extra : rebase_source : ab97ecaafc5a22451ea1bf8d4740380cf56f2f98
2011-09-11 04:02:40 -04:00
Ryan C. Gordon
ad214ecb4b Some MMX fixes from Patrick Baggett.
Original email...

Date: Sat, 10 Sep 2011 13:01:20 -0500
From: Patrick Baggett
To: SDL Development List <sdl@lists.libsdl.org>
Subject: Re: [SDL] SDL_memcpyMMX uses SSE instructions

In SDL_blit_copy.c, the function SDL_memcpyMMX() actually use SSE
instructions.

It is called in this context:

#ifdef __MMX__
    if (SDL_HasMMX() &&
        !((uintptr_t) src & 7) && !(srcskip & 7) &&
        !((uintptr_t) dst & 7) && !(dstskip & 7)) {
        while (h--) {
            SDL_memcpyMMX(dst, src, w);
            src += srcskip;
            dst += dstskip;
        }
        _mm_empty();
        return;
    }
#endif

This implies that the minimum CPU features are just MMX. There is a
separate SDL_memcpySSE() function.


The SDL_memcpyMMX() function does:

#ifdef __SSE__
        _mm_prefetch(src, _MM_HINT_NTA);
#endif

...which tests at compile time if SSE intrinsics are available, not at run
time. It generates the PREFETCHNTA instruction. It also uses _mm_stream_pi()
intrinsic, which generates the MOVNTQ instruction.

If you replace the "MMX" code with:

__m64* d64 = (__m64*)dst;
__m64* s64 = (__m64*)src;
 for(i= len / 64; i--;) {
   d64[0] = s64[0];
   d64[1] = s64[1];
   d64[2] = s64[2];
   d64[3] = s64[3];
   d64[4] = s64[4];
   d64[5] = s64[5];
   d64[6] = s64[6];
   d64[7] = s64[7];
   d64 += 8;
   s64 += 8;
 }

Then MSVC generates the correct movq instructions. GCC (4.5.0) seems to
think that using 2x movl is still better, but then again, GCC isn't actually
that good at optimizing intrinsics as I've found. At least the code won't
crash on my P2 though. :)

Also, there is no requirement for MMX to be aligned to the 8th byte. I
think the author assumed that SSE's 16 byte alignment requirement must
retroactively mean that MMX requires 8 byte alignment. Attached is the full
patch.

Patrick
2011-09-11 01:54:54 -04:00
Ryan C. Gordon
f77b7f703a Fixed a compiler warning. 2011-09-09 04:48:45 -04:00
Ryan C. Gordon
a65793b807 Added a newline to the end of a file to quiet old versions of GCC. 2011-09-09 02:43:04 -04:00
Ryan C. Gordon
caedc60d07 Removed legacy Mac OS X dlcompat code.
It was only needed for Mac OS X 10.0 through 10.2, so it seems silly to keep
 it around for SDL 1.3.

I'll leave it in the 1.2 branch for now, though.
2011-09-09 00:34:48 -04:00
Ryan C. Gordon
35ef24dd77 Fixed compiler warning on 32-bit Mac OS X. 2011-09-07 10:54:14 -04:00
Andreas Schiffler
e36c0d8376 Added input parameter validation to some SDL_rect functions 2011-09-04 20:34:48 -07:00
Ryan C. Gordon
d9a9cf5a98 Fixed a compiler warning on Mac OS X.
Thanks to Mattias Holm for the patch!
2011-09-02 14:00:57 -04:00
Ryan C. Gordon
96e8606bd5 Fixed a NSLog() format string.
Thanks to Mattias Holm for the patch!
2011-09-02 14:00:10 -04:00
Ryan C. Gordon
33981bc8ba Patched to compile. 2011-09-01 14:02:12 -04:00
Ryan C. Gordon
a622e7c305 Called method on wrong object in Android exception handler.
Fixes Bugzilla #1297.

Thanks to jon @ rafkind for the patch!
2011-09-01 04:42:09 -04:00
Ryan C. Gordon
af022f47ed Removed unused variable. 2011-09-01 04:34:05 -04:00
Ryan C. Gordon
6b4a7b19a4 Clean up any opened joysticks during SDL_JoystickQuit().
Otherwise, these leak memory and maybe operating system handles.
2011-09-01 04:25:15 -04:00
Ryan C. Gordon
d2587c649d Automated merge with https://bitbucket.org/Markusk/sdl-gsoc 2011-08-29 13:17:07 -04:00
Tim Angus
6f0f508a4f * Fix many memory leaks in Android FS code
* Set SDL error string with Java exception details when one occurs
* Fix tabulation of SDLActivity::getContext
2011-08-26 13:11:53 +01:00
Ryan C. Gordon
0daed19a0e Removed the MAC_OS_X_VERSION_10_x macros from the 1.3 branch. 2011-08-25 03:11:28 -04:00
Ryan C. Gordon
c3366d1756 Patched to compile on Windows. 2011-08-23 16:47:22 -04:00
Ryan C. Gordon
1ea43749bd Cleaned out functions deprecated in Mac OS X 10.6 SDK. 2011-08-23 15:17:44 -04:00
Ryan C. Gordon
84d42b9a9f Fixed wrong datatype for shaders and programs.
This is a pointer on Mac OS X, so it risked losing data in 64-bit builds.
2011-08-23 06:27:04 -04:00
Nathan Heisey
b6c26ffe71 Fixed static misnomers 2011-08-22 21:07:16 +00:00
Nathan Heisey
4799ac2b6e Partially cleaned out code 2011-08-22 11:02:05 +00:00
Nathan Heisey
491df9d730 Temporary mode-setting hack works 2011-08-20 15:16:13 +00:00
Kees Bakker
315893bf28 Split off SDL_uikitviewcontroller in its own module
--HG--
extra : rebase_source : 9f436d0751280968fb49307fb522b0d6c72d4409
2011-08-17 23:26:58 +02:00