SymmColumnSmallVec_32s16s [3, 10, 3] Scharr
NEON speedup: 2.04x Auto-vect speedup: 1x
This commit is contained in:
parent
61a7f48bf4
commit
33dfeb85be
@ -2672,7 +2672,24 @@ struct SymmColumnSmallVec_32s16s
|
|||||||
}
|
}
|
||||||
else if( ky[0] == 10 && ky[1] == 3 )
|
else if( ky[0] == 10 && ky[1] == 3 )
|
||||||
{
|
{
|
||||||
return 0;
|
for( ; i <= width - 4; i += 4 )
|
||||||
|
{
|
||||||
|
int32x4_t x0, x1, x2, x3;
|
||||||
|
x0 = vld1q_s32((int32_t const *)(S0 + i));
|
||||||
|
x1 = vld1q_s32((int32_t const *)(S1 + i));
|
||||||
|
x2 = vld1q_s32((int32_t const *)(S2 + i));
|
||||||
|
|
||||||
|
x3 = vaddq_s32(x0, x2);
|
||||||
|
|
||||||
|
int32x4_t y0;
|
||||||
|
y0 = vmlaq_n_s32(d4, x1, 10);
|
||||||
|
y0 = vmlaq_n_s32(y0, x3, 3);
|
||||||
|
|
||||||
|
int16x4_t t;
|
||||||
|
t = vqmovn_s32(y0);
|
||||||
|
|
||||||
|
vst1_s16((int16_t *)(dst + i), t);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user