We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
/*loop Unrolling */ blkCnt = blockSize >> 2u; /* First part of the processing with loop unrolling. Compute 4 outputs at a time. ** a second loop below computes the remaining 1 to 3 samples. */ while(blkCnt > 0u) { /* C = |A| */ /* Calculate absolute of input (if -1 then saturated to 0x7fffffff) and then store the results in the destination buffer. */ in = *pSrc++; *pDst++ = (in > 0) ? in : ((in == 0x80000000) ? 0x7fffffff : -in); in = *pSrc++; *pDst++ = (in > 0) ? in : ((in == 0x80000000) ? 0x7fffffff : -in); in = *pSrc++; *pDst++ = (in > 0) ? in : ((in == 0x80000000) ? 0x7fffffff : -in); in = *pSrc++; *pDst++ = (in > 0) ? in : ((in == 0x80000000) ? 0x7fffffff : -in); /* Decrement the loop counter */ blkCnt--; } /* If the blockSize is not a multiple of 4, compute any remaining output samples here. ** No loop unrolling is used. */ blkCnt = blockSize % 0x4u;