comparison libswscale/rgb2rgb_template.c @ 29397:2d985cc879c9

Replace WORDS_BIGENDIAN with HAVE_BIGENDIAN
author mru
date Sun, 26 Jul 2009 12:26:32 +0000
parents e949de41d25a
children 0673fad0546f
comparison
equal deleted inserted replaced
29396:2de35e358503 29397:2d985cc879c9
113 __asm__ volatile(SFENCE:::"memory"); 113 __asm__ volatile(SFENCE:::"memory");
114 __asm__ volatile(EMMS:::"memory"); 114 __asm__ volatile(EMMS:::"memory");
115 #endif 115 #endif
116 while (s < end) 116 while (s < end)
117 { 117 {
118 #ifdef WORDS_BIGENDIAN 118 #if HAVE_BIGENDIAN
119 /* RGB24 (= R,G,B) -> RGB32 (= A,B,G,R) */ 119 /* RGB24 (= R,G,B) -> RGB32 (= A,B,G,R) */
120 *dest++ = 255; 120 *dest++ = 255;
121 *dest++ = s[2]; 121 *dest++ = s[2];
122 *dest++ = s[1]; 122 *dest++ = s[1];
123 *dest++ = s[0]; 123 *dest++ = s[0];
199 __asm__ volatile(SFENCE:::"memory"); 199 __asm__ volatile(SFENCE:::"memory");
200 __asm__ volatile(EMMS:::"memory"); 200 __asm__ volatile(EMMS:::"memory");
201 #endif 201 #endif
202 while (s < end) 202 while (s < end)
203 { 203 {
204 #ifdef WORDS_BIGENDIAN 204 #if HAVE_BIGENDIAN
205 /* RGB32 (= A,B,G,R) -> RGB24 (= R,G,B) */ 205 /* RGB32 (= A,B,G,R) -> RGB24 (= R,G,B) */
206 s++; 206 s++;
207 dest[2] = *s++; 207 dest[2] = *s++;
208 dest[1] = *s++; 208 dest[1] = *s++;
209 dest[0] = *s++; 209 dest[0] = *s++;
1262 int bgr= *s++; 1262 int bgr= *s++;
1263 *((uint32_t*)d)++ = ((bgr&0x1F)<<3) + ((bgr&0x3E0)<<6) + ((bgr&0x7C00)<<9); 1263 *((uint32_t*)d)++ = ((bgr&0x1F)<<3) + ((bgr&0x3E0)<<6) + ((bgr&0x7C00)<<9);
1264 #else 1264 #else
1265 register uint16_t bgr; 1265 register uint16_t bgr;
1266 bgr = *s++; 1266 bgr = *s++;
1267 #ifdef WORDS_BIGENDIAN 1267 #if HAVE_BIGENDIAN
1268 *d++ = 255; 1268 *d++ = 255;
1269 *d++ = (bgr&0x7C00)>>7; 1269 *d++ = (bgr&0x7C00)>>7;
1270 *d++ = (bgr&0x3E0)>>2; 1270 *d++ = (bgr&0x3E0)>>2;
1271 *d++ = (bgr&0x1F)<<3; 1271 *d++ = (bgr&0x1F)<<3;
1272 #else 1272 #else
1319 #endif 1319 #endif
1320 while (s < end) 1320 while (s < end)
1321 { 1321 {
1322 register uint16_t bgr; 1322 register uint16_t bgr;
1323 bgr = *s++; 1323 bgr = *s++;
1324 #ifdef WORDS_BIGENDIAN 1324 #if HAVE_BIGENDIAN
1325 *d++ = 255; 1325 *d++ = 255;
1326 *d++ = (bgr&0xF800)>>8; 1326 *d++ = (bgr&0xF800)>>8;
1327 *d++ = (bgr&0x7E0)>>3; 1327 *d++ = (bgr&0x7E0)>>3;
1328 *d++ = (bgr&0x1F)<<3; 1328 *d++ = (bgr&0x1F)<<3;
1329 #else 1329 #else
1579 1579
1580 #else 1580 #else
1581 int i, *idst = (int32_t *) dst; 1581 int i, *idst = (int32_t *) dst;
1582 const uint8_t *yc = ysrc, *uc = usrc, *vc = vsrc; 1582 const uint8_t *yc = ysrc, *uc = usrc, *vc = vsrc;
1583 for (i = 0; i < chromWidth; i++){ 1583 for (i = 0; i < chromWidth; i++){
1584 #ifdef WORDS_BIGENDIAN 1584 #if HAVE_BIGENDIAN
1585 *idst++ = (yc[0] << 24)+ (uc[0] << 16) + 1585 *idst++ = (yc[0] << 24)+ (uc[0] << 16) +
1586 (yc[1] << 8) + (vc[0] << 0); 1586 (yc[1] << 8) + (vc[0] << 0);
1587 #else 1587 #else
1588 *idst++ = yc[0] + (uc[0] << 8) + 1588 *idst++ = yc[0] + (uc[0] << 8) +
1589 (yc[1] << 16) + (vc[0] << 24); 1589 (yc[1] << 16) + (vc[0] << 24);
1685 1685
1686 #else 1686 #else
1687 int i, *idst = (int32_t *) dst; 1687 int i, *idst = (int32_t *) dst;
1688 const uint8_t *yc = ysrc, *uc = usrc, *vc = vsrc; 1688 const uint8_t *yc = ysrc, *uc = usrc, *vc = vsrc;
1689 for (i = 0; i < chromWidth; i++){ 1689 for (i = 0; i < chromWidth; i++){
1690 #ifdef WORDS_BIGENDIAN 1690 #if HAVE_BIGENDIAN
1691 *idst++ = (uc[0] << 24)+ (yc[0] << 16) + 1691 *idst++ = (uc[0] << 24)+ (yc[0] << 16) +
1692 (vc[0] << 8) + (yc[1] << 0); 1692 (vc[0] << 8) + (yc[1] << 0);
1693 #else 1693 #else
1694 *idst++ = uc[0] + (yc[0] << 8) + 1694 *idst++ = uc[0] + (yc[0] << 8) +
1695 (vc[0] << 16) + (yc[1] << 24); 1695 (vc[0] << 16) + (yc[1] << 24);