Lines Matching +full:- +full:p

1 /* ----------------------------------------------------------------------
4 * Description: Q15 complex-by-complex multiplication
9 * Target Processor: Cortex-M and Cortex-A cores
10 * -------------------------------------------------------------------- */
12 * Copyright (C) 2010-2021 ARM Limited or its affiliates. All rights reserved.
14 * SPDX-License-Identifier: Apache-2.0
20 * www.apache.org/licenses/LICENSE-2.0
41 @brief Q15 complex-by-complex multiplication.
65 blkCnt -= 1; in arm_cmplx_mult_cmplx_q15()
77 /* C[2 * i] = A[2 * i] * B[2 * i] - A[2 * i + 1] * B[2 * i + 1]. */ in arm_cmplx_mult_cmplx_q15()
104 blkCnt--; in arm_cmplx_mult_cmplx_q15()
129 mve_pred16_t p = vctp16q(blkCnt); in arm_cmplx_mult_cmplx_q15() local
134 vecSrcA = vldrhq_z_s16(pSrcA, p); in arm_cmplx_mult_cmplx_q15()
135 vecSrcB = vldrhq_z_s16(pSrcB, p); in arm_cmplx_mult_cmplx_q15()
137 vecDst = vqdmlsdhq_m(vuninitializedq_s16(), vecSrcA, vecSrcB, p); in arm_cmplx_mult_cmplx_q15()
138 vecDst = vqdmladhxq_m(vecDst, vecSrcA, vecSrcB, p); in arm_cmplx_mult_cmplx_q15()
140 vecDst = vshrq_m(vuninitializedq_s16(), vecDst, 2, p); in arm_cmplx_mult_cmplx_q15()
141 vstrhq_p_s16(pDst, vecDst, p); in arm_cmplx_mult_cmplx_q15()
144 blkCnt -= 8; in arm_cmplx_mult_cmplx_q15()
152 mve_pred16_t p = vctp16q(blkCnt); in arm_cmplx_mult_cmplx_q15() local
154 vecSrcA = vldrhq_z_s16(pSrcA, p); in arm_cmplx_mult_cmplx_q15()
155 vecSrcB = vldrhq_z_s16(pSrcB, p); in arm_cmplx_mult_cmplx_q15()
157 vecDst = vqdmlsdhq_m(vuninitializedq_s16(), vecSrcA, vecSrcB, p); in arm_cmplx_mult_cmplx_q15()
158 vecDst = vqdmladhxq_m(vecDst, vecSrcA, vecSrcB, p); in arm_cmplx_mult_cmplx_q15()
160 vecDst = vshrq_m(vuninitializedq_s16(), vecDst, 2, p); in arm_cmplx_mult_cmplx_q15()
161 vstrhq_p_s16(pDst, vecDst, p); in arm_cmplx_mult_cmplx_q15()
167 blkCnt -= 8; in arm_cmplx_mult_cmplx_q15()
188 /* C[2 * i ] = A[2 * i] * B[2 * i ] - A[2 * i + 1] * B[2 * i + 1]. */ in arm_cmplx_mult_cmplx_q15()
196 *pDst++ = (q15_t) ( (((q31_t) a * c) >> 17) - (((q31_t) b * d) >> 17) ); in arm_cmplx_mult_cmplx_q15()
203 *pDst++ = (q15_t) ( (((q31_t) a * c) >> 17) - (((q31_t) b * d) >> 17) ); in arm_cmplx_mult_cmplx_q15()
210 *pDst++ = (q15_t) ( (((q31_t) a * c) >> 17) - (((q31_t) b * d) >> 17) ); in arm_cmplx_mult_cmplx_q15()
217 *pDst++ = (q15_t) ( (((q31_t) a * c) >> 17) - (((q31_t) b * d) >> 17) ); in arm_cmplx_mult_cmplx_q15()
221 blkCnt--; in arm_cmplx_mult_cmplx_q15()
236 /* C[2 * i ] = A[2 * i] * B[2 * i ] - A[2 * i + 1] * B[2 * i + 1]. */ in arm_cmplx_mult_cmplx_q15()
245 *pDst++ = (q15_t) ( (((q31_t) a * c) >> 17) - (((q31_t) b * d) >> 17) ); in arm_cmplx_mult_cmplx_q15()
249 blkCnt--; in arm_cmplx_mult_cmplx_q15()