Gained 5 FPS in testsprite because Mac OS X memset is highly optimized

This commit is contained in:
Sam Lantinga
2007-08-12 18:27:44 +00:00
parent 6d8a22e975
commit f2c7446b24

View File

@@ -568,6 +568,7 @@ SDL_FillRect(SDL_Surface * dst, SDL_Rect * dstrect, Uint32 color)
dstrect->x * dst->format->BytesPerPixel;
if (dst->format->palette || (color == 0)) {
x = dstrect->w * dst->format->BytesPerPixel;
#ifndef __MACOSX__ /* memset() is optimized on Mac OS X */
if (!color && !((uintptr_t) row & 3) && !(x & 3)
&& !(dst->pitch & 3)) {
int n = x >> 2;
@@ -575,7 +576,9 @@ SDL_FillRect(SDL_Surface * dst, SDL_Rect * dstrect, Uint32 color)
SDL_memset4(row, 0, n);
row += dst->pitch;
}
} else {
} else
#endif /* !__MACOSX__ */
{
for (y = dstrect->h; y; y--) {
SDL_memset(row, color, x);
row += dst->pitch;