FreeCalypso > hg > gsm-codec-lib
comparison libgsmefr/levinson.c @ 196:1cdbaeec7bcc
libgsmefr/levinson.c: perf opt
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 04 Jan 2023 03:58:26 +0000 |
parents | 0e41ca9ebf45 |
children |
comparison
equal
deleted
inserted
replaced
195:827661987b41 | 196:1cdbaeec7bcc |
---|---|
121 t2 = L_negate (t2); /* K =-t0/Alpha */ | 121 t2 = L_negate (t2); /* K =-t0/Alpha */ |
122 t2 = L_shl (t2, alp_exp); /* denormalize; compare to Alpha */ | 122 t2 = L_shl (t2, alp_exp); /* denormalize; compare to Alpha */ |
123 L_Extract (t2, &Kh, &Kl); /* K in DPF */ | 123 L_Extract (t2, &Kh, &Kl); /* K in DPF */ |
124 | 124 |
125 test (); | 125 test (); |
126 if (sub (i, 5) < 0) | 126 if (i < 5) |
127 { | 127 { |
128 rc[i - 1] = round (t2); move16 (); | 128 rc[i - 1] = round (t2); move16 (); |
129 } | 129 } |
130 /* Test for unstable filter. If unstable keep old A(z) */ | 130 /* Test for unstable filter. If unstable keep old A(z) */ |
131 | 131 |
132 if (sub (abs_s (Kh), 32750) > 0) | 132 if (abs_s (Kh) > 32750) |
133 { | 133 { |
134 for (j = 0; j <= M; j++) | 134 for (j = 0; j <= M; j++) |
135 { | 135 { |
136 A[j] = st->old_A[j]; | 136 A[j] = st->old_A[j]; |
137 } | 137 } |