stdinc: On macOS and iOS, use memset_pattern4() for SDL_memset4().

Fixes Bugzilla #4724.
This commit is contained in:
Ryan C. Gordon 2019-09-04 00:39:47 -04:00
parent 892c8d5058
commit f49c07b5c4

View File

@ -420,7 +420,9 @@ extern DECLSPEC void *SDLCALL SDL_memset(SDL_OUT_BYTECAP(len) void *dst, int c,
/* Note that memset() is a byte assignment and this is a 32-bit assignment, so they're not directly equivalent. */ /* Note that memset() is a byte assignment and this is a 32-bit assignment, so they're not directly equivalent. */
SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords) SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords)
{ {
#if defined(__GNUC__) && defined(i386) #ifdef __APPLE__
memset_pattern4(dst, &val, dwords * 4);
#elif defined(__GNUC__) && defined(i386)
int u0, u1, u2; int u0, u1, u2;
__asm__ __volatile__ ( __asm__ __volatile__ (
"cld \n\t" "cld \n\t"