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 (
: "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