Home | History | Annotate | Download | only in neon

Lines Matching refs:s16

34     vabs.s16        q4, q0                      ;calculate x = abs(z)
35 vabs.s16 q5, q1
37 vcge.s16 q10, q4, q10 ;x>=zbin
38 vcge.s16 q11, q5, q11
41 vorr.s16 q6, q10, q11
42 vorr.s16 d12, d12, d13
52 vshr.s16 q2, q0, #15 ; sz
53 vshr.s16 q3, q1, #15
55 vld1.s16 {q6, q7}, [r0] ;load round_ptr [0-15]
56 vld1.s16 {q8, q9}, [r12] ;load quant_ptr [0-15]
58 vadd.s16 q4, q6 ;x + Round
59 vadd.s16 q5, q7
63 vqdmulh.s16 q4, q8 ;y = ((Round + abs(z)) * Quant) >> 16
64 vqdmulh.s16 q5, q9
67 vceq.s16 q8, q8 ;set q8 to all 1
69 vshr.s16 q4, #1 ;right shift 1 after vqdmulh
70 vshr.s16 q5, #1
73 veor.s16 q4, q2 ; y^sz
74 veor.s16 q5, q3
78 vsub.s16 q4, q2 ; x1 = (y^sz) - sz = (y^sz) - (-1) (two's complement)
79 vsub.s16 q5, q3
81 vand.s16 q4, q10 ;mask off x1 elements
82 vand.s16 q5, q11
84 vld1.s16 {q6, q7}, [r12] ;load dequant_ptr[i]
89 vst1.s16 {q4, q5}, [r2] ;store: qcoeff = x1
98 vmul.s16 q6, q4 ;x * Dequant
99 vmul.s16 q7, q5
104 vst1.s16 {q6, q7}, [r3] ;store dqcoeff = x * Dequant
110 vst1.s16 {q10, q11}, [r2] ; qcoeff = 0
111 vst1.s16 {q10, q11}, [r3] ; dqcoeff = 0