Mercurial > mplayer.hg
comparison postproc/rgb2rgb.c @ 12301:b80f95e24c96
attribute_used patch by (matthieu castet <castet.matthieu at free dot fr>)
author | michael |
---|---|
date | Mon, 26 Apr 2004 19:38:17 +0000 |
parents | 9db8700a5a16 |
children | 821f464b4d90 |
comparison
equal
deleted
inserted
replaced
12300:95ea9f5f6f14 | 12301:b80f95e24c96 |
---|---|
69 int srcStride3, int dstStride); | 69 int srcStride3, int dstStride); |
70 | 70 |
71 #ifdef ARCH_X86 | 71 #ifdef ARCH_X86 |
72 static const uint64_t mmx_null __attribute__((aligned(8))) = 0x0000000000000000ULL; | 72 static const uint64_t mmx_null __attribute__((aligned(8))) = 0x0000000000000000ULL; |
73 static const uint64_t mmx_one __attribute__((aligned(8))) = 0xFFFFFFFFFFFFFFFFULL; | 73 static const uint64_t mmx_one __attribute__((aligned(8))) = 0xFFFFFFFFFFFFFFFFULL; |
74 static const uint64_t mask32b __attribute__((aligned(8))) = 0x000000FF000000FFULL; | 74 static const uint64_t mask32b attribute_used __attribute__((aligned(8))) = 0x000000FF000000FFULL; |
75 static const uint64_t mask32g __attribute__((aligned(8))) = 0x0000FF000000FF00ULL; | 75 static const uint64_t mask32g attribute_used __attribute__((aligned(8))) = 0x0000FF000000FF00ULL; |
76 static const uint64_t mask32r __attribute__((aligned(8))) = 0x00FF000000FF0000ULL; | 76 static const uint64_t mask32r attribute_used __attribute__((aligned(8))) = 0x00FF000000FF0000ULL; |
77 static const uint64_t mask32 __attribute__((aligned(8))) = 0x00FFFFFF00FFFFFFULL; | 77 static const uint64_t mask32 __attribute__((aligned(8))) = 0x00FFFFFF00FFFFFFULL; |
78 static const uint64_t mask3216br __attribute__((aligned(8)))=0x00F800F800F800F8ULL; | 78 static const uint64_t mask3216br __attribute__((aligned(8)))=0x00F800F800F800F8ULL; |
79 static const uint64_t mask3216g __attribute__((aligned(8)))=0x0000FC000000FC00ULL; | 79 static const uint64_t mask3216g __attribute__((aligned(8)))=0x0000FC000000FC00ULL; |
80 static const uint64_t mask3215g __attribute__((aligned(8)))=0x0000F8000000F800ULL; | 80 static const uint64_t mask3215g __attribute__((aligned(8)))=0x0000F8000000F800ULL; |
81 static const uint64_t mul3216 __attribute__((aligned(8))) = 0x2000000420000004ULL; | 81 static const uint64_t mul3216 __attribute__((aligned(8))) = 0x2000000420000004ULL; |
82 static const uint64_t mul3215 __attribute__((aligned(8))) = 0x2000000820000008ULL; | 82 static const uint64_t mul3215 __attribute__((aligned(8))) = 0x2000000820000008ULL; |
83 static const uint64_t mask24b __attribute__((aligned(8))) = 0x00FF0000FF0000FFULL; | 83 static const uint64_t mask24b attribute_used __attribute__((aligned(8))) = 0x00FF0000FF0000FFULL; |
84 static const uint64_t mask24g __attribute__((aligned(8))) = 0xFF0000FF0000FF00ULL; | 84 static const uint64_t mask24g attribute_used __attribute__((aligned(8))) = 0xFF0000FF0000FF00ULL; |
85 static const uint64_t mask24r __attribute__((aligned(8))) = 0x0000FF0000FF0000ULL; | 85 static const uint64_t mask24r attribute_used __attribute__((aligned(8))) = 0x0000FF0000FF0000ULL; |
86 static const uint64_t mask24l __attribute__((aligned(8))) = 0x0000000000FFFFFFULL; | 86 static const uint64_t mask24l __attribute__((aligned(8))) = 0x0000000000FFFFFFULL; |
87 static const uint64_t mask24h __attribute__((aligned(8))) = 0x0000FFFFFF000000ULL; | 87 static const uint64_t mask24h __attribute__((aligned(8))) = 0x0000FFFFFF000000ULL; |
88 static const uint64_t mask24hh __attribute__((aligned(8))) = 0xffff000000000000ULL; | 88 static const uint64_t mask24hh __attribute__((aligned(8))) = 0xffff000000000000ULL; |
89 static const uint64_t mask24hhh __attribute__((aligned(8))) = 0xffffffff00000000ULL; | 89 static const uint64_t mask24hhh __attribute__((aligned(8))) = 0xffffffff00000000ULL; |
90 static const uint64_t mask24hhhh __attribute__((aligned(8))) = 0xffffffffffff0000ULL; | 90 static const uint64_t mask24hhhh __attribute__((aligned(8))) = 0xffffffffffff0000ULL; |
102 static const uint64_t red_15mask __attribute__((aligned(8))) = 0x00007c000000f800ULL; | 102 static const uint64_t red_15mask __attribute__((aligned(8))) = 0x00007c000000f800ULL; |
103 static const uint64_t green_15mask __attribute__((aligned(8)))= 0x000003e0000007e0ULL; | 103 static const uint64_t green_15mask __attribute__((aligned(8)))= 0x000003e0000007e0ULL; |
104 static const uint64_t blue_15mask __attribute__((aligned(8))) = 0x0000001f0000001fULL; | 104 static const uint64_t blue_15mask __attribute__((aligned(8))) = 0x0000001f0000001fULL; |
105 | 105 |
106 #ifdef FAST_BGR2YV12 | 106 #ifdef FAST_BGR2YV12 |
107 static const uint64_t bgr2YCoeff __attribute__((aligned(8))) = 0x000000210041000DULL; | 107 static const uint64_t bgr2YCoeff attribute_used __attribute__((aligned(8))) = 0x000000210041000DULL; |
108 static const uint64_t bgr2UCoeff __attribute__((aligned(8))) = 0x0000FFEEFFDC0038ULL; | 108 static const uint64_t bgr2UCoeff attribute_used __attribute__((aligned(8))) = 0x0000FFEEFFDC0038ULL; |
109 static const uint64_t bgr2VCoeff __attribute__((aligned(8))) = 0x00000038FFD2FFF8ULL; | 109 static const uint64_t bgr2VCoeff attribute_used __attribute__((aligned(8))) = 0x00000038FFD2FFF8ULL; |
110 #else | 110 #else |
111 static const uint64_t bgr2YCoeff __attribute__((aligned(8))) = 0x000020E540830C8BULL; | 111 static const uint64_t bgr2YCoeff attribute_used __attribute__((aligned(8))) = 0x000020E540830C8BULL; |
112 static const uint64_t bgr2UCoeff __attribute__((aligned(8))) = 0x0000ED0FDAC23831ULL; | 112 static const uint64_t bgr2UCoeff attribute_used __attribute__((aligned(8))) = 0x0000ED0FDAC23831ULL; |
113 static const uint64_t bgr2VCoeff __attribute__((aligned(8))) = 0x00003831D0E6F6EAULL; | 113 static const uint64_t bgr2VCoeff attribute_used __attribute__((aligned(8))) = 0x00003831D0E6F6EAULL; |
114 #endif | 114 #endif |
115 static const uint64_t bgr2YOffset __attribute__((aligned(8))) = 0x1010101010101010ULL; | 115 static const uint64_t bgr2YOffset attribute_used __attribute__((aligned(8))) = 0x1010101010101010ULL; |
116 static const uint64_t bgr2UVOffset __attribute__((aligned(8)))= 0x8080808080808080ULL; | 116 static const uint64_t bgr2UVOffset attribute_used __attribute__((aligned(8)))= 0x8080808080808080ULL; |
117 static const uint64_t w1111 __attribute__((aligned(8))) = 0x0001000100010001ULL; | 117 static const uint64_t w1111 attribute_used __attribute__((aligned(8))) = 0x0001000100010001ULL; |
118 | 118 |
119 #if 0 | 119 #if 0 |
120 static volatile uint64_t __attribute__((aligned(8))) b5Dither; | 120 static volatile uint64_t __attribute__((aligned(8))) b5Dither; |
121 static volatile uint64_t __attribute__((aligned(8))) g5Dither; | 121 static volatile uint64_t __attribute__((aligned(8))) g5Dither; |
122 static volatile uint64_t __attribute__((aligned(8))) g6Dither; | 122 static volatile uint64_t __attribute__((aligned(8))) g6Dither; |