summaryrefslogtreecommitdiff
path: root/src/lib/evas/common/evas_map_image_loop.c
diff options
context:
space:
mode:
authorChunEon Park <hermet@hermet.pe.kr>2014-11-26 15:12:25 +0900
committerChunEon Park <hermet@hermet.pe.kr>2014-11-26 15:12:25 +0900
commita3b3e1ecad73f2da2e95d86670c336a474cff77f (patch)
tree2460f9ce0a6ceaf0ac1218628d02c753f9d53b17 /src/lib/evas/common/evas_map_image_loop.c
parent215b52ecc108b2b13814534d75565152e8c0973a (diff)
evas/map: support aa in basic c computation.
Diffstat (limited to '')
-rw-r--r--src/lib/evas/common/evas_map_image_loop.c23
1 files changed, 13 insertions, 10 deletions
diff --git a/src/lib/evas/common/evas_map_image_loop.c b/src/lib/evas/common/evas_map_image_loop.c
index 971d98679c..f0bd3323c8 100644
--- a/src/lib/evas/common/evas_map_image_loop.c
+++ b/src/lib/evas/common/evas_map_image_loop.c
@@ -31,12 +31,13 @@
31 31
32 while (ww > 0) 32 while (ww > 0)
33 { 33 {
34 DATA32 val1 = 0x00000000;
34# ifdef COLBLACK 35# ifdef COLBLACK
35 *d = 0xff000000; // col 36 *d = 0xff000000; // col
36# else //COLBLACK 37# else //COLBLACK
37 FPc uu1, vv1, uu2, vv2; 38 FPc uu1, vv1, uu2, vv2;
38 FPc rv, ru; 39 FPc rv, ru;
39 DATA32 val1, val2, val3, val4; 40 DATA32 val2, val3, val4;
40 41
41 uu1 = u; 42 uu1 = u;
42 if (uu1 < 0) uu1 = 0; 43 if (uu1 < 0) uu1 = 0;
@@ -156,19 +157,19 @@
156 val1 = INTERP_256(rv, val3, val1); // col 157 val1 = INTERP_256(rv, val3, val1); // col
157# ifdef COLMUL 158# ifdef COLMUL
158# ifdef COLSAME 159# ifdef COLSAME
159 *d = MUL4_SYM(c1, val1); 160 val1 = MUL4_SYM(c1, val1);
160# else //COLSAME 161# else //COLSAME
161 val2 = INTERP_256((cv >> 16), c2, c1); // col 162 val2 = INTERP_256((cv >> 16), c2, c1); // col
162 *d = MUL4_SYM(val2, val1); // col 163 val1 = MUL4_SYM(val2, val1); // col
163 cv += cd; // col 164 cv += cd; // col
164# endif //COLSAME 165# endif //COLSAME
165# else
166 *d = val1;
167# endif //COLMUL 166# endif //COLMUL
168# endif //SCALE_USING_MMX 167# endif //SCALE_USING_MMX
169 u += ud; 168 u += ud;
170 v += vd; 169 v += vd;
171# endif //COLBLACK 170# endif //COLBLACK
171 if (anti_alias) val1 = _aa_coverage_apply(line, ww, w, val1);
172 *d = val1;
172 d++; 173 d++;
173 ww--; 174 ww--;
174 } 175 }
@@ -200,9 +201,9 @@
200 201
201 while (ww > 0) 202 while (ww > 0)
202 { 203 {
204 DATA32 val1 = 0x00000000;
203# ifdef COLMUL 205# ifdef COLMUL
204# ifndef COLBLACK 206# ifndef COLBLACK
205 DATA32 val1;
206# ifdef COLSAME 207# ifdef COLSAME
207# else 208# else
208 DATA32 cval; // col 209 DATA32 cval; // col
@@ -211,7 +212,7 @@
211# endif //COLMUL 212# endif //COLMUL
212 213
213# ifdef COLBLACK 214# ifdef COLBLACK
214 *d = 0xff000000; // col 215 val1 = 0xff000000; // col
215# else //COLBLACK 216# else //COLBLACK
216 s = sp + ((v >> (FP + FPI)) * sw) + (u >> (FP + FPI)); 217 s = sp + ((v >> (FP + FPI)) * sw) + (u >> (FP + FPI));
217# ifdef COLMUL 218# ifdef COLMUL
@@ -225,7 +226,7 @@
225 MUL4_SYM_NEON(d0, d1, d4) 226 MUL4_SYM_NEON(d0, d1, d4)
226 VMOV_R2M_NEON(q0, d0, d); 227 VMOV_R2M_NEON(q0, d0, d);
227# else 228# else
228 *d = MUL4_SYM(c1, val1); 229 val1 = MUL4_SYM(c1, val1);
229# endif //SCALE_USING_NEON 230# endif //SCALE_USING_NEON
230# else //COLSAME 231# else //COLSAME
231/* XXX: this neon is broken! :( FIXME 232/* XXX: this neon is broken! :( FIXME
@@ -242,18 +243,20 @@
242# else 243# else
243 */ 244 */
244 cval = INTERP_256((cv >> 16), c2, c1); // col 245 cval = INTERP_256((cv >> 16), c2, c1); // col
245 *d = MUL4_SYM(cval, val1); 246 val1 = MUL4_SYM(cval, val1);
246 cv += cd; // col 247 cv += cd; // col
247/* 248/*
248# endif 249# endif
249 */ 250 */
250# endif //COLSAME 251# endif //COLSAME
251# else //COLMUL 252# else //COLMUL
252 *d = *s; 253 val1 = *s;
253# endif //COLMUL 254# endif //COLMUL
254 u += ud; 255 u += ud;
255 v += vd; 256 v += vd;
256# endif //COLBLACK 257# endif //COLBLACK
258 if (anti_alias) val1 = _aa_coverage_apply(line, ww, w, val1);
259 *d = val1;
257 d++; 260 d++;
258 ww--; 261 ww--;
259 } 262 }