[opus] [PATCH] Optimize silk_LPC_inverse_pred_gain() for ARM NEON

Jean-Marc Valin jmvalin at jmvalin.ca
Fri Feb 10 00:48:56 UTC 2017

Hi Linfeng,

Can you confirm that you the patch went through the same internal review
(presumably from James) than the previous ones?

I had a look and did some testing and it looked good to me. There's only
two issues I'd like to resolve first -- none of which directly related
to your code.

1) The overflow condition is essentially untested because none of the
tests in "make check" reliably triggers it. That may be a good case for
an explicit unit test. IIRC, the case could be triggered by the
following input vector:
A_QA[] = { 46596096, -72118272, 78532608, -69447680, 52707328,
-22073344, -19890176, 50507776, -54829056, 45518848, -33939456,
21086208, -7127040, -4136960, 3993600, -1699840 }

2) I'm not quite sure what to make of silk_LPC_inverse_pred_gain_Q24().
It seems to never be called anywhere -- except from the MIPS code. Maybe
it should just stay as it is (not renamed to _c()) but I need to check.
Any thoughts?



On 07/02/17 04:06 PM, Linfeng Zhang wrote:
> Hi,
> Attached is a patch with arm neon optimizations for
> silk_LPC_inverse_pred_gain(). Please review. 
> Thanks,
> Linfeng
> _______________________________________________
> opus mailing list
> opus at xiph.org
> http://lists.xiph.org/mailman/listinfo/opus

More information about the opus mailing list