Build AsminVoicechat / prepare-release (push) Successful in 14s
Build AsminVoicechat / build-and-test (17) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (18) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (19) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (20) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (21) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (22) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (23) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (24) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (25) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (26) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (27-ea) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (16) (push) Canceled after 38s
82 lines
2.7 KiB
Java
82 lines
2.7 KiB
Java
/*
|
|
* Decompiled with CFR 0.152.
|
|
*/
|
|
package de.maxhenkel.voicechat.concentus;
|
|
|
|
import de.maxhenkel.voicechat.concentus.BoxedValueInt;
|
|
import de.maxhenkel.voicechat.concentus.Inlines;
|
|
|
|
class SumSqrShift {
|
|
SumSqrShift() {
|
|
}
|
|
|
|
static void silk_sum_sqr_shift(BoxedValueInt energy, BoxedValueInt shift, short[] x, int x_ptr, int len) {
|
|
int nrg_tmp;
|
|
int i;
|
|
int nrg = 0;
|
|
int shft = 0;
|
|
--len;
|
|
for (i = 0; i < len; i += 2) {
|
|
nrg = Inlines.silk_SMLABB_ovflw(nrg, x[x_ptr + i], x[x_ptr + i]);
|
|
if ((nrg = Inlines.silk_SMLABB_ovflw(nrg, x[x_ptr + i + 1], x[x_ptr + i + 1])) >= 0) continue;
|
|
nrg = (int)Inlines.silk_RSHIFT_uint(nrg, 2);
|
|
shft = 2;
|
|
i += 2;
|
|
break;
|
|
}
|
|
while (i < len) {
|
|
nrg_tmp = Inlines.silk_SMULBB(x[x_ptr + i], x[x_ptr + i]);
|
|
if ((nrg = (int)Inlines.silk_ADD_RSHIFT_uint(nrg, nrg_tmp = Inlines.silk_SMLABB_ovflw(nrg_tmp, x[x_ptr + i + 1], x[x_ptr + i + 1]), shft)) < 0) {
|
|
nrg = (int)Inlines.silk_RSHIFT_uint(nrg, 2);
|
|
shft += 2;
|
|
}
|
|
i += 2;
|
|
}
|
|
if (i == len) {
|
|
nrg_tmp = Inlines.silk_SMULBB(x[x_ptr + i], x[x_ptr + i]);
|
|
nrg = (int)Inlines.silk_ADD_RSHIFT_uint(nrg, nrg_tmp, shft);
|
|
}
|
|
if ((nrg & 0xC0000000) != 0) {
|
|
nrg = (int)Inlines.silk_RSHIFT_uint(nrg, 2);
|
|
shft += 2;
|
|
}
|
|
shift.Val = shft;
|
|
energy.Val = nrg;
|
|
}
|
|
|
|
static void silk_sum_sqr_shift(BoxedValueInt energy, BoxedValueInt shift, short[] x, int len) {
|
|
int nrg_tmp;
|
|
int i;
|
|
int nrg = 0;
|
|
int shft = 0;
|
|
--len;
|
|
for (i = 0; i < len; i += 2) {
|
|
nrg = Inlines.silk_SMLABB_ovflw(nrg, x[i], x[i]);
|
|
if ((nrg = Inlines.silk_SMLABB_ovflw(nrg, x[i + 1], x[i + 1])) >= 0) continue;
|
|
nrg = (int)Inlines.silk_RSHIFT_uint(nrg, 2);
|
|
shft = 2;
|
|
i += 2;
|
|
break;
|
|
}
|
|
while (i < len) {
|
|
nrg_tmp = Inlines.silk_SMULBB(x[i], x[i]);
|
|
if ((nrg = (int)Inlines.silk_ADD_RSHIFT_uint(nrg, nrg_tmp = Inlines.silk_SMLABB_ovflw(nrg_tmp, x[i + 1], x[i + 1]), shft)) < 0) {
|
|
nrg = (int)Inlines.silk_RSHIFT_uint(nrg, 2);
|
|
shft += 2;
|
|
}
|
|
i += 2;
|
|
}
|
|
if (i == len) {
|
|
nrg_tmp = Inlines.silk_SMULBB(x[i], x[i]);
|
|
nrg = (int)Inlines.silk_ADD_RSHIFT_uint(nrg, nrg_tmp, shft);
|
|
}
|
|
if ((nrg & 0xC0000000) != 0) {
|
|
nrg = (int)Inlines.silk_RSHIFT_uint(nrg, 2);
|
|
shft += 2;
|
|
}
|
|
shift.Val = shft;
|
|
energy.Val = nrg;
|
|
}
|
|
}
|
|
|