neon rendering bug - fix by disabling
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 8 Jun 2011 03:04:12 +0000 (03:04 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 8 Jun 2011 03:04:12 +0000 (03:04 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@60068 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/engines/common/evas_op_blend/op_blend_pixel_color_neon.c

index a57052c..6e35970 100644 (file)
@@ -200,6 +200,19 @@ _op_blend_pan_can_dp_neon(DATA32 *s, DATA8 *m __UNUSED__, DATA32 c, DATA32 *d, i
 
 static void
 _op_blend_pan_caa_dp_neon(DATA32 *s, DATA8 *m __UNUSED__, DATA32 c, DATA32 *d, int l) {
+#if 1 
+   DATA32 *e;
+   int alpha;
+   c = 1 + (c & 0xff);
+   UNROLL8_PLD_WHILE(d, l, e,
+                    {
+                       DATA32 sc = MUL_256(c, *s);
+                       alpha = 256 - (sc >> 24);
+                       *d = sc + MUL_256(alpha, *d);
+                       d++;
+                       s++;
+                    });
+#else // the below neon is buggy!! misses rendering of spans, i think with alignment. quick - just disable this.
 #define AP     "_op_blend_pan_caa_dp_"
    DATA32 *e = d + l, *tmp = (void*)73;
       asm volatile (
@@ -400,6 +413,7 @@ _op_blend_pan_caa_dp_neon(DATA32 *s, DATA8 *m __UNUSED__, DATA32 c, DATA32 *d, i
        : "q0", "q1", "q2", "q3", "q4", "q5", "q6", "q7", "q8", "q9", "memory"
       );
 #undef AP
+#endif   
 }
 
 #define _op_blend_pas_c_dp_neon _op_blend_p_c_dp_neon