Remove QT_MEMCPY_USHORT macro and just use memcpy
Compilers can optimize memcpy, so don't try to be too smart. Change-Id: Iba4b5c183776497d8ee1fffd156455b50de65182 Patch-By: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>bb10
parent
87d6a631b7
commit
2b8b878f5a
|
|
@ -187,19 +187,11 @@ void qt_blend_rgb16_on_rgb16(uchar *dst, int dbpl,
|
|||
#endif
|
||||
|
||||
if (const_alpha == 256) {
|
||||
if (w <= 64) {
|
||||
while (h--) {
|
||||
QT_MEMCPY_USHORT(dst, src, w);
|
||||
dst += dbpl;
|
||||
src += sbpl;
|
||||
}
|
||||
} else {
|
||||
int length = w << 1;
|
||||
while (h--) {
|
||||
memcpy(dst, src, length);
|
||||
dst += dbpl;
|
||||
src += sbpl;
|
||||
}
|
||||
int length = w << 1;
|
||||
while (h--) {
|
||||
memcpy(dst, src, length);
|
||||
dst += dbpl;
|
||||
src += sbpl;
|
||||
}
|
||||
} else if (const_alpha != 0) {
|
||||
quint16 *d = (quint16 *) dst;
|
||||
|
|
|
|||
|
|
@ -944,26 +944,6 @@ inline void qt_rectfill(T *dest, T value,
|
|||
}
|
||||
}
|
||||
|
||||
#define QT_MEMCPY_USHORT(dest, src, length) \
|
||||
do { \
|
||||
/* Duff's device */ \
|
||||
ushort *_d = (ushort*)(dest); \
|
||||
const ushort *_s = (const ushort*)(src); \
|
||||
int n = ((length) + 7) / 8; \
|
||||
switch ((length) & 0x07) \
|
||||
{ \
|
||||
case 0: do { *_d++ = *_s++; Q_FALLTHROUGH(); \
|
||||
case 7: *_d++ = *_s++; Q_FALLTHROUGH(); \
|
||||
case 6: *_d++ = *_s++; Q_FALLTHROUGH(); \
|
||||
case 5: *_d++ = *_s++; Q_FALLTHROUGH(); \
|
||||
case 4: *_d++ = *_s++; Q_FALLTHROUGH(); \
|
||||
case 3: *_d++ = *_s++; Q_FALLTHROUGH(); \
|
||||
case 2: *_d++ = *_s++; Q_FALLTHROUGH(); \
|
||||
case 1: *_d++ = *_s++; \
|
||||
} while (--n > 0); \
|
||||
} \
|
||||
} while (false)
|
||||
|
||||
inline ushort qConvertRgb32To16(uint c)
|
||||
{
|
||||
return (((c) >> 3) & 0x001f)
|
||||
|
|
|
|||
Loading…
Reference in New Issue