neon rendering bug - fix by disabling

SVN revision: 60068
This commit is contained in:
Carsten Haitzler 2011-06-08 03:04:12 +00:00
parent 210c898e06
commit 54afc1bba6
1 changed files with 14 additions and 0 deletions

View 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