Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/lib/engines/common


Modified Files:
        evas_blend_alpha_color_pixel.c evas_blend_color_pixel.c 
        evas_blend_ops.h evas_blend_pixel_cmod_pixel.c 
        evas_blend_pixel_mul_pixel.c evas_blend_pixel_pixel.c 
        evas_line_main.c 


Log Message:


optimise... THIS! BIATCH! :)

===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/engines/common/evas_blend_alpha_color_pixel.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- evas_blend_alpha_color_pixel.c      10 May 2004 06:40:50 -0000      1.7
+++ evas_blend_alpha_color_pixel.c      3 Feb 2005 07:28:06 -0000       1.8
@@ -34,6 +34,7 @@
             *dst_ptr = col;
             break;
           default:
+            BLEND_ALPHA_SETUP(aa, tmp);
             BLEND_COLOR(aa, R_VAL(dst_ptr), 
                         R_VAL(&col), R_VAL(dst_ptr), 
                         tmp);
@@ -111,7 +112,7 @@
             punpckhdq_r2r(mm3, mm3);   
             psrlw_i2r(1, mm3);
             
-            psrlq_i2r(16, mm3);
+//          psrlq_i2r(16, mm3);
             
             punpcklbw_r2r(mm4, mm1);
             punpcklbw_r2r(mm4, mm2);
@@ -162,6 +163,7 @@
             BLEND_COLOR(aa, A_VAL(dst_ptr), 
                       255, A_VAL(dst_ptr), 
                       tmp);
+            BLEND_ALPHA_SETUP(a, tmp);
             BLEND_COLOR(a, R_VAL(dst_ptr), 
                         R_VAL(&col), R_VAL(dst_ptr), 
                         tmp);
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/engines/common/evas_blend_color_pixel.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- evas_blend_color_pixel.c    10 May 2004 06:40:50 -0000      1.7
+++ evas_blend_color_pixel.c    3 Feb 2005 07:28:06 -0000       1.8
@@ -20,6 +20,7 @@
      {
        DATA32 tmp;
        
+       BLEND_ALPHA_SETUP(A_VAL(&src), tmp);
        BLEND_COLOR(A_VAL(&src), R_VAL(dst_ptr), 
                    R_VAL(&src), R_VAL(dst_ptr), 
                    tmp);
@@ -54,7 +55,7 @@
    punpckhdq_r2r(mm3, mm3);    
    psrlw_i2r(1, mm3);
        
-   psrlq_i2r(16, mm3);
+//   psrlq_i2r(16, mm3);
        
    while (dst_ptr < dst_end_ptr)
      {
@@ -99,6 +100,7 @@
        BLEND_COLOR(A_VAL(&src), A_VAL(dst_ptr), 
                    255, A_VAL(dst_ptr), 
                    tmp);
+       BLEND_ALPHA_SETUP(a, tmp);
        BLEND_COLOR(a, R_VAL(dst_ptr), 
                    R_VAL(&src), R_VAL(dst_ptr), 
                    tmp);
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/engines/common/evas_blend_ops.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- evas_blend_ops.h    10 May 2004 06:40:50 -0000      1.3
+++ evas_blend_ops.h    3 Feb 2005 07:28:06 -0000       1.4
@@ -12,6 +12,7 @@
        BLEND_COLOR(A_VAL(src), A_VAL(dst), \
                    255, A_VAL(dst), \
                    __tmp); \
+       BLEND_ALPHA_SETUP(__a, __tmp); \
        BLEND_COLOR(__a, R_VAL(dst), \
                    R_VAL(src), R_VAL(dst), \
                    __tmp); \
@@ -30,6 +31,7 @@
 \
    if (A_VAL(src)) /* hmmm - do we need this? */ \
      { \
+       BLEND_ALPHA_SETUP(A_VAL(src), __tmp); \
        BLEND_COLOR(A_VAL(src), R_VAL(dst), \
                    R_VAL(src), R_VAL(dst), \
                    __tmp); \
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/engines/common/evas_blend_pixel_cmod_pixel.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- evas_blend_pixel_cmod_pixel.c       10 May 2004 06:40:50 -0000      1.6
+++ evas_blend_pixel_cmod_pixel.c       3 Feb 2005 07:28:06 -0000       1.7
@@ -33,6 +33,7 @@
             B_VAL(dst_ptr) = bmod[B_VAL(src_ptr)];
             break;
           default:
+            BLEND_ALPHA_SETUP(a, tmp);
             BLEND_COLOR(a, R_VAL(dst_ptr), 
                         rmod[R_VAL(src_ptr)], R_VAL(dst_ptr), 
                         tmp);
@@ -80,6 +81,7 @@
             a = _evas_pow_lut[(aa << 8) | A_VAL(dst_ptr)];
             BLEND_COLOR(aa,A_VAL(dst_ptr),
                       255,A_VAL(dst_ptr),tmp);
+            BLEND_ALPHA_SETUP(a, tmp);
             BLEND_COLOR(a, R_VAL(dst_ptr), 
                         rmod[R_VAL(src_ptr)], R_VAL(dst_ptr), 
                         tmp);
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/engines/common/evas_blend_pixel_mul_pixel.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- evas_blend_pixel_mul_pixel.c        10 May 2004 06:40:50 -0000      1.7
+++ evas_blend_pixel_mul_pixel.c        3 Feb 2005 07:28:06 -0000       1.8
@@ -35,6 +35,7 @@
                  *dst_ptr = *src_ptr;
                  break;
                default:
+                 BLEND_ALPHA_SETUP(a, tmp);
                  BLEND_COLOR(a, R_VAL(dst_ptr), 
                              R_VAL(src_ptr), R_VAL(dst_ptr), 
                              tmp);
@@ -68,6 +69,7 @@
                  B_VAL(dst_ptr) = ((B_VAL(src_ptr) * (B_VAL(&mul_color) + 1)) 
>> 8);
                  break;
                default:
+                 BLEND_ALPHA_SETUP(a, tmp);
                  BLEND_COLOR(a, R_VAL(dst_ptr), 
                              ((R_VAL(src_ptr) * (R_VAL(&mul_color) + 1)) >> 
8), R_VAL(dst_ptr), 
                              tmp);
@@ -150,7 +152,7 @@
             punpckhdq_r2r(mm3, mm3);   
             psrlw_i2r(1, mm3);
             
-            psrlq_i2r(16, mm3);
+//          psrlq_i2r(16, mm3);
             
             punpcklbw_r2r(mm4, mm1);
             punpcklbw_r2r(mm4, mm2);
@@ -205,6 +207,7 @@
                  BLEND_COLOR(aa, A_VAL(dst_ptr),
                                255, A_VAL(dst_ptr),
                                tmp);
+                 BLEND_ALPHA_SETUP(a, tmp);
                  BLEND_COLOR(a, R_VAL(dst_ptr), 
                              R_VAL(src_ptr), R_VAL(dst_ptr), 
                              tmp);
@@ -244,6 +247,7 @@
                  BLEND_COLOR(aa, A_VAL(dst_ptr),
                                255, A_VAL(dst_ptr),
                                tmp);
+                 BLEND_ALPHA_SETUP(a, tmp);
                  BLEND_COLOR(a, R_VAL(dst_ptr), 
                              ((R_VAL(src_ptr) * (R_VAL(&mul_color) + 1)) >> 
8), R_VAL(dst_ptr), 
                              tmp);
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/engines/common/evas_blend_pixel_pixel.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- evas_blend_pixel_pixel.c    29 Jan 2005 16:28:18 -0000      1.13
+++ evas_blend_pixel_pixel.c    3 Feb 2005 07:28:06 -0000       1.14
@@ -34,6 +34,7 @@
             *dst_ptr = *src_ptr;
             break;
           default:
+            BLEND_ALPHA_SETUP(a, tmp);
             BLEND_COLOR(a, R_VAL(dst_ptr), 
                         R_VAL(src_ptr), R_VAL(dst_ptr), 
                         tmp);
@@ -74,28 +75,28 @@
             *dst_ptr = *src_ptr;
             break;
           default:
-            movd_m2r(src_ptr[0], mm1);
-            movd_m2r(dst_ptr[0], mm2);
+            movd_m2r(src_ptr[0], mm1); // mm1 = [  ][  ][AR][GB] (SRC)
+            movd_m2r(dst_ptr[0], mm2); // mm2 = [  ][  ][ar][gb] (DST)
             
-            movq_r2r(mm1, mm3);
-            punpcklbw_r2r(mm3, mm3);
-            punpckhwd_r2r(mm3, mm3);
-            punpckhdq_r2r(mm3, mm3);   
-            psrlw_i2r(1, mm3);
+            movq_r2r(mm1, mm3);        // mm3 = [  ][  ][AR][GB]
+            punpcklbw_r2r(mm3, mm3);   // mm3 = [AA][RR][GG][BB]
+            punpckhwd_r2r(mm3, mm3);   // mm3 = [AA][AA][RR][RR]
+            punpckhdq_r2r(mm3, mm3);   // mm3 = [AA][AA][AA][AA]
+            psrlw_i2r(1, mm3);         // mm3 = [AA/2][AA/2][AA/2][AA/2]
             
-            psrlq_i2r(16, mm3);
+//          psrlq_i2r(16, mm3);        // mm3 = [00][AA/2][AA/2][AA/2]
             
-            punpcklbw_r2r(mm4, mm1);
-            punpcklbw_r2r(mm4, mm2);
+            punpcklbw_r2r(mm4, mm1);   // mm1 = [0A][0R][0G][0B]
+            punpcklbw_r2r(mm4, mm2);   // mm2 = [0a][0r][0g][0b]
             
-            psubw_r2r(mm2, mm1);
-            psllw_i2r(1, mm1);
-            paddw_r2r(mm5, mm1);
-            pmulhw_r2r(mm3, mm1);
-            paddw_r2r(mm1, mm2);
-            
-            packuswb_r2r(mm4, mm2);
-            movd_r2m(mm2, dst_ptr[0]);
+            psubw_r2r(mm2, mm1);       // mm1 = [A-a][R-r][G-g][B-b]
+            psllw_i2r(1, mm1);         // mm1 = [A*2][R*2][G*2][B*2]
+            paddw_r2r(mm5, mm1);       // mm1 = [A+1][R+1][G+1][B+1]
+            pmulhw_r2r(mm3, mm1);      // mm1 = 
[A*0][(R*AA)>>16][(G*AA)>>16][(B*AA)>>16]
+            paddw_r2r(mm1, mm2);       // mm2 = [0a][R-r][G-g][B-b]
+
+            packuswb_r2r(mm4, mm2);    // mm2 = [  ][  ][AR][GB]
+            movd_r2m(mm2, dst_ptr[0]); // DST = mm2
             break;
          }
        src_ptr++;
@@ -132,6 +133,7 @@
             BLEND_COLOR(aa, A_VAL(dst_ptr), 
                         255, A_VAL(dst_ptr), 
                         tmp);
+            BLEND_ALPHA_SETUP(a, tmp);
             BLEND_COLOR(a, R_VAL(dst_ptr), 
                         R_VAL(src_ptr), R_VAL(dst_ptr), 
                         tmp);
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/engines/common/evas_line_main.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- evas_line_main.c    10 May 2004 06:40:50 -0000      1.7
+++ evas_line_main.c    3 Feb 2005 07:28:06 -0000       1.8
@@ -59,6 +59,7 @@
             BLEND_COLOR(A_VAL(&(col)), A_VAL(ptr), 
                         255, A_VAL(ptr), 
                         __blend_tmp);                 
+            BLEND_ALPHA_SETUP(__blend_a, __blend_tmp);
             BLEND_COLOR(__blend_a, R_VAL(ptr), 
                         R_VAL(&(col)), R_VAL(ptr), 
                         __blend_tmp);                 
@@ -74,6 +75,7 @@
             DATA32 __blend_tmp;                       
             
             ptr = dst->image->data + (y1 * dst->image->w) + x1;
+            BLEND_ALPHA_SETUP(A_VAL(&(col)), __blend_tmp);
             BLEND_COLOR(A_VAL(&(col)), R_VAL(ptr), 
                         R_VAL(&(col)), R_VAL(ptr), 
                         __blend_tmp);                 
@@ -152,6 +154,7 @@
                            BLEND_COLOR(A_VAL(&(col)), A_VAL(ptr), 
                                        255, A_VAL(ptr), 
                                        __blend_tmp);                 
+                           BLEND_ALPHA_SETUP(__blend_a, __blend_tmp);
                            BLEND_COLOR(__blend_a, R_VAL(ptr), 
                                        R_VAL(&(col)), R_VAL(ptr), 
                                        __blend_tmp);                 
@@ -191,6 +194,7 @@
                            BLEND_COLOR(A_VAL(&(col)), A_VAL(ptr), 
                                        255, A_VAL(ptr), 
                                        __blend_tmp);                 
+                           BLEND_ALPHA_SETUP(__blend_a, __blend_tmp);
                            BLEND_COLOR(__blend_a, R_VAL(ptr), 
                                        R_VAL(&(col)), R_VAL(ptr), 
                                        __blend_tmp);
@@ -227,6 +231,7 @@
                         {                                            
                            DATA32 __blend_tmp;                       
                            
+                           BLEND_ALPHA_SETUP(A_VAL(&(col)), __blend_tmp);
                            BLEND_COLOR(A_VAL(&(col)), R_VAL(ptr), 
                                        R_VAL(&(col)), R_VAL(ptr), 
                                        __blend_tmp);                 
@@ -260,6 +265,7 @@
                         {                                            
                            DATA32 __blend_tmp;                       
                            
+                           BLEND_ALPHA_SETUP(A_VAL(&(col)), __blend_tmp);
                            BLEND_COLOR(A_VAL(&(col)), R_VAL(ptr), 
                                        R_VAL(&(col)), R_VAL(ptr), 
                                        __blend_tmp);                 




-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to