comparison sh4/qpel.c @ 1264:2fa34e615c76 libavcodec

cleanup
author michaelni
date Wed, 14 May 2003 23:08:01 +0000
parents 82e0e1b9c283
children ef2149182f1c
comparison
equal deleted inserted replaced
1263:9fce515e9894 1264:2fa34e615c76
7 7
8 #define PIXOP2(OPNAME, OP) \ 8 #define PIXOP2(OPNAME, OP) \
9 /*static inline void OPNAME ## _no_rnd_pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 9 /*static inline void OPNAME ## _no_rnd_pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
10 {\ 10 {\
11 do {\ 11 do {\
12 OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LD32(src2 )) ); \ 12 OP(LP(dst ),no_rnd_avg32(LD32(src1 ),LD32(src2 )) ); \
13 OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \ 13 OP(LP(dst+4),no_rnd_avg32(LD32(src1+4),LD32(src2+4)) ); \
14 src1+=src_stride1; \ 14 src1+=src_stride1; \
15 src2+=src_stride2; \ 15 src2+=src_stride2; \
16 dst+=dst_stride; \ 16 dst+=dst_stride; \
17 } while(--h); \ 17 } while(--h); \
18 }\ 18 }\
19 \ 19 \
20 static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 20 static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
21 {\ 21 {\
22 do {\ 22 do {\
23 OP(LP(dst ),rnd_avg2(LD32(src1 ),LD32(src2 )) ); \ 23 OP(LP(dst ),rnd_avg32(LD32(src1 ),LD32(src2 )) ); \
24 OP(LP(dst+4),rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \ 24 OP(LP(dst+4),rnd_avg32(LD32(src1+4),LD32(src2+4)) ); \
25 src1+=src_stride1; \ 25 src1+=src_stride1; \
26 src2+=src_stride2; \ 26 src2+=src_stride2; \
27 dst+=dst_stride; \ 27 dst+=dst_stride; \
28 } while(--h); \ 28 } while(--h); \
29 }\ 29 }\
30 \ 30 \
31 static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 31 static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
32 {\ 32 {\
33 do {\ 33 do {\
34 OP(LP(dst ),rnd_avg2(LD32(src1 ),LD32(src2 )) ); \ 34 OP(LP(dst ),rnd_avg32(LD32(src1 ),LD32(src2 )) ); \
35 src1+=src_stride1; \ 35 src1+=src_stride1; \
36 src2+=src_stride2; \ 36 src2+=src_stride2; \
37 dst+=dst_stride; \ 37 dst+=dst_stride; \
38 } while(--h); \ 38 } while(--h); \
39 }\ 39 }\
40 \ 40 \
41 static inline void OPNAME ## _no_rnd_pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 41 static inline void OPNAME ## _no_rnd_pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
42 {\ 42 {\
43 do {\ 43 do {\
44 OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LD32(src2 )) ); \ 44 OP(LP(dst ),no_rnd_avg32(LD32(src1 ),LD32(src2 )) ); \
45 OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \ 45 OP(LP(dst+4),no_rnd_avg32(LD32(src1+4),LD32(src2+4)) ); \
46 OP(LP(dst+8),no_rnd_avg2(LD32(src1+8),LD32(src2+8)) ); \ 46 OP(LP(dst+8),no_rnd_avg32(LD32(src1+8),LD32(src2+8)) ); \
47 OP(LP(dst+12),no_rnd_avg2(LD32(src1+12),LD32(src2+12)) ); \ 47 OP(LP(dst+12),no_rnd_avg32(LD32(src1+12),LD32(src2+12)) ); \
48 src1+=src_stride1; \ 48 src1+=src_stride1; \
49 src2+=src_stride2; \ 49 src2+=src_stride2; \
50 dst+=dst_stride; \ 50 dst+=dst_stride; \
51 } while(--h); \ 51 } while(--h); \
52 }\ 52 }\
53 \ 53 \
54 static inline void OPNAME ## _pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 54 static inline void OPNAME ## _pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
55 {\ 55 {\
56 do {\ 56 do {\
57 OP(LP(dst ),rnd_avg2(LD32(src1 ),LD32(src2 )) ); \ 57 OP(LP(dst ),rnd_avg32(LD32(src1 ),LD32(src2 )) ); \
58 OP(LP(dst+4),rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \ 58 OP(LP(dst+4),rnd_avg32(LD32(src1+4),LD32(src2+4)) ); \
59 OP(LP(dst+8),rnd_avg2(LD32(src1+8),LD32(src2+8)) ); \ 59 OP(LP(dst+8),rnd_avg32(LD32(src1+8),LD32(src2+8)) ); \
60 OP(LP(dst+12),rnd_avg2(LD32(src1+12),LD32(src2+12)) ); \ 60 OP(LP(dst+12),rnd_avg32(LD32(src1+12),LD32(src2+12)) ); \
61 src1+=src_stride1; \ 61 src1+=src_stride1; \
62 src2+=src_stride2; \ 62 src2+=src_stride2; \
63 dst+=dst_stride; \ 63 dst+=dst_stride; \
64 } while(--h); \ 64 } while(--h); \
65 }*/\ 65 }*/\
66 \ 66 \
67 static inline void OPNAME ## _pixels4_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 67 static inline void OPNAME ## _pixels4_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
68 {\ 68 {\
69 do {\ 69 do {\
70 OP(LP(dst ),rnd_avg2(LP(src1 ),LP(src2 )) ); \ 70 OP(LP(dst ),rnd_avg32(LP(src1 ),LP(src2 )) ); \
71 src1+=src_stride1; \ 71 src1+=src_stride1; \
72 src2+=src_stride2; \ 72 src2+=src_stride2; \
73 dst+=dst_stride; \ 73 dst+=dst_stride; \
74 } while(--h); \ 74 } while(--h); \
75 }\ 75 }\
76 \ 76 \
77 static inline void OPNAME ## _pixels4_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 77 static inline void OPNAME ## _pixels4_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
78 {\ 78 {\
79 do {\ 79 do {\
80 OP(LP(dst ),rnd_avg2(LD32(src1 ),LP(src2 )) ); \ 80 OP(LP(dst ),rnd_avg32(LD32(src1 ),LP(src2 )) ); \
81 src1+=src_stride1; \ 81 src1+=src_stride1; \
82 src2+=src_stride2; \ 82 src2+=src_stride2; \
83 dst+=dst_stride; \ 83 dst+=dst_stride; \
84 } while(--h); \ 84 } while(--h); \
85 }\ 85 }\
86 \ 86 \
87 static inline void OPNAME ## _no_rnd_pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 87 static inline void OPNAME ## _no_rnd_pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
88 {\ 88 {\
89 do {\ 89 do {\
90 OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LP(src2 )) ); \ 90 OP(LP(dst ),no_rnd_avg32(LD32(src1 ),LP(src2 )) ); \
91 OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LP(src2+4)) ); \ 91 OP(LP(dst+4),no_rnd_avg32(LD32(src1+4),LP(src2+4)) ); \
92 OP(LP(dst+8),no_rnd_avg2(LD32(src1+8),LP(src2+8)) ); \ 92 OP(LP(dst+8),no_rnd_avg32(LD32(src1+8),LP(src2+8)) ); \
93 OP(LP(dst+12),no_rnd_avg2(LD32(src1+12),LP(src2+12)) ); \ 93 OP(LP(dst+12),no_rnd_avg32(LD32(src1+12),LP(src2+12)) ); \
94 src1+=src_stride1; \ 94 src1+=src_stride1; \
95 src2+=src_stride2; \ 95 src2+=src_stride2; \
96 dst+=dst_stride; \ 96 dst+=dst_stride; \
97 } while(--h); \ 97 } while(--h); \
98 }\ 98 }\
99 \ 99 \
100 static inline void OPNAME ## _pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 100 static inline void OPNAME ## _pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
101 {\ 101 {\
102 do {\ 102 do {\
103 OP(LP(dst ),rnd_avg2(LD32(src1 ),LP(src2 )) ); \ 103 OP(LP(dst ),rnd_avg32(LD32(src1 ),LP(src2 )) ); \
104 OP(LP(dst+4),rnd_avg2(LD32(src1+4),LP(src2+4)) ); \ 104 OP(LP(dst+4),rnd_avg32(LD32(src1+4),LP(src2+4)) ); \
105 OP(LP(dst+8),rnd_avg2(LD32(src1+8),LP(src2+8)) ); \ 105 OP(LP(dst+8),rnd_avg32(LD32(src1+8),LP(src2+8)) ); \
106 OP(LP(dst+12),rnd_avg2(LD32(src1+12),LP(src2+12)) ); \ 106 OP(LP(dst+12),rnd_avg32(LD32(src1+12),LP(src2+12)) ); \
107 src1+=src_stride1; \ 107 src1+=src_stride1; \
108 src2+=src_stride2; \ 108 src2+=src_stride2; \
109 dst+=dst_stride; \ 109 dst+=dst_stride; \
110 } while(--h); \ 110 } while(--h); \
111 }\ 111 }\
112 \ 112 \
113 static inline void OPNAME ## _no_rnd_pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 113 static inline void OPNAME ## _no_rnd_pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
114 {\ 114 {\
115 do { /* onlye src2 aligned */\ 115 do { /* onlye src2 aligned */\
116 OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LP(src2 )) ); \ 116 OP(LP(dst ),no_rnd_avg32(LD32(src1 ),LP(src2 )) ); \
117 OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LP(src2+4)) ); \ 117 OP(LP(dst+4),no_rnd_avg32(LD32(src1+4),LP(src2+4)) ); \
118 src1+=src_stride1; \ 118 src1+=src_stride1; \
119 src2+=src_stride2; \ 119 src2+=src_stride2; \
120 dst+=dst_stride; \ 120 dst+=dst_stride; \
121 } while(--h); \ 121 } while(--h); \
122 }\ 122 }\
123 \ 123 \
124 static inline void OPNAME ## _pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 124 static inline void OPNAME ## _pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
125 {\ 125 {\
126 do {\ 126 do {\
127 OP(LP(dst ),rnd_avg2(LD32(src1 ),LP(src2 )) ); \ 127 OP(LP(dst ),rnd_avg32(LD32(src1 ),LP(src2 )) ); \
128 OP(LP(dst+4),rnd_avg2(LD32(src1+4),LP(src2+4)) ); \ 128 OP(LP(dst+4),rnd_avg32(LD32(src1+4),LP(src2+4)) ); \
129 src1+=src_stride1; \ 129 src1+=src_stride1; \
130 src2+=src_stride2; \ 130 src2+=src_stride2; \
131 dst+=dst_stride; \ 131 dst+=dst_stride; \
132 } while(--h); \ 132 } while(--h); \
133 }\ 133 }\
134 \ 134 \
135 static inline void OPNAME ## _no_rnd_pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 135 static inline void OPNAME ## _no_rnd_pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
136 {\ 136 {\
137 do {\ 137 do {\
138 OP(LP(dst ),no_rnd_avg2(LP(src1 ),LP(src2 )) ); \ 138 OP(LP(dst ),no_rnd_avg32(LP(src1 ),LP(src2 )) ); \
139 OP(LP(dst+4),no_rnd_avg2(LP(src1+4),LP(src2+4)) ); \ 139 OP(LP(dst+4),no_rnd_avg32(LP(src1+4),LP(src2+4)) ); \
140 src1+=src_stride1; \ 140 src1+=src_stride1; \
141 src2+=src_stride2; \ 141 src2+=src_stride2; \
142 dst+=dst_stride; \ 142 dst+=dst_stride; \
143 } while(--h); \ 143 } while(--h); \
144 }\ 144 }\
145 \ 145 \
146 static inline void OPNAME ## _pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 146 static inline void OPNAME ## _pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
147 {\ 147 {\
148 do {\ 148 do {\
149 OP(LP(dst ),rnd_avg2(LP(src1 ),LP(src2 )) ); \ 149 OP(LP(dst ),rnd_avg32(LP(src1 ),LP(src2 )) ); \
150 OP(LP(dst+4),rnd_avg2(LP(src1+4),LP(src2+4)) ); \ 150 OP(LP(dst+4),rnd_avg32(LP(src1+4),LP(src2+4)) ); \
151 src1+=src_stride1; \ 151 src1+=src_stride1; \
152 src2+=src_stride2; \ 152 src2+=src_stride2; \
153 dst+=dst_stride; \ 153 dst+=dst_stride; \
154 } while(--h); \ 154 } while(--h); \
155 }\ 155 }\
156 \ 156 \
157 static inline void OPNAME ## _no_rnd_pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 157 static inline void OPNAME ## _no_rnd_pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
158 {\ 158 {\
159 do {\ 159 do {\
160 OP(LP(dst ),no_rnd_avg2(LP(src1 ),LP(src2 )) ); \ 160 OP(LP(dst ),no_rnd_avg32(LP(src1 ),LP(src2 )) ); \
161 OP(LP(dst+4),no_rnd_avg2(LP(src1+4),LP(src2+4)) ); \ 161 OP(LP(dst+4),no_rnd_avg32(LP(src1+4),LP(src2+4)) ); \
162 OP(LP(dst+8),no_rnd_avg2(LP(src1+8),LP(src2+8)) ); \ 162 OP(LP(dst+8),no_rnd_avg32(LP(src1+8),LP(src2+8)) ); \
163 OP(LP(dst+12),no_rnd_avg2(LP(src1+12),LP(src2+12)) ); \ 163 OP(LP(dst+12),no_rnd_avg32(LP(src1+12),LP(src2+12)) ); \
164 src1+=src_stride1; \ 164 src1+=src_stride1; \
165 src2+=src_stride2; \ 165 src2+=src_stride2; \
166 dst+=dst_stride; \ 166 dst+=dst_stride; \
167 } while(--h); \ 167 } while(--h); \
168 }\ 168 }\
169 \ 169 \
170 static inline void OPNAME ## _pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \ 170 static inline void OPNAME ## _pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
171 {\ 171 {\
172 do {\ 172 do {\
173 OP(LP(dst ),rnd_avg2(LP(src1 ),LP(src2 )) ); \ 173 OP(LP(dst ),rnd_avg32(LP(src1 ),LP(src2 )) ); \
174 OP(LP(dst+4),rnd_avg2(LP(src1+4),LP(src2+4)) ); \ 174 OP(LP(dst+4),rnd_avg32(LP(src1+4),LP(src2+4)) ); \
175 OP(LP(dst+8),rnd_avg2(LP(src1+8),LP(src2+8)) ); \ 175 OP(LP(dst+8),rnd_avg32(LP(src1+8),LP(src2+8)) ); \
176 OP(LP(dst+12),rnd_avg2(LP(src1+12),LP(src2+12)) ); \ 176 OP(LP(dst+12),rnd_avg32(LP(src1+12),LP(src2+12)) ); \
177 src1+=src_stride1; \ 177 src1+=src_stride1; \
178 src2+=src_stride2; \ 178 src2+=src_stride2; \
179 dst+=dst_stride; \ 179 dst+=dst_stride; \
180 } while(--h); \ 180 } while(--h); \
181 }\ 181 }\
351 dst+=dst_stride;\ 351 dst+=dst_stride;\
352 } while(--h); \ 352 } while(--h); \
353 } \ 353 } \
354 \ 354 \
355 355
356 #define op_avg(a, b) a = rnd_avg2(a,b) 356 #define op_avg(a, b) a = rnd_avg32(a,b)
357 #define op_put(a, b) a = b 357 #define op_put(a, b) a = b
358 358
359 PIXOP2(avg, op_avg) 359 PIXOP2(avg, op_avg)
360 PIXOP2(put, op_put) 360 PIXOP2(put, op_put)
361 #undef op_avg 361 #undef op_avg